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

instrument mechanism / verified-clean

Numeric Root Finder (Newton/Bisection/Secant) mechanism

The inspectable method record for Numeric Root Finder (Newton/Bisection/Secant), kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

Model scope

NEEDS_REVIEW because the named methods are recognizable and Newton's formula is correct, but the exact secant formula, bisection update rules, stopping criterion, bracket requirements, endpoint behavior, and failure handling are not fully defined. The test vectors use fixed iteration counts except for the exact-endpoint case so their arithmetic is independently checkable.

  • Newton's formula is standard and correct when f'(xₙ) is nonzero.
  • Bisection is described only as midpoint halving; the required sign-based bracket update, endpoint-root handling, and stopping rule are unspecified.
  • The secant formula is not written explicitly. The standard form should be xₙ₊₁ = xₙ - f(xₙ)(xₙ - xₙ₋₁)/(f(xₙ)-f(xₙ₋₁)).
  • The tolerance criterion is unspecified: it could apply to |f(x)|, successive x differences, bracket width, or a combination.

Units and conventions

  • x, initial guesses, bracket endpoints, and x-based tolerances use the same units.
  • f(x) has an output unit, while f'(x) has units of f per x; therefore f(x)/f'(x) has x-units.
  • For secant calculations, (f(xₙ)-f(xₙ₋₁))/(xₙ-xₙ₋₁) has derivative units, so the secant correction has x-units.
  • The test vectors use dimensionless x and f values except where explicitly stated; no implicit degree/radian or unit conversion is involved.
  • If tolerance is a residual tolerance, it has f-units; if it is a step or bracket-width tolerance, it has x-units.

Inspectable vector

One of 4 source-bound review vectors:

{
  "inputs": {
    "method": "Newton",
    "function": "f(x)=x^2-2",
    "derivative": "f'(x)=2x",
    "initial_guess": 1,
    "iterations": 3
  },
  "expected_outputs": {
    "iteration_trace": [
      {
        "n": 0,
        "x": 1,
        "f_x": -1
      },
      {
        "n": 1,
        "x": 1.5,
        "f_x": 0.25
      },
      {
        "n": 2,
        "x": 1.4166666667,
        "f_x": 0.0069444444
      },
      {
        "n": 3,
        "x": 1.4142156863,
        "f_x": 0.0000060073
      }
    ],
    "root_estimate": 1.4142156863,
    "iteration_count": 3
  },
  "working": "Newton: x₁ = 1 - (-1)/2 = 1 + 0.5 = 1.5. Then f(1.5)=1.5²-2=2.25-2=0.25, so x₂ = 1.5 - 0.25/3 = 1.5 - 0.0833333333 = 1.4166666667. Then f(1.4166666667) = 1.4166666667² - 2 = 0.0069444444 and f'(x₂)=2(1.4166666667)=2.8333333333, so x₃ = 1.4166666667 - 0.0069444444/2.8333333333 = 1.4166666667 - 0.0024509804 = 1.4142156863."
}

Failure boundary

BREAK_CLAIMED · SELF_FLAGGED

Newton's method receives f(x)=x^3 with initial guess x=0, causing the update 0-0/0 to be undefined. The instrument must reject this input or explicitly report an undefined result.

Other records

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json
  • evidence-tranche3/tranche3-results.json
  • BOUNDARY_HAZARD_CATALOG.json