Identifier
F:creal-integral-converges
Proof route
kernel-lean
External status
proved
Axiom footprint
Empty

Recorded description

For F, a <= b and a uniform-continuity witness u: the sequence of Riemann sums riemannSum F a b (deep F a b u n + 0), n = 0, 1, 2, ..., converges to CReal.integral F a b hab u. Ties CReal.integral's mk/speedup construction back to the Converges predicate, fully generically in F, a, b, hab and u.

Formal statement
theorem CReal.integral_converges : ((x0 : ((x0 : CReal) -> CReal)) -> ((x1 : CReal) -> ((x2 : CReal) -> ((x3 : CReal.le x1 x2) -> ((x4 : CReal.UniformlyContinuousOn x0 x1 x2) -> CReal.Converges (fun (x5 : AxNat) => CReal.riemannSum x0 x1 x2 (AxNat.add (AxNat.add (AxNat.mul (AxNat.succ (CReal.bound (CReal.add x2 (CReal.neg x1)))) (CReal.UniformlyContinuousOn.modulus x0 x1 x2 x4 x5)) (CReal.bound (CReal.add x2 (CReal.neg x1)))) AxNat.zero)) (CReal.integral x0 x1 x2 x3 x4))))))

Dependencies

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

Evidence

kernel-CReal.integral_converges

Kind
kernel-term
Status
checked

Supports: CReal.integral_converges 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 -- integral_converges 2>/dev/null | grep -cE '^CReal\.integral_converges[[:space:]]'
Evidence notes

build_creal_prelude admits CReal.integral_converges through the trusted Kernel::add_declaration gate. theorem_dependency_inventory exits non-zero for a named filter matching nothing; grep -c asserts the exact tab-anchored line. Mutation-tested on an isolated /data0 snapshot: renaming the display string from "integral_converges" to "integral_converges_MUTATED" at crates/axeyum-lean-kernel/src/creal.rs:4390 makes this exact grep return 0 matches (exit 1) in the rebuilt binary; five DOWNSTREAM theorems (integral_const, integral_add, integral_le, integral_scale, integral_witness_independent, riemannSum_integral_close) still built and their OWN name-anchored greps still matched in that same rebuild, since only the display string changed and every Rust reference uses the NameId field -- confirming the check discriminates on this theorem's own name, not on the build succeeding globally. --release is MANDATORY: this tool also builds creal/complex/cpoint, which overflow the default debug thread stack.

footprint-CReal.integral_converges

Kind
exhaustive-enumeration
Status
checked

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

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

Re-measured on this tree: creal: axiom=0 opaque=0 quotient=0 total_trusted=0, exits 0 printing 'ok: creal trusted surface = 0'. --require-axiom-free <name> errors for a prelude never built by this run. --release is MANDATORY here.

Provenance

{
  "date": "2026-08-27",
  "established_by": "axeyum-lean-kernel build_creal_prelude (crates/axeyum-lean-kernel/src/creal/integral.rs, declare_integral_converges)",
  "source": "theorem name and canonical type read via a standalone probe binary depending on axeyum-lean-kernel by path, calling only its public Kernel API. Direct dependency edges cross-checked against theorem_dependency_inventory's own output on the same tree. The probe was built and run in the session scratchpad and deleted after use; crates/ source was not touched to produce this batch."
}