Exact expanded PA statement
forall p a x y. ((~(p = 1) /\ forall esi_prime_left_target_nonzero_prime esi_prime_right_target_nonzero_prime. p = esi_prime_left_target_nonzero_prime * esi_prime_right_target_nonzero_prime -> esi_prime_left_target_nonzero_prime = 1 \/ esi_prime_right_target_nonzero_prime = 1)) -> ~(a = 0) -> (exists esi_strict_gap_target_nonzero_target_bound. esi_strict_gap_target_nonzero_target_bound + S a = p) -> (exists esi_mod_left_target_nonzero_product esi_mod_right_target_nonzero_product. (x * y) + p * esi_mod_left_target_nonzero_product = (a) + p * esi_mod_right_target_nonzero_product) -> ~(y = 0)Structural proof guide
Generated structural guide
A scaled inverse of a nonzero bounded target cannot be zero.
Use the direct prerequisites prime_is_succ_succ, mod_eq_bounded_unique as previously established PA formulas.
The proof proceeds by case analysis (3), intermediate claims (4), equality transport (1), certified simplification (1).
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 x - 0004
intro y - 0005
intro hp - 0006
intro ha0 - 0007
intro hap - 0008
intro hxy - 0009
intro hy0 - 0010
have hp2 : exists k. p = S (S k) - 0011
specialize prime_is_succ_succ p - 0012
apply prime_is_succ_succ - 0013
exact hp - 0014
cases hp2 - 0015
have h0p : exists h. h + S 0 = p - 0016
exists S x1 - 0017
rewrite hp2_witness - 0018
simp - 0019
have hzeroa : exists esi_mod_left_target_nonzero_zero esi_mod_right_target_nonzero_zero. (0) + p * esi_mod_left_target_nonzero_zero = (a) + p * esi_mod_right_target_nonzero_zero - 0020
cases hxy - 0021
cases hxy_witness - 0022
exists x2 - 0023
exists x3 - 0024
trans (x * y) + p * x2 - 0025
congr - 0026
symm - 0027
trans x * 0 - 0028
congr - 0029
refl - 0030
exact hy0 - 0031
apply PA5 - 0032
refl - 0033
exact hxy_witness_witness - 0034
have h0a : 0 = a - 0035
specialize mod_eq_bounded_unique p - 0036
specialize mod_eq_bounded_unique 0 - 0037
specialize mod_eq_bounded_unique a - 0038
apply mod_eq_bounded_unique - 0039
exact h0p - 0040
exact hap - 0041
exact hzeroa - 0042
apply ha0 - 0043
symm - 0044
exact h0a