Encyclopedia Foundation Foundation Primitive Recognition Calculus Grow Ratio Orbit Mul Pos Mul Strictpos

ARTICLE 2 claims 2 theorems

Foundation Primitive Recognition Calculus Grow Ratio Orbit Mul Pos Mul Strictpos

When two positive ratios are multiplied, the product stays positive; the framework's machine-checked library proves it in a few lines.

The growth closure

A ratio orbit is a pair of natural numbers, a positive count and a negative count, that records how many steps of growth and decay a system has taken. A ratio orbit is positive when the positive count exceeds the negative count. The declaration mul_strictpos_cf proves that the product of two positive ratio orbits is again positive: if a and b each have more positive steps than negative steps, then their product, defined by the formulas pos = a.pos*b.pos + a.neg*b.neg and neg = a.pos*b.neg + a.neg*b.pos, also has more positive steps than negative steps. This is a THEOREM, checked by the machine-checked library of formal theorems; the proof rewrites the product's counts and uses the fact that a smaller natural number plus a positive difference is still smaller than the larger number plus that difference.

The result matters because it closes a gap in the framework's construction of growth. The library first defines what it means for one ratio orbit to be less than another, then shows that the positivity predicate, ltQ RatioOrbit.zero, is preserved under multiplication. The theorem ltQ_mul_pos states exactly this: if p and q are both greater than zero, then p * q is greater than zero. The proof reduces this to mul_strictpos_cf by translating the order relation into the count comparison. So the framework establishes that the positive ratio orbits form a multiplicative structure: multiplying two of them never produces a negative or zero result.

What the declaration does not claim is broader. It does not say that multiplication is commutative, associative, or invertible; those properties require separate proofs. It does not assert that the product of two positive ratio orbits is larger than either factor, only that it remains positive. It says nothing about addition, subtraction, or division of ratio orbits. The theorem is a single, narrow closure property: positivity survives multiplication. That is the whole content, and the whole content is what the machine-checked proof guarantees.

THEOREM mul_strictpos_cf · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/Grow/RatioOrbitMulPos.lean
theorem mul_strictpos_cf (a b : SignedOrbit) (ha : a.neg.toNat < a.pos.toNat) (hb : b.neg.toNat < b.pos.toNat) : (SignedOrbit.mul a b).neg.toNat < (SignedOrbit.mul a b).pos.toNat := by
  have hpos : (SignedOrbit.mul a b).pos.toNat = a.pos.toNat * b.pos.toNat + a.neg.toNat * b.neg.toNat := by
    show (a.pos * b.pos + a.neg * b.neg).toNat = _
    rw [DistinctionNat.toNat_add, DistinctionNat.toNat_mul, DistinctionNat.toNat_mul]
  have hneg : (SignedOrbit.mul a b).neg.toNat = a.pos.toNat * b.neg.toNat + a.neg.toNat * b.pos.toNat := by
    show (a.pos * b.neg + a.neg * b.pos).toNat = _
    rw [DistinctionNat.toNat_add, DistinctionNat.toNat_mul, DistinctionNat.toNat_mul]
  rw [hpos, hneg]; obtain ⟨s, hs⟩ := Nat.exists_eq_add_of_lt ha; obtain ⟨t, ht⟩ := Nat.exists_eq_add_of_lt hb; rw [hs, ht]; ring_nf; omega
THEOREM ltQ_mul_pos · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/Grow/RatioOrbitMulPos.lean
theorem ltQ_mul_pos (p q : RatioOrbit) (hp : ltQ RatioOrbit.zero p) (hq : ltQ RatioOrbit.zero q) : ltQ RatioOrbit.zero (RatioOrbit.mul p q) := by
  rw [zero_ltQ_iff_num] at hp hq ⊢
  have h : (RatioOrbit.mul p q).num = SignedOrbit.mul p.num q.num := rfl
  rw [h]
  exact mul_strictpos_cf p.num q.num hp hq

What this page does not claim

The product of two positive ratio orbits is not claimed to be larger than either factor. The theorem does not establish commutativity, associativity, or invertibility of multiplication. The declaration says nothing about addition or division of ratio orbits.

Verify this page

Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:

$ lake env lean IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/Grow/RatioOrbitMulPos.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)

A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.

Derived articles

This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:

MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND