Exact expanded PA statement
forall p a n h A. p = S n -> ((~(p = 1) /\ forall esi_prime_left_ecb_prime esi_prime_right_ecb_prime. p = esi_prime_left_ecb_prime * esi_prime_right_ecb_prime -> esi_prime_left_ecb_prime = 1 \/ esi_prime_right_ecb_prime = 1)) -> ~(a = 0) -> (exists wpo_gap_ecb_a_lt_p. wpo_gap_ecb_a_lt_p + S (a) = p) -> n = h + h -> (exists ff_b_ecb_power ff_c_ecb_power. ((forall ff_i_ecb_power_repeat. (exists ff_lt_ecb_power_repeat_bound. ff_lt_ecb_power_repeat_bound + S ff_i_ecb_power_repeat = h) -> (((exists ff_h_ecb_power_repeat_decoded. ff_h_ecb_power_repeat_decoded + S (a) = S ((S (ff_i_ecb_power_repeat)) * ff_c_ecb_power)) /\ exists ff_q_ecb_power_repeat_decoded. ff_b_ecb_power = ff_q_ecb_power_repeat_decoded * S ((S (ff_i_ecb_power_repeat)) * ff_c_ecb_power) + (a)))) /\ (exists ff_u_ecb_power_product ff_v_ecb_power_product. ((((exists ff_h_ecb_power_product_start. ff_h_ecb_power_product_start + S (1) = S ((S (0)) * ff_v_ecb_power_product)) /\ exists ff_q_ecb_power_product_start. ff_u_ecb_power_product = ff_q_ecb_power_product_start * S ((S (0)) * ff_v_ecb_power_product) + (1))) /\ ((((exists ff_h_ecb_power_product_terminal. ff_h_ecb_power_product_terminal + S (A) = S ((S (h)) * ff_v_ecb_power_product)) /\ exists ff_q_ecb_power_product_terminal. ff_u_ecb_power_product = ff_q_ecb_power_product_terminal * S ((S (h)) * ff_v_ecb_power_product) + (A))) /\ forall ff_i_ecb_power_product. (exists ff_lt_ecb_power_product_bound. ff_lt_ecb_power_product_bound + S ff_i_ecb_power_product = h) -> exists ff_p_ecb_power_product ff_r_ecb_power_product ff_s_ecb_power_product. ((((exists ff_h_ecb_power_product_factor. ff_h_ecb_power_product_factor + S (ff_p_ecb_power_product) = S ((S (ff_i_ecb_power_product)) * ff_c_ecb_power)) /\ exists ff_q_ecb_power_product_factor. ff_b_ecb_power = ff_q_ecb_power_product_factor * S ((S (ff_i_ecb_power_product)) * ff_c_ecb_power) + (ff_p_ecb_power_product))) /\ ((((exists ff_h_ecb_power_product_partial. ff_h_ecb_power_product_partial + S (ff_r_ecb_power_product) = S ((S (ff_i_ecb_power_product)) * ff_v_ecb_power_product)) /\ exists ff_q_ecb_power_product_partial. ff_u_ecb_power_product = ff_q_ecb_power_product_partial * S ((S (ff_i_ecb_power_product)) * ff_v_ecb_power_product) + (ff_r_ecb_power_product))) /\ ((((exists ff_h_ecb_power_product_successor. ff_h_ecb_power_product_successor + S (ff_s_ecb_power_product) = S ((S (S ff_i_ecb_power_product)) * ff_v_ecb_power_product)) /\ exists ff_q_ecb_power_product_successor. ff_u_ecb_power_product = ff_q_ecb_power_product_successor * S ((S (S ff_i_ecb_power_product)) * ff_v_ecb_power_product) + (ff_s_ecb_power_product))) /\ ff_s_ecb_power_product = ff_r_ecb_power_product * ff_p_ecb_power_product)))))))) -> ((((exists qr_x_ecb_qres. exists qr_u_ecb_qres qr_v_ecb_qres. qr_x_ecb_qres * qr_x_ecb_qres + p * qr_u_ecb_qres = a + p * qr_v_ecb_qres) /\ (exists wpp_mod_left_ecb_mod_one wpp_mod_right_ecb_mod_one. (A) + p * wpp_mod_left_ecb_mod_one = (1) + p * wpp_mod_right_ecb_mod_one)) \/ ((~(exists qr_x_ecb_qres. exists qr_u_ecb_qres qr_v_ecb_qres. qr_x_ecb_qres * qr_x_ecb_qres + p * qr_u_ecb_qres = a + p * qr_v_ecb_qres)) /\ (exists wpp_mod_left_ecb_mod_predecessor wpp_mod_right_ecb_mod_predecessor. (A) + p * wpp_mod_left_ecb_mod_predecessor = (n) + p * wpp_mod_right_ecb_mod_predecessor))))Structural proof guide
Generated structural guide
Every bounded nonzero input lands constructively in exactly the appropriate Euler endpoint.
Use the direct prerequisites prime_nonzero, bounded_nonzero_not_divides, quadratic_residue_decidable_nonzero, quadratic_residue_half_power_mod_one, quadratic_nonresidue_half_power_mod_predecessor, add_succ_left, mul_comm, zero_add as previously established PA formulas.
The proof proceeds by case analysis (1), intermediate claims (5), equality transport (2), certified simplification (2).
Referenced ingredients
Proof neighborhood
Direct dependencies
PA0031 prime_nonzero PA0089 bounded_nonzero_not_divides PA005S quadratic_residue_decidable_nonzero PA008M quadratic_residue_half_power_mod_one PA00BM quadratic_nonresidue_half_power_mod_predecessor PA000E add_succ_left PA000H mul_comm PA0001 zero_addDirect 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 n - 0004
intro h - 0005
intro A - 0006
intro hpn - 0007
intro hp - 0008
intro ha0 - 0009
intro hap - 0010
intro heven - 0011
intro hpower - 0012
have hp0 : ~(p = 0) - 0013
intro hpzero - 0014
specialize prime_nonzero p - 0015
apply prime_nonzero - 0016
exact hp - 0017
exact hpzero - 0018
have hnotdiv : ~(exists frm_factor_ecb_not_divisor. a = p * frm_factor_ecb_not_divisor) - 0019
intro hdiv - 0020
specialize bounded_nonzero_not_divides p - 0021
specialize bounded_nonzero_not_divides a - 0022
apply bounded_nonzero_not_divides - 0023
exact ha0 - 0024
exact hap - 0025
exact hdiv - 0026
have hdouble : h + h = 2 * h - 0027
trans h * 2 - 0028
simp [zero_add] - 0029
specialize mul_comm h - 0030
specialize mul_comm 2 - 0031
apply mul_comm - 0032
have hodd : p = 2 * h + 1 - 0033
trans S n - 0034
exact hpn - 0035
rewrite heven - 0036
rewrite hdouble - 0037
simp [add_succ_left] - 0038
have hdec : (exists qr_x_ecb_qres. exists qr_u_ecb_qres qr_v_ecb_qres. qr_x_ecb_qres * qr_x_ecb_qres + p * qr_u_ecb_qres = a + p * qr_v_ecb_qres) \/ ~(exists qr_x_ecb_qres. exists qr_u_ecb_qres qr_v_ecb_qres. qr_x_ecb_qres * qr_x_ecb_qres + p * qr_u_ecb_qres = a + p * qr_v_ecb_qres) - 0039
specialize quadratic_residue_decidable_nonzero p - 0040
specialize quadratic_residue_decidable_nonzero a - 0041
apply quadratic_residue_decidable_nonzero - 0042
exact hp0 - 0043
cases hdec - 0044
left - 0045
split - 0046
exact hdec_left - 0047
specialize quadratic_residue_half_power_mod_one p - 0048
specialize quadratic_residue_half_power_mod_one h - 0049
specialize quadratic_residue_half_power_mod_one a - 0050
specialize quadratic_residue_half_power_mod_one A - 0051
apply quadratic_residue_half_power_mod_one - 0052
exact hodd - 0053
exact hp - 0054
exact hnotdiv - 0055
exact hdec_left - 0056
exact hpower - 0057
right - 0058
split - 0059
exact hdec_right - 0060
specialize quadratic_nonresidue_half_power_mod_predecessor p - 0061
specialize quadratic_nonresidue_half_power_mod_predecessor a - 0062
specialize quadratic_nonresidue_half_power_mod_predecessor n - 0063
specialize quadratic_nonresidue_half_power_mod_predecessor h - 0064
specialize quadratic_nonresidue_half_power_mod_predecessor A - 0065
apply quadratic_nonresidue_half_power_mod_predecessor - 0066
exact hpn - 0067
exact hp - 0068
exact ha0 - 0069
exact hap - 0070
exact hdec_right - 0071
exact heven - 0072
exact hpower