Skip to content

Latest commit

 

History

History
80 lines (65 loc) · 4.03 KB

File metadata and controls

80 lines (65 loc) · 4.03 KB

IEEE 1788 test data

The user-facing finite claim is summarized in doc/en_US/ball_float/conformance.md; this page owns the pinned corpus, phase planner, and operational workflow.

smoke.itl is the committed minimal suite. The complete corpus is fetched from nehmeier/ITF1788 at the revision and SHA-256 recorded in corpora.json. The upstream corpus is Apache-2.0 licensed and remains ignored after download.

Commands

just conformance smoke interval
just conformance fetch interval itf1788
just conformance plan interval --phase sets --phase relations
just conformance run interval --phase sets --phase relations --strict-supported
just gate interval 8

smoke never downloads data. fetch verifies the manifest before installing the ignored corpus. plan prints the selected phase/task partition. run executes the selected phases. --strict-supported makes unsupported or diagnostic cases fail the command rather than merely reporting them.

The staged runner treats supported operations strictly and reports all other operations as unsupported. Phases that share an ITL file select disjoint operations, so an unfiltered run evaluates every ITL instruction exactly once; the runner rejects any overlapping configuration. The strict baseline also includes arithmetic, numeric observations, cancellation, elementary-core, exponentials/logarithms, FMA, integer powers, and extrema. General power, trigonometric functions, and both pinned upstream atan2 sources are included as strict phases; reverse operations remain unsupported.

just gate interval is the strict baseline (and accepts an optional worker count): 20 set cases, 567 relation cases, 124 numeric observation cases, 242 cancellation cases, 539 add/sub/mul/div cases, 107 elementary-core cases, 131 exponential/logarithmic cases, 1,428 general-power cases, 176 trigonometric cases, 567 FMA cases, and 174 integer-power cases. The hyperbolic and inverse-trigonometric phases add 107 and 61 cases, respectively. The atan2 phase adds 375 cases and the extrema phase adds 38 min/max cases, for an official aggregate of 4,656 cases. Every selected case must be executable; unsupported and diagnostic classifications fail the gate.

The phase planner is part of the contract. A phase declares its operation set, input files, and strictness; the runner rejects overlapping operation sets and does not silently execute a case twice. This keeps per-phase counts additive and makes sharded summaries comparable with an unfiltered run.

The general-power phase contains 1,428 pow cases and passes all cases on the native strict run. The trigonometric phase contains 176 sin, cos, and tan cases; the disjoint atan2 phase contains 375 cases from the same pinned archive. Both pass the strict baseline. Reverse operations remain unsupported.

Interpreting Results

An executable failure means the parsed operation was in the declared support set but the enclosure, relation, or status did not match the expected row. An unsupported result means the grammar was understood but the implementation has not claimed that operation. A diagnostic result means the row itself could not be treated as a valid scalar ITL case. These categories must not be merged when reporting a conformance claim.

The ITL backend compares interval behavior through set relations and certified containment, not scalar string equality. A wider interval can be valid when the operation contract permits a conservative fallback; strict phase support still requires every selected row to execute.

Provenance And Scope

The manifest records the upstream revision and checksum. The published strict claim covers only the listed phases and endpoint precision used by the runner. It does not claim reverse interval operations, every IEEE 1788 decoration rule, arbitrary endpoint formats, or unpinned upstream revisions.

For a failure, record the ITL file, case ID, phase, operation, endpoint values, expected relation, actual relation, target, and manifest revision before changing the support table or fixture.