Page actions
instrument / verified-clean
Scientific Calculator
The current ledger marks this instrument verified clean within the source-bound verification corpus.
Inspectable records
Ledger state
The current ledger marks this instrument verified clean within the source-bound verification corpus.
- Area
- Mathematics — arithmetic through advanced (algebra, matrices, calculus, sequences/series, number theory, combinatorics, graphing, complex numbers, geometry, logic, sets)
- Tranche
- tranche-8
- Evidence ID
- t8-004
- Ledger rows
- 1
No ledger note is attached.
Review findings
The arithmetic and precedence approach is broadly standard, but the specification is incomplete for angle-mode implementation, logarithm naming, memory behavior, parser portability, and error semantics. These ambiguities prevent an unconditional PASS.
Formula and scope findings
- Direct evaluation through math.js is a valid expression-evaluation strategy, but it does not by itself define DEG/RAD/GRAD behavior; angle-mode conversion must be explicitly implemented for trigonometric inputs and inverse-trigonometric outputs.
- The specification does not define logarithm semantics. math.js log(x) is the natural logarithm, while a standard scientific-calculator label log commonly means base-10; log10(x) or an explicit base is required to avoid ambiguity.
- Memory-register operations are claimed but are absent from the input contract and formula description; store, recall, add, clear, and register lifetime semantics must be specified.
- Power associativity and calculator-specific precedence for chained exponentiation are not stated; expressions such as 2^3^2 need a defined interpretation.
- The iOS note says NSExpression or a custom parser may replace math.js, but parser compatibility and supported functions/operators are not defined, so results may differ across engines.
Unit assumptions
- Angles are interpreted in the selected mode: DEG means degrees, RAD means radians, and GRAD means gradians; the mode must affect trigonometric functions consistently.
- For the test vectors below, exp(1) is the natural exponential e, sqrt is the nonnegative real square root, and ^ denotes exponentiation.
- No physical units are present in these expressions; all numeric values are dimensionless.
- The expected arithmetic assumes ordinary real-number scientific-calculator behavior and sufficient internal precision.
Boundary hardening
BREAK_CLAIMED · SELF_FLAGGED
The division-by-zero vector produces Infinity at the numeric evaluator level even though the mathematical result is undefined, and the unspecified logarithm-base convention can produce either 4.605170185988091 or 2 for the same displayed expression.
Errata and corrections
No applied erratum is attached to this unique-name record.
Inspectable example
4 review vectors are recorded. One source-bound sample is shown below.
{
"inputs": {
"expression": "sin(30) + sqrt(81)",
"angle_mode": "DEG"
},
"expected_outputs": {
"result": 9.5
},
"reference_data": {
"identity": "sin(30 degrees)=1/2",
"formula": "sin(30 degrees)+sqrt(81)"
},
"working": "30 degrees = 30*pi/180 = pi/6. sin(pi/6)=1/2=0.5. sqrt(81)=9. Add: 0.5+9=9.5."
}Related workflows
No source-defined multi-instrument workflow membership is recorded.
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.json · VERIFIED_CLEANevidence-tranche8/tranche8-results.jsonBOUNDARY_HAZARD_CATALOG.json