Encyclopedia Foundation Foundation Primitive Recognition Calculus Orbit Divisibility Unit Or Unit Of Mul

ARTICLE 3 claims 3 theorems

Foundation Primitive Recognition Calculus Orbit Divisibility Unit Or Unit Of Mul

In the framework's arithmetic of recognition events, a prime cannot be split into two non-trivial factors: one factor must always be the unit.

The divisibility theorem

The theorem unit_or_unit_of_mul_eq_prime is a statement about a special kind of number called a prime orbit. In the Recognition Science framework, a prime orbit is a position in a discrete record of events, a ledger, that cannot be written as a product of two smaller non-trivial positions. The theorem says: if you multiply two positions and the result is a prime orbit, then at least one of the two positions you started with must be the unit, the position corresponding to the number one. In ordinary arithmetic, this is exactly the defining property of a prime number: a prime cannot be factored into two numbers both greater than one.

The framework's library, a machine-checked collection of formal theorems, proves this statement for its own arithmetic of positions. The proof uses the fact that the framework's multiplication and divisibility mirror the usual multiplication and divisibility of natural numbers. A companion theorem shows that a position is a prime orbit if and only if its corresponding natural number has no non-trivial factor. From this, the divisibility theorem follows directly. The library also proves the converse: if a position is not zero and not the unit, and every product equal to it forces one factor to be the unit, then that position is a prime orbit. Together, these two results give a complete characterization.

The theorem does not say anything about which specific positions are prime orbits. It does not list them, and it does not claim that the framework's arithmetic is the same as the usual arithmetic of natural numbers in every respect. It only establishes the structural property that primes cannot be split. The theorem also does not claim that the framework's arithmetic is the only way to define primes, nor does it say anything about the distribution of prime orbits. It is a local statement about the behavior of multiplication, not a global statement about the whole framework.

THEOREM unit_or_unit_of_mul_eq_prime · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/OrbitDivisibility.lean
/-- If an orbit is prime, every native factorization has a unit factor. -/
theorem unit_or_unit_of_mul_eq_prime {a b p : DistinctionNat}
    (hp : primeOrbit p) (hmul : a * b = p) :
    unit a ∨ unit b := by
  by_cases ha0 : a = zero
  · exfalso
    rcases hp with ⟨hp0, _, _⟩
    apply hp0
    rw [← hmul, ha0, zero_mul_eq]
  · by_cases hb0 : b = zero
    · exfalso
      rcases hp with ⟨hp0, _, _⟩
      apply hp0
      rw [← hmul, hb0, mul_zero_eq]
    · by_cases ha1 : unit a
      · exact Or.inl ha1
      · by_cases hb1 : unit b
        · exact Or.inr hb1
        · exfalso
          rcases hp with ⟨_, _, hnf⟩
          exact hnf ⟨a, b, ha0, hb0, ha1, hb1, hmul⟩
THEOREM primeOrbit_iff_toNat_no_nontrivial_factor · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/OrbitDivisibility.lean
/-- Native prime-orbit predicate displays as the Nat no-nontrivial-factor
predicate, without defining primality by importing Nat prime theory. -/
theorem primeOrbit_iff_toNat_no_nontrivial_factor (p : DistinctionNat) :
    primeOrbit p ↔
      p.toNat ≠ 0 ∧ p.toNat ≠ 1 ∧
        ¬ ∃ a b : Nat,
          a ≠ 0 ∧ b ≠ 0 ∧ a ≠ 1 ∧ b ≠ 1 ∧ a * b = p.toNat := by
  unfold primeOrbit
  rw [unit_iff_toNat_eq_one, nontrivialFactorization_iff_toNat]
  constructor
  · intro h
    rcases h with ⟨hp0, hp1, hfac⟩
    refine ⟨?_, hp1, hfac⟩
    intro hz
    have : p = zero := by
      apply toNat_inj
      rw [hz, toNat_zero]
    exact hp0 this
  · intro h
    rcases h with ⟨hp0, hp1, hfac⟩
    refine ⟨?_, hp1, hfac⟩
    intro hz
    exact hp0 (by rw [hz, toNat_zero])
THEOREM primeOrbit_of_unit_or_unit · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/OrbitDivisibility.lean
/-- Converse native factor theorem: if a nonzero non-unit orbit position has
only unit factors, then it is a prime orbit. -/
theorem primeOrbit_of_unit_or_unit
    {p : DistinctionNat}
    (hp0 : p ≠ zero)
    (hp1 : ¬ unit p)
    (hfac : ∀ a b : DistinctionNat, a * b = p → unit a ∨ unit b) :
    primeOrbit p := by
  refine ⟨hp0, hp1, ?_⟩
  intro hnon
  rcases hnon with ⟨a, b, _ha0, _hb0, ha1, hb1, hmul⟩
  rcases hfac a b hmul with ha | hb
  · exact ha1 ha
  · exact hb1 hb

What this page does not claim

The theorem does not list which positions are prime orbits. The theorem does not claim the framework's arithmetic is identical to natural number arithmetic in all respects. The theorem does not say anything about the distribution of prime 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/OrbitDivisibility.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