add_assoc
Associativity of addition holds on LogicNat, the naturals constructed from the Law of Logic. Researchers deriving arithmetic operations inside the Recognition framework cite this when composing cost functions or ring structures. The proof runs by induction on the third argument, reducing the successor case with three rewrites of add_succ followed by the induction hypothesis.
claimFor all elements $a, b, c$ of the natural numbers generated by the Law of Logic, addition satisfies $(a + b) + c = a + (b + c)$.
background
LogicNat is the inductive type whose constructors are identity (the zero-cost multiplicative identity) and step (one further iteration of the generator), reproducing the orbit {1, γ, γ², …} as the smallest subset of positive reals closed under multiplication by γ. Addition is defined recursively on this type; the companion lemma add_succ states that n + succ m = succ (n + m) and is used as a rewrite rule. The module ArithmeticFromLogic derives the Peano axioms as theorems rather than postulates, importing only the functional-equation foundation and a cellular-automaton step operation.
proof idea
Induction is applied on the third argument c. The identity base case closes by reflexivity. In the successor case the goal is rewritten by add_succ on the left-hand sum, on the right-hand sum, and on the combined term; the induction hypothesis then finishes the equality.
why it matters in Recognition Science
The result supplies the additive associativity required by downstream theorems such as H_dAlembert (which converts the Recognition Composition Law into the d'Alembert equation for J-cost) and the PhiRingObj and PhiInt constructions inside RecognitionCategory. It therefore sits inside the arithmetic layer that supports the forcing chain from T5 (J-uniqueness) through T8 (D = 3) and the eight-tick octave. No open scaffolding questions are attached to this declaration.
scope and limits
- Does not prove commutativity of addition on LogicNat.
- Does not extend addition or associativity to real numbers or other carriers.
- Does not address multiplication, ordering, or induction on other variables.
- Does not apply to non-well-founded or infinite descending chains.
formal statement (Lean)
154theorem add_assoc (a b c : LogicNat) : (a + b) + c = a + (b + c) := by
proof body
Term-mode proof.
155 induction c with
156 | identity => rfl
157 | step c ih =>
158 show (a + b) + succ c = a + (b + succ c)
159 rw [add_succ, add_succ, add_succ, ih]
160
used by (40)
-
plot_composition_cancels_iff -
H_dAlembert -
sub_eq_add -
PhiInt -
canonicalPhiRingObj -
PhiRingObj -
duhamelRemainderOfGalerkin_integratingFactor -
unitSphereSurface_D3 -
Jcost_one_plus_eps_quadratic -
Jcost_small_strain_bound -
dAlembert_product -
Jcost_one_plus_eps_quadratic -
Jcost_small_strain_bound -
Jcost_log_second_deriv_normalized -
virtue_composition_associative -
neutralityScore_shift1_of_periodic8 -
le_trans -
mul_add -
cosh_quadratic_bound -
conservation_from_balance -
eventCompose_assoc -
preferenceCompose_assoc -
reproduce_assoc -
kernel_response_limit -
response_function_is_real_part -
n_of_r_mono_A_of_nonneg_p -
cone_bound -
cone_bound_saturates -
reach_rad_le -
reach_time_eq