Exact expanded PA statement
forall p q h k l. p = 2 * h + 1 -> q = 2 * k + 1 -> ((~(p = 1) /\ forall frp_prime_left_rectangle_count_prime_p frp_prime_right_rectangle_count_prime_p. p = frp_prime_left_rectangle_count_prime_p * frp_prime_right_rectangle_count_prime_p -> frp_prime_left_rectangle_count_prime_p = 1 \/ frp_prime_right_rectangle_count_prime_p = 1)) -> ((~(q = 1) /\ forall frp_prime_left_rectangle_count_prime_q frp_prime_right_rectangle_count_prime_q. q = frp_prime_left_rectangle_count_prime_q * frp_prime_right_rectangle_count_prime_q -> frp_prime_left_rectangle_count_prime_q = 1 \/ frp_prime_right_rectangle_count_prime_q = 1)) -> ~(p = q) -> (exists erc_le_gap_rectangle_count_length_bound. erc_le_gap_rectangle_count_length_bound + (l) = h) -> (exists cb cc. (forall erc_row_rectangle_count_bounded_prefix. (exists erc_lt_gap_rectangle_count_bounded_prefix_bound. erc_lt_gap_rectangle_count_bounded_prefix_bound + S (erc_row_rectangle_count_bounded_prefix) = l) -> exists erc_count_rectangle_count_bounded_prefix. ((((exists ff_h_erc_rectangle_count_bounded_prefix_decoded. ff_h_erc_rectangle_count_bounded_prefix_decoded + S (erc_count_rectangle_count_bounded_prefix) = S ((S (erc_row_rectangle_count_bounded_prefix)) * cc)) /\ exists ff_q_erc_rectangle_count_bounded_prefix_decoded. cb = ff_q_erc_rectangle_count_bounded_prefix_decoded * S ((S (erc_row_rectangle_count_bounded_prefix)) * cc) + (erc_count_rectangle_count_bounded_prefix))) /\ (exists erc_row_code_rectangle_count_bounded_prefix_witness erc_row_scale_rectangle_count_bounded_prefix_witness. ((forall eri_column_erc_rectangle_count_bounded_prefix_witness_row. (exists eri_gap_erc_rectangle_count_bounded_prefix_witness_row_bound. eri_gap_erc_rectangle_count_bounded_prefix_witness_row_bound + S (eri_column_erc_rectangle_count_bounded_prefix_witness_row) = k) -> exists eri_bit_erc_rectangle_count_bounded_prefix_witness_row. ((((exists ff_h_eri_erc_rectangle_count_bounded_prefix_witness_row_decoded. ff_h_eri_erc_rectangle_count_bounded_prefix_witness_row_decoded + S (eri_bit_erc_rectangle_count_bounded_prefix_witness_row) = S ((S (eri_column_erc_rectangle_count_bounded_prefix_witness_row)) * erc_row_scale_rectangle_count_bounded_prefix_witness)) /\ exists ff_q_eri_erc_rectangle_count_bounded_prefix_witness_row_decoded. erc_row_code_rectangle_count_bounded_prefix_witness = ff_q_eri_erc_rectangle_count_bounded_prefix_witness_row_decoded * S ((S (eri_column_erc_rectangle_count_bounded_prefix_witness_row)) * erc_row_scale_rectangle_count_bounded_prefix_witness) + (eri_bit_erc_rectangle_count_bounded_prefix_witness_row))) /\ (((eri_bit_erc_rectangle_count_bounded_prefix_witness_row = 0 /\ ((exists eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_left. eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_left + S (q * S erc_row_rectangle_count_bounded_prefix) = p * S eri_column_erc_rectangle_count_bounded_prefix_witness_row) /\ ~(exists eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_right. eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_bounded_prefix_witness_row) = q * S erc_row_rectangle_count_bounded_prefix))) \/ (eri_bit_erc_rectangle_count_bounded_prefix_witness_row = 1 /\ ((exists eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_right. eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_bounded_prefix_witness_row) = q * S erc_row_rectangle_count_bounded_prefix) /\ ~(exists eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_left. eri_gap_erc_rectangle_count_bounded_prefix_witness_row_choice_left + S (q * S erc_row_rectangle_count_bounded_prefix) = p * S eri_column_erc_rectangle_count_bounded_prefix_witness_row))))))) /\ (((exists ff_u_erc_rectangle_count_bounded_prefix_witness_count_sum ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum. ((((exists ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_start. ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_start. ff_u_erc_rectangle_count_bounded_prefix_witness_count_sum = ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_start * S ((S (0)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_terminal. ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_terminal + S (erc_count_rectangle_count_bounded_prefix) = S ((S (k)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_terminal. ff_u_erc_rectangle_count_bounded_prefix_witness_count_sum = ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_terminal * S ((S (k)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum) + (erc_count_rectangle_count_bounded_prefix))) /\ forall ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum. (exists ff_lt_erc_rectangle_count_bounded_prefix_witness_count_sum_bound. ff_lt_erc_rectangle_count_bounded_prefix_witness_count_sum_bound + S ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum = k) -> exists ff_a_erc_rectangle_count_bounded_prefix_witness_count_sum ff_r_erc_rectangle_count_bounded_prefix_witness_count_sum ff_s_erc_rectangle_count_bounded_prefix_witness_count_sum. ((((exists ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_summand. ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_summand + S (ff_a_erc_rectangle_count_bounded_prefix_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum)) * erc_row_scale_rectangle_count_bounded_prefix_witness)) /\ exists ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_summand. erc_row_code_rectangle_count_bounded_prefix_witness = ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_summand * S ((S (ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum)) * erc_row_scale_rectangle_count_bounded_prefix_witness) + (ff_a_erc_rectangle_count_bounded_prefix_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_partial. ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_partial + S (ff_r_erc_rectangle_count_bounded_prefix_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_partial. ff_u_erc_rectangle_count_bounded_prefix_witness_count_sum = ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_partial * S ((S (ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum) + (ff_r_erc_rectangle_count_bounded_prefix_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_successor. ff_h_erc_rectangle_count_bounded_prefix_witness_count_sum_successor + S (ff_s_erc_rectangle_count_bounded_prefix_witness_count_sum) = S ((S (S ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_successor. ff_u_erc_rectangle_count_bounded_prefix_witness_count_sum = ff_q_erc_rectangle_count_bounded_prefix_witness_count_sum_successor * S ((S (S ff_i_erc_rectangle_count_bounded_prefix_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_prefix_witness_count_sum) + (ff_s_erc_rectangle_count_bounded_prefix_witness_count_sum))) /\ ff_s_erc_rectangle_count_bounded_prefix_witness_count_sum = ff_r_erc_rectangle_count_bounded_prefix_witness_count_sum + ff_a_erc_rectangle_count_bounded_prefix_witness_count_sum)))))) /\ (forall ff_i_erc_rectangle_count_bounded_prefix_witness_count_bits. (exists ff_lt_erc_rectangle_count_bounded_prefix_witness_count_bits_bound. ff_lt_erc_rectangle_count_bounded_prefix_witness_count_bits_bound + S ff_i_erc_rectangle_count_bounded_prefix_witness_count_bits = k) -> exists ff_bit_erc_rectangle_count_bounded_prefix_witness_count_bits. ((((exists ff_h_erc_rectangle_count_bounded_prefix_witness_count_bits_decoded. ff_h_erc_rectangle_count_bounded_prefix_witness_count_bits_decoded + S (ff_bit_erc_rectangle_count_bounded_prefix_witness_count_bits) = S ((S (ff_i_erc_rectangle_count_bounded_prefix_witness_count_bits)) * erc_row_scale_rectangle_count_bounded_prefix_witness)) /\ exists ff_q_erc_rectangle_count_bounded_prefix_witness_count_bits_decoded. erc_row_code_rectangle_count_bounded_prefix_witness = ff_q_erc_rectangle_count_bounded_prefix_witness_count_bits_decoded * S ((S (ff_i_erc_rectangle_count_bounded_prefix_witness_count_bits)) * erc_row_scale_rectangle_count_bounded_prefix_witness) + (ff_bit_erc_rectangle_count_bounded_prefix_witness_count_bits))) /\ (ff_bit_erc_rectangle_count_bounded_prefix_witness_count_bits = 0 \/ ff_bit_erc_rectangle_count_bounded_prefix_witness_count_bits = 1))))))))))Structural proof guide
Generated structural guide
Every bounded initial set of rows has a semantic count prefix.
Use the direct prerequisites distinct_odd_prime_half_row_count_choices_bounded, eisenstein_rectangle_row_count_prefix_exists as previously established PA formulas.
The proof proceeds by intermediate claims (1).
Referenced ingredients
Proof neighborhood
Direct dependencies
PA00DH distinct_odd_prime_half_row_count_choices_bounded PA00DJ eisenstein_rectangle_row_count_prefix_existsDirect 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 q - 0003
intro h - 0004
intro k - 0005
intro l - 0006
intro hpodd - 0007
intro hqodd - 0008
intro hp - 0009
intro hq - 0010
intro hpq - 0011
intro hlh - 0012
have hchoices : forall erc_row_rectangle_count_bounded_choices. (exists erc_lt_gap_rectangle_count_bounded_choices_bound. erc_lt_gap_rectangle_count_bounded_choices_bound + S (erc_row_rectangle_count_bounded_choices) = l) -> exists erc_count_rectangle_count_bounded_choices. (exists erc_row_code_rectangle_count_bounded_choices_witness erc_row_scale_rectangle_count_bounded_choices_witness. ((forall eri_column_erc_rectangle_count_bounded_choices_witness_row. (exists eri_gap_erc_rectangle_count_bounded_choices_witness_row_bound. eri_gap_erc_rectangle_count_bounded_choices_witness_row_bound + S (eri_column_erc_rectangle_count_bounded_choices_witness_row) = k) -> exists eri_bit_erc_rectangle_count_bounded_choices_witness_row. ((((exists ff_h_eri_erc_rectangle_count_bounded_choices_witness_row_decoded. ff_h_eri_erc_rectangle_count_bounded_choices_witness_row_decoded + S (eri_bit_erc_rectangle_count_bounded_choices_witness_row) = S ((S (eri_column_erc_rectangle_count_bounded_choices_witness_row)) * erc_row_scale_rectangle_count_bounded_choices_witness)) /\ exists ff_q_eri_erc_rectangle_count_bounded_choices_witness_row_decoded. erc_row_code_rectangle_count_bounded_choices_witness = ff_q_eri_erc_rectangle_count_bounded_choices_witness_row_decoded * S ((S (eri_column_erc_rectangle_count_bounded_choices_witness_row)) * erc_row_scale_rectangle_count_bounded_choices_witness) + (eri_bit_erc_rectangle_count_bounded_choices_witness_row))) /\ (((eri_bit_erc_rectangle_count_bounded_choices_witness_row = 0 /\ ((exists eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_left. eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_left + S (q * S erc_row_rectangle_count_bounded_choices) = p * S eri_column_erc_rectangle_count_bounded_choices_witness_row) /\ ~(exists eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_right. eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_bounded_choices_witness_row) = q * S erc_row_rectangle_count_bounded_choices))) \/ (eri_bit_erc_rectangle_count_bounded_choices_witness_row = 1 /\ ((exists eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_right. eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_bounded_choices_witness_row) = q * S erc_row_rectangle_count_bounded_choices) /\ ~(exists eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_left. eri_gap_erc_rectangle_count_bounded_choices_witness_row_choice_left + S (q * S erc_row_rectangle_count_bounded_choices) = p * S eri_column_erc_rectangle_count_bounded_choices_witness_row))))))) /\ (((exists ff_u_erc_rectangle_count_bounded_choices_witness_count_sum ff_v_erc_rectangle_count_bounded_choices_witness_count_sum. ((((exists ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_start. ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_start. ff_u_erc_rectangle_count_bounded_choices_witness_count_sum = ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_start * S ((S (0)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_terminal. ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_terminal + S (erc_count_rectangle_count_bounded_choices) = S ((S (k)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_terminal. ff_u_erc_rectangle_count_bounded_choices_witness_count_sum = ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_terminal * S ((S (k)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum) + (erc_count_rectangle_count_bounded_choices))) /\ forall ff_i_erc_rectangle_count_bounded_choices_witness_count_sum. (exists ff_lt_erc_rectangle_count_bounded_choices_witness_count_sum_bound. ff_lt_erc_rectangle_count_bounded_choices_witness_count_sum_bound + S ff_i_erc_rectangle_count_bounded_choices_witness_count_sum = k) -> exists ff_a_erc_rectangle_count_bounded_choices_witness_count_sum ff_r_erc_rectangle_count_bounded_choices_witness_count_sum ff_s_erc_rectangle_count_bounded_choices_witness_count_sum. ((((exists ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_summand. ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_summand + S (ff_a_erc_rectangle_count_bounded_choices_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_bounded_choices_witness_count_sum)) * erc_row_scale_rectangle_count_bounded_choices_witness)) /\ exists ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_summand. erc_row_code_rectangle_count_bounded_choices_witness = ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_summand * S ((S (ff_i_erc_rectangle_count_bounded_choices_witness_count_sum)) * erc_row_scale_rectangle_count_bounded_choices_witness) + (ff_a_erc_rectangle_count_bounded_choices_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_partial. ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_partial + S (ff_r_erc_rectangle_count_bounded_choices_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_bounded_choices_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_partial. ff_u_erc_rectangle_count_bounded_choices_witness_count_sum = ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_partial * S ((S (ff_i_erc_rectangle_count_bounded_choices_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum) + (ff_r_erc_rectangle_count_bounded_choices_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_successor. ff_h_erc_rectangle_count_bounded_choices_witness_count_sum_successor + S (ff_s_erc_rectangle_count_bounded_choices_witness_count_sum) = S ((S (S ff_i_erc_rectangle_count_bounded_choices_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_successor. ff_u_erc_rectangle_count_bounded_choices_witness_count_sum = ff_q_erc_rectangle_count_bounded_choices_witness_count_sum_successor * S ((S (S ff_i_erc_rectangle_count_bounded_choices_witness_count_sum)) * ff_v_erc_rectangle_count_bounded_choices_witness_count_sum) + (ff_s_erc_rectangle_count_bounded_choices_witness_count_sum))) /\ ff_s_erc_rectangle_count_bounded_choices_witness_count_sum = ff_r_erc_rectangle_count_bounded_choices_witness_count_sum + ff_a_erc_rectangle_count_bounded_choices_witness_count_sum)))))) /\ (forall ff_i_erc_rectangle_count_bounded_choices_witness_count_bits. (exists ff_lt_erc_rectangle_count_bounded_choices_witness_count_bits_bound. ff_lt_erc_rectangle_count_bounded_choices_witness_count_bits_bound + S ff_i_erc_rectangle_count_bounded_choices_witness_count_bits = k) -> exists ff_bit_erc_rectangle_count_bounded_choices_witness_count_bits. ((((exists ff_h_erc_rectangle_count_bounded_choices_witness_count_bits_decoded. ff_h_erc_rectangle_count_bounded_choices_witness_count_bits_decoded + S (ff_bit_erc_rectangle_count_bounded_choices_witness_count_bits) = S ((S (ff_i_erc_rectangle_count_bounded_choices_witness_count_bits)) * erc_row_scale_rectangle_count_bounded_choices_witness)) /\ exists ff_q_erc_rectangle_count_bounded_choices_witness_count_bits_decoded. erc_row_code_rectangle_count_bounded_choices_witness = ff_q_erc_rectangle_count_bounded_choices_witness_count_bits_decoded * S ((S (ff_i_erc_rectangle_count_bounded_choices_witness_count_bits)) * erc_row_scale_rectangle_count_bounded_choices_witness) + (ff_bit_erc_rectangle_count_bounded_choices_witness_count_bits))) /\ (ff_bit_erc_rectangle_count_bounded_choices_witness_count_bits = 0 \/ ff_bit_erc_rectangle_count_bounded_choices_witness_count_bits = 1))))))) - 0013
specialize distinct_odd_prime_half_row_count_choices_bounded p - 0014
specialize distinct_odd_prime_half_row_count_choices_bounded q - 0015
specialize distinct_odd_prime_half_row_count_choices_bounded h - 0016
specialize distinct_odd_prime_half_row_count_choices_bounded k - 0017
specialize distinct_odd_prime_half_row_count_choices_bounded l - 0018
apply distinct_odd_prime_half_row_count_choices_bounded - 0019
exact hpodd - 0020
exact hqodd - 0021
exact hp - 0022
exact hq - 0023
exact hpq - 0024
exact hlh - 0025
specialize eisenstein_rectangle_row_count_prefix_exists p - 0026
specialize eisenstein_rectangle_row_count_prefix_exists q - 0027
specialize eisenstein_rectangle_row_count_prefix_exists k - 0028
specialize eisenstein_rectangle_row_count_prefix_exists l - 0029
apply eisenstein_rectangle_row_count_prefix_exists - 0030
exact hchoices