Exact expanded PA statement
forall p a. ~(p = 0) -> (exists wpp_mod_left_euler_zero_mod wpp_mod_right_euler_zero_mod. (a) + p * wpp_mod_left_euler_zero_mod = (0) + p * wpp_mod_right_euler_zero_mod) -> exists k. a = p * kStructural proof guide
Generated structural guide
For a nonzero modulus, congruence to zero gives an explicit divisor witness.
Use the direct prerequisites nonzero_is_succ, mod_eq_to_remainder_decomposition, mul_comm as previously established PA formulas.
The proof proceeds by case analysis (2), intermediate claims (3), certified simplification (2).
Referenced ingredients
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Alpha-v16 checked-use theorem is independently kernel-checked when replayed; it is not a Stable theorem.
- 0001
intro p - 0002
intro a - 0003
intro hp - 0004
intro hmod - 0005
have hps : exists n. p = S n - 0006
specialize nonzero_is_succ p - 0007
apply nonzero_is_succ - 0008
exact hp - 0009
cases hps - 0010
have hbound : exists d. d + S 0 = p - 0011
exists x - 0012
trans S x - 0013
simp - 0014
symm - 0015
exact hps_witness - 0016
have hdecomp : exists q. a = q * p + 0 - 0017
specialize mod_eq_to_remainder_decomposition p - 0018
specialize mod_eq_to_remainder_decomposition a - 0019
specialize mod_eq_to_remainder_decomposition 0 - 0020
apply mod_eq_to_remainder_decomposition - 0021
exact hp - 0022
exact hbound - 0023
exact hmod - 0024
cases hdecomp - 0025
exists x1 - 0026
trans x1 * p + 0 - 0027
exact hdecomp_witness - 0028
trans x1 * p - 0029
simp - 0030
apply mul_comm