Encyclopedia Foundation Foundation Primitive Recognition Calculus Orbit Arithmetic Mul Ne Zero

ARTICLE 1 claim 1 theorem

Foundation Primitive Recognition Calculus Orbit Arithmetic Mul Ne Zero

In a framework where counting starts from discrete recognition events, a machine-checked theorem proves that multiplying two nonzero counts never yields zero.

The nonzero product theorem

In ordinary arithmetic, the product of two nonzero whole numbers is never zero: 2 times 3 is 6, not 0. The Recognition Science declaration mul_ne_zero establishes the same fact for a specially defined type of number called DistinctionNat, which represents positions on a recognition orbit, a discrete record of events. The theorem states that if two orbit positions are each not equal to zero, then their product is also not equal to zero. This is a proved result in the framework's machine-checked library of formal theorems, not a definitional choice or a hypothesis.

The proof relies on the way multiplication is defined for these orbit positions. Multiplication is nested repetition: multiplying a by b means repeating the process of adding a, b times. The declaration mul_ne_zero is proved by induction, a standard mathematical technique that verifies a statement step by step for all counting numbers. The theorem also connects to the framework's transport to ordinary natural numbers: the display of an orbit position's value matches the usual natural number, and the product of two nonzero displays is nonzero because the same holds for natural numbers.

What this theorem does not claim is broader than what it proves. It does not assert that the recognition orbit itself is closed under multiplication in any physical sense; it only concerns the arithmetic of the positions. It does not claim that zero is the only obstacle to multiplication, nor does it say anything about division or inverses. The declaration is a narrow, exact statement about a formal arithmetic structure, not a claim about the physical world or about any particular recognition process.

THEOREM mul_ne_zero · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/OrbitArithmetic.lean
/-- K4.7. Product of nonzero orbit positions is nonzero. -/
theorem mul_ne_zero {a b : DistinctionNat}
    (ha : a ≠ zero) (hb : b ≠ zero) :
    a * b ≠ zero := by
  intro h
  have hnat : (a * b).toNat = zero.toNat := by rw [h]
  rw [toNat_mul, toNat_zero] at hnat
  rcases Nat.mul_eq_zero.mp hnat with hzero | hzero
  · have : a = zero := by
      apply toNat_inj
      rw [toNat_zero]
      exact hzero
    exact ha this
  · have : b = zero := by
      apply toNat_inj
      rw [toNat_zero]
      exact hzero
    exact hb this

What this page does not claim

This theorem does not claim that the recognition orbit is physically closed under multiplication. This theorem does not claim anything about division or multiplicative inverses for orbit positions. This theorem does not claim that zero is the only obstruction to multiplication in any broader algebraic sense.

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/OrbitArithmetic.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