theorem
proved
zero_ne_succ
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.Foundation.ArithmeticFromLogic on GitHub at line 89.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
used by
-
canonicalCategoricalRealization -
logicNatNNO -
boolRealization -
ofPositiveRatioComparison -
positiveRatio_faithful -
modularRealization -
natOrderedRealization -
physics_faithful -
physicsRealization -
biologyRealization -
ethicsRealization -
modularRealization -
musicRealization -
narrativeRealization -
interpret_collapses -
orderRealization -
strictCategoricalRealization -
toLightweight -
logicRealizationOfDistinction
formal source
86
87/-- **Peano P1 (zero is not a successor)**: the identity is
88distinguishable from any iterate of the generator. -/
89theorem zero_ne_succ (n : LogicNat) : zero ≠ succ n := by
90 intro h; cases h
91
92/-- **Peano P1, contrapositive**: every successor differs from zero. -/
93theorem succ_ne_zero (n : LogicNat) : succ n ≠ zero := by
94 intro h; cases h
95
96/-- **Peano P2 (successor injectivity)**: forced by the constructor
97disjointness of the inductive type, which itself reflects the
98injectivity of multiplication by the generator on the orbit. -/
99theorem succ_injective : Function.Injective succ := by
100 intro a b h
101 cases h
102 rfl
103
104/-- **Peano P3 (induction)**: any property closed under successor and
105holding at zero holds for every `LogicNat`. -/
106theorem induction
107 {motive : LogicNat → Prop}
108 (h0 : motive zero)
109 (hs : ∀ n, motive n → motive (succ n)) :
110 ∀ n, motive n := by
111 intro n
112 induction n with
113 | identity => exact h0
114 | step n ih => exact hs n ih
115
116/-! ## 4. Addition and Multiplication
117
118Addition is repeated successor; multiplication is repeated addition.
119Both are defined by recursion on the second argument. We register