algebra

One expression, many evaluators: exact, fast and with a known error.

Below, the orientation test orient(p,q,r) runs live in your browser. Each cell moves one point by a whole number of ulps. The float sign is wrong in the dark cells. The interval of the bounds marks the cells where it cannot fix the sign. The exact sign is always right.

Moved point
Step
1 ulp
View

FloatThe sign of the float value. Dark cells have the wrong sign.
IntervalThe sign that the A1 interval fixes. Pale cells: no sign.
ExactThe exact sign, from the exact value over bigint.
positive negative zero float sign is wrong interval fixes no sign exact zero line Drag to move. Wheel or + − to zoom. Click a cell to keep its numbers.
The input at its own scale

One document, each evaluator

Type an expression and its values. The page reads the text into one expression document. Each evaluator then reads the same document. Each result states its error.

The document

            

The census of A13: real inputs of highways

The census sends each real input of the geometric predicates of highways through the float signs and the exact signs.

Provisional. The census of 7 highways sets is in progress (the rerun with the call-site rules). The page shows exact-v1 now.

194 549 364predicate tests on exact-v1
40boards
0wrong signs that a user sees and exact signs fix

The cases where the float answer is not the exact answer

Select a class to see what it means.

Exact signs fix no error that a user sees on these inputs. A count of 0 ranks item A5, the exact predicates, lower.

Real float-wrong inputs

Board and call siteSigns that flipAnswerOpen

Packages

Roadmap

The build reads these items from docs/ROADMAP.md. Select an item to see its summary.