Identifier
F:creal-ivt-exact-root
Proof route
kernel-lean
External status
Not recorded
Axiom footprint
Empty

Recorded description

CReal.ivt_exact_root strengthens CReal.ivt_approx's conclusion from abs (F x) <= 1/(n+1) for every n to a single EXACT root: Equiv (F c) zero outright. The price is one extra hypothesis on top of ivt_approx's own (uniform continuity, F a <= 0 <= F b): a uniformly positive derivative on all of [a, b], bounded away from zero by a fixed 1/(k+1). This hypothesis is strictly stronger than Mathlib's ContinuousOn, and it is not a convenience -- CReal.ivt_exact_root_decides_sign proves that dropping it (down to uniform continuity alone) would let an exact root decide the sign of an arbitrary real, which this kernel's order does not support. creal/ivt_boundary.rs's own module documentation names the family (a plateau with a flat segment at height v) that this derivative hypothesis is specifically built to exclude. The construction is not a new argument: it composes CReal.ivt_bisect_hi (data), CReal.ivt_bisect_approx, CReal.ivt_bisect_cauchy, and CReal.converges_of_cauchy.

Formal statement
theorem CReal.ivt_exact_root : ((x0 : ((x0 : CReal) -> CReal)) -> ((x1 : ((x1 : CReal) -> CReal)) -> ((x2 : CReal) -> ((x3 : CReal) -> ((x4 : CReal.HasDerivativeOn x0 x1 x2 x3) -> ((x5 : CReal.UniformlyContinuousOn x0 x2 x3) -> ((x6 : CReal.le x2 x3) -> ((x7 : CReal.le (x0 x2) CReal.zero) -> ((x8 : CReal.le CReal.zero (x0 x3)) -> ((x9 : AxNat) -> ((x10 : ((x10 : CReal) -> ((x11 : CReal.le x2 x10) -> ((x12 : CReal.le x10 x3) -> CReal.le (CReal.ofRat (Rat.natDivSucc (AxNat.succ AxNat.zero) x9)) (x1 x10))))) -> Exists.{1} CReal (fun (x11 : CReal) => And (CReal.le x2 x11) (And (CReal.le x11 x3) (CReal.Equiv (x0 x11) CReal.zero))))))))))))))

Dependencies

The graph shows direct ledger edges. Follow a node to open its artifact page.

Direct dependencies appear to the left. The current fact is in the center. Facts that depend directly on it appear to the right. [generated] kernel theorem CRea Absolute value on the construct A two-sided bound implies a bou Addition on the constructed rea Addition on the constructed rea Addition on the constructed rea Addition preserves order on the Every constructed real has an a Current fact CReal.ivt_exact_root_at: the ex
33 direct dependencies 1 direct dependents Graph shows the first 8 on each side.

Evidence

kernel-CReal.ivt_exact_root

Kind
kernel-term
Status
checked

Supports: CReal.ivt_exact_root is admitted by the trusted kernel gate with the type recorded in formal.statement.

Checker command
cargo run -q --release -p axeyum-lean-kernel --example theorem_dependency_inventory -- CReal.ivt_exact_root 2>/dev/null | grep -cE '^CReal\.ivt_exact_root[[:space:]]'
Evidence notes

Two independent failure modes, so the exit status depends on the finding rather than on the run completing: theorem_dependency_inventory exits non-zero when a NAMED filter matches nothing, and grep -c exits 1 printing 0 when the anchored line is absent. Anchored with [[:space:]], never \t -- in a scripted (GNU) grep \t is a literal t. grep -c rather than grep -q, which would SIGPIPE the producer under pipefail. --release is MANDATORY: this tool builds creal/complex/cpoint, which overflow the default debug thread stack.

footprint-CReal.ivt_exact_root

Kind
exhaustive-enumeration
Status
checked

Supports: axiom_footprint: [] -- the creal prelude's trusted surface is empty, which bounds CReal.ivt_exact_root.

Checker command
cargo run -q --release -p axeyum-lean-kernel --example nat_axiom_inventory -- --include-constructed --require-axiom-free creal
Evidence notes

--require-axiom-free exits non-zero when the named prelude's trusted surface (Axiom + Opaque + Quotient) is not empty, and errors rather than silently passing for a prelude the run never built. A declaration cannot depend on a trusted declaration the environment does not contain, so an empty creal surface bounds every declaration in it, including CReal.ivt_exact_root. This is a whole-prelude bound, not a per-declaration measurement; the per-declaration figure is the footprint column of kernel_declaration_projection, measured 0 for this row.

Provenance

{
  "date": "2026-08-27",
  "curation": "curated",
  "generated_by": "scripts/gen-kernel-facts.py",
  "established_by": "axeyum-lean-kernel build_creal_prelude (crates/axeyum-lean-kernel/src/creal/)",
  "source": "Derived mechanically from the unfiltered emit of `cargo run -q --release -p axeyum-lean-kernel --example kernel_declaration_projection`, which prints one TSV row per declaration whose fields are (prelude, kind, display name, axiom-footprint size, direct type declarations, direct declarations, direct theorems, Kernel::render_lean(declaration.ty())). formal.statement is that last field verbatim; depends_on is the direct-theorem column intersected with this ledger's registered facts; axiom_footprint is the footprint-size column, cross-checked by the whole-prelude nat_axiom_inventory run recorded in the second evidence row. No field was hand-transcribed and no prose was authored."
}