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.
Statement with defined notation
∀ p. ∀ q. ∀ k. ∀ cb. ∀ cc. ∀ l. (∀ x. Lt(x,l) → ∃ y. BetaAt(cb,cc,x,y) ∧ (∃ z. ∃ n. (∀ m. Lt(m,k) → ∃ i. BetaAt(z,n,m,i) ∧ (i = 0 ∧ (Lt(q · S x,p · S m) ∧ ¬Lt(p · S m,q · S x)) ∨ i = 1 ∧ (Lt(p · S m,q · S x) ∧ ¬Lt(q · S x,p · S m)))) ∧ BitCount(z,n,k,y))) → (∃ x. ∃ y. ∃ z. (∀ n. Lt(n,k) → ∃ m. BetaAt(y,z,n,m) ∧ (m = 0 ∧ (Lt(q · S l,p · S n) ∧ ¬Lt(p · S n,q · S l)) ∨ m = 1 ∧ (Lt(p · S n,q · S l) ∧ ¬Lt(q · S l,p · S n)))) ∧ BitCount(y,z,k,x)) → ∃ x. ∃ y. ∀ z. Lt(z,S l) → ∃ n. BetaAt(x,y,z,n) ∧ (∃ m. ∃ i. (∀ j. Lt(j,k) → ∃ u. BetaAt(m,i,j,u) ∧ (u = 0 ∧ (Lt(q · S z,p · S j) ∧ ¬Lt(p · S j,q · S z)) ∨ u = 1 ∧ (Lt(p · S j,q · S z) ∧ ¬Lt(q · S z,p · S j)))) ∧ BitCount(m,i,k,n))Every purple notation token opens its conservative definition. This is a reading surface; the compiler expands the statement before the unchanged kernel checks it.
Definitions used by this theorem
In the theorem statement
25 occurrences
In local proof propositions
9 occurrences
Exact expanded native-PA statement
forall p q k cb cc l. (forall erc_row_rectangle_count_extend_before. (exists erc_lt_gap_rectangle_count_extend_before_bound. erc_lt_gap_rectangle_count_extend_before_bound + S (erc_row_rectangle_count_extend_before) = l) -> exists erc_count_rectangle_count_extend_before. ((((exists ff_h_erc_rectangle_count_extend_before_decoded. ff_h_erc_rectangle_count_extend_before_decoded + S (erc_count_rectangle_count_extend_before) = S ((S (erc_row_rectangle_count_extend_before)) * cc)) /\ exists ff_q_erc_rectangle_count_extend_before_decoded. cb = ff_q_erc_rectangle_count_extend_before_decoded * S ((S (erc_row_rectangle_count_extend_before)) * cc) + (erc_count_rectangle_count_extend_before))) /\ (exists erc_row_code_rectangle_count_extend_before_witness erc_row_scale_rectangle_count_extend_before_witness. ((forall eri_column_erc_rectangle_count_extend_before_witness_row. (exists eri_gap_erc_rectangle_count_extend_before_witness_row_bound. eri_gap_erc_rectangle_count_extend_before_witness_row_bound + S (eri_column_erc_rectangle_count_extend_before_witness_row) = k) -> exists eri_bit_erc_rectangle_count_extend_before_witness_row. ((((exists ff_h_eri_erc_rectangle_count_extend_before_witness_row_decoded. ff_h_eri_erc_rectangle_count_extend_before_witness_row_decoded + S (eri_bit_erc_rectangle_count_extend_before_witness_row) = S ((S (eri_column_erc_rectangle_count_extend_before_witness_row)) * erc_row_scale_rectangle_count_extend_before_witness)) /\ exists ff_q_eri_erc_rectangle_count_extend_before_witness_row_decoded. erc_row_code_rectangle_count_extend_before_witness = ff_q_eri_erc_rectangle_count_extend_before_witness_row_decoded * S ((S (eri_column_erc_rectangle_count_extend_before_witness_row)) * erc_row_scale_rectangle_count_extend_before_witness) + (eri_bit_erc_rectangle_count_extend_before_witness_row))) /\ (((eri_bit_erc_rectangle_count_extend_before_witness_row = 0 /\ ((exists eri_gap_erc_rectangle_count_extend_before_witness_row_choice_left. eri_gap_erc_rectangle_count_extend_before_witness_row_choice_left + S (q * S erc_row_rectangle_count_extend_before) = p * S eri_column_erc_rectangle_count_extend_before_witness_row) /\ ~(exists eri_gap_erc_rectangle_count_extend_before_witness_row_choice_right. eri_gap_erc_rectangle_count_extend_before_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_before_witness_row) = q * S erc_row_rectangle_count_extend_before))) \/ (eri_bit_erc_rectangle_count_extend_before_witness_row = 1 /\ ((exists eri_gap_erc_rectangle_count_extend_before_witness_row_choice_right. eri_gap_erc_rectangle_count_extend_before_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_before_witness_row) = q * S erc_row_rectangle_count_extend_before) /\ ~(exists eri_gap_erc_rectangle_count_extend_before_witness_row_choice_left. eri_gap_erc_rectangle_count_extend_before_witness_row_choice_left + S (q * S erc_row_rectangle_count_extend_before) = p * S eri_column_erc_rectangle_count_extend_before_witness_row))))))) /\ (((exists ff_u_erc_rectangle_count_extend_before_witness_count_sum ff_v_erc_rectangle_count_extend_before_witness_count_sum. ((((exists ff_h_erc_rectangle_count_extend_before_witness_count_sum_start. ff_h_erc_rectangle_count_extend_before_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_before_witness_count_sum_start. ff_u_erc_rectangle_count_extend_before_witness_count_sum = ff_q_erc_rectangle_count_extend_before_witness_count_sum_start * S ((S (0)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_rectangle_count_extend_before_witness_count_sum_terminal. ff_h_erc_rectangle_count_extend_before_witness_count_sum_terminal + S (erc_count_rectangle_count_extend_before) = S ((S (k)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_before_witness_count_sum_terminal. ff_u_erc_rectangle_count_extend_before_witness_count_sum = ff_q_erc_rectangle_count_extend_before_witness_count_sum_terminal * S ((S (k)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum) + (erc_count_rectangle_count_extend_before))) /\ forall ff_i_erc_rectangle_count_extend_before_witness_count_sum. (exists ff_lt_erc_rectangle_count_extend_before_witness_count_sum_bound. ff_lt_erc_rectangle_count_extend_before_witness_count_sum_bound + S ff_i_erc_rectangle_count_extend_before_witness_count_sum = k) -> exists ff_a_erc_rectangle_count_extend_before_witness_count_sum ff_r_erc_rectangle_count_extend_before_witness_count_sum ff_s_erc_rectangle_count_extend_before_witness_count_sum. ((((exists ff_h_erc_rectangle_count_extend_before_witness_count_sum_summand. ff_h_erc_rectangle_count_extend_before_witness_count_sum_summand + S (ff_a_erc_rectangle_count_extend_before_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_before_witness_count_sum)) * erc_row_scale_rectangle_count_extend_before_witness)) /\ exists ff_q_erc_rectangle_count_extend_before_witness_count_sum_summand. erc_row_code_rectangle_count_extend_before_witness = ff_q_erc_rectangle_count_extend_before_witness_count_sum_summand * S ((S (ff_i_erc_rectangle_count_extend_before_witness_count_sum)) * erc_row_scale_rectangle_count_extend_before_witness) + (ff_a_erc_rectangle_count_extend_before_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_before_witness_count_sum_partial. ff_h_erc_rectangle_count_extend_before_witness_count_sum_partial + S (ff_r_erc_rectangle_count_extend_before_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_before_witness_count_sum)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_before_witness_count_sum_partial. ff_u_erc_rectangle_count_extend_before_witness_count_sum = ff_q_erc_rectangle_count_extend_before_witness_count_sum_partial * S ((S (ff_i_erc_rectangle_count_extend_before_witness_count_sum)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum) + (ff_r_erc_rectangle_count_extend_before_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_before_witness_count_sum_successor. ff_h_erc_rectangle_count_extend_before_witness_count_sum_successor + S (ff_s_erc_rectangle_count_extend_before_witness_count_sum) = S ((S (S ff_i_erc_rectangle_count_extend_before_witness_count_sum)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_before_witness_count_sum_successor. ff_u_erc_rectangle_count_extend_before_witness_count_sum = ff_q_erc_rectangle_count_extend_before_witness_count_sum_successor * S ((S (S ff_i_erc_rectangle_count_extend_before_witness_count_sum)) * ff_v_erc_rectangle_count_extend_before_witness_count_sum) + (ff_s_erc_rectangle_count_extend_before_witness_count_sum))) /\ ff_s_erc_rectangle_count_extend_before_witness_count_sum = ff_r_erc_rectangle_count_extend_before_witness_count_sum + ff_a_erc_rectangle_count_extend_before_witness_count_sum)))))) /\ (forall ff_i_erc_rectangle_count_extend_before_witness_count_bits. (exists ff_lt_erc_rectangle_count_extend_before_witness_count_bits_bound. ff_lt_erc_rectangle_count_extend_before_witness_count_bits_bound + S ff_i_erc_rectangle_count_extend_before_witness_count_bits = k) -> exists ff_bit_erc_rectangle_count_extend_before_witness_count_bits. ((((exists ff_h_erc_rectangle_count_extend_before_witness_count_bits_decoded. ff_h_erc_rectangle_count_extend_before_witness_count_bits_decoded + S (ff_bit_erc_rectangle_count_extend_before_witness_count_bits) = S ((S (ff_i_erc_rectangle_count_extend_before_witness_count_bits)) * erc_row_scale_rectangle_count_extend_before_witness)) /\ exists ff_q_erc_rectangle_count_extend_before_witness_count_bits_decoded. erc_row_code_rectangle_count_extend_before_witness = ff_q_erc_rectangle_count_extend_before_witness_count_bits_decoded * S ((S (ff_i_erc_rectangle_count_extend_before_witness_count_bits)) * erc_row_scale_rectangle_count_extend_before_witness) + (ff_bit_erc_rectangle_count_extend_before_witness_count_bits))) /\ (ff_bit_erc_rectangle_count_extend_before_witness_count_bits = 0 \/ ff_bit_erc_rectangle_count_extend_before_witness_count_bits = 1))))))))) -> (exists n. (exists erc_row_code_rectangle_count_extend_last erc_row_scale_rectangle_count_extend_last. ((forall eri_column_erc_rectangle_count_extend_last_row. (exists eri_gap_erc_rectangle_count_extend_last_row_bound. eri_gap_erc_rectangle_count_extend_last_row_bound + S (eri_column_erc_rectangle_count_extend_last_row) = k) -> exists eri_bit_erc_rectangle_count_extend_last_row. ((((exists ff_h_eri_erc_rectangle_count_extend_last_row_decoded. ff_h_eri_erc_rectangle_count_extend_last_row_decoded + S (eri_bit_erc_rectangle_count_extend_last_row) = S ((S (eri_column_erc_rectangle_count_extend_last_row)) * erc_row_scale_rectangle_count_extend_last)) /\ exists ff_q_eri_erc_rectangle_count_extend_last_row_decoded. erc_row_code_rectangle_count_extend_last = ff_q_eri_erc_rectangle_count_extend_last_row_decoded * S ((S (eri_column_erc_rectangle_count_extend_last_row)) * erc_row_scale_rectangle_count_extend_last) + (eri_bit_erc_rectangle_count_extend_last_row))) /\ (((eri_bit_erc_rectangle_count_extend_last_row = 0 /\ ((exists eri_gap_erc_rectangle_count_extend_last_row_choice_left. eri_gap_erc_rectangle_count_extend_last_row_choice_left + S (q * S l) = p * S eri_column_erc_rectangle_count_extend_last_row) /\ ~(exists eri_gap_erc_rectangle_count_extend_last_row_choice_right. eri_gap_erc_rectangle_count_extend_last_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_last_row) = q * S l))) \/ (eri_bit_erc_rectangle_count_extend_last_row = 1 /\ ((exists eri_gap_erc_rectangle_count_extend_last_row_choice_right. eri_gap_erc_rectangle_count_extend_last_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_last_row) = q * S l) /\ ~(exists eri_gap_erc_rectangle_count_extend_last_row_choice_left. eri_gap_erc_rectangle_count_extend_last_row_choice_left + S (q * S l) = p * S eri_column_erc_rectangle_count_extend_last_row))))))) /\ (((exists ff_u_erc_rectangle_count_extend_last_count_sum ff_v_erc_rectangle_count_extend_last_count_sum. ((((exists ff_h_erc_rectangle_count_extend_last_count_sum_start. ff_h_erc_rectangle_count_extend_last_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_rectangle_count_extend_last_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_last_count_sum_start. ff_u_erc_rectangle_count_extend_last_count_sum = ff_q_erc_rectangle_count_extend_last_count_sum_start * S ((S (0)) * ff_v_erc_rectangle_count_extend_last_count_sum) + (0))) /\ ((((exists ff_h_erc_rectangle_count_extend_last_count_sum_terminal. ff_h_erc_rectangle_count_extend_last_count_sum_terminal + S (n) = S ((S (k)) * ff_v_erc_rectangle_count_extend_last_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_last_count_sum_terminal. ff_u_erc_rectangle_count_extend_last_count_sum = ff_q_erc_rectangle_count_extend_last_count_sum_terminal * S ((S (k)) * ff_v_erc_rectangle_count_extend_last_count_sum) + (n))) /\ forall ff_i_erc_rectangle_count_extend_last_count_sum. (exists ff_lt_erc_rectangle_count_extend_last_count_sum_bound. ff_lt_erc_rectangle_count_extend_last_count_sum_bound + S ff_i_erc_rectangle_count_extend_last_count_sum = k) -> exists ff_a_erc_rectangle_count_extend_last_count_sum ff_r_erc_rectangle_count_extend_last_count_sum ff_s_erc_rectangle_count_extend_last_count_sum. ((((exists ff_h_erc_rectangle_count_extend_last_count_sum_summand. ff_h_erc_rectangle_count_extend_last_count_sum_summand + S (ff_a_erc_rectangle_count_extend_last_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_last_count_sum)) * erc_row_scale_rectangle_count_extend_last)) /\ exists ff_q_erc_rectangle_count_extend_last_count_sum_summand. erc_row_code_rectangle_count_extend_last = ff_q_erc_rectangle_count_extend_last_count_sum_summand * S ((S (ff_i_erc_rectangle_count_extend_last_count_sum)) * erc_row_scale_rectangle_count_extend_last) + (ff_a_erc_rectangle_count_extend_last_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_last_count_sum_partial. ff_h_erc_rectangle_count_extend_last_count_sum_partial + S (ff_r_erc_rectangle_count_extend_last_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_last_count_sum)) * ff_v_erc_rectangle_count_extend_last_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_last_count_sum_partial. ff_u_erc_rectangle_count_extend_last_count_sum = ff_q_erc_rectangle_count_extend_last_count_sum_partial * S ((S (ff_i_erc_rectangle_count_extend_last_count_sum)) * ff_v_erc_rectangle_count_extend_last_count_sum) + (ff_r_erc_rectangle_count_extend_last_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_last_count_sum_successor. ff_h_erc_rectangle_count_extend_last_count_sum_successor + S (ff_s_erc_rectangle_count_extend_last_count_sum) = S ((S (S ff_i_erc_rectangle_count_extend_last_count_sum)) * ff_v_erc_rectangle_count_extend_last_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_last_count_sum_successor. ff_u_erc_rectangle_count_extend_last_count_sum = ff_q_erc_rectangle_count_extend_last_count_sum_successor * S ((S (S ff_i_erc_rectangle_count_extend_last_count_sum)) * ff_v_erc_rectangle_count_extend_last_count_sum) + (ff_s_erc_rectangle_count_extend_last_count_sum))) /\ ff_s_erc_rectangle_count_extend_last_count_sum = ff_r_erc_rectangle_count_extend_last_count_sum + ff_a_erc_rectangle_count_extend_last_count_sum)))))) /\ (forall ff_i_erc_rectangle_count_extend_last_count_bits. (exists ff_lt_erc_rectangle_count_extend_last_count_bits_bound. ff_lt_erc_rectangle_count_extend_last_count_bits_bound + S ff_i_erc_rectangle_count_extend_last_count_bits = k) -> exists ff_bit_erc_rectangle_count_extend_last_count_bits. ((((exists ff_h_erc_rectangle_count_extend_last_count_bits_decoded. ff_h_erc_rectangle_count_extend_last_count_bits_decoded + S (ff_bit_erc_rectangle_count_extend_last_count_bits) = S ((S (ff_i_erc_rectangle_count_extend_last_count_bits)) * erc_row_scale_rectangle_count_extend_last)) /\ exists ff_q_erc_rectangle_count_extend_last_count_bits_decoded. erc_row_code_rectangle_count_extend_last = ff_q_erc_rectangle_count_extend_last_count_bits_decoded * S ((S (ff_i_erc_rectangle_count_extend_last_count_bits)) * erc_row_scale_rectangle_count_extend_last) + (ff_bit_erc_rectangle_count_extend_last_count_bits))) /\ (ff_bit_erc_rectangle_count_extend_last_count_bits = 0 \/ ff_bit_erc_rectangle_count_extend_last_count_bits = 1)))))))) -> exists z d. (forall erc_row_rectangle_count_extend_after. (exists erc_lt_gap_rectangle_count_extend_after_bound. erc_lt_gap_rectangle_count_extend_after_bound + S (erc_row_rectangle_count_extend_after) = S l) -> exists erc_count_rectangle_count_extend_after. ((((exists ff_h_erc_rectangle_count_extend_after_decoded. ff_h_erc_rectangle_count_extend_after_decoded + S (erc_count_rectangle_count_extend_after) = S ((S (erc_row_rectangle_count_extend_after)) * d)) /\ exists ff_q_erc_rectangle_count_extend_after_decoded. z = ff_q_erc_rectangle_count_extend_after_decoded * S ((S (erc_row_rectangle_count_extend_after)) * d) + (erc_count_rectangle_count_extend_after))) /\ (exists erc_row_code_rectangle_count_extend_after_witness erc_row_scale_rectangle_count_extend_after_witness. ((forall eri_column_erc_rectangle_count_extend_after_witness_row. (exists eri_gap_erc_rectangle_count_extend_after_witness_row_bound. eri_gap_erc_rectangle_count_extend_after_witness_row_bound + S (eri_column_erc_rectangle_count_extend_after_witness_row) = k) -> exists eri_bit_erc_rectangle_count_extend_after_witness_row. ((((exists ff_h_eri_erc_rectangle_count_extend_after_witness_row_decoded. ff_h_eri_erc_rectangle_count_extend_after_witness_row_decoded + S (eri_bit_erc_rectangle_count_extend_after_witness_row) = S ((S (eri_column_erc_rectangle_count_extend_after_witness_row)) * erc_row_scale_rectangle_count_extend_after_witness)) /\ exists ff_q_eri_erc_rectangle_count_extend_after_witness_row_decoded. erc_row_code_rectangle_count_extend_after_witness = ff_q_eri_erc_rectangle_count_extend_after_witness_row_decoded * S ((S (eri_column_erc_rectangle_count_extend_after_witness_row)) * erc_row_scale_rectangle_count_extend_after_witness) + (eri_bit_erc_rectangle_count_extend_after_witness_row))) /\ (((eri_bit_erc_rectangle_count_extend_after_witness_row = 0 /\ ((exists eri_gap_erc_rectangle_count_extend_after_witness_row_choice_left. eri_gap_erc_rectangle_count_extend_after_witness_row_choice_left + S (q * S erc_row_rectangle_count_extend_after) = p * S eri_column_erc_rectangle_count_extend_after_witness_row) /\ ~(exists eri_gap_erc_rectangle_count_extend_after_witness_row_choice_right. eri_gap_erc_rectangle_count_extend_after_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_after_witness_row) = q * S erc_row_rectangle_count_extend_after))) \/ (eri_bit_erc_rectangle_count_extend_after_witness_row = 1 /\ ((exists eri_gap_erc_rectangle_count_extend_after_witness_row_choice_right. eri_gap_erc_rectangle_count_extend_after_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_after_witness_row) = q * S erc_row_rectangle_count_extend_after) /\ ~(exists eri_gap_erc_rectangle_count_extend_after_witness_row_choice_left. eri_gap_erc_rectangle_count_extend_after_witness_row_choice_left + S (q * S erc_row_rectangle_count_extend_after) = p * S eri_column_erc_rectangle_count_extend_after_witness_row))))))) /\ (((exists ff_u_erc_rectangle_count_extend_after_witness_count_sum ff_v_erc_rectangle_count_extend_after_witness_count_sum. ((((exists ff_h_erc_rectangle_count_extend_after_witness_count_sum_start. ff_h_erc_rectangle_count_extend_after_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_after_witness_count_sum_start. ff_u_erc_rectangle_count_extend_after_witness_count_sum = ff_q_erc_rectangle_count_extend_after_witness_count_sum_start * S ((S (0)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_rectangle_count_extend_after_witness_count_sum_terminal. ff_h_erc_rectangle_count_extend_after_witness_count_sum_terminal + S (erc_count_rectangle_count_extend_after) = S ((S (k)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_after_witness_count_sum_terminal. ff_u_erc_rectangle_count_extend_after_witness_count_sum = ff_q_erc_rectangle_count_extend_after_witness_count_sum_terminal * S ((S (k)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum) + (erc_count_rectangle_count_extend_after))) /\ forall ff_i_erc_rectangle_count_extend_after_witness_count_sum. (exists ff_lt_erc_rectangle_count_extend_after_witness_count_sum_bound. ff_lt_erc_rectangle_count_extend_after_witness_count_sum_bound + S ff_i_erc_rectangle_count_extend_after_witness_count_sum = k) -> exists ff_a_erc_rectangle_count_extend_after_witness_count_sum ff_r_erc_rectangle_count_extend_after_witness_count_sum ff_s_erc_rectangle_count_extend_after_witness_count_sum. ((((exists ff_h_erc_rectangle_count_extend_after_witness_count_sum_summand. ff_h_erc_rectangle_count_extend_after_witness_count_sum_summand + S (ff_a_erc_rectangle_count_extend_after_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_after_witness_count_sum)) * erc_row_scale_rectangle_count_extend_after_witness)) /\ exists ff_q_erc_rectangle_count_extend_after_witness_count_sum_summand. erc_row_code_rectangle_count_extend_after_witness = ff_q_erc_rectangle_count_extend_after_witness_count_sum_summand * S ((S (ff_i_erc_rectangle_count_extend_after_witness_count_sum)) * erc_row_scale_rectangle_count_extend_after_witness) + (ff_a_erc_rectangle_count_extend_after_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_after_witness_count_sum_partial. ff_h_erc_rectangle_count_extend_after_witness_count_sum_partial + S (ff_r_erc_rectangle_count_extend_after_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_after_witness_count_sum)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_after_witness_count_sum_partial. ff_u_erc_rectangle_count_extend_after_witness_count_sum = ff_q_erc_rectangle_count_extend_after_witness_count_sum_partial * S ((S (ff_i_erc_rectangle_count_extend_after_witness_count_sum)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum) + (ff_r_erc_rectangle_count_extend_after_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_after_witness_count_sum_successor. ff_h_erc_rectangle_count_extend_after_witness_count_sum_successor + S (ff_s_erc_rectangle_count_extend_after_witness_count_sum) = S ((S (S ff_i_erc_rectangle_count_extend_after_witness_count_sum)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_after_witness_count_sum_successor. ff_u_erc_rectangle_count_extend_after_witness_count_sum = ff_q_erc_rectangle_count_extend_after_witness_count_sum_successor * S ((S (S ff_i_erc_rectangle_count_extend_after_witness_count_sum)) * ff_v_erc_rectangle_count_extend_after_witness_count_sum) + (ff_s_erc_rectangle_count_extend_after_witness_count_sum))) /\ ff_s_erc_rectangle_count_extend_after_witness_count_sum = ff_r_erc_rectangle_count_extend_after_witness_count_sum + ff_a_erc_rectangle_count_extend_after_witness_count_sum)))))) /\ (forall ff_i_erc_rectangle_count_extend_after_witness_count_bits. (exists ff_lt_erc_rectangle_count_extend_after_witness_count_bits_bound. ff_lt_erc_rectangle_count_extend_after_witness_count_bits_bound + S ff_i_erc_rectangle_count_extend_after_witness_count_bits = k) -> exists ff_bit_erc_rectangle_count_extend_after_witness_count_bits. ((((exists ff_h_erc_rectangle_count_extend_after_witness_count_bits_decoded. ff_h_erc_rectangle_count_extend_after_witness_count_bits_decoded + S (ff_bit_erc_rectangle_count_extend_after_witness_count_bits) = S ((S (ff_i_erc_rectangle_count_extend_after_witness_count_bits)) * erc_row_scale_rectangle_count_extend_after_witness)) /\ exists ff_q_erc_rectangle_count_extend_after_witness_count_bits_decoded. erc_row_code_rectangle_count_extend_after_witness = ff_q_erc_rectangle_count_extend_after_witness_count_bits_decoded * S ((S (ff_i_erc_rectangle_count_extend_after_witness_count_bits)) * erc_row_scale_rectangle_count_extend_after_witness) + (ff_bit_erc_rectangle_count_extend_after_witness_count_bits))) /\ (ff_bit_erc_rectangle_count_extend_after_witness_count_bits = 0 \/ ff_bit_erc_rectangle_count_extend_after_witness_count_bits = 1)))))))))Proof neighborhood
Direct theorem prerequisites
Direct theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. The untrusted compiler re-expands each one before the original tactic script is replayed; defined notation is never accepted by the kernel. Open the exact replay line beneath every changed command.
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–9
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L9
cases hchoice
03Use earlier factsL10–13
04Separate the logical casesL14–16
05Construct an explicit witnessL17–18
06Fix variables and assumptionsL19–20
07Establish hsplitL21–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
08Separate the logical casesL26–26
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L26
cases hsplit
09Construct an explicit witnessL27–27
Supply the displayed value, then prove that it has the required property.
- L27
exists x
10Separate the logical casesL28–28
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
split
11Calculate and transport equalitiesL29–30
12Use earlier factsL31–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
exact beta_prefix_extend_witness_witness_left
13Calculate and transport equalitiesL32–35
14Use earlier factsL36–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
exact hchoice_witness
15Establish holdL37–40
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hprefix.
- L37
have hold : ∃ oldcount. BetaAt(cb,cc,i,oldcount) ∧ (∃ x. ∃ y. (∀ z. Lt(z,k) → ∃ n. BetaAt(x,y,z,n) ∧ (n = 0 ∧ (Lt(q · S i,p · S z) ∧ ¬Lt(p · S z,q · S i)) ∨ n = 1 ∧ (Lt(p · S z,q · S i) ∧ ¬Lt(q · S i,p · S z)))) ∧ BitCount(x,y,k,oldcount))Definitions: BetaAt(cb,cc,i,oldcount)Lt(z,k)BetaAt(x,y,z,n)Lt(q · S i,p · S z)Lt(p · S z,q · S i)BitCount(x,y,k,oldcount)Original native command in the exact edition - L38
specialize hprefix i - L39
apply hprefix - L40
exact hsplit_right
16Separate the logical casesL41–42
17Construct an explicit witnessL43–43
Supply the displayed value, then prove that it has the required property.
- L43
exists x3
18Separate the logical casesL44–44
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L44
split
19Use earlier factsL45–50
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 50 lines
- 0001
intro p - 0002
intro q - 0003
intro k - 0004
intro cb - 0005
intro cc - 0006
intro l - 0007
intro hprefix - 0008
intro hchoice - 0009
cases hchoice - 0010
specialize beta_prefix_extend l - 0011
specialize beta_prefix_extend cb - 0012
specialize beta_prefix_extend cc - 0013
specialize beta_prefix_extend x - 0014
cases beta_prefix_extend - 0015
cases beta_prefix_extend_witness - 0016
cases beta_prefix_extend_witness_witness - 0017
exists x1 - 0018
exists x2 - 0019
intro i - 0020
intro hi - 0021
have hsplit : i = l ∨ Lt(i,l)Exact native replay line
have hsplit : i = l \/ exists gap. gap + S i = l - 0022
specialize finite_lt_succ_eq_or_lt l - 0023
specialize finite_lt_succ_eq_or_lt i - 0024
apply finite_lt_succ_eq_or_lt - 0025
exact hi - 0026
cases hsplit - 0027
exists x - 0028
split - 0029
rewrite hsplit_left - 0030
rewrite hsplit_left - 0031
exact beta_prefix_extend_witness_witness_left - 0032
rewrite hsplit_left - 0033
rewrite hsplit_left - 0034
rewrite hsplit_left - 0035
rewrite hsplit_left - 0036
exact hchoice_witness - 0037
have hold : ∃ oldcount. BetaAt(cb,cc,i,oldcount) ∧ (∃ x. ∃ y. (∀ z. Lt(z,k) → ∃ n. BetaAt(x,y,z,n) ∧ (n = 0 ∧ (Lt(q · S i,p · S z) ∧ ¬Lt(p · S z,q · S i)) ∨ n = 1 ∧ (Lt(p · S z,q · S i) ∧ ¬Lt(q · S i,p · S z)))) ∧ BitCount(x,y,k,oldcount))Exact native replay line
have hold : exists oldcount. ((((exists ff_h_rectangle_count_extend_old_entry. ff_h_rectangle_count_extend_old_entry + S (oldcount) = S ((S (i)) * cc)) /\ exists ff_q_rectangle_count_extend_old_entry. cb = ff_q_rectangle_count_extend_old_entry * S ((S (i)) * cc) + (oldcount))) /\ (exists erc_row_code_rectangle_count_extend_old_witness erc_row_scale_rectangle_count_extend_old_witness. ((forall eri_column_erc_rectangle_count_extend_old_witness_row. (exists eri_gap_erc_rectangle_count_extend_old_witness_row_bound. eri_gap_erc_rectangle_count_extend_old_witness_row_bound + S (eri_column_erc_rectangle_count_extend_old_witness_row) = k) -> exists eri_bit_erc_rectangle_count_extend_old_witness_row. ((((exists ff_h_eri_erc_rectangle_count_extend_old_witness_row_decoded. ff_h_eri_erc_rectangle_count_extend_old_witness_row_decoded + S (eri_bit_erc_rectangle_count_extend_old_witness_row) = S ((S (eri_column_erc_rectangle_count_extend_old_witness_row)) * erc_row_scale_rectangle_count_extend_old_witness)) /\ exists ff_q_eri_erc_rectangle_count_extend_old_witness_row_decoded. erc_row_code_rectangle_count_extend_old_witness = ff_q_eri_erc_rectangle_count_extend_old_witness_row_decoded * S ((S (eri_column_erc_rectangle_count_extend_old_witness_row)) * erc_row_scale_rectangle_count_extend_old_witness) + (eri_bit_erc_rectangle_count_extend_old_witness_row))) /\ (((eri_bit_erc_rectangle_count_extend_old_witness_row = 0 /\ ((exists eri_gap_erc_rectangle_count_extend_old_witness_row_choice_left. eri_gap_erc_rectangle_count_extend_old_witness_row_choice_left + S (q * S i) = p * S eri_column_erc_rectangle_count_extend_old_witness_row) /\ ~(exists eri_gap_erc_rectangle_count_extend_old_witness_row_choice_right. eri_gap_erc_rectangle_count_extend_old_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_old_witness_row) = q * S i))) \/ (eri_bit_erc_rectangle_count_extend_old_witness_row = 1 /\ ((exists eri_gap_erc_rectangle_count_extend_old_witness_row_choice_right. eri_gap_erc_rectangle_count_extend_old_witness_row_choice_right + S (p * S eri_column_erc_rectangle_count_extend_old_witness_row) = q * S i) /\ ~(exists eri_gap_erc_rectangle_count_extend_old_witness_row_choice_left. eri_gap_erc_rectangle_count_extend_old_witness_row_choice_left + S (q * S i) = p * S eri_column_erc_rectangle_count_extend_old_witness_row))))))) /\ (((exists ff_u_erc_rectangle_count_extend_old_witness_count_sum ff_v_erc_rectangle_count_extend_old_witness_count_sum. ((((exists ff_h_erc_rectangle_count_extend_old_witness_count_sum_start. ff_h_erc_rectangle_count_extend_old_witness_count_sum_start + S (0) = S ((S (0)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_old_witness_count_sum_start. ff_u_erc_rectangle_count_extend_old_witness_count_sum = ff_q_erc_rectangle_count_extend_old_witness_count_sum_start * S ((S (0)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum) + (0))) /\ ((((exists ff_h_erc_rectangle_count_extend_old_witness_count_sum_terminal. ff_h_erc_rectangle_count_extend_old_witness_count_sum_terminal + S (oldcount) = S ((S (k)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_old_witness_count_sum_terminal. ff_u_erc_rectangle_count_extend_old_witness_count_sum = ff_q_erc_rectangle_count_extend_old_witness_count_sum_terminal * S ((S (k)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum) + (oldcount))) /\ forall ff_i_erc_rectangle_count_extend_old_witness_count_sum. (exists ff_lt_erc_rectangle_count_extend_old_witness_count_sum_bound. ff_lt_erc_rectangle_count_extend_old_witness_count_sum_bound + S ff_i_erc_rectangle_count_extend_old_witness_count_sum = k) -> exists ff_a_erc_rectangle_count_extend_old_witness_count_sum ff_r_erc_rectangle_count_extend_old_witness_count_sum ff_s_erc_rectangle_count_extend_old_witness_count_sum. ((((exists ff_h_erc_rectangle_count_extend_old_witness_count_sum_summand. ff_h_erc_rectangle_count_extend_old_witness_count_sum_summand + S (ff_a_erc_rectangle_count_extend_old_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_old_witness_count_sum)) * erc_row_scale_rectangle_count_extend_old_witness)) /\ exists ff_q_erc_rectangle_count_extend_old_witness_count_sum_summand. erc_row_code_rectangle_count_extend_old_witness = ff_q_erc_rectangle_count_extend_old_witness_count_sum_summand * S ((S (ff_i_erc_rectangle_count_extend_old_witness_count_sum)) * erc_row_scale_rectangle_count_extend_old_witness) + (ff_a_erc_rectangle_count_extend_old_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_old_witness_count_sum_partial. ff_h_erc_rectangle_count_extend_old_witness_count_sum_partial + S (ff_r_erc_rectangle_count_extend_old_witness_count_sum) = S ((S (ff_i_erc_rectangle_count_extend_old_witness_count_sum)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_old_witness_count_sum_partial. ff_u_erc_rectangle_count_extend_old_witness_count_sum = ff_q_erc_rectangle_count_extend_old_witness_count_sum_partial * S ((S (ff_i_erc_rectangle_count_extend_old_witness_count_sum)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum) + (ff_r_erc_rectangle_count_extend_old_witness_count_sum))) /\ ((((exists ff_h_erc_rectangle_count_extend_old_witness_count_sum_successor. ff_h_erc_rectangle_count_extend_old_witness_count_sum_successor + S (ff_s_erc_rectangle_count_extend_old_witness_count_sum) = S ((S (S ff_i_erc_rectangle_count_extend_old_witness_count_sum)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum)) /\ exists ff_q_erc_rectangle_count_extend_old_witness_count_sum_successor. ff_u_erc_rectangle_count_extend_old_witness_count_sum = ff_q_erc_rectangle_count_extend_old_witness_count_sum_successor * S ((S (S ff_i_erc_rectangle_count_extend_old_witness_count_sum)) * ff_v_erc_rectangle_count_extend_old_witness_count_sum) + (ff_s_erc_rectangle_count_extend_old_witness_count_sum))) /\ ff_s_erc_rectangle_count_extend_old_witness_count_sum = ff_r_erc_rectangle_count_extend_old_witness_count_sum + ff_a_erc_rectangle_count_extend_old_witness_count_sum)))))) /\ (forall ff_i_erc_rectangle_count_extend_old_witness_count_bits. (exists ff_lt_erc_rectangle_count_extend_old_witness_count_bits_bound. ff_lt_erc_rectangle_count_extend_old_witness_count_bits_bound + S ff_i_erc_rectangle_count_extend_old_witness_count_bits = k) -> exists ff_bit_erc_rectangle_count_extend_old_witness_count_bits. ((((exists ff_h_erc_rectangle_count_extend_old_witness_count_bits_decoded. ff_h_erc_rectangle_count_extend_old_witness_count_bits_decoded + S (ff_bit_erc_rectangle_count_extend_old_witness_count_bits) = S ((S (ff_i_erc_rectangle_count_extend_old_witness_count_bits)) * erc_row_scale_rectangle_count_extend_old_witness)) /\ exists ff_q_erc_rectangle_count_extend_old_witness_count_bits_decoded. erc_row_code_rectangle_count_extend_old_witness = ff_q_erc_rectangle_count_extend_old_witness_count_bits_decoded * S ((S (ff_i_erc_rectangle_count_extend_old_witness_count_bits)) * erc_row_scale_rectangle_count_extend_old_witness) + (ff_bit_erc_rectangle_count_extend_old_witness_count_bits))) /\ (ff_bit_erc_rectangle_count_extend_old_witness_count_bits = 0 \/ ff_bit_erc_rectangle_count_extend_old_witness_count_bits = 1)))))))) - 0038
specialize hprefix i - 0039
apply hprefix - 0040
exact hsplit_right - 0041
cases hold - 0042
cases hold_witness - 0043
exists x3 - 0044
split - 0045
specialize beta_prefix_extend_witness_witness_right i - 0046
specialize beta_prefix_extend_witness_witness_right x3 - 0047
apply beta_prefix_extend_witness_witness_right - 0048
exact hsplit_right - 0049
exact hold_witness_left - 0050
exact hold_witness_right