Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Exact expanded PA statement
forall p q h sh i n. sh = S h -> (exists erc_row_code_fubini_row_decompose_source erc_row_scale_fubini_row_decompose_source. ((forall eri_column_erc_fubini_row_decompose_source_row. (exists eri_gap_erc_fubini_row_decompose_source_row_bound. eri_gap_erc_fubini_row_decompose_source_row_bound + S (eri_column_erc_fubini_row_decompose_source_row) = sh) -> exists eri_bit_erc_fubini_row_decompose_source_row. ((((exists ff_h_eri_erc_fubini_row_decompose_source_row_decoded. ff_h_eri_erc_fubini_row_decompose_source_row_decoded + S (eri_bit_erc_fubini_row_decompose_source_row) = S ((S (eri_column_erc_fubini_row_decompose_source_row)) * erc_row_scale_fubini_row_decompose_source)) /\ exists ff_q_eri_erc_fubini_row_decompose_source_row_decoded. erc_row_code_fubini_row_decompose_source = ff_q_eri_erc_fubini_row_decompose_source_row_decoded * S ((S (eri_column_erc_fubini_row_decompose_source_row)) * erc_row_scale_fubini_row_decompose_source) + (eri_bit_erc_fubini_row_decompose_source_row))) /\ (((eri_bit_erc_fubini_row_decompose_source_row = 0 /\ ((exists eri_gap_erc_fubini_row_decompose_source_row_choice_left. eri_gap_erc_fubini_row_decompose_source_row_choice_left + S (q * S i) = p * S eri_column_erc_fubini_row_decompose_source_row) /\ ~(exists eri_gap_erc_fubini_row_decompose_source_row_choice_right. eri_gap_erc_fubini_row_decompose_source_row_choice_right + S (p * S eri_column_erc_fubini_row_decompose_source_row) = q * S i))) \/ (eri_bit_erc_fubini_row_decompose_source_row = 1 /\ ((exists eri_gap_erc_fubini_row_decompose_source_row_choice_right. eri_gap_erc_fubini_row_decompose_source_row_choice_right + S (p * S eri_column_erc_fubini_row_decompose_source_row) = q * S i) /\ ~(exists eri_gap_erc_fubini_row_decompose_source_row_choice_left. eri_gap_erc_fubini_row_decompose_source_row_choice_left + S (q * S i) = p * S eri_column_erc_fubini_row_decompose_source_row))))))) /\ (((exists ff_u_erc_fubini_row_decompose_source_count_sum ff_v_erc_fubini_row_decompose_source_count_sum. ((((exists ff_h_erc_fubini_row_decompose_source_count_sum_start. ff_h_erc_fubini_row_decompose_source_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_fubini_row_decompose_source_count_sum)) /\ exists ff_q_erc_fubini_row_decompose_source_count_sum_start. ff_u_erc_fubini_row_decompose_source_count_sum = ff_q_erc_fubini_row_decompose_source_count_sum_start * S ((S (0)) * ff_v_erc_fubini_row_decompose_source_count_sum) + (0))) /\ ((((exists ff_h_erc_fubini_row_decompose_source_count_sum_terminal. ff_h_erc_fubini_row_decompose_source_count_sum_terminal + S (n) = S ((S (sh)) * ff_v_erc_fubini_row_decompose_source_count_sum)) /\ exists ff_q_erc_fubini_row_decompose_source_count_sum_terminal. ff_u_erc_fubini_row_decompose_source_count_sum = ff_q_erc_fubini_row_decompose_source_count_sum_terminal * S ((S (sh)) * ff_v_erc_fubini_row_decompose_source_count_sum) + (n))) /\ forall ff_i_erc_fubini_row_decompose_source_count_sum. (exists ff_lt_erc_fubini_row_decompose_source_count_sum_bound. ff_lt_erc_fubini_row_decompose_source_count_sum_bound + S ff_i_erc_fubini_row_decompose_source_count_sum = sh) -> exists ff_a_erc_fubini_row_decompose_source_count_sum ff_r_erc_fubini_row_decompose_source_count_sum ff_s_erc_fubini_row_decompose_source_count_sum. ((((exists ff_h_erc_fubini_row_decompose_source_count_sum_summand. ff_h_erc_fubini_row_decompose_source_count_sum_summand + S (ff_a_erc_fubini_row_decompose_source_count_sum) = S ((S (ff_i_erc_fubini_row_decompose_source_count_sum)) * erc_row_scale_fubini_row_decompose_source)) /\ exists ff_q_erc_fubini_row_decompose_source_count_sum_summand. erc_row_code_fubini_row_decompose_source = ff_q_erc_fubini_row_decompose_source_count_sum_summand * S ((S (ff_i_erc_fubini_row_decompose_source_count_sum)) * erc_row_scale_fubini_row_decompose_source) + (ff_a_erc_fubini_row_decompose_source_count_sum))) /\ ((((exists ff_h_erc_fubini_row_decompose_source_count_sum_partial. ff_h_erc_fubini_row_decompose_source_count_sum_partial + S (ff_r_erc_fubini_row_decompose_source_count_sum) = S ((S (ff_i_erc_fubini_row_decompose_source_count_sum)) * ff_v_erc_fubini_row_decompose_source_count_sum)) /\ exists ff_q_erc_fubini_row_decompose_source_count_sum_partial. ff_u_erc_fubini_row_decompose_source_count_sum = ff_q_erc_fubini_row_decompose_source_count_sum_partial * S ((S (ff_i_erc_fubini_row_decompose_source_count_sum)) * ff_v_erc_fubini_row_decompose_source_count_sum) + (ff_r_erc_fubini_row_decompose_source_count_sum))) /\ ((((exists ff_h_erc_fubini_row_decompose_source_count_sum_successor. ff_h_erc_fubini_row_decompose_source_count_sum_successor + S (ff_s_erc_fubini_row_decompose_source_count_sum) = S ((S (S ff_i_erc_fubini_row_decompose_source_count_sum)) * ff_v_erc_fubini_row_decompose_source_count_sum)) /\ exists ff_q_erc_fubini_row_decompose_source_count_sum_successor. ff_u_erc_fubini_row_decompose_source_count_sum = ff_q_erc_fubini_row_decompose_source_count_sum_successor * S ((S (S ff_i_erc_fubini_row_decompose_source_count_sum)) * ff_v_erc_fubini_row_decompose_source_count_sum) + (ff_s_erc_fubini_row_decompose_source_count_sum))) /\ ff_s_erc_fubini_row_decompose_source_count_sum = ff_r_erc_fubini_row_decompose_source_count_sum + ff_a_erc_fubini_row_decompose_source_count_sum)))))) /\ (forall ff_i_erc_fubini_row_decompose_source_count_bits. (exists ff_lt_erc_fubini_row_decompose_source_count_bits_bound. ff_lt_erc_fubini_row_decompose_source_count_bits_bound + S ff_i_erc_fubini_row_decompose_source_count_bits = sh) -> exists ff_bit_erc_fubini_row_decompose_source_count_bits. ((((exists ff_h_erc_fubini_row_decompose_source_count_bits_decoded. ff_h_erc_fubini_row_decompose_source_count_bits_decoded + S (ff_bit_erc_fubini_row_decompose_source_count_bits) = S ((S (ff_i_erc_fubini_row_decompose_source_count_bits)) * erc_row_scale_fubini_row_decompose_source)) /\ exists ff_q_erc_fubini_row_decompose_source_count_bits_decoded. erc_row_code_fubini_row_decompose_source = ff_q_erc_fubini_row_decompose_source_count_bits_decoded * S ((S (ff_i_erc_fubini_row_decompose_source_count_bits)) * erc_row_scale_fubini_row_decompose_source) + (ff_bit_erc_fubini_row_decompose_source_count_bits))) /\ (ff_bit_erc_fubini_row_decompose_source_count_bits = 0 \/ ff_bit_erc_fubini_row_decompose_source_count_bits = 1))))))) -> (exists efrd_terminal_bit_fubini_row_decompose_result efrd_reduced_count_fubini_row_decompose_result. (exists efrd_row_code_fubini_row_decompose_result_split efrd_row_scale_fubini_row_decompose_result_split. (((((forall eri_column_efrd_fubini_row_decompose_result_split_successor_prefix. (exists eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_bound. eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_bound + S (eri_column_efrd_fubini_row_decompose_result_split_successor_prefix) = sh) -> exists eri_bit_efrd_fubini_row_decompose_result_split_successor_prefix. ((((exists ff_h_eri_efrd_fubini_row_decompose_result_split_successor_prefix_decoded. ff_h_eri_efrd_fubini_row_decompose_result_split_successor_prefix_decoded + S (eri_bit_efrd_fubini_row_decompose_result_split_successor_prefix) = S ((S (eri_column_efrd_fubini_row_decompose_result_split_successor_prefix)) * efrd_row_scale_fubini_row_decompose_result_split)) /\ exists ff_q_eri_efrd_fubini_row_decompose_result_split_successor_prefix_decoded. efrd_row_code_fubini_row_decompose_result_split = ff_q_eri_efrd_fubini_row_decompose_result_split_successor_prefix_decoded * S ((S (eri_column_efrd_fubini_row_decompose_result_split_successor_prefix)) * efrd_row_scale_fubini_row_decompose_result_split) + (eri_bit_efrd_fubini_row_decompose_result_split_successor_prefix))) /\ (((eri_bit_efrd_fubini_row_decompose_result_split_successor_prefix = 0 /\ ((exists eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_left. eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_left + S (q * S i) = p * S eri_column_efrd_fubini_row_decompose_result_split_successor_prefix) /\ ~(exists eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_right. eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_right + S (p * S eri_column_efrd_fubini_row_decompose_result_split_successor_prefix) = q * S i))) \/ (eri_bit_efrd_fubini_row_decompose_result_split_successor_prefix = 1 /\ ((exists eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_right. eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_right + S (p * S eri_column_efrd_fubini_row_decompose_result_split_successor_prefix) = q * S i) /\ ~(exists eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_left. eri_gap_efrd_fubini_row_decompose_result_split_successor_prefix_choice_left + S (q * S i) = p * S eri_column_efrd_fubini_row_decompose_result_split_successor_prefix))))))) /\ (((exists ff_u_efrd_fubini_row_decompose_result_split_successor_count_sum ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum. ((((exists ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_start. ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_start + S (0) = S ((S (0)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_start. ff_u_efrd_fubini_row_decompose_result_split_successor_count_sum = ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_start * S ((S (0)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum) + (0))) /\ ((((exists ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_terminal. ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_terminal + S (n) = S ((S (sh)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_terminal. ff_u_efrd_fubini_row_decompose_result_split_successor_count_sum = ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_terminal * S ((S (sh)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum) + (n))) /\ forall ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum. (exists ff_lt_efrd_fubini_row_decompose_result_split_successor_count_sum_bound. ff_lt_efrd_fubini_row_decompose_result_split_successor_count_sum_bound + S ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum = sh) -> exists ff_a_efrd_fubini_row_decompose_result_split_successor_count_sum ff_r_efrd_fubini_row_decompose_result_split_successor_count_sum ff_s_efrd_fubini_row_decompose_result_split_successor_count_sum. ((((exists ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_summand. ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_summand + S (ff_a_efrd_fubini_row_decompose_result_split_successor_count_sum) = S ((S (ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum)) * efrd_row_scale_fubini_row_decompose_result_split)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_summand. efrd_row_code_fubini_row_decompose_result_split = ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_summand * S ((S (ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum)) * efrd_row_scale_fubini_row_decompose_result_split) + (ff_a_efrd_fubini_row_decompose_result_split_successor_count_sum))) /\ ((((exists ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_partial. ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_partial + S (ff_r_efrd_fubini_row_decompose_result_split_successor_count_sum) = S ((S (ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_partial. ff_u_efrd_fubini_row_decompose_result_split_successor_count_sum = ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_partial * S ((S (ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum) + (ff_r_efrd_fubini_row_decompose_result_split_successor_count_sum))) /\ ((((exists ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_successor. ff_h_efrd_fubini_row_decompose_result_split_successor_count_sum_successor + S (ff_s_efrd_fubini_row_decompose_result_split_successor_count_sum) = S ((S (S ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_successor. ff_u_efrd_fubini_row_decompose_result_split_successor_count_sum = ff_q_efrd_fubini_row_decompose_result_split_successor_count_sum_successor * S ((S (S ff_i_efrd_fubini_row_decompose_result_split_successor_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_successor_count_sum) + (ff_s_efrd_fubini_row_decompose_result_split_successor_count_sum))) /\ ff_s_efrd_fubini_row_decompose_result_split_successor_count_sum = ff_r_efrd_fubini_row_decompose_result_split_successor_count_sum + ff_a_efrd_fubini_row_decompose_result_split_successor_count_sum)))))) /\ (forall ff_i_efrd_fubini_row_decompose_result_split_successor_count_bits. (exists ff_lt_efrd_fubini_row_decompose_result_split_successor_count_bits_bound. ff_lt_efrd_fubini_row_decompose_result_split_successor_count_bits_bound + S ff_i_efrd_fubini_row_decompose_result_split_successor_count_bits = sh) -> exists ff_bit_efrd_fubini_row_decompose_result_split_successor_count_bits. ((((exists ff_h_efrd_fubini_row_decompose_result_split_successor_count_bits_decoded. ff_h_efrd_fubini_row_decompose_result_split_successor_count_bits_decoded + S (ff_bit_efrd_fubini_row_decompose_result_split_successor_count_bits) = S ((S (ff_i_efrd_fubini_row_decompose_result_split_successor_count_bits)) * efrd_row_scale_fubini_row_decompose_result_split)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_successor_count_bits_decoded. efrd_row_code_fubini_row_decompose_result_split = ff_q_efrd_fubini_row_decompose_result_split_successor_count_bits_decoded * S ((S (ff_i_efrd_fubini_row_decompose_result_split_successor_count_bits)) * efrd_row_scale_fubini_row_decompose_result_split) + (ff_bit_efrd_fubini_row_decompose_result_split_successor_count_bits))) /\ (ff_bit_efrd_fubini_row_decompose_result_split_successor_count_bits = 0 \/ ff_bit_efrd_fubini_row_decompose_result_split_successor_count_bits = 1)))))) /\ ((forall eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix. (exists eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_bound. eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_bound + S (eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix) = h) -> exists eri_bit_efrd_fubini_row_decompose_result_split_reduced_prefix. ((((exists ff_h_eri_efrd_fubini_row_decompose_result_split_reduced_prefix_decoded. ff_h_eri_efrd_fubini_row_decompose_result_split_reduced_prefix_decoded + S (eri_bit_efrd_fubini_row_decompose_result_split_reduced_prefix) = S ((S (eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix)) * efrd_row_scale_fubini_row_decompose_result_split)) /\ exists ff_q_eri_efrd_fubini_row_decompose_result_split_reduced_prefix_decoded. efrd_row_code_fubini_row_decompose_result_split = ff_q_eri_efrd_fubini_row_decompose_result_split_reduced_prefix_decoded * S ((S (eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix)) * efrd_row_scale_fubini_row_decompose_result_split) + (eri_bit_efrd_fubini_row_decompose_result_split_reduced_prefix))) /\ (((eri_bit_efrd_fubini_row_decompose_result_split_reduced_prefix = 0 /\ ((exists eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_left. eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_left + S (q * S i) = p * S eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix) /\ ~(exists eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_right. eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_right + S (p * S eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix) = q * S i))) \/ (eri_bit_efrd_fubini_row_decompose_result_split_reduced_prefix = 1 /\ ((exists eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_right. eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_right + S (p * S eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix) = q * S i) /\ ~(exists eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_left. eri_gap_efrd_fubini_row_decompose_result_split_reduced_prefix_choice_left + S (q * S i) = p * S eri_column_efrd_fubini_row_decompose_result_split_reduced_prefix))))))) /\ (((exists ff_h_efrd_fubini_row_decompose_result_split_terminal_entry. ff_h_efrd_fubini_row_decompose_result_split_terminal_entry + S (efrd_terminal_bit_fubini_row_decompose_result) = S ((S (h)) * efrd_row_scale_fubini_row_decompose_result_split)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_terminal_entry. efrd_row_code_fubini_row_decompose_result_split = ff_q_efrd_fubini_row_decompose_result_split_terminal_entry * S ((S (h)) * efrd_row_scale_fubini_row_decompose_result_split) + (efrd_terminal_bit_fubini_row_decompose_result))))) /\ (((((exists ff_u_efrd_fubini_row_decompose_result_split_reduced_count_sum ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum. ((((exists ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_start. ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_start + S (0) = S ((S (0)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_start. ff_u_efrd_fubini_row_decompose_result_split_reduced_count_sum = ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_start * S ((S (0)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum) + (0))) /\ ((((exists ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_terminal. ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_terminal + S (efrd_reduced_count_fubini_row_decompose_result) = S ((S (h)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_terminal. ff_u_efrd_fubini_row_decompose_result_split_reduced_count_sum = ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_terminal * S ((S (h)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum) + (efrd_reduced_count_fubini_row_decompose_result))) /\ forall ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum. (exists ff_lt_efrd_fubini_row_decompose_result_split_reduced_count_sum_bound. ff_lt_efrd_fubini_row_decompose_result_split_reduced_count_sum_bound + S ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum = h) -> exists ff_a_efrd_fubini_row_decompose_result_split_reduced_count_sum ff_r_efrd_fubini_row_decompose_result_split_reduced_count_sum ff_s_efrd_fubini_row_decompose_result_split_reduced_count_sum. ((((exists ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_summand. ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_summand + S (ff_a_efrd_fubini_row_decompose_result_split_reduced_count_sum) = S ((S (ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum)) * efrd_row_scale_fubini_row_decompose_result_split)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_summand. efrd_row_code_fubini_row_decompose_result_split = ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_summand * S ((S (ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum)) * efrd_row_scale_fubini_row_decompose_result_split) + (ff_a_efrd_fubini_row_decompose_result_split_reduced_count_sum))) /\ ((((exists ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_partial. ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_partial + S (ff_r_efrd_fubini_row_decompose_result_split_reduced_count_sum) = S ((S (ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_partial. ff_u_efrd_fubini_row_decompose_result_split_reduced_count_sum = ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_partial * S ((S (ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum) + (ff_r_efrd_fubini_row_decompose_result_split_reduced_count_sum))) /\ ((((exists ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_successor. ff_h_efrd_fubini_row_decompose_result_split_reduced_count_sum_successor + S (ff_s_efrd_fubini_row_decompose_result_split_reduced_count_sum) = S ((S (S ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_successor. ff_u_efrd_fubini_row_decompose_result_split_reduced_count_sum = ff_q_efrd_fubini_row_decompose_result_split_reduced_count_sum_successor * S ((S (S ff_i_efrd_fubini_row_decompose_result_split_reduced_count_sum)) * ff_v_efrd_fubini_row_decompose_result_split_reduced_count_sum) + (ff_s_efrd_fubini_row_decompose_result_split_reduced_count_sum))) /\ ff_s_efrd_fubini_row_decompose_result_split_reduced_count_sum = ff_r_efrd_fubini_row_decompose_result_split_reduced_count_sum + ff_a_efrd_fubini_row_decompose_result_split_reduced_count_sum)))))) /\ (forall ff_i_efrd_fubini_row_decompose_result_split_reduced_count_bits. (exists ff_lt_efrd_fubini_row_decompose_result_split_reduced_count_bits_bound. ff_lt_efrd_fubini_row_decompose_result_split_reduced_count_bits_bound + S ff_i_efrd_fubini_row_decompose_result_split_reduced_count_bits = h) -> exists ff_bit_efrd_fubini_row_decompose_result_split_reduced_count_bits. ((((exists ff_h_efrd_fubini_row_decompose_result_split_reduced_count_bits_decoded. ff_h_efrd_fubini_row_decompose_result_split_reduced_count_bits_decoded + S (ff_bit_efrd_fubini_row_decompose_result_split_reduced_count_bits) = S ((S (ff_i_efrd_fubini_row_decompose_result_split_reduced_count_bits)) * efrd_row_scale_fubini_row_decompose_result_split)) /\ exists ff_q_efrd_fubini_row_decompose_result_split_reduced_count_bits_decoded. efrd_row_code_fubini_row_decompose_result_split = ff_q_efrd_fubini_row_decompose_result_split_reduced_count_bits_decoded * S ((S (ff_i_efrd_fubini_row_decompose_result_split_reduced_count_bits)) * efrd_row_scale_fubini_row_decompose_result_split) + (ff_bit_efrd_fubini_row_decompose_result_split_reduced_count_bits))) /\ (ff_bit_efrd_fubini_row_decompose_result_split_reduced_count_bits = 0 \/ ff_bit_efrd_fubini_row_decompose_result_split_reduced_count_bits = 1))))) /\ (efrd_terminal_bit_fubini_row_decompose_result = 0 \/ efrd_terminal_bit_fubini_row_decompose_result = 1)) /\ n = efrd_reduced_count_fubini_row_decompose_result + efrd_terminal_bit_fubini_row_decompose_result)))))Structural proof guide
Generated structural guide
A semantic successor row count is its restricted count plus its final decoded bit.
Use the direct prerequisites eisenstein_row_indicator_prefix_succ_restrict, bit_count_succ_decompose as previously established PA formulas.
The proof proceeds by case analysis (8), intermediate claims (2).
Referenced ingredients
Proof neighborhood
Direct dependencies
Direct dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Alpha-v25 checked-use theorem is independently kernel-checked when replayed; it is not a Stable theorem.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (2)
01Fix variables and assumptionsL1–8
02Separate the logical casesL9–11
03Establish hprefixL12–21
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply eisenstein row indicator prefix succ restrict.
- L12
have hprefix : ∀ eri_column_fubini_row_decompose_restricted. Lt(eri_column_fubini_row_decompose_restricted,h) → ∃ y. BetaAt(x,x1,eri_column_fubini_row_decompose_restricted,y) ∧ (y = 0 ∧ (Lt(q · S i,p · S eri_column_fubini_row_decompose_restricted) ∧ ¬Lt(p · S eri_column_fubini_row_decompose_restricted,q · S i)) ∨ y = 1 ∧ (Lt(p · S eri_column_fubini_row_decompose_restricted,q · S i) ∧ ¬Lt(q · S i,p · S eri_column_fubini_row_decompose_restricted)))Definitions: LtBetaAt - L13
specialize eisenstein_row_indicator_prefix_succ_restrict p - L14
specialize eisenstein_row_indicator_prefix_succ_restrict q - L15
specialize eisenstein_row_indicator_prefix_succ_restrict i - L16
specialize eisenstein_row_indicator_prefix_succ_restrict x - L17
specialize eisenstein_row_indicator_prefix_succ_restrict x1 - L18
specialize eisenstein_row_indicator_prefix_succ_restrict h - L19
specialize eisenstein_row_indicator_prefix_succ_restrict sh - L20
apply eisenstein_row_indicator_prefix_succ_restrict - L21
exact hsh
04Use earlier factsL22–22
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L22
exact hwitness_witness_witness_left
05Establish hsplitL23–31
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply bit count succ decompose.
06Separate the logical casesL32–36
07Construct an explicit witnessL37–40
08Separate the logical casesL41–43
09Use earlier factsL44–45
10Separate the logical casesL46–46
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
split
11Use earlier factsL47–48
12Separate the logical casesL49–50
Original exact command ledger · 53 lines
- 0001
intro p - 0002
intro q - 0003
intro h - 0004
intro sh - 0005
intro i - 0006
intro n - 0007
intro hsh - 0008
intro hwitness - 0009
cases hwitness - 0010
cases hwitness_witness - 0011
cases hwitness_witness_witness - 0012
have hprefix : forall eri_column_fubini_row_decompose_restricted. (exists eri_gap_fubini_row_decompose_restricted_bound. eri_gap_fubini_row_decompose_restricted_bound + S (eri_column_fubini_row_decompose_restricted) = h) -> exists eri_bit_fubini_row_decompose_restricted. ((((exists ff_h_eri_fubini_row_decompose_restricted_decoded. ff_h_eri_fubini_row_decompose_restricted_decoded + S (eri_bit_fubini_row_decompose_restricted) = S ((S (eri_column_fubini_row_decompose_restricted)) * x1)) /\ exists ff_q_eri_fubini_row_decompose_restricted_decoded. x = ff_q_eri_fubini_row_decompose_restricted_decoded * S ((S (eri_column_fubini_row_decompose_restricted)) * x1) + (eri_bit_fubini_row_decompose_restricted))) /\ (((eri_bit_fubini_row_decompose_restricted = 0 /\ ((exists eri_gap_fubini_row_decompose_restricted_choice_left. eri_gap_fubini_row_decompose_restricted_choice_left + S (q * S i) = p * S eri_column_fubini_row_decompose_restricted) /\ ~(exists eri_gap_fubini_row_decompose_restricted_choice_right. eri_gap_fubini_row_decompose_restricted_choice_right + S (p * S eri_column_fubini_row_decompose_restricted) = q * S i))) \/ (eri_bit_fubini_row_decompose_restricted = 1 /\ ((exists eri_gap_fubini_row_decompose_restricted_choice_right. eri_gap_fubini_row_decompose_restricted_choice_right + S (p * S eri_column_fubini_row_decompose_restricted) = q * S i) /\ ~(exists eri_gap_fubini_row_decompose_restricted_choice_left. eri_gap_fubini_row_decompose_restricted_choice_left + S (q * S i) = p * S eri_column_fubini_row_decompose_restricted)))))) - 0013
specialize eisenstein_row_indicator_prefix_succ_restrict p - 0014
specialize eisenstein_row_indicator_prefix_succ_restrict q - 0015
specialize eisenstein_row_indicator_prefix_succ_restrict i - 0016
specialize eisenstein_row_indicator_prefix_succ_restrict x - 0017
specialize eisenstein_row_indicator_prefix_succ_restrict x1 - 0018
specialize eisenstein_row_indicator_prefix_succ_restrict h - 0019
specialize eisenstein_row_indicator_prefix_succ_restrict sh - 0020
apply eisenstein_row_indicator_prefix_succ_restrict - 0021
exact hsh - 0022
exact hwitness_witness_witness_left - 0023
have hsplit : exists a r. (((exists ff_h_fubini_row_decompose_split_last. ff_h_fubini_row_decompose_split_last + S (a) = S ((S (h)) * x1)) /\ exists ff_q_fubini_row_decompose_split_last. x = ff_q_fubini_row_decompose_split_last * S ((S (h)) * x1) + (a))) /\ ((((exists ff_u_fubini_row_decompose_split_reduced_sum ff_v_fubini_row_decompose_split_reduced_sum. ((((exists ff_h_fubini_row_decompose_split_reduced_sum_start. ff_h_fubini_row_decompose_split_reduced_sum_start + S (0) = S ((S (0)) * ff_v_fubini_row_decompose_split_reduced_sum)) /\ exists ff_q_fubini_row_decompose_split_reduced_sum_start. ff_u_fubini_row_decompose_split_reduced_sum = ff_q_fubini_row_decompose_split_reduced_sum_start * S ((S (0)) * ff_v_fubini_row_decompose_split_reduced_sum) + (0))) /\ ((((exists ff_h_fubini_row_decompose_split_reduced_sum_terminal. ff_h_fubini_row_decompose_split_reduced_sum_terminal + S (r) = S ((S (h)) * ff_v_fubini_row_decompose_split_reduced_sum)) /\ exists ff_q_fubini_row_decompose_split_reduced_sum_terminal. ff_u_fubini_row_decompose_split_reduced_sum = ff_q_fubini_row_decompose_split_reduced_sum_terminal * S ((S (h)) * ff_v_fubini_row_decompose_split_reduced_sum) + (r))) /\ forall ff_i_fubini_row_decompose_split_reduced_sum. (exists ff_lt_fubini_row_decompose_split_reduced_sum_bound. ff_lt_fubini_row_decompose_split_reduced_sum_bound + S ff_i_fubini_row_decompose_split_reduced_sum = h) -> exists ff_a_fubini_row_decompose_split_reduced_sum ff_r_fubini_row_decompose_split_reduced_sum ff_s_fubini_row_decompose_split_reduced_sum. ((((exists ff_h_fubini_row_decompose_split_reduced_sum_summand. ff_h_fubini_row_decompose_split_reduced_sum_summand + S (ff_a_fubini_row_decompose_split_reduced_sum) = S ((S (ff_i_fubini_row_decompose_split_reduced_sum)) * x1)) /\ exists ff_q_fubini_row_decompose_split_reduced_sum_summand. x = ff_q_fubini_row_decompose_split_reduced_sum_summand * S ((S (ff_i_fubini_row_decompose_split_reduced_sum)) * x1) + (ff_a_fubini_row_decompose_split_reduced_sum))) /\ ((((exists ff_h_fubini_row_decompose_split_reduced_sum_partial. ff_h_fubini_row_decompose_split_reduced_sum_partial + S (ff_r_fubini_row_decompose_split_reduced_sum) = S ((S (ff_i_fubini_row_decompose_split_reduced_sum)) * ff_v_fubini_row_decompose_split_reduced_sum)) /\ exists ff_q_fubini_row_decompose_split_reduced_sum_partial. ff_u_fubini_row_decompose_split_reduced_sum = ff_q_fubini_row_decompose_split_reduced_sum_partial * S ((S (ff_i_fubini_row_decompose_split_reduced_sum)) * ff_v_fubini_row_decompose_split_reduced_sum) + (ff_r_fubini_row_decompose_split_reduced_sum))) /\ ((((exists ff_h_fubini_row_decompose_split_reduced_sum_successor. ff_h_fubini_row_decompose_split_reduced_sum_successor + S (ff_s_fubini_row_decompose_split_reduced_sum) = S ((S (S ff_i_fubini_row_decompose_split_reduced_sum)) * ff_v_fubini_row_decompose_split_reduced_sum)) /\ exists ff_q_fubini_row_decompose_split_reduced_sum_successor. ff_u_fubini_row_decompose_split_reduced_sum = ff_q_fubini_row_decompose_split_reduced_sum_successor * S ((S (S ff_i_fubini_row_decompose_split_reduced_sum)) * ff_v_fubini_row_decompose_split_reduced_sum) + (ff_s_fubini_row_decompose_split_reduced_sum))) /\ ff_s_fubini_row_decompose_split_reduced_sum = ff_r_fubini_row_decompose_split_reduced_sum + ff_a_fubini_row_decompose_split_reduced_sum)))))) /\ (forall ff_i_fubini_row_decompose_split_reduced_bits. (exists ff_lt_fubini_row_decompose_split_reduced_bits_bound. ff_lt_fubini_row_decompose_split_reduced_bits_bound + S ff_i_fubini_row_decompose_split_reduced_bits = h) -> exists ff_bit_fubini_row_decompose_split_reduced_bits. ((((exists ff_h_fubini_row_decompose_split_reduced_bits_decoded. ff_h_fubini_row_decompose_split_reduced_bits_decoded + S (ff_bit_fubini_row_decompose_split_reduced_bits) = S ((S (ff_i_fubini_row_decompose_split_reduced_bits)) * x1)) /\ exists ff_q_fubini_row_decompose_split_reduced_bits_decoded. x = ff_q_fubini_row_decompose_split_reduced_bits_decoded * S ((S (ff_i_fubini_row_decompose_split_reduced_bits)) * x1) + (ff_bit_fubini_row_decompose_split_reduced_bits))) /\ (ff_bit_fubini_row_decompose_split_reduced_bits = 0 \/ ff_bit_fubini_row_decompose_split_reduced_bits = 1))))) /\ ((a = 0 \/ a = 1) /\ n = r + a)) - 0024
specialize bit_count_succ_decompose x - 0025
specialize bit_count_succ_decompose x1 - 0026
specialize bit_count_succ_decompose h - 0027
specialize bit_count_succ_decompose sh - 0028
specialize bit_count_succ_decompose n - 0029
apply bit_count_succ_decompose - 0030
exact hsh - 0031
exact hwitness_witness_witness_right - 0032
cases hsplit - 0033
cases hsplit_witness - 0034
cases hsplit_witness_witness - 0035
cases hsplit_witness_witness_right - 0036
cases hsplit_witness_witness_right_right - 0037
exists x2 - 0038
exists x3 - 0039
exists x - 0040
exists x1 - 0041
split - 0042
split - 0043
split - 0044
exact hwitness_witness_witness_left - 0045
exact hwitness_witness_witness_right - 0046
split - 0047
exact hprefix - 0048
exact hsplit_witness_witness_left - 0049
split - 0050
split - 0051
exact hsplit_witness_witness_right_left - 0052
exact hsplit_witness_witness_right_right_left - 0053
exact hsplit_witness_witness_right_right_right