PA00FC

eisenstein_fubini_universal

Alpha v16 checked-use theorem · independently closed; not Stable

Any genuine transposed-column count total equals the swapped semantic row total.

Exact expanded PA statement

forall h p q k bb bc db dc T M. (forall erc_row_fubini_total_general_outer. (exists erc_lt_gap_fubini_total_general_outer_bound. erc_lt_gap_fubini_total_general_outer_bound + S (erc_row_fubini_total_general_outer) = k) -> exists erc_count_fubini_total_general_outer. ((((exists ff_h_erc_fubini_total_general_outer_decoded. ff_h_erc_fubini_total_general_outer_decoded + S (erc_count_fubini_total_general_outer) = S ((S (erc_row_fubini_total_general_outer)) * bc)) /\ exists ff_q_erc_fubini_total_general_outer_decoded. bb = ff_q_erc_fubini_total_general_outer_decoded * S ((S (erc_row_fubini_total_general_outer)) * bc) + (erc_count_fubini_total_general_outer))) /\ (exists erc_row_code_fubini_total_general_outer_witness erc_row_scale_fubini_total_general_outer_witness. ((forall eri_column_erc_fubini_total_general_outer_witness_row. (exists eri_gap_erc_fubini_total_general_outer_witness_row_bound. eri_gap_erc_fubini_total_general_outer_witness_row_bound + S (eri_column_erc_fubini_total_general_outer_witness_row) = h) -> exists eri_bit_erc_fubini_total_general_outer_witness_row. ((((exists ff_h_eri_erc_fubini_total_general_outer_witness_row_decoded. ff_h_eri_erc_fubini_total_general_outer_witness_row_decoded + S (eri_bit_erc_fubini_total_general_outer_witness_row) = S ((S (eri_column_erc_fubini_total_general_outer_witness_row)) * erc_row_scale_fubini_total_general_outer_witness)) /\ exists ff_q_eri_erc_fubini_total_general_outer_witness_row_decoded. erc_row_code_fubini_total_general_outer_witness = ff_q_eri_erc_fubini_total_general_outer_witness_row_decoded * S ((S (eri_column_erc_fubini_total_general_outer_witness_row)) * erc_row_scale_fubini_total_general_outer_witness) + (eri_bit_erc_fubini_total_general_outer_witness_row))) /\ (((eri_bit_erc_fubini_total_general_outer_witness_row = 0 /\ ((exists eri_gap_erc_fubini_total_general_outer_witness_row_choice_left. eri_gap_erc_fubini_total_general_outer_witness_row_choice_left + S (p * S erc_row_fubini_total_general_outer) = q * S eri_column_erc_fubini_total_general_outer_witness_row) /\ ~(exists eri_gap_erc_fubini_total_general_outer_witness_row_choice_right. eri_gap_erc_fubini_total_general_outer_witness_row_choice_right + S (q * S eri_column_erc_fubini_total_general_outer_witness_row) = p * S erc_row_fubini_total_general_outer))) \/ (eri_bit_erc_fubini_total_general_outer_witness_row = 1 /\ ((exists eri_gap_erc_fubini_total_general_outer_witness_row_choice_right. eri_gap_erc_fubini_total_general_outer_witness_row_choice_right + S (q * S eri_column_erc_fubini_total_general_outer_witness_row) = p * S erc_row_fubini_total_general_outer) /\ ~(exists eri_gap_erc_fubini_total_general_outer_witness_row_choice_left. eri_gap_erc_fubini_total_general_outer_witness_row_choice_left + S (p * S erc_row_fubini_total_general_outer) = q * S eri_column_erc_fubini_total_general_outer_witness_row))))))) /\ (((exists ff_u_erc_fubini_total_general_outer_witness_count_sum ff_v_erc_fubini_total_general_outer_witness_count_sum. ((((exists ff_h_erc_fubini_total_general_outer_witness_count_sum_start. ff_h_erc_fubini_total_general_outer_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_fubini_total_general_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_general_outer_witness_count_sum_start. ff_u_erc_fubini_total_general_outer_witness_count_sum = ff_q_erc_fubini_total_general_outer_witness_count_sum_start * S ((S (0)) * ff_v_erc_fubini_total_general_outer_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_fubini_total_general_outer_witness_count_sum_terminal. ff_h_erc_fubini_total_general_outer_witness_count_sum_terminal + S (erc_count_fubini_total_general_outer) = S ((S (h)) * ff_v_erc_fubini_total_general_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_general_outer_witness_count_sum_terminal. ff_u_erc_fubini_total_general_outer_witness_count_sum = ff_q_erc_fubini_total_general_outer_witness_count_sum_terminal * S ((S (h)) * ff_v_erc_fubini_total_general_outer_witness_count_sum) + (erc_count_fubini_total_general_outer))) /\ forall ff_i_erc_fubini_total_general_outer_witness_count_sum. (exists ff_lt_erc_fubini_total_general_outer_witness_count_sum_bound. ff_lt_erc_fubini_total_general_outer_witness_count_sum_bound + S ff_i_erc_fubini_total_general_outer_witness_count_sum = h) -> exists ff_a_erc_fubini_total_general_outer_witness_count_sum ff_r_erc_fubini_total_general_outer_witness_count_sum ff_s_erc_fubini_total_general_outer_witness_count_sum. ((((exists ff_h_erc_fubini_total_general_outer_witness_count_sum_summand. ff_h_erc_fubini_total_general_outer_witness_count_sum_summand + S (ff_a_erc_fubini_total_general_outer_witness_count_sum) = S ((S (ff_i_erc_fubini_total_general_outer_witness_count_sum)) * erc_row_scale_fubini_total_general_outer_witness)) /\ exists ff_q_erc_fubini_total_general_outer_witness_count_sum_summand. erc_row_code_fubini_total_general_outer_witness = ff_q_erc_fubini_total_general_outer_witness_count_sum_summand * S ((S (ff_i_erc_fubini_total_general_outer_witness_count_sum)) * erc_row_scale_fubini_total_general_outer_witness) + (ff_a_erc_fubini_total_general_outer_witness_count_sum))) /\ ((((exists ff_h_erc_fubini_total_general_outer_witness_count_sum_partial. ff_h_erc_fubini_total_general_outer_witness_count_sum_partial + S (ff_r_erc_fubini_total_general_outer_witness_count_sum) = S ((S (ff_i_erc_fubini_total_general_outer_witness_count_sum)) * ff_v_erc_fubini_total_general_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_general_outer_witness_count_sum_partial. ff_u_erc_fubini_total_general_outer_witness_count_sum = ff_q_erc_fubini_total_general_outer_witness_count_sum_partial * S ((S (ff_i_erc_fubini_total_general_outer_witness_count_sum)) * ff_v_erc_fubini_total_general_outer_witness_count_sum) + (ff_r_erc_fubini_total_general_outer_witness_count_sum))) /\ ((((exists ff_h_erc_fubini_total_general_outer_witness_count_sum_successor. ff_h_erc_fubini_total_general_outer_witness_count_sum_successor + S (ff_s_erc_fubini_total_general_outer_witness_count_sum) = S ((S (S ff_i_erc_fubini_total_general_outer_witness_count_sum)) * ff_v_erc_fubini_total_general_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_general_outer_witness_count_sum_successor. ff_u_erc_fubini_total_general_outer_witness_count_sum = ff_q_erc_fubini_total_general_outer_witness_count_sum_successor * S ((S (S ff_i_erc_fubini_total_general_outer_witness_count_sum)) * ff_v_erc_fubini_total_general_outer_witness_count_sum) + (ff_s_erc_fubini_total_general_outer_witness_count_sum))) /\ ff_s_erc_fubini_total_general_outer_witness_count_sum = ff_r_erc_fubini_total_general_outer_witness_count_sum + ff_a_erc_fubini_total_general_outer_witness_count_sum)))))) /\ (forall ff_i_erc_fubini_total_general_outer_witness_count_bits. (exists ff_lt_erc_fubini_total_general_outer_witness_count_bits_bound. ff_lt_erc_fubini_total_general_outer_witness_count_bits_bound + S ff_i_erc_fubini_total_general_outer_witness_count_bits = h) -> exists ff_bit_erc_fubini_total_general_outer_witness_count_bits. ((((exists ff_h_erc_fubini_total_general_outer_witness_count_bits_decoded. ff_h_erc_fubini_total_general_outer_witness_count_bits_decoded + S (ff_bit_erc_fubini_total_general_outer_witness_count_bits) = S ((S (ff_i_erc_fubini_total_general_outer_witness_count_bits)) * erc_row_scale_fubini_total_general_outer_witness)) /\ exists ff_q_erc_fubini_total_general_outer_witness_count_bits_decoded. erc_row_code_fubini_total_general_outer_witness = ff_q_erc_fubini_total_general_outer_witness_count_bits_decoded * S ((S (ff_i_erc_fubini_total_general_outer_witness_count_bits)) * erc_row_scale_fubini_total_general_outer_witness) + (ff_bit_erc_fubini_total_general_outer_witness_count_bits))) /\ (ff_bit_erc_fubini_total_general_outer_witness_count_bits = 0 \/ ff_bit_erc_fubini_total_general_outer_witness_count_bits = 1))))))))) -> (forall eft_fixed_index_fubini_total_general_columns. (exists edt_lt_gap_eft_fubini_total_general_columns_bound. edt_lt_gap_eft_fubini_total_general_columns_bound + S (eft_fixed_index_fubini_total_general_columns) = h) -> exists eft_count_fubini_total_general_columns. ((((exists ff_h_eft_fubini_total_general_columns_decoded. ff_h_eft_fubini_total_general_columns_decoded + S (eft_count_fubini_total_general_columns) = S ((S (eft_fixed_index_fubini_total_general_columns)) * dc)) /\ exists ff_q_eft_fubini_total_general_columns_decoded. db = ff_q_eft_fubini_total_general_columns_decoded * S ((S (eft_fixed_index_fubini_total_general_columns)) * dc) + (eft_count_fubini_total_general_columns))) /\ (exists eft_column_code_fubini_total_general_columns_witness eft_column_scale_fubini_total_general_columns_witness. ((forall etc_row_index_eft_fubini_total_general_columns_witness_column. (exists edt_lt_gap_eft_fubini_total_general_columns_witness_column_bound. edt_lt_gap_eft_fubini_total_general_columns_witness_column_bound + S (etc_row_index_eft_fubini_total_general_columns_witness_column) = k) -> exists etc_bit_eft_fubini_total_general_columns_witness_column. ((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_decoded. ff_h_etc_eft_fubini_total_general_columns_witness_column_decoded + S (etc_bit_eft_fubini_total_general_columns_witness_column) = S ((S (etc_row_index_eft_fubini_total_general_columns_witness_column)) * eft_column_scale_fubini_total_general_columns_witness)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_decoded. eft_column_code_fubini_total_general_columns_witness = ff_q_etc_eft_fubini_total_general_columns_witness_column_decoded * S ((S (etc_row_index_eft_fubini_total_general_columns_witness_column)) * eft_column_scale_fubini_total_general_columns_witness) + (etc_bit_eft_fubini_total_general_columns_witness_column))) /\ (exists etc_count_eft_fubini_total_general_columns_witness_column_witness etc_row_code_eft_fubini_total_general_columns_witness_column_witness etc_row_scale_eft_fubini_total_general_columns_witness_column_witness. ((((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_outer_entry. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_outer_entry + S (etc_count_eft_fubini_total_general_columns_witness_column_witness) = S ((S (etc_row_index_eft_fubini_total_general_columns_witness_column)) * bc)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_outer_entry. bb = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_outer_entry * S ((S (etc_row_index_eft_fubini_total_general_columns_witness_column)) * bc) + (etc_count_eft_fubini_total_general_columns_witness_column_witness))) /\ (forall eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row. (exists eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_bound. eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_bound + S (eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row) = h) -> exists eri_bit_etc_eft_fubini_total_general_columns_witness_column_witness_row. ((((exists ff_h_eri_etc_eft_fubini_total_general_columns_witness_column_witness_row_decoded. ff_h_eri_etc_eft_fubini_total_general_columns_witness_column_witness_row_decoded + S (eri_bit_etc_eft_fubini_total_general_columns_witness_column_witness_row) = S ((S (eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness)) /\ exists ff_q_eri_etc_eft_fubini_total_general_columns_witness_column_witness_row_decoded. etc_row_code_eft_fubini_total_general_columns_witness_column_witness = ff_q_eri_etc_eft_fubini_total_general_columns_witness_column_witness_row_decoded * S ((S (eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness) + (eri_bit_etc_eft_fubini_total_general_columns_witness_column_witness_row))) /\ (((eri_bit_etc_eft_fubini_total_general_columns_witness_column_witness_row = 0 /\ ((exists eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_general_columns_witness_column) = q * S eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row) /\ ~(exists eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_general_columns_witness_column))) \/ (eri_bit_etc_eft_fubini_total_general_columns_witness_column_witness_row = 1 /\ ((exists eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_general_columns_witness_column) /\ ~(exists eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_general_columns_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_general_columns_witness_column) = q * S eri_column_etc_eft_fubini_total_general_columns_witness_column_witness_row)))))))) /\ (((exists ff_u_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_start. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_start + S (0) = S ((S (0)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_start. ff_u_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_start * S ((S (0)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum) + (0))) /\ ((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_terminal. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_terminal + S (etc_count_eft_fubini_total_general_columns_witness_column_witness) = S ((S (h)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_terminal. ff_u_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_terminal * S ((S (h)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum) + (etc_count_eft_fubini_total_general_columns_witness_column_witness))) /\ forall ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum. (exists ff_lt_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_bound. ff_lt_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_bound + S ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum = h) -> exists ff_a_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum ff_r_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum ff_s_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_summand. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_summand + S (ff_a_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_summand. etc_row_code_eft_fubini_total_general_columns_witness_column_witness = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_summand * S ((S (ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness) + (ff_a_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_partial. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_partial + S (ff_r_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_partial. ff_u_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_partial * S ((S (ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum) + (ff_r_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_successor. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_successor + S (ff_s_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum) = S ((S (S ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_successor. ff_u_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum_successor * S ((S (S ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum) + (ff_s_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum))) /\ ff_s_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum = ff_r_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum + ff_a_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_sum)))))) /\ (forall ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits. (exists ff_lt_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits_bound. ff_lt_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits_bound + S ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits = h) -> exists ff_bit_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits. ((((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits_decoded. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits_decoded + S (ff_bit_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits) = S ((S (ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits_decoded. etc_row_code_eft_fubini_total_general_columns_witness_column_witness = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits_decoded * S ((S (ff_i_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness) + (ff_bit_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits))) /\ (ff_bit_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits = 0 \/ ff_bit_etc_eft_fubini_total_general_columns_witness_column_witness_count_relation_bits = 1)))))) /\ (((exists ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_inner_entry. ff_h_etc_eft_fubini_total_general_columns_witness_column_witness_inner_entry + S (etc_bit_eft_fubini_total_general_columns_witness_column) = S ((S (eft_fixed_index_fubini_total_general_columns)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_inner_entry. etc_row_code_eft_fubini_total_general_columns_witness_column_witness = ff_q_etc_eft_fubini_total_general_columns_witness_column_witness_inner_entry * S ((S (eft_fixed_index_fubini_total_general_columns)) * etc_row_scale_eft_fubini_total_general_columns_witness_column_witness) + (etc_bit_eft_fubini_total_general_columns_witness_column))))))) /\ (((exists ff_u_eft_fubini_total_general_columns_witness_count_sum ff_v_eft_fubini_total_general_columns_witness_count_sum. ((((exists ff_h_eft_fubini_total_general_columns_witness_count_sum_start. ff_h_eft_fubini_total_general_columns_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_eft_fubini_total_general_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_general_columns_witness_count_sum_start. ff_u_eft_fubini_total_general_columns_witness_count_sum = ff_q_eft_fubini_total_general_columns_witness_count_sum_start * S ((S (0)) * ff_v_eft_fubini_total_general_columns_witness_count_sum) + (0))) /\ ((((exists ff_h_eft_fubini_total_general_columns_witness_count_sum_terminal. ff_h_eft_fubini_total_general_columns_witness_count_sum_terminal + S (eft_count_fubini_total_general_columns) = S ((S (k)) * ff_v_eft_fubini_total_general_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_general_columns_witness_count_sum_terminal. ff_u_eft_fubini_total_general_columns_witness_count_sum = ff_q_eft_fubini_total_general_columns_witness_count_sum_terminal * S ((S (k)) * ff_v_eft_fubini_total_general_columns_witness_count_sum) + (eft_count_fubini_total_general_columns))) /\ forall ff_i_eft_fubini_total_general_columns_witness_count_sum. (exists ff_lt_eft_fubini_total_general_columns_witness_count_sum_bound. ff_lt_eft_fubini_total_general_columns_witness_count_sum_bound + S ff_i_eft_fubini_total_general_columns_witness_count_sum = k) -> exists ff_a_eft_fubini_total_general_columns_witness_count_sum ff_r_eft_fubini_total_general_columns_witness_count_sum ff_s_eft_fubini_total_general_columns_witness_count_sum. ((((exists ff_h_eft_fubini_total_general_columns_witness_count_sum_summand. ff_h_eft_fubini_total_general_columns_witness_count_sum_summand + S (ff_a_eft_fubini_total_general_columns_witness_count_sum) = S ((S (ff_i_eft_fubini_total_general_columns_witness_count_sum)) * eft_column_scale_fubini_total_general_columns_witness)) /\ exists ff_q_eft_fubini_total_general_columns_witness_count_sum_summand. eft_column_code_fubini_total_general_columns_witness = ff_q_eft_fubini_total_general_columns_witness_count_sum_summand * S ((S (ff_i_eft_fubini_total_general_columns_witness_count_sum)) * eft_column_scale_fubini_total_general_columns_witness) + (ff_a_eft_fubini_total_general_columns_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_general_columns_witness_count_sum_partial. ff_h_eft_fubini_total_general_columns_witness_count_sum_partial + S (ff_r_eft_fubini_total_general_columns_witness_count_sum) = S ((S (ff_i_eft_fubini_total_general_columns_witness_count_sum)) * ff_v_eft_fubini_total_general_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_general_columns_witness_count_sum_partial. ff_u_eft_fubini_total_general_columns_witness_count_sum = ff_q_eft_fubini_total_general_columns_witness_count_sum_partial * S ((S (ff_i_eft_fubini_total_general_columns_witness_count_sum)) * ff_v_eft_fubini_total_general_columns_witness_count_sum) + (ff_r_eft_fubini_total_general_columns_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_general_columns_witness_count_sum_successor. ff_h_eft_fubini_total_general_columns_witness_count_sum_successor + S (ff_s_eft_fubini_total_general_columns_witness_count_sum) = S ((S (S ff_i_eft_fubini_total_general_columns_witness_count_sum)) * ff_v_eft_fubini_total_general_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_general_columns_witness_count_sum_successor. ff_u_eft_fubini_total_general_columns_witness_count_sum = ff_q_eft_fubini_total_general_columns_witness_count_sum_successor * S ((S (S ff_i_eft_fubini_total_general_columns_witness_count_sum)) * ff_v_eft_fubini_total_general_columns_witness_count_sum) + (ff_s_eft_fubini_total_general_columns_witness_count_sum))) /\ ff_s_eft_fubini_total_general_columns_witness_count_sum = ff_r_eft_fubini_total_general_columns_witness_count_sum + ff_a_eft_fubini_total_general_columns_witness_count_sum)))))) /\ (forall ff_i_eft_fubini_total_general_columns_witness_count_bits. (exists ff_lt_eft_fubini_total_general_columns_witness_count_bits_bound. ff_lt_eft_fubini_total_general_columns_witness_count_bits_bound + S ff_i_eft_fubini_total_general_columns_witness_count_bits = k) -> exists ff_bit_eft_fubini_total_general_columns_witness_count_bits. ((((exists ff_h_eft_fubini_total_general_columns_witness_count_bits_decoded. ff_h_eft_fubini_total_general_columns_witness_count_bits_decoded + S (ff_bit_eft_fubini_total_general_columns_witness_count_bits) = S ((S (ff_i_eft_fubini_total_general_columns_witness_count_bits)) * eft_column_scale_fubini_total_general_columns_witness)) /\ exists ff_q_eft_fubini_total_general_columns_witness_count_bits_decoded. eft_column_code_fubini_total_general_columns_witness = ff_q_eft_fubini_total_general_columns_witness_count_bits_decoded * S ((S (ff_i_eft_fubini_total_general_columns_witness_count_bits)) * eft_column_scale_fubini_total_general_columns_witness) + (ff_bit_eft_fubini_total_general_columns_witness_count_bits))) /\ (ff_bit_eft_fubini_total_general_columns_witness_count_bits = 0 \/ ff_bit_eft_fubini_total_general_columns_witness_count_bits = 1))))))))) -> (exists ff_u_fubini_total_general_outer_sum ff_v_fubini_total_general_outer_sum. ((((exists ff_h_fubini_total_general_outer_sum_start. ff_h_fubini_total_general_outer_sum_start + S (0) = S ((S (0)) * ff_v_fubini_total_general_outer_sum)) /\ exists ff_q_fubini_total_general_outer_sum_start. ff_u_fubini_total_general_outer_sum = ff_q_fubini_total_general_outer_sum_start * S ((S (0)) * ff_v_fubini_total_general_outer_sum) + (0))) /\ ((((exists ff_h_fubini_total_general_outer_sum_terminal. ff_h_fubini_total_general_outer_sum_terminal + S (T) = S ((S (k)) * ff_v_fubini_total_general_outer_sum)) /\ exists ff_q_fubini_total_general_outer_sum_terminal. ff_u_fubini_total_general_outer_sum = ff_q_fubini_total_general_outer_sum_terminal * S ((S (k)) * ff_v_fubini_total_general_outer_sum) + (T))) /\ forall ff_i_fubini_total_general_outer_sum. (exists ff_lt_fubini_total_general_outer_sum_bound. ff_lt_fubini_total_general_outer_sum_bound + S ff_i_fubini_total_general_outer_sum = k) -> exists ff_a_fubini_total_general_outer_sum ff_r_fubini_total_general_outer_sum ff_s_fubini_total_general_outer_sum. ((((exists ff_h_fubini_total_general_outer_sum_summand. ff_h_fubini_total_general_outer_sum_summand + S (ff_a_fubini_total_general_outer_sum) = S ((S (ff_i_fubini_total_general_outer_sum)) * bc)) /\ exists ff_q_fubini_total_general_outer_sum_summand. bb = ff_q_fubini_total_general_outer_sum_summand * S ((S (ff_i_fubini_total_general_outer_sum)) * bc) + (ff_a_fubini_total_general_outer_sum))) /\ ((((exists ff_h_fubini_total_general_outer_sum_partial. ff_h_fubini_total_general_outer_sum_partial + S (ff_r_fubini_total_general_outer_sum) = S ((S (ff_i_fubini_total_general_outer_sum)) * ff_v_fubini_total_general_outer_sum)) /\ exists ff_q_fubini_total_general_outer_sum_partial. ff_u_fubini_total_general_outer_sum = ff_q_fubini_total_general_outer_sum_partial * S ((S (ff_i_fubini_total_general_outer_sum)) * ff_v_fubini_total_general_outer_sum) + (ff_r_fubini_total_general_outer_sum))) /\ ((((exists ff_h_fubini_total_general_outer_sum_successor. ff_h_fubini_total_general_outer_sum_successor + S (ff_s_fubini_total_general_outer_sum) = S ((S (S ff_i_fubini_total_general_outer_sum)) * ff_v_fubini_total_general_outer_sum)) /\ exists ff_q_fubini_total_general_outer_sum_successor. ff_u_fubini_total_general_outer_sum = ff_q_fubini_total_general_outer_sum_successor * S ((S (S ff_i_fubini_total_general_outer_sum)) * ff_v_fubini_total_general_outer_sum) + (ff_s_fubini_total_general_outer_sum))) /\ ff_s_fubini_total_general_outer_sum = ff_r_fubini_total_general_outer_sum + ff_a_fubini_total_general_outer_sum)))))) -> (exists ff_u_fubini_total_general_column_sum ff_v_fubini_total_general_column_sum. ((((exists ff_h_fubini_total_general_column_sum_start. ff_h_fubini_total_general_column_sum_start + S (0) = S ((S (0)) * ff_v_fubini_total_general_column_sum)) /\ exists ff_q_fubini_total_general_column_sum_start. ff_u_fubini_total_general_column_sum = ff_q_fubini_total_general_column_sum_start * S ((S (0)) * ff_v_fubini_total_general_column_sum) + (0))) /\ ((((exists ff_h_fubini_total_general_column_sum_terminal. ff_h_fubini_total_general_column_sum_terminal + S (M) = S ((S (h)) * ff_v_fubini_total_general_column_sum)) /\ exists ff_q_fubini_total_general_column_sum_terminal. ff_u_fubini_total_general_column_sum = ff_q_fubini_total_general_column_sum_terminal * S ((S (h)) * ff_v_fubini_total_general_column_sum) + (M))) /\ forall ff_i_fubini_total_general_column_sum. (exists ff_lt_fubini_total_general_column_sum_bound. ff_lt_fubini_total_general_column_sum_bound + S ff_i_fubini_total_general_column_sum = h) -> exists ff_a_fubini_total_general_column_sum ff_r_fubini_total_general_column_sum ff_s_fubini_total_general_column_sum. ((((exists ff_h_fubini_total_general_column_sum_summand. ff_h_fubini_total_general_column_sum_summand + S (ff_a_fubini_total_general_column_sum) = S ((S (ff_i_fubini_total_general_column_sum)) * dc)) /\ exists ff_q_fubini_total_general_column_sum_summand. db = ff_q_fubini_total_general_column_sum_summand * S ((S (ff_i_fubini_total_general_column_sum)) * dc) + (ff_a_fubini_total_general_column_sum))) /\ ((((exists ff_h_fubini_total_general_column_sum_partial. ff_h_fubini_total_general_column_sum_partial + S (ff_r_fubini_total_general_column_sum) = S ((S (ff_i_fubini_total_general_column_sum)) * ff_v_fubini_total_general_column_sum)) /\ exists ff_q_fubini_total_general_column_sum_partial. ff_u_fubini_total_general_column_sum = ff_q_fubini_total_general_column_sum_partial * S ((S (ff_i_fubini_total_general_column_sum)) * ff_v_fubini_total_general_column_sum) + (ff_r_fubini_total_general_column_sum))) /\ ((((exists ff_h_fubini_total_general_column_sum_successor. ff_h_fubini_total_general_column_sum_successor + S (ff_s_fubini_total_general_column_sum) = S ((S (S ff_i_fubini_total_general_column_sum)) * ff_v_fubini_total_general_column_sum)) /\ exists ff_q_fubini_total_general_column_sum_successor. ff_u_fubini_total_general_column_sum = ff_q_fubini_total_general_column_sum_successor * S ((S (S ff_i_fubini_total_general_column_sum)) * ff_v_fubini_total_general_column_sum) + (ff_s_fubini_total_general_column_sum))) /\ ff_s_fubini_total_general_column_sum = ff_r_fubini_total_general_column_sum + ff_a_fubini_total_general_column_sum)))))) -> M = T

Structural proof guide

Generated structural guide

Any genuine transposed-column count total equals the swapped semantic row total.

Use the direct prerequisites beta_sum_zero, eisenstein_zero_width_rectangle_sum_zero, eisenstein_successor_rectangle_row_split_prefix_exists, eisenstein_successor_row_split_reduced_rectangle_prefix, beta_sum_exists, eisenstein_successor_row_split_sum_add, eisenstein_fubini_column_count_prefix_succ_restrict, eisenstein_fubini_column_count_prefix_retarget_predecessor, beta_sum_succ_decompose, le_refl, beta_at_unique, eisenstein_successor_terminal_sum_matches_last_column as previously established PA formulas.

The proof proceeds by structural induction (1), case analysis (16), intermediate claims (15), equality transport (3).

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.

  1. 0001intro h
  2. 0002induction h
  3. 0003intro p
  4. 0004intro q
  5. 0005intro k
  6. 0006intro bb
  7. 0007intro bc
  8. 0008intro db
  9. 0009intro dc
  10. 0010intro T
  11. 0011intro M
  12. 0012intro houter
  13. 0013intro hcolumns
  14. 0014intro houtersum
  15. 0015intro hcolumnsum
  16. 0016have hmzero : M = 0
  17. 0017specialize beta_sum_zero db
  18. 0018specialize beta_sum_zero dc
  19. 0019specialize beta_sum_zero M
  20. 0020apply beta_sum_zero
  21. 0021exact hcolumnsum
  22. 0022have htzero : T = 0
  23. 0023specialize eisenstein_zero_width_rectangle_sum_zero q
  24. 0024specialize eisenstein_zero_width_rectangle_sum_zero p
  25. 0025specialize eisenstein_zero_width_rectangle_sum_zero 0
  26. 0026specialize eisenstein_zero_width_rectangle_sum_zero bb
  27. 0027specialize eisenstein_zero_width_rectangle_sum_zero bc
  28. 0028specialize eisenstein_zero_width_rectangle_sum_zero k
  29. 0029specialize eisenstein_zero_width_rectangle_sum_zero T
  30. 0030apply eisenstein_zero_width_rectangle_sum_zero
  31. 0031refl
  32. 0032exact houter
  33. 0033exact houtersum
  34. 0034trans 0
  35. 0035exact hmzero
  36. 0036symm
  37. 0037exact htzero
  38. 0038intro p
  39. 0039intro q
  40. 0040intro k
  41. 0041intro bb
  42. 0042intro bc
  43. 0043intro db
  44. 0044intro dc
  45. 0045intro T
  46. 0046intro M
  47. 0047intro houter
  48. 0048intro hcolumns
  49. 0049intro houtersum
  50. 0050intro hcolumnsum
  51. 0051have hsplit_exists : exists rb rc tb tc. (forall efrd_row_index_fubini_total_universal_split_exists. (exists efrd_lt_gap_fubini_total_universal_split_exists_bound. efrd_lt_gap_fubini_total_universal_split_exists_bound + S (efrd_row_index_fubini_total_universal_split_exists) = k) -> exists efrd_count_fubini_total_universal_split_exists efrd_reduced_count_fubini_total_universal_split_exists efrd_terminal_bit_fubini_total_universal_split_exists. (((((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_outer_entry. ff_h_efrd_fubini_total_universal_split_exists_entry_outer_entry + S (efrd_count_fubini_total_universal_split_exists) = S ((S (efrd_row_index_fubini_total_universal_split_exists)) * bc)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_outer_entry. bb = ff_q_efrd_fubini_total_universal_split_exists_entry_outer_entry * S ((S (efrd_row_index_fubini_total_universal_split_exists)) * bc) + (efrd_count_fubini_total_universal_split_exists))) /\ (((exists ff_h_efrd_fubini_total_universal_split_exists_entry_reduced_entry. ff_h_efrd_fubini_total_universal_split_exists_entry_reduced_entry + S (efrd_reduced_count_fubini_total_universal_split_exists) = S ((S (efrd_row_index_fubini_total_universal_split_exists)) * rc)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_reduced_entry. rb = ff_q_efrd_fubini_total_universal_split_exists_entry_reduced_entry * S ((S (efrd_row_index_fubini_total_universal_split_exists)) * rc) + (efrd_reduced_count_fubini_total_universal_split_exists)))) /\ (((exists ff_h_efrd_fubini_total_universal_split_exists_entry_terminal_entry. ff_h_efrd_fubini_total_universal_split_exists_entry_terminal_entry + S (efrd_terminal_bit_fubini_total_universal_split_exists) = S ((S (efrd_row_index_fubini_total_universal_split_exists)) * tc)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_terminal_entry. tb = ff_q_efrd_fubini_total_universal_split_exists_entry_terminal_entry * S ((S (efrd_row_index_fubini_total_universal_split_exists)) * tc) + (efrd_terminal_bit_fubini_total_universal_split_exists)))) /\ (exists efrd_row_code_fubini_total_universal_split_exists_entry_split efrd_row_scale_fubini_total_universal_split_exists_entry_split. (((((forall eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix. (exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_bound. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_bound + S (eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix) = S h) -> exists eri_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix. ((((exists ff_h_eri_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_decoded. ff_h_eri_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_decoded + S (eri_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix) = S ((S (eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split)) /\ exists ff_q_eri_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_decoded. efrd_row_code_fubini_total_universal_split_exists_entry_split = ff_q_eri_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_decoded * S ((S (eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split) + (eri_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix))) /\ (((eri_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix = 0 /\ ((exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_left. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_left + S (p * S efrd_row_index_fubini_total_universal_split_exists) = q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix) /\ ~(exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_right. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_right + S (q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix) = p * S efrd_row_index_fubini_total_universal_split_exists))) \/ (eri_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix = 1 /\ ((exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_right. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_right + S (q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix) = p * S efrd_row_index_fubini_total_universal_split_exists) /\ ~(exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_left. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix_choice_left + S (p * S efrd_row_index_fubini_total_universal_split_exists) = q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_successor_prefix))))))) /\ (((exists ff_u_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum. ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_start. ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_start + S (0) = S ((S (0)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_start. ff_u_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_start * S ((S (0)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum) + (0))) /\ ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_terminal. ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_terminal + S (efrd_count_fubini_total_universal_split_exists) = S ((S (S h)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_terminal. ff_u_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_terminal * S ((S (S h)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum) + (efrd_count_fubini_total_universal_split_exists))) /\ forall ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum. (exists ff_lt_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_bound. ff_lt_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_bound + S ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum = S h) -> exists ff_a_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum ff_r_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum ff_s_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum. ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_summand. ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_summand + S (ff_a_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum) = S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_summand. efrd_row_code_fubini_total_universal_split_exists_entry_split = ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_summand * S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split) + (ff_a_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum))) /\ ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_partial. ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_partial + S (ff_r_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum) = S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_partial. ff_u_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_partial * S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum) + (ff_r_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum))) /\ ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_successor. ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_successor + S (ff_s_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum) = S ((S (S ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_successor. ff_u_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum_successor * S ((S (S ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum) + (ff_s_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum))) /\ ff_s_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum = ff_r_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum + ff_a_efrd_fubini_total_universal_split_exists_entry_split_successor_count_sum)))))) /\ (forall ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits. (exists ff_lt_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits_bound. ff_lt_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits_bound + S ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits = S h) -> exists ff_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits. ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits_decoded. ff_h_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits_decoded + S (ff_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits) = S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits_decoded. efrd_row_code_fubini_total_universal_split_exists_entry_split = ff_q_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits_decoded * S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split) + (ff_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits))) /\ (ff_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits = 0 \/ ff_bit_efrd_fubini_total_universal_split_exists_entry_split_successor_count_bits = 1)))))) /\ ((forall eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix. (exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_bound. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_bound + S (eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix) = h) -> exists eri_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix. ((((exists ff_h_eri_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_decoded. ff_h_eri_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_decoded + S (eri_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix) = S ((S (eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split)) /\ exists ff_q_eri_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_decoded. efrd_row_code_fubini_total_universal_split_exists_entry_split = ff_q_eri_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_decoded * S ((S (eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split) + (eri_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix))) /\ (((eri_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix = 0 /\ ((exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_left. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_left + S (p * S efrd_row_index_fubini_total_universal_split_exists) = q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix) /\ ~(exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_right. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_right + S (q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix) = p * S efrd_row_index_fubini_total_universal_split_exists))) \/ (eri_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix = 1 /\ ((exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_right. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_right + S (q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix) = p * S efrd_row_index_fubini_total_universal_split_exists) /\ ~(exists eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_left. eri_gap_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix_choice_left + S (p * S efrd_row_index_fubini_total_universal_split_exists) = q * S eri_column_efrd_fubini_total_universal_split_exists_entry_split_reduced_prefix))))))) /\ (((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_terminal_entry. ff_h_efrd_fubini_total_universal_split_exists_entry_split_terminal_entry + S (efrd_terminal_bit_fubini_total_universal_split_exists) = S ((S (h)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_terminal_entry. efrd_row_code_fubini_total_universal_split_exists_entry_split = ff_q_efrd_fubini_total_universal_split_exists_entry_split_terminal_entry * S ((S (h)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split) + (efrd_terminal_bit_fubini_total_universal_split_exists))))) /\ (((((exists ff_u_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum. ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_start. ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_start + S (0) = S ((S (0)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_start. ff_u_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_start * S ((S (0)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum) + (0))) /\ ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_terminal. ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_terminal + S (efrd_reduced_count_fubini_total_universal_split_exists) = S ((S (h)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_terminal. ff_u_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_terminal * S ((S (h)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum) + (efrd_reduced_count_fubini_total_universal_split_exists))) /\ forall ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum. (exists ff_lt_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_bound. ff_lt_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_bound + S ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum = h) -> exists ff_a_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum ff_r_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum ff_s_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum. ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_summand. ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_summand + S (ff_a_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum) = S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_summand. efrd_row_code_fubini_total_universal_split_exists_entry_split = ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_summand * S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split) + (ff_a_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum))) /\ ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_partial. ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_partial + S (ff_r_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum) = S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_partial. ff_u_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_partial * S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum) + (ff_r_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum))) /\ ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_successor. ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_successor + S (ff_s_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum) = S ((S (S ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_successor. ff_u_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum = ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum_successor * S ((S (S ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)) * ff_v_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum) + (ff_s_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum))) /\ ff_s_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum = ff_r_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum + ff_a_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_sum)))))) /\ (forall ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits. (exists ff_lt_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits_bound. ff_lt_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits_bound + S ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits = h) -> exists ff_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits. ((((exists ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits_decoded. ff_h_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits_decoded + S (ff_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits) = S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split)) /\ exists ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits_decoded. efrd_row_code_fubini_total_universal_split_exists_entry_split = ff_q_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits_decoded * S ((S (ff_i_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits)) * efrd_row_scale_fubini_total_universal_split_exists_entry_split) + (ff_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits))) /\ (ff_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits = 0 \/ ff_bit_efrd_fubini_total_universal_split_exists_entry_split_reduced_count_bits = 1))))) /\ (efrd_terminal_bit_fubini_total_universal_split_exists = 0 \/ efrd_terminal_bit_fubini_total_universal_split_exists = 1)) /\ efrd_count_fubini_total_universal_split_exists = efrd_reduced_count_fubini_total_universal_split_exists + efrd_terminal_bit_fubini_total_universal_split_exists)))))))
  52. 0052specialize eisenstein_successor_rectangle_row_split_prefix_exists q
  53. 0053specialize eisenstein_successor_rectangle_row_split_prefix_exists p
  54. 0054specialize eisenstein_successor_rectangle_row_split_prefix_exists h
  55. 0055specialize eisenstein_successor_rectangle_row_split_prefix_exists (S h)
  56. 0056specialize eisenstein_successor_rectangle_row_split_prefix_exists bb
  57. 0057specialize eisenstein_successor_rectangle_row_split_prefix_exists bc
  58. 0058specialize eisenstein_successor_rectangle_row_split_prefix_exists k
  59. 0059apply eisenstein_successor_rectangle_row_split_prefix_exists
  60. 0060refl
  61. 0061exact houter
  62. 0062cases hsplit_exists
  63. 0063cases hsplit_exists_witness
  64. 0064cases hsplit_exists_witness_witness
  65. 0065cases hsplit_exists_witness_witness_witness
  66. 0066have hreduced_outer : forall erc_row_fubini_total_universal_reduced_outer. (exists erc_lt_gap_fubini_total_universal_reduced_outer_bound. erc_lt_gap_fubini_total_universal_reduced_outer_bound + S (erc_row_fubini_total_universal_reduced_outer) = k) -> exists erc_count_fubini_total_universal_reduced_outer. ((((exists ff_h_erc_fubini_total_universal_reduced_outer_decoded. ff_h_erc_fubini_total_universal_reduced_outer_decoded + S (erc_count_fubini_total_universal_reduced_outer) = S ((S (erc_row_fubini_total_universal_reduced_outer)) * x1)) /\ exists ff_q_erc_fubini_total_universal_reduced_outer_decoded. x = ff_q_erc_fubini_total_universal_reduced_outer_decoded * S ((S (erc_row_fubini_total_universal_reduced_outer)) * x1) + (erc_count_fubini_total_universal_reduced_outer))) /\ (exists erc_row_code_fubini_total_universal_reduced_outer_witness erc_row_scale_fubini_total_universal_reduced_outer_witness. ((forall eri_column_erc_fubini_total_universal_reduced_outer_witness_row. (exists eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_bound. eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_bound + S (eri_column_erc_fubini_total_universal_reduced_outer_witness_row) = h) -> exists eri_bit_erc_fubini_total_universal_reduced_outer_witness_row. ((((exists ff_h_eri_erc_fubini_total_universal_reduced_outer_witness_row_decoded. ff_h_eri_erc_fubini_total_universal_reduced_outer_witness_row_decoded + S (eri_bit_erc_fubini_total_universal_reduced_outer_witness_row) = S ((S (eri_column_erc_fubini_total_universal_reduced_outer_witness_row)) * erc_row_scale_fubini_total_universal_reduced_outer_witness)) /\ exists ff_q_eri_erc_fubini_total_universal_reduced_outer_witness_row_decoded. erc_row_code_fubini_total_universal_reduced_outer_witness = ff_q_eri_erc_fubini_total_universal_reduced_outer_witness_row_decoded * S ((S (eri_column_erc_fubini_total_universal_reduced_outer_witness_row)) * erc_row_scale_fubini_total_universal_reduced_outer_witness) + (eri_bit_erc_fubini_total_universal_reduced_outer_witness_row))) /\ (((eri_bit_erc_fubini_total_universal_reduced_outer_witness_row = 0 /\ ((exists eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_left. eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_left + S (p * S erc_row_fubini_total_universal_reduced_outer) = q * S eri_column_erc_fubini_total_universal_reduced_outer_witness_row) /\ ~(exists eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_right. eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_right + S (q * S eri_column_erc_fubini_total_universal_reduced_outer_witness_row) = p * S erc_row_fubini_total_universal_reduced_outer))) \/ (eri_bit_erc_fubini_total_universal_reduced_outer_witness_row = 1 /\ ((exists eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_right. eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_right + S (q * S eri_column_erc_fubini_total_universal_reduced_outer_witness_row) = p * S erc_row_fubini_total_universal_reduced_outer) /\ ~(exists eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_left. eri_gap_erc_fubini_total_universal_reduced_outer_witness_row_choice_left + S (p * S erc_row_fubini_total_universal_reduced_outer) = q * S eri_column_erc_fubini_total_universal_reduced_outer_witness_row))))))) /\ (((exists ff_u_erc_fubini_total_universal_reduced_outer_witness_count_sum ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum. ((((exists ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_start. ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_start. ff_u_erc_fubini_total_universal_reduced_outer_witness_count_sum = ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_start * S ((S (0)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_terminal. ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_terminal + S (erc_count_fubini_total_universal_reduced_outer) = S ((S (h)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_terminal. ff_u_erc_fubini_total_universal_reduced_outer_witness_count_sum = ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_terminal * S ((S (h)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum) + (erc_count_fubini_total_universal_reduced_outer))) /\ forall ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum. (exists ff_lt_erc_fubini_total_universal_reduced_outer_witness_count_sum_bound. ff_lt_erc_fubini_total_universal_reduced_outer_witness_count_sum_bound + S ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum = h) -> exists ff_a_erc_fubini_total_universal_reduced_outer_witness_count_sum ff_r_erc_fubini_total_universal_reduced_outer_witness_count_sum ff_s_erc_fubini_total_universal_reduced_outer_witness_count_sum. ((((exists ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_summand. ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_summand + S (ff_a_erc_fubini_total_universal_reduced_outer_witness_count_sum) = S ((S (ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum)) * erc_row_scale_fubini_total_universal_reduced_outer_witness)) /\ exists ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_summand. erc_row_code_fubini_total_universal_reduced_outer_witness = ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_summand * S ((S (ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum)) * erc_row_scale_fubini_total_universal_reduced_outer_witness) + (ff_a_erc_fubini_total_universal_reduced_outer_witness_count_sum))) /\ ((((exists ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_partial. ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_partial + S (ff_r_erc_fubini_total_universal_reduced_outer_witness_count_sum) = S ((S (ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_partial. ff_u_erc_fubini_total_universal_reduced_outer_witness_count_sum = ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_partial * S ((S (ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum) + (ff_r_erc_fubini_total_universal_reduced_outer_witness_count_sum))) /\ ((((exists ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_successor. ff_h_erc_fubini_total_universal_reduced_outer_witness_count_sum_successor + S (ff_s_erc_fubini_total_universal_reduced_outer_witness_count_sum) = S ((S (S ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum)) /\ exists ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_successor. ff_u_erc_fubini_total_universal_reduced_outer_witness_count_sum = ff_q_erc_fubini_total_universal_reduced_outer_witness_count_sum_successor * S ((S (S ff_i_erc_fubini_total_universal_reduced_outer_witness_count_sum)) * ff_v_erc_fubini_total_universal_reduced_outer_witness_count_sum) + (ff_s_erc_fubini_total_universal_reduced_outer_witness_count_sum))) /\ ff_s_erc_fubini_total_universal_reduced_outer_witness_count_sum = ff_r_erc_fubini_total_universal_reduced_outer_witness_count_sum + ff_a_erc_fubini_total_universal_reduced_outer_witness_count_sum)))))) /\ (forall ff_i_erc_fubini_total_universal_reduced_outer_witness_count_bits. (exists ff_lt_erc_fubini_total_universal_reduced_outer_witness_count_bits_bound. ff_lt_erc_fubini_total_universal_reduced_outer_witness_count_bits_bound + S ff_i_erc_fubini_total_universal_reduced_outer_witness_count_bits = h) -> exists ff_bit_erc_fubini_total_universal_reduced_outer_witness_count_bits. ((((exists ff_h_erc_fubini_total_universal_reduced_outer_witness_count_bits_decoded. ff_h_erc_fubini_total_universal_reduced_outer_witness_count_bits_decoded + S (ff_bit_erc_fubini_total_universal_reduced_outer_witness_count_bits) = S ((S (ff_i_erc_fubini_total_universal_reduced_outer_witness_count_bits)) * erc_row_scale_fubini_total_universal_reduced_outer_witness)) /\ exists ff_q_erc_fubini_total_universal_reduced_outer_witness_count_bits_decoded. erc_row_code_fubini_total_universal_reduced_outer_witness = ff_q_erc_fubini_total_universal_reduced_outer_witness_count_bits_decoded * S ((S (ff_i_erc_fubini_total_universal_reduced_outer_witness_count_bits)) * erc_row_scale_fubini_total_universal_reduced_outer_witness) + (ff_bit_erc_fubini_total_universal_reduced_outer_witness_count_bits))) /\ (ff_bit_erc_fubini_total_universal_reduced_outer_witness_count_bits = 0 \/ ff_bit_erc_fubini_total_universal_reduced_outer_witness_count_bits = 1))))))))
  67. 0067specialize eisenstein_successor_row_split_reduced_rectangle_prefix q
  68. 0068specialize eisenstein_successor_row_split_reduced_rectangle_prefix p
  69. 0069specialize eisenstein_successor_row_split_reduced_rectangle_prefix h
  70. 0070specialize eisenstein_successor_row_split_reduced_rectangle_prefix (S h)
  71. 0071specialize eisenstein_successor_row_split_reduced_rectangle_prefix bb
  72. 0072specialize eisenstein_successor_row_split_reduced_rectangle_prefix bc
  73. 0073specialize eisenstein_successor_row_split_reduced_rectangle_prefix x
  74. 0074specialize eisenstein_successor_row_split_reduced_rectangle_prefix x1
  75. 0075specialize eisenstein_successor_row_split_reduced_rectangle_prefix x2
  76. 0076specialize eisenstein_successor_row_split_reduced_rectangle_prefix x3
  77. 0077specialize eisenstein_successor_row_split_reduced_rectangle_prefix k
  78. 0078apply eisenstein_successor_row_split_reduced_rectangle_prefix
  79. 0079exact hsplit_exists_witness_witness_witness_witness
  80. 0080have hreduced_sum : exists R. (exists ff_u_fubini_total_universal_reduced_sum ff_v_fubini_total_universal_reduced_sum. ((((exists ff_h_fubini_total_universal_reduced_sum_start. ff_h_fubini_total_universal_reduced_sum_start + S (0) = S ((S (0)) * ff_v_fubini_total_universal_reduced_sum)) /\ exists ff_q_fubini_total_universal_reduced_sum_start. ff_u_fubini_total_universal_reduced_sum = ff_q_fubini_total_universal_reduced_sum_start * S ((S (0)) * ff_v_fubini_total_universal_reduced_sum) + (0))) /\ ((((exists ff_h_fubini_total_universal_reduced_sum_terminal. ff_h_fubini_total_universal_reduced_sum_terminal + S (R) = S ((S (k)) * ff_v_fubini_total_universal_reduced_sum)) /\ exists ff_q_fubini_total_universal_reduced_sum_terminal. ff_u_fubini_total_universal_reduced_sum = ff_q_fubini_total_universal_reduced_sum_terminal * S ((S (k)) * ff_v_fubini_total_universal_reduced_sum) + (R))) /\ forall ff_i_fubini_total_universal_reduced_sum. (exists ff_lt_fubini_total_universal_reduced_sum_bound. ff_lt_fubini_total_universal_reduced_sum_bound + S ff_i_fubini_total_universal_reduced_sum = k) -> exists ff_a_fubini_total_universal_reduced_sum ff_r_fubini_total_universal_reduced_sum ff_s_fubini_total_universal_reduced_sum. ((((exists ff_h_fubini_total_universal_reduced_sum_summand. ff_h_fubini_total_universal_reduced_sum_summand + S (ff_a_fubini_total_universal_reduced_sum) = S ((S (ff_i_fubini_total_universal_reduced_sum)) * x1)) /\ exists ff_q_fubini_total_universal_reduced_sum_summand. x = ff_q_fubini_total_universal_reduced_sum_summand * S ((S (ff_i_fubini_total_universal_reduced_sum)) * x1) + (ff_a_fubini_total_universal_reduced_sum))) /\ ((((exists ff_h_fubini_total_universal_reduced_sum_partial. ff_h_fubini_total_universal_reduced_sum_partial + S (ff_r_fubini_total_universal_reduced_sum) = S ((S (ff_i_fubini_total_universal_reduced_sum)) * ff_v_fubini_total_universal_reduced_sum)) /\ exists ff_q_fubini_total_universal_reduced_sum_partial. ff_u_fubini_total_universal_reduced_sum = ff_q_fubini_total_universal_reduced_sum_partial * S ((S (ff_i_fubini_total_universal_reduced_sum)) * ff_v_fubini_total_universal_reduced_sum) + (ff_r_fubini_total_universal_reduced_sum))) /\ ((((exists ff_h_fubini_total_universal_reduced_sum_successor. ff_h_fubini_total_universal_reduced_sum_successor + S (ff_s_fubini_total_universal_reduced_sum) = S ((S (S ff_i_fubini_total_universal_reduced_sum)) * ff_v_fubini_total_universal_reduced_sum)) /\ exists ff_q_fubini_total_universal_reduced_sum_successor. ff_u_fubini_total_universal_reduced_sum = ff_q_fubini_total_universal_reduced_sum_successor * S ((S (S ff_i_fubini_total_universal_reduced_sum)) * ff_v_fubini_total_universal_reduced_sum) + (ff_s_fubini_total_universal_reduced_sum))) /\ ff_s_fubini_total_universal_reduced_sum = ff_r_fubini_total_universal_reduced_sum + ff_a_fubini_total_universal_reduced_sum))))))
  81. 0081specialize beta_sum_exists x
  82. 0082specialize beta_sum_exists x1
  83. 0083specialize beta_sum_exists k
  84. 0084exact beta_sum_exists
  85. 0085cases hreduced_sum
  86. 0086have hterminal_sum : exists D. (exists ff_u_fubini_total_universal_terminal_sum ff_v_fubini_total_universal_terminal_sum. ((((exists ff_h_fubini_total_universal_terminal_sum_start. ff_h_fubini_total_universal_terminal_sum_start + S (0) = S ((S (0)) * ff_v_fubini_total_universal_terminal_sum)) /\ exists ff_q_fubini_total_universal_terminal_sum_start. ff_u_fubini_total_universal_terminal_sum = ff_q_fubini_total_universal_terminal_sum_start * S ((S (0)) * ff_v_fubini_total_universal_terminal_sum) + (0))) /\ ((((exists ff_h_fubini_total_universal_terminal_sum_terminal. ff_h_fubini_total_universal_terminal_sum_terminal + S (D) = S ((S (k)) * ff_v_fubini_total_universal_terminal_sum)) /\ exists ff_q_fubini_total_universal_terminal_sum_terminal. ff_u_fubini_total_universal_terminal_sum = ff_q_fubini_total_universal_terminal_sum_terminal * S ((S (k)) * ff_v_fubini_total_universal_terminal_sum) + (D))) /\ forall ff_i_fubini_total_universal_terminal_sum. (exists ff_lt_fubini_total_universal_terminal_sum_bound. ff_lt_fubini_total_universal_terminal_sum_bound + S ff_i_fubini_total_universal_terminal_sum = k) -> exists ff_a_fubini_total_universal_terminal_sum ff_r_fubini_total_universal_terminal_sum ff_s_fubini_total_universal_terminal_sum. ((((exists ff_h_fubini_total_universal_terminal_sum_summand. ff_h_fubini_total_universal_terminal_sum_summand + S (ff_a_fubini_total_universal_terminal_sum) = S ((S (ff_i_fubini_total_universal_terminal_sum)) * x3)) /\ exists ff_q_fubini_total_universal_terminal_sum_summand. x2 = ff_q_fubini_total_universal_terminal_sum_summand * S ((S (ff_i_fubini_total_universal_terminal_sum)) * x3) + (ff_a_fubini_total_universal_terminal_sum))) /\ ((((exists ff_h_fubini_total_universal_terminal_sum_partial. ff_h_fubini_total_universal_terminal_sum_partial + S (ff_r_fubini_total_universal_terminal_sum) = S ((S (ff_i_fubini_total_universal_terminal_sum)) * ff_v_fubini_total_universal_terminal_sum)) /\ exists ff_q_fubini_total_universal_terminal_sum_partial. ff_u_fubini_total_universal_terminal_sum = ff_q_fubini_total_universal_terminal_sum_partial * S ((S (ff_i_fubini_total_universal_terminal_sum)) * ff_v_fubini_total_universal_terminal_sum) + (ff_r_fubini_total_universal_terminal_sum))) /\ ((((exists ff_h_fubini_total_universal_terminal_sum_successor. ff_h_fubini_total_universal_terminal_sum_successor + S (ff_s_fubini_total_universal_terminal_sum) = S ((S (S ff_i_fubini_total_universal_terminal_sum)) * ff_v_fubini_total_universal_terminal_sum)) /\ exists ff_q_fubini_total_universal_terminal_sum_successor. ff_u_fubini_total_universal_terminal_sum = ff_q_fubini_total_universal_terminal_sum_successor * S ((S (S ff_i_fubini_total_universal_terminal_sum)) * ff_v_fubini_total_universal_terminal_sum) + (ff_s_fubini_total_universal_terminal_sum))) /\ ff_s_fubini_total_universal_terminal_sum = ff_r_fubini_total_universal_terminal_sum + ff_a_fubini_total_universal_terminal_sum))))))
  87. 0087specialize beta_sum_exists x2
  88. 0088specialize beta_sum_exists x3
  89. 0089specialize beta_sum_exists k
  90. 0090exact beta_sum_exists
  91. 0091cases hterminal_sum
  92. 0092have hsource_add : x4 + x5 = T
  93. 0093specialize eisenstein_successor_row_split_sum_add q
  94. 0094specialize eisenstein_successor_row_split_sum_add p
  95. 0095specialize eisenstein_successor_row_split_sum_add h
  96. 0096specialize eisenstein_successor_row_split_sum_add (S h)
  97. 0097specialize eisenstein_successor_row_split_sum_add bb
  98. 0098specialize eisenstein_successor_row_split_sum_add bc
  99. 0099specialize eisenstein_successor_row_split_sum_add x
  100. 0100specialize eisenstein_successor_row_split_sum_add x1
  101. 0101specialize eisenstein_successor_row_split_sum_add x2
  102. 0102specialize eisenstein_successor_row_split_sum_add x3
  103. 0103specialize eisenstein_successor_row_split_sum_add k
  104. 0104specialize eisenstein_successor_row_split_sum_add x4
  105. 0105specialize eisenstein_successor_row_split_sum_add x5
  106. 0106specialize eisenstein_successor_row_split_sum_add T
  107. 0107apply eisenstein_successor_row_split_sum_add
  108. 0108exact hsplit_exists_witness_witness_witness_witness
  109. 0109exact hreduced_sum_witness
  110. 0110exact hterminal_sum_witness
  111. 0111exact houtersum
  112. 0112have hrestricted_columns : forall eft_fixed_index_fubini_total_universal_restricted_columns. (exists edt_lt_gap_eft_fubini_total_universal_restricted_columns_bound. edt_lt_gap_eft_fubini_total_universal_restricted_columns_bound + S (eft_fixed_index_fubini_total_universal_restricted_columns) = h) -> exists eft_count_fubini_total_universal_restricted_columns. ((((exists ff_h_eft_fubini_total_universal_restricted_columns_decoded. ff_h_eft_fubini_total_universal_restricted_columns_decoded + S (eft_count_fubini_total_universal_restricted_columns) = S ((S (eft_fixed_index_fubini_total_universal_restricted_columns)) * dc)) /\ exists ff_q_eft_fubini_total_universal_restricted_columns_decoded. db = ff_q_eft_fubini_total_universal_restricted_columns_decoded * S ((S (eft_fixed_index_fubini_total_universal_restricted_columns)) * dc) + (eft_count_fubini_total_universal_restricted_columns))) /\ (exists eft_column_code_fubini_total_universal_restricted_columns_witness eft_column_scale_fubini_total_universal_restricted_columns_witness. ((forall etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column. (exists edt_lt_gap_eft_fubini_total_universal_restricted_columns_witness_column_bound. edt_lt_gap_eft_fubini_total_universal_restricted_columns_witness_column_bound + S (etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column) = k) -> exists etc_bit_eft_fubini_total_universal_restricted_columns_witness_column. ((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_decoded. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_decoded + S (etc_bit_eft_fubini_total_universal_restricted_columns_witness_column) = S ((S (etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column)) * eft_column_scale_fubini_total_universal_restricted_columns_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_decoded. eft_column_code_fubini_total_universal_restricted_columns_witness = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_decoded * S ((S (etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column)) * eft_column_scale_fubini_total_universal_restricted_columns_witness) + (etc_bit_eft_fubini_total_universal_restricted_columns_witness_column))) /\ (exists etc_count_eft_fubini_total_universal_restricted_columns_witness_column_witness etc_row_code_eft_fubini_total_universal_restricted_columns_witness_column_witness etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness. ((((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_outer_entry. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_outer_entry + S (etc_count_eft_fubini_total_universal_restricted_columns_witness_column_witness) = S ((S (etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column)) * bc)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_outer_entry. bb = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_outer_entry * S ((S (etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column)) * bc) + (etc_count_eft_fubini_total_universal_restricted_columns_witness_column_witness))) /\ (forall eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row. (exists eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_bound. eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_bound + S (eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row) = S h) -> exists eri_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row. ((((exists ff_h_eri_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_decoded. ff_h_eri_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_decoded + S (eri_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row) = S ((S (eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness)) /\ exists ff_q_eri_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_decoded. etc_row_code_eft_fubini_total_universal_restricted_columns_witness_column_witness = ff_q_eri_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_decoded * S ((S (eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness) + (eri_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row))) /\ (((eri_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row = 0 /\ ((exists eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column) = q * S eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row) /\ ~(exists eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column))) \/ (eri_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row = 1 /\ ((exists eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column) /\ ~(exists eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_universal_restricted_columns_witness_column) = q * S eri_column_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_row)))))))) /\ (((exists ff_u_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_start. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_start + S (0) = S ((S (0)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_start. ff_u_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_start * S ((S (0)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum) + (0))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_terminal. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_terminal + S (etc_count_eft_fubini_total_universal_restricted_columns_witness_column_witness) = S ((S (S h)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_terminal. ff_u_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_terminal * S ((S (S h)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum) + (etc_count_eft_fubini_total_universal_restricted_columns_witness_column_witness))) /\ forall ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum. (exists ff_lt_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_bound. ff_lt_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_bound + S ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum = S h) -> exists ff_a_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum ff_r_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum ff_s_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_summand. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_summand + S (ff_a_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_summand. etc_row_code_eft_fubini_total_universal_restricted_columns_witness_column_witness = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_summand * S ((S (ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness) + (ff_a_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_partial. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_partial + S (ff_r_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_partial. ff_u_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_partial * S ((S (ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum) + (ff_r_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_successor. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_successor + S (ff_s_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum) = S ((S (S ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_successor. ff_u_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum_successor * S ((S (S ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum) + (ff_s_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum))) /\ ff_s_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum = ff_r_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum + ff_a_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_sum)))))) /\ (forall ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits. (exists ff_lt_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits_bound. ff_lt_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits_bound + S ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits = S h) -> exists ff_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits. ((((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits_decoded. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits_decoded + S (ff_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits) = S ((S (ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits_decoded. etc_row_code_eft_fubini_total_universal_restricted_columns_witness_column_witness = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits_decoded * S ((S (ff_i_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness) + (ff_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits))) /\ (ff_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits = 0 \/ ff_bit_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_count_relation_bits = 1)))))) /\ (((exists ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_inner_entry. ff_h_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_inner_entry + S (etc_bit_eft_fubini_total_universal_restricted_columns_witness_column) = S ((S (eft_fixed_index_fubini_total_universal_restricted_columns)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_inner_entry. etc_row_code_eft_fubini_total_universal_restricted_columns_witness_column_witness = ff_q_etc_eft_fubini_total_universal_restricted_columns_witness_column_witness_inner_entry * S ((S (eft_fixed_index_fubini_total_universal_restricted_columns)) * etc_row_scale_eft_fubini_total_universal_restricted_columns_witness_column_witness) + (etc_bit_eft_fubini_total_universal_restricted_columns_witness_column))))))) /\ (((exists ff_u_eft_fubini_total_universal_restricted_columns_witness_count_sum ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum. ((((exists ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_start. ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_start. ff_u_eft_fubini_total_universal_restricted_columns_witness_count_sum = ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_start * S ((S (0)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum) + (0))) /\ ((((exists ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_terminal. ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_terminal + S (eft_count_fubini_total_universal_restricted_columns) = S ((S (k)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_terminal. ff_u_eft_fubini_total_universal_restricted_columns_witness_count_sum = ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_terminal * S ((S (k)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum) + (eft_count_fubini_total_universal_restricted_columns))) /\ forall ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum. (exists ff_lt_eft_fubini_total_universal_restricted_columns_witness_count_sum_bound. ff_lt_eft_fubini_total_universal_restricted_columns_witness_count_sum_bound + S ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum = k) -> exists ff_a_eft_fubini_total_universal_restricted_columns_witness_count_sum ff_r_eft_fubini_total_universal_restricted_columns_witness_count_sum ff_s_eft_fubini_total_universal_restricted_columns_witness_count_sum. ((((exists ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_summand. ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_summand + S (ff_a_eft_fubini_total_universal_restricted_columns_witness_count_sum) = S ((S (ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum)) * eft_column_scale_fubini_total_universal_restricted_columns_witness)) /\ exists ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_summand. eft_column_code_fubini_total_universal_restricted_columns_witness = ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_summand * S ((S (ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum)) * eft_column_scale_fubini_total_universal_restricted_columns_witness) + (ff_a_eft_fubini_total_universal_restricted_columns_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_partial. ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_partial + S (ff_r_eft_fubini_total_universal_restricted_columns_witness_count_sum) = S ((S (ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_partial. ff_u_eft_fubini_total_universal_restricted_columns_witness_count_sum = ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_partial * S ((S (ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum) + (ff_r_eft_fubini_total_universal_restricted_columns_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_successor. ff_h_eft_fubini_total_universal_restricted_columns_witness_count_sum_successor + S (ff_s_eft_fubini_total_universal_restricted_columns_witness_count_sum) = S ((S (S ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_successor. ff_u_eft_fubini_total_universal_restricted_columns_witness_count_sum = ff_q_eft_fubini_total_universal_restricted_columns_witness_count_sum_successor * S ((S (S ff_i_eft_fubini_total_universal_restricted_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_restricted_columns_witness_count_sum) + (ff_s_eft_fubini_total_universal_restricted_columns_witness_count_sum))) /\ ff_s_eft_fubini_total_universal_restricted_columns_witness_count_sum = ff_r_eft_fubini_total_universal_restricted_columns_witness_count_sum + ff_a_eft_fubini_total_universal_restricted_columns_witness_count_sum)))))) /\ (forall ff_i_eft_fubini_total_universal_restricted_columns_witness_count_bits. (exists ff_lt_eft_fubini_total_universal_restricted_columns_witness_count_bits_bound. ff_lt_eft_fubini_total_universal_restricted_columns_witness_count_bits_bound + S ff_i_eft_fubini_total_universal_restricted_columns_witness_count_bits = k) -> exists ff_bit_eft_fubini_total_universal_restricted_columns_witness_count_bits. ((((exists ff_h_eft_fubini_total_universal_restricted_columns_witness_count_bits_decoded. ff_h_eft_fubini_total_universal_restricted_columns_witness_count_bits_decoded + S (ff_bit_eft_fubini_total_universal_restricted_columns_witness_count_bits) = S ((S (ff_i_eft_fubini_total_universal_restricted_columns_witness_count_bits)) * eft_column_scale_fubini_total_universal_restricted_columns_witness)) /\ exists ff_q_eft_fubini_total_universal_restricted_columns_witness_count_bits_decoded. eft_column_code_fubini_total_universal_restricted_columns_witness = ff_q_eft_fubini_total_universal_restricted_columns_witness_count_bits_decoded * S ((S (ff_i_eft_fubini_total_universal_restricted_columns_witness_count_bits)) * eft_column_scale_fubini_total_universal_restricted_columns_witness) + (ff_bit_eft_fubini_total_universal_restricted_columns_witness_count_bits))) /\ (ff_bit_eft_fubini_total_universal_restricted_columns_witness_count_bits = 0 \/ ff_bit_eft_fubini_total_universal_restricted_columns_witness_count_bits = 1))))))))
  113. 0113specialize eisenstein_fubini_column_count_prefix_succ_restrict p
  114. 0114specialize eisenstein_fubini_column_count_prefix_succ_restrict q
  115. 0115specialize eisenstein_fubini_column_count_prefix_succ_restrict h
  116. 0116specialize eisenstein_fubini_column_count_prefix_succ_restrict (S h)
  117. 0117specialize eisenstein_fubini_column_count_prefix_succ_restrict bb
  118. 0118specialize eisenstein_fubini_column_count_prefix_succ_restrict bc
  119. 0119specialize eisenstein_fubini_column_count_prefix_succ_restrict db
  120. 0120specialize eisenstein_fubini_column_count_prefix_succ_restrict dc
  121. 0121specialize eisenstein_fubini_column_count_prefix_succ_restrict k
  122. 0122apply eisenstein_fubini_column_count_prefix_succ_restrict
  123. 0123refl
  124. 0124exact hcolumns
  125. 0125have hreduced_columns : forall eft_fixed_index_fubini_total_universal_reduced_columns. (exists edt_lt_gap_eft_fubini_total_universal_reduced_columns_bound. edt_lt_gap_eft_fubini_total_universal_reduced_columns_bound + S (eft_fixed_index_fubini_total_universal_reduced_columns) = h) -> exists eft_count_fubini_total_universal_reduced_columns. ((((exists ff_h_eft_fubini_total_universal_reduced_columns_decoded. ff_h_eft_fubini_total_universal_reduced_columns_decoded + S (eft_count_fubini_total_universal_reduced_columns) = S ((S (eft_fixed_index_fubini_total_universal_reduced_columns)) * dc)) /\ exists ff_q_eft_fubini_total_universal_reduced_columns_decoded. db = ff_q_eft_fubini_total_universal_reduced_columns_decoded * S ((S (eft_fixed_index_fubini_total_universal_reduced_columns)) * dc) + (eft_count_fubini_total_universal_reduced_columns))) /\ (exists eft_column_code_fubini_total_universal_reduced_columns_witness eft_column_scale_fubini_total_universal_reduced_columns_witness. ((forall etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column. (exists edt_lt_gap_eft_fubini_total_universal_reduced_columns_witness_column_bound. edt_lt_gap_eft_fubini_total_universal_reduced_columns_witness_column_bound + S (etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column) = k) -> exists etc_bit_eft_fubini_total_universal_reduced_columns_witness_column. ((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_decoded. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_decoded + S (etc_bit_eft_fubini_total_universal_reduced_columns_witness_column) = S ((S (etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column)) * eft_column_scale_fubini_total_universal_reduced_columns_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_decoded. eft_column_code_fubini_total_universal_reduced_columns_witness = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_decoded * S ((S (etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column)) * eft_column_scale_fubini_total_universal_reduced_columns_witness) + (etc_bit_eft_fubini_total_universal_reduced_columns_witness_column))) /\ (exists etc_count_eft_fubini_total_universal_reduced_columns_witness_column_witness etc_row_code_eft_fubini_total_universal_reduced_columns_witness_column_witness etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness. ((((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_outer_entry. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_outer_entry + S (etc_count_eft_fubini_total_universal_reduced_columns_witness_column_witness) = S ((S (etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column)) * x1)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_outer_entry. x = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_outer_entry * S ((S (etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column)) * x1) + (etc_count_eft_fubini_total_universal_reduced_columns_witness_column_witness))) /\ (forall eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row. (exists eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_bound. eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_bound + S (eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row) = h) -> exists eri_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row. ((((exists ff_h_eri_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_decoded. ff_h_eri_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_decoded + S (eri_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row) = S ((S (eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness)) /\ exists ff_q_eri_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_decoded. etc_row_code_eft_fubini_total_universal_reduced_columns_witness_column_witness = ff_q_eri_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_decoded * S ((S (eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness) + (eri_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row))) /\ (((eri_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row = 0 /\ ((exists eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column) = q * S eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row) /\ ~(exists eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column))) \/ (eri_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row = 1 /\ ((exists eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column) /\ ~(exists eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_universal_reduced_columns_witness_column) = q * S eri_column_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_row)))))))) /\ (((exists ff_u_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_start. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_start + S (0) = S ((S (0)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_start. ff_u_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_start * S ((S (0)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum) + (0))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_terminal. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_terminal + S (etc_count_eft_fubini_total_universal_reduced_columns_witness_column_witness) = S ((S (h)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_terminal. ff_u_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_terminal * S ((S (h)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum) + (etc_count_eft_fubini_total_universal_reduced_columns_witness_column_witness))) /\ forall ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum. (exists ff_lt_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_bound. ff_lt_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_bound + S ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum = h) -> exists ff_a_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum ff_r_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum ff_s_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_summand. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_summand + S (ff_a_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_summand. etc_row_code_eft_fubini_total_universal_reduced_columns_witness_column_witness = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_summand * S ((S (ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness) + (ff_a_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_partial. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_partial + S (ff_r_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_partial. ff_u_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_partial * S ((S (ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum) + (ff_r_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_successor. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_successor + S (ff_s_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum) = S ((S (S ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_successor. ff_u_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum_successor * S ((S (S ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum) + (ff_s_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum))) /\ ff_s_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum = ff_r_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum + ff_a_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_sum)))))) /\ (forall ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits. (exists ff_lt_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits_bound. ff_lt_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits_bound + S ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits = h) -> exists ff_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits. ((((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits_decoded. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits_decoded + S (ff_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits) = S ((S (ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits_decoded. etc_row_code_eft_fubini_total_universal_reduced_columns_witness_column_witness = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits_decoded * S ((S (ff_i_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness) + (ff_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits))) /\ (ff_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits = 0 \/ ff_bit_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_count_relation_bits = 1)))))) /\ (((exists ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_inner_entry. ff_h_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_inner_entry + S (etc_bit_eft_fubini_total_universal_reduced_columns_witness_column) = S ((S (eft_fixed_index_fubini_total_universal_reduced_columns)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_inner_entry. etc_row_code_eft_fubini_total_universal_reduced_columns_witness_column_witness = ff_q_etc_eft_fubini_total_universal_reduced_columns_witness_column_witness_inner_entry * S ((S (eft_fixed_index_fubini_total_universal_reduced_columns)) * etc_row_scale_eft_fubini_total_universal_reduced_columns_witness_column_witness) + (etc_bit_eft_fubini_total_universal_reduced_columns_witness_column))))))) /\ (((exists ff_u_eft_fubini_total_universal_reduced_columns_witness_count_sum ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum. ((((exists ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_start. ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_start. ff_u_eft_fubini_total_universal_reduced_columns_witness_count_sum = ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_start * S ((S (0)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum) + (0))) /\ ((((exists ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_terminal. ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_terminal + S (eft_count_fubini_total_universal_reduced_columns) = S ((S (k)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_terminal. ff_u_eft_fubini_total_universal_reduced_columns_witness_count_sum = ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_terminal * S ((S (k)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum) + (eft_count_fubini_total_universal_reduced_columns))) /\ forall ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum. (exists ff_lt_eft_fubini_total_universal_reduced_columns_witness_count_sum_bound. ff_lt_eft_fubini_total_universal_reduced_columns_witness_count_sum_bound + S ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum = k) -> exists ff_a_eft_fubini_total_universal_reduced_columns_witness_count_sum ff_r_eft_fubini_total_universal_reduced_columns_witness_count_sum ff_s_eft_fubini_total_universal_reduced_columns_witness_count_sum. ((((exists ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_summand. ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_summand + S (ff_a_eft_fubini_total_universal_reduced_columns_witness_count_sum) = S ((S (ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum)) * eft_column_scale_fubini_total_universal_reduced_columns_witness)) /\ exists ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_summand. eft_column_code_fubini_total_universal_reduced_columns_witness = ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_summand * S ((S (ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum)) * eft_column_scale_fubini_total_universal_reduced_columns_witness) + (ff_a_eft_fubini_total_universal_reduced_columns_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_partial. ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_partial + S (ff_r_eft_fubini_total_universal_reduced_columns_witness_count_sum) = S ((S (ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_partial. ff_u_eft_fubini_total_universal_reduced_columns_witness_count_sum = ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_partial * S ((S (ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum) + (ff_r_eft_fubini_total_universal_reduced_columns_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_successor. ff_h_eft_fubini_total_universal_reduced_columns_witness_count_sum_successor + S (ff_s_eft_fubini_total_universal_reduced_columns_witness_count_sum) = S ((S (S ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_successor. ff_u_eft_fubini_total_universal_reduced_columns_witness_count_sum = ff_q_eft_fubini_total_universal_reduced_columns_witness_count_sum_successor * S ((S (S ff_i_eft_fubini_total_universal_reduced_columns_witness_count_sum)) * ff_v_eft_fubini_total_universal_reduced_columns_witness_count_sum) + (ff_s_eft_fubini_total_universal_reduced_columns_witness_count_sum))) /\ ff_s_eft_fubini_total_universal_reduced_columns_witness_count_sum = ff_r_eft_fubini_total_universal_reduced_columns_witness_count_sum + ff_a_eft_fubini_total_universal_reduced_columns_witness_count_sum)))))) /\ (forall ff_i_eft_fubini_total_universal_reduced_columns_witness_count_bits. (exists ff_lt_eft_fubini_total_universal_reduced_columns_witness_count_bits_bound. ff_lt_eft_fubini_total_universal_reduced_columns_witness_count_bits_bound + S ff_i_eft_fubini_total_universal_reduced_columns_witness_count_bits = k) -> exists ff_bit_eft_fubini_total_universal_reduced_columns_witness_count_bits. ((((exists ff_h_eft_fubini_total_universal_reduced_columns_witness_count_bits_decoded. ff_h_eft_fubini_total_universal_reduced_columns_witness_count_bits_decoded + S (ff_bit_eft_fubini_total_universal_reduced_columns_witness_count_bits) = S ((S (ff_i_eft_fubini_total_universal_reduced_columns_witness_count_bits)) * eft_column_scale_fubini_total_universal_reduced_columns_witness)) /\ exists ff_q_eft_fubini_total_universal_reduced_columns_witness_count_bits_decoded. eft_column_code_fubini_total_universal_reduced_columns_witness = ff_q_eft_fubini_total_universal_reduced_columns_witness_count_bits_decoded * S ((S (ff_i_eft_fubini_total_universal_reduced_columns_witness_count_bits)) * eft_column_scale_fubini_total_universal_reduced_columns_witness) + (ff_bit_eft_fubini_total_universal_reduced_columns_witness_count_bits))) /\ (ff_bit_eft_fubini_total_universal_reduced_columns_witness_count_bits = 0 \/ ff_bit_eft_fubini_total_universal_reduced_columns_witness_count_bits = 1))))))))
  126. 0126specialize eisenstein_fubini_column_count_prefix_retarget_predecessor p
  127. 0127specialize eisenstein_fubini_column_count_prefix_retarget_predecessor q
  128. 0128specialize eisenstein_fubini_column_count_prefix_retarget_predecessor h
  129. 0129specialize eisenstein_fubini_column_count_prefix_retarget_predecessor (S h)
  130. 0130specialize eisenstein_fubini_column_count_prefix_retarget_predecessor bb
  131. 0131specialize eisenstein_fubini_column_count_prefix_retarget_predecessor bc
  132. 0132specialize eisenstein_fubini_column_count_prefix_retarget_predecessor x
  133. 0133specialize eisenstein_fubini_column_count_prefix_retarget_predecessor x1
  134. 0134specialize eisenstein_fubini_column_count_prefix_retarget_predecessor db
  135. 0135specialize eisenstein_fubini_column_count_prefix_retarget_predecessor dc
  136. 0136specialize eisenstein_fubini_column_count_prefix_retarget_predecessor k
  137. 0137apply eisenstein_fubini_column_count_prefix_retarget_predecessor
  138. 0138refl
  139. 0139exact hreduced_outer
  140. 0140exact hrestricted_columns
  141. 0141have hsum_decompose : exists a r. ((((exists ff_h_fubini_total_universal_column_last_entry. ff_h_fubini_total_universal_column_last_entry + S (a) = S ((S (h)) * dc)) /\ exists ff_q_fubini_total_universal_column_last_entry. db = ff_q_fubini_total_universal_column_last_entry * S ((S (h)) * dc) + (a))) /\ ((exists ff_u_fubini_total_universal_column_prefix_sum ff_v_fubini_total_universal_column_prefix_sum. ((((exists ff_h_fubini_total_universal_column_prefix_sum_start. ff_h_fubini_total_universal_column_prefix_sum_start + S (0) = S ((S (0)) * ff_v_fubini_total_universal_column_prefix_sum)) /\ exists ff_q_fubini_total_universal_column_prefix_sum_start. ff_u_fubini_total_universal_column_prefix_sum = ff_q_fubini_total_universal_column_prefix_sum_start * S ((S (0)) * ff_v_fubini_total_universal_column_prefix_sum) + (0))) /\ ((((exists ff_h_fubini_total_universal_column_prefix_sum_terminal. ff_h_fubini_total_universal_column_prefix_sum_terminal + S (r) = S ((S (h)) * ff_v_fubini_total_universal_column_prefix_sum)) /\ exists ff_q_fubini_total_universal_column_prefix_sum_terminal. ff_u_fubini_total_universal_column_prefix_sum = ff_q_fubini_total_universal_column_prefix_sum_terminal * S ((S (h)) * ff_v_fubini_total_universal_column_prefix_sum) + (r))) /\ forall ff_i_fubini_total_universal_column_prefix_sum. (exists ff_lt_fubini_total_universal_column_prefix_sum_bound. ff_lt_fubini_total_universal_column_prefix_sum_bound + S ff_i_fubini_total_universal_column_prefix_sum = h) -> exists ff_a_fubini_total_universal_column_prefix_sum ff_r_fubini_total_universal_column_prefix_sum ff_s_fubini_total_universal_column_prefix_sum. ((((exists ff_h_fubini_total_universal_column_prefix_sum_summand. ff_h_fubini_total_universal_column_prefix_sum_summand + S (ff_a_fubini_total_universal_column_prefix_sum) = S ((S (ff_i_fubini_total_universal_column_prefix_sum)) * dc)) /\ exists ff_q_fubini_total_universal_column_prefix_sum_summand. db = ff_q_fubini_total_universal_column_prefix_sum_summand * S ((S (ff_i_fubini_total_universal_column_prefix_sum)) * dc) + (ff_a_fubini_total_universal_column_prefix_sum))) /\ ((((exists ff_h_fubini_total_universal_column_prefix_sum_partial. ff_h_fubini_total_universal_column_prefix_sum_partial + S (ff_r_fubini_total_universal_column_prefix_sum) = S ((S (ff_i_fubini_total_universal_column_prefix_sum)) * ff_v_fubini_total_universal_column_prefix_sum)) /\ exists ff_q_fubini_total_universal_column_prefix_sum_partial. ff_u_fubini_total_universal_column_prefix_sum = ff_q_fubini_total_universal_column_prefix_sum_partial * S ((S (ff_i_fubini_total_universal_column_prefix_sum)) * ff_v_fubini_total_universal_column_prefix_sum) + (ff_r_fubini_total_universal_column_prefix_sum))) /\ ((((exists ff_h_fubini_total_universal_column_prefix_sum_successor. ff_h_fubini_total_universal_column_prefix_sum_successor + S (ff_s_fubini_total_universal_column_prefix_sum) = S ((S (S ff_i_fubini_total_universal_column_prefix_sum)) * ff_v_fubini_total_universal_column_prefix_sum)) /\ exists ff_q_fubini_total_universal_column_prefix_sum_successor. ff_u_fubini_total_universal_column_prefix_sum = ff_q_fubini_total_universal_column_prefix_sum_successor * S ((S (S ff_i_fubini_total_universal_column_prefix_sum)) * ff_v_fubini_total_universal_column_prefix_sum) + (ff_s_fubini_total_universal_column_prefix_sum))) /\ ff_s_fubini_total_universal_column_prefix_sum = ff_r_fubini_total_universal_column_prefix_sum + ff_a_fubini_total_universal_column_prefix_sum)))))) /\ M = r + a))
  142. 0142specialize beta_sum_succ_decompose db
  143. 0143specialize beta_sum_succ_decompose dc
  144. 0144specialize beta_sum_succ_decompose h
  145. 0145specialize beta_sum_succ_decompose M
  146. 0146apply beta_sum_succ_decompose
  147. 0147exact hcolumnsum
  148. 0148cases hsum_decompose
  149. 0149cases hsum_decompose_witness
  150. 0150cases hsum_decompose_witness_witness
  151. 0151cases hsum_decompose_witness_witness_right
  152. 0152have hih : x7 = x4
  153. 0153specialize IH p
  154. 0154specialize IH q
  155. 0155specialize IH k
  156. 0156specialize IH x
  157. 0157specialize IH x1
  158. 0158specialize IH db
  159. 0159specialize IH dc
  160. 0160specialize IH x4
  161. 0161specialize IH x7
  162. 0162apply IH
  163. 0163exact hreduced_outer
  164. 0164exact hreduced_columns
  165. 0165exact hreduced_sum_witness
  166. 0166exact hsum_decompose_witness_witness_right_left
  167. 0167have hlast_stored : exists n. ((((exists ff_h_fubini_total_universal_last_stored_entry. ff_h_fubini_total_universal_last_stored_entry + S (n) = S ((S (h)) * dc)) /\ exists ff_q_fubini_total_universal_last_stored_entry. db = ff_q_fubini_total_universal_last_stored_entry * S ((S (h)) * dc) + (n))) /\ (exists eft_column_code_fubini_total_universal_last_stored_witness eft_column_scale_fubini_total_universal_last_stored_witness. ((forall etc_row_index_eft_fubini_total_universal_last_stored_witness_column. (exists edt_lt_gap_eft_fubini_total_universal_last_stored_witness_column_bound. edt_lt_gap_eft_fubini_total_universal_last_stored_witness_column_bound + S (etc_row_index_eft_fubini_total_universal_last_stored_witness_column) = k) -> exists etc_bit_eft_fubini_total_universal_last_stored_witness_column. ((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_decoded. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_decoded + S (etc_bit_eft_fubini_total_universal_last_stored_witness_column) = S ((S (etc_row_index_eft_fubini_total_universal_last_stored_witness_column)) * eft_column_scale_fubini_total_universal_last_stored_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_decoded. eft_column_code_fubini_total_universal_last_stored_witness = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_decoded * S ((S (etc_row_index_eft_fubini_total_universal_last_stored_witness_column)) * eft_column_scale_fubini_total_universal_last_stored_witness) + (etc_bit_eft_fubini_total_universal_last_stored_witness_column))) /\ (exists etc_count_eft_fubini_total_universal_last_stored_witness_column_witness etc_row_code_eft_fubini_total_universal_last_stored_witness_column_witness etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness. ((((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_outer_entry. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_outer_entry + S (etc_count_eft_fubini_total_universal_last_stored_witness_column_witness) = S ((S (etc_row_index_eft_fubini_total_universal_last_stored_witness_column)) * bc)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_outer_entry. bb = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_outer_entry * S ((S (etc_row_index_eft_fubini_total_universal_last_stored_witness_column)) * bc) + (etc_count_eft_fubini_total_universal_last_stored_witness_column_witness))) /\ (forall eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row. (exists eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_bound. eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_bound + S (eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row) = S h) -> exists eri_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row. ((((exists ff_h_eri_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_decoded. ff_h_eri_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_decoded + S (eri_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row) = S ((S (eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness)) /\ exists ff_q_eri_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_decoded. etc_row_code_eft_fubini_total_universal_last_stored_witness_column_witness = ff_q_eri_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_decoded * S ((S (eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness) + (eri_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row))) /\ (((eri_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row = 0 /\ ((exists eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_universal_last_stored_witness_column) = q * S eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row) /\ ~(exists eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_universal_last_stored_witness_column))) \/ (eri_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row = 1 /\ ((exists eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_right. eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_right + S (q * S eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row) = p * S etc_row_index_eft_fubini_total_universal_last_stored_witness_column) /\ ~(exists eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_left. eri_gap_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row_choice_left + S (p * S etc_row_index_eft_fubini_total_universal_last_stored_witness_column) = q * S eri_column_etc_eft_fubini_total_universal_last_stored_witness_column_witness_row)))))))) /\ (((exists ff_u_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_start. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_start + S (0) = S ((S (0)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_start. ff_u_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_start * S ((S (0)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum) + (0))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_terminal. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_terminal + S (etc_count_eft_fubini_total_universal_last_stored_witness_column_witness) = S ((S (S h)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_terminal. ff_u_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_terminal * S ((S (S h)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum) + (etc_count_eft_fubini_total_universal_last_stored_witness_column_witness))) /\ forall ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum. (exists ff_lt_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_bound. ff_lt_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_bound + S ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum = S h) -> exists ff_a_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum ff_r_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum ff_s_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum. ((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_summand. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_summand + S (ff_a_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_summand. etc_row_code_eft_fubini_total_universal_last_stored_witness_column_witness = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_summand * S ((S (ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness) + (ff_a_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_partial. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_partial + S (ff_r_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum) = S ((S (ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_partial. ff_u_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_partial * S ((S (ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum) + (ff_r_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum))) /\ ((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_successor. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_successor + S (ff_s_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum) = S ((S (S ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_successor. ff_u_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum_successor * S ((S (S ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)) * ff_v_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum) + (ff_s_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum))) /\ ff_s_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum = ff_r_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum + ff_a_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_sum)))))) /\ (forall ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits. (exists ff_lt_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits_bound. ff_lt_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits_bound + S ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits = S h) -> exists ff_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits. ((((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits_decoded. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits_decoded + S (ff_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits) = S ((S (ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits_decoded. etc_row_code_eft_fubini_total_universal_last_stored_witness_column_witness = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits_decoded * S ((S (ff_i_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness) + (ff_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits))) /\ (ff_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits = 0 \/ ff_bit_etc_eft_fubini_total_universal_last_stored_witness_column_witness_count_relation_bits = 1)))))) /\ (((exists ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_inner_entry. ff_h_etc_eft_fubini_total_universal_last_stored_witness_column_witness_inner_entry + S (etc_bit_eft_fubini_total_universal_last_stored_witness_column) = S ((S (h)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness)) /\ exists ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_inner_entry. etc_row_code_eft_fubini_total_universal_last_stored_witness_column_witness = ff_q_etc_eft_fubini_total_universal_last_stored_witness_column_witness_inner_entry * S ((S (h)) * etc_row_scale_eft_fubini_total_universal_last_stored_witness_column_witness) + (etc_bit_eft_fubini_total_universal_last_stored_witness_column))))))) /\ (((exists ff_u_eft_fubini_total_universal_last_stored_witness_count_sum ff_v_eft_fubini_total_universal_last_stored_witness_count_sum. ((((exists ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_start. ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_start. ff_u_eft_fubini_total_universal_last_stored_witness_count_sum = ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_start * S ((S (0)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum) + (0))) /\ ((((exists ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_terminal. ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_terminal + S (n) = S ((S (k)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_terminal. ff_u_eft_fubini_total_universal_last_stored_witness_count_sum = ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_terminal * S ((S (k)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum) + (n))) /\ forall ff_i_eft_fubini_total_universal_last_stored_witness_count_sum. (exists ff_lt_eft_fubini_total_universal_last_stored_witness_count_sum_bound. ff_lt_eft_fubini_total_universal_last_stored_witness_count_sum_bound + S ff_i_eft_fubini_total_universal_last_stored_witness_count_sum = k) -> exists ff_a_eft_fubini_total_universal_last_stored_witness_count_sum ff_r_eft_fubini_total_universal_last_stored_witness_count_sum ff_s_eft_fubini_total_universal_last_stored_witness_count_sum. ((((exists ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_summand. ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_summand + S (ff_a_eft_fubini_total_universal_last_stored_witness_count_sum) = S ((S (ff_i_eft_fubini_total_universal_last_stored_witness_count_sum)) * eft_column_scale_fubini_total_universal_last_stored_witness)) /\ exists ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_summand. eft_column_code_fubini_total_universal_last_stored_witness = ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_summand * S ((S (ff_i_eft_fubini_total_universal_last_stored_witness_count_sum)) * eft_column_scale_fubini_total_universal_last_stored_witness) + (ff_a_eft_fubini_total_universal_last_stored_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_partial. ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_partial + S (ff_r_eft_fubini_total_universal_last_stored_witness_count_sum) = S ((S (ff_i_eft_fubini_total_universal_last_stored_witness_count_sum)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_partial. ff_u_eft_fubini_total_universal_last_stored_witness_count_sum = ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_partial * S ((S (ff_i_eft_fubini_total_universal_last_stored_witness_count_sum)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum) + (ff_r_eft_fubini_total_universal_last_stored_witness_count_sum))) /\ ((((exists ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_successor. ff_h_eft_fubini_total_universal_last_stored_witness_count_sum_successor + S (ff_s_eft_fubini_total_universal_last_stored_witness_count_sum) = S ((S (S ff_i_eft_fubini_total_universal_last_stored_witness_count_sum)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum)) /\ exists ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_successor. ff_u_eft_fubini_total_universal_last_stored_witness_count_sum = ff_q_eft_fubini_total_universal_last_stored_witness_count_sum_successor * S ((S (S ff_i_eft_fubini_total_universal_last_stored_witness_count_sum)) * ff_v_eft_fubini_total_universal_last_stored_witness_count_sum) + (ff_s_eft_fubini_total_universal_last_stored_witness_count_sum))) /\ ff_s_eft_fubini_total_universal_last_stored_witness_count_sum = ff_r_eft_fubini_total_universal_last_stored_witness_count_sum + ff_a_eft_fubini_total_universal_last_stored_witness_count_sum)))))) /\ (forall ff_i_eft_fubini_total_universal_last_stored_witness_count_bits. (exists ff_lt_eft_fubini_total_universal_last_stored_witness_count_bits_bound. ff_lt_eft_fubini_total_universal_last_stored_witness_count_bits_bound + S ff_i_eft_fubini_total_universal_last_stored_witness_count_bits = k) -> exists ff_bit_eft_fubini_total_universal_last_stored_witness_count_bits. ((((exists ff_h_eft_fubini_total_universal_last_stored_witness_count_bits_decoded. ff_h_eft_fubini_total_universal_last_stored_witness_count_bits_decoded + S (ff_bit_eft_fubini_total_universal_last_stored_witness_count_bits) = S ((S (ff_i_eft_fubini_total_universal_last_stored_witness_count_bits)) * eft_column_scale_fubini_total_universal_last_stored_witness)) /\ exists ff_q_eft_fubini_total_universal_last_stored_witness_count_bits_decoded. eft_column_code_fubini_total_universal_last_stored_witness = ff_q_eft_fubini_total_universal_last_stored_witness_count_bits_decoded * S ((S (ff_i_eft_fubini_total_universal_last_stored_witness_count_bits)) * eft_column_scale_fubini_total_universal_last_stored_witness) + (ff_bit_eft_fubini_total_universal_last_stored_witness_count_bits))) /\ (ff_bit_eft_fubini_total_universal_last_stored_witness_count_bits = 0 \/ ff_bit_eft_fubini_total_universal_last_stored_witness_count_bits = 1))))))))
  168. 0168specialize hcolumns h
  169. 0169apply hcolumns
  170. 0170specialize le_refl (S h)
  171. 0171exact le_refl
  172. 0172cases hlast_stored
  173. 0173cases hlast_stored_witness
  174. 0174cases hlast_stored_witness_right
  175. 0175cases hlast_stored_witness_right_witness
  176. 0176cases hlast_stored_witness_right_witness_witness
  177. 0177cases hlast_stored_witness_right_witness_witness_right
  178. 0178have hcount_eq : x8 = x6
  179. 0179specialize beta_at_unique db
  180. 0180specialize beta_at_unique dc
  181. 0181specialize beta_at_unique h
  182. 0182specialize beta_at_unique x8
  183. 0183specialize beta_at_unique x6
  184. 0184apply beta_at_unique
  185. 0185exact hlast_stored_witness_left
  186. 0186exact hsum_decompose_witness_witness_left
  187. 0187have hterminal_eq : x5 = x8
  188. 0188specialize eisenstein_successor_terminal_sum_matches_last_column p
  189. 0189specialize eisenstein_successor_terminal_sum_matches_last_column q
  190. 0190specialize eisenstein_successor_terminal_sum_matches_last_column h
  191. 0191specialize eisenstein_successor_terminal_sum_matches_last_column (S h)
  192. 0192specialize eisenstein_successor_terminal_sum_matches_last_column bb
  193. 0193specialize eisenstein_successor_terminal_sum_matches_last_column bc
  194. 0194specialize eisenstein_successor_terminal_sum_matches_last_column x
  195. 0195specialize eisenstein_successor_terminal_sum_matches_last_column x1
  196. 0196specialize eisenstein_successor_terminal_sum_matches_last_column x2
  197. 0197specialize eisenstein_successor_terminal_sum_matches_last_column x3
  198. 0198specialize eisenstein_successor_terminal_sum_matches_last_column x9
  199. 0199specialize eisenstein_successor_terminal_sum_matches_last_column x10
  200. 0200specialize eisenstein_successor_terminal_sum_matches_last_column k
  201. 0201specialize eisenstein_successor_terminal_sum_matches_last_column x5
  202. 0202specialize eisenstein_successor_terminal_sum_matches_last_column x8
  203. 0203apply eisenstein_successor_terminal_sum_matches_last_column
  204. 0204refl
  205. 0205exact hsplit_exists_witness_witness_witness_witness
  206. 0206exact hlast_stored_witness_right_witness_witness_left
  207. 0207exact hterminal_sum_witness
  208. 0208exact hlast_stored_witness_right_witness_witness_right_left
  209. 0209have htotal : M = x4 + x5
  210. 0210rewrite hih at hsum_decompose_witness_witness_right_right
  211. 0211rewrite <- hcount_eq at hsum_decompose_witness_witness_right_right
  212. 0212rewrite <- hterminal_eq at hsum_decompose_witness_witness_right_right
  213. 0213exact hsum_decompose_witness_witness_right_right
  214. 0214trans x4 + x5
  215. 0215exact htotal
  216. 0216exact hsource_add