Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument / verified-with-binding-errata

Derivative Calculator (symbolic + numeric)

The current ledger marks this instrument verified with errata that must be applied at binding time.

Status: VERIFIED_WITH_ERRATALifecycle: verified-with-binding-errata

Inspectable records

Ledger state

The current ledger marks this instrument verified with errata that must be applied at binding time.

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-020
Ledger rows
1

No ledger note is attached.

Review findings

The standard first-derivative formula is correct only when interpreted as (f(x+h)-f(x-h))/(2*h), with radians for trigonometric examples and a documented nonzero h. The specification is FAIL because h and the nth numeric-derivative algorithm are undefined, and the broad symbolic-support claim lacks domain and capability limits.

Formula and scope findings

  • The numeric formula is written as f(x+h)-f(x-h)/2h, which is ambiguous under standard operator precedence; it must be explicitly written as (f(x+h)-f(x-h))/(2*h).
  • The step size h is not specified as an input, fixed constant, adaptive value, or error-controlled value.
  • Only the first-derivative central-difference formula is specified, but the instrument claims nth numeric derivatives; the algorithm for order greater than 1 is missing.
  • The symbolic behavior and supported syntax/domain rules of math.js derivative() are not defined, so the claim of general symbolic differentiation is too broad.
  • The numeric central difference is an approximation and should report or document its h-dependent numerical error.

Unit assumptions

  • Angles are assumed to be in radians for trigonometric functions.
  • The independent variable x and h must use the same units; h must be nonzero and sufficiently small relative to the scale of x.
  • For logarithms and other restricted functions, inputs must remain in the function's valid real or complex domain.
  • The displayed numeric values below use h=0.00001.

Boundary hardening

BREAK_CLAIMED · SELF_FLAGGED

The numeric path accepts h=0 unless it explicitly validates the step size; the central-difference formula then evaluates 0/0. The branch-switch probe also exposes a semantic hazard: abs(x) at x=0 yields a finite central estimate even though the true derivative is undefined.

Errata and corrections

Tranche errata

spot_checks[0] (at x=0) · vector 1

input_side=-0.9999999999

-1.9999999999 (matches answer_side=-2.0 to 10 decimals)

the numeric finite-difference at x=0 is off by almost exactly a factor of 2 from the correct derivative — consistent with dividing by h instead of 2h in the central-difference formula; the SAME vector's x=1 spot-check is computed correctly, so the error is local to this one point, not the whole method

Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

{
  "inputs": {
    "function": "x^3-2*x+1",
    "variable": "x",
    "point": 2,
    "order": 1,
    "h": 0.00001
  },
  "expected_outputs": {
    "symbolic_derivative": "3*x^2-2",
    "numeric_value": 10.0000000001,
    "spot_checks": [
      {
        "at": 0,
        "input_side": -0.9999999999,
        "answer_side": -2
      },
      {
        "at": 1,
        "input_side": 1.0000000001,
        "answer_side": 1
      }
    ]
  },
  "reference_data": {
    "method": "First-order central difference",
    "h": 0.00001
  },
  "working": "Symbolic: d(x^3-2x+1)/dx = 3x^2-2; at x=2, 3(2^2)-2 = 12-2 = 10. Numeric: f(2.00001) = 2.00001^3 - 2(2.00001) + 1; f(1.99999) = 1.99999^3 - 2(1.99999) + 1. Their difference divided by 2(0.00001) simplifies exactly for this cubic to 3(2^2)-2+(0.00001)^2 = 10+0.0000000001 = 10.0000000001. At x=0, central result = -2+0.0000000001 = -1.9999999999? Correction: for f=x^3-2x+1, the central derivative is 3x^2-2+h^2. Thus at x=0 it is -1.9999999999, and at x=1 it is 1.0000000001. At x=2 it is 10.0000000001."
}

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_WITH_ERRATA
  • evidence-tranche8/tranche8-results.json
  • BOUNDARY_HAZARD_CATALOG.json