IndisputableMonolith.Numerics.Interval.Basic
The basic interval module defines a closed interval whose endpoints are rational numbers, together with addition, negation, and a containment predicate. Developers building rigorous bounds on transcendental and algebraic constants inside Recognition Science import it to keep every numeric estimate exact and machine-verifiable. The module supplies only the core type and elementary operations; no deep proofs are present.
claimLet $I=[q_1,q_2]$ be a closed interval with rational endpoints $q_1,q_2$ satisfying $q_1leq q_2$. The module supplies the corresponding type, the predicate that a real number lies inside $I$, and the interval versions of addition and negation.
background
This module sits at the root of the Numerics.Interval hierarchy and supplies the data type used by every higher-level bound. An interval is represented by a pair of rationals that serve as exact lower and upper bounds, guaranteeing that all arithmetic remains inside Lean without approximation. The contains predicate tests membership of a real point, while mk' constructs an interval from two rationals and add, neg preserve the containment relation.
proof idea
This is a definition module, no proofs.
why it matters in Recognition Science
It supplies the common interval substrate required by the exponential, logarithmic, power, phi-bounds, and pi-bounds modules. Those modules deliver the verified estimates that underwrite the Recognition Science constants (c=1, hbar=phi^{-5}, G=phi^5/pi) and the mass ladder on the phi-ladder. Without this foundation the entire numeric verification layer would lack an exact, shared substrate.
scope and limits
- Does not define interval multiplication or division.
- Does not admit intervals with real endpoints.
- Does not provide open or half-open intervals.
- Does not include any interval tactic or automation.
- Does not address unbounded intervals.
used by (8)
-
IndisputableMonolith.Numerics.Interval.Exp -
IndisputableMonolith.Numerics.Interval.GalacticBounds -
IndisputableMonolith.Numerics.Interval.Log -
IndisputableMonolith.Numerics.Interval.PhiBounds -
IndisputableMonolith.Numerics.Interval.PiBounds -
IndisputableMonolith.Numerics.Interval.Pow -
IndisputableMonolith.Numerics.Interval.Tactic -
IndisputableMonolith.Numerics.Interval.Trig
declarations in this module (27)
-
structure
Interval -
def
contains -
def
point -
theorem
contains_point -
def
mk' -
def
add -
theorem
add_lo -
theorem
add_hi -
theorem
add_contains_add -
def
neg -
theorem
neg_lo -
theorem
neg_hi -
theorem
neg_contains_neg -
def
sub -
theorem
sub_lo -
theorem
sub_hi -
theorem
sub_contains_sub -
def
mulPos -
theorem
mulPos_contains_mul -
def
smulPos -
theorem
smulPos_contains_smul -
def
npow -
theorem
npow_contains_pow -
theorem
lo_gt_implies_contains_gt -
theorem
hi_lt_implies_contains_lt -
theorem
lo_ge_implies_contains_ge -
theorem
hi_le_implies_contains_le