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. ∀ n. ∀ f. ∀ b. ∀ c. ∀ d. ∀ e. ∀ z. ∀ v. Prime(p) → PowerValuation(p,S n,f) → PowerQuotPrefix(p,n,b,c,S n) → PowerQuotPrefix(p,S n,d,e,S n) → (∀ x. Lt(x,S n) → ∃ y. BetaAt(z,v,x,y) ∧ (y = 1 ∧ Lt(x,f) ∨ y = 0 ∧ Lt(f,S x))) → ∀ x. ∀ y. ∀ m. ∀ k. Lt(x,S n) → BetaAt(b,c,x,y) → BetaAt(z,v,x,m) → BetaAt(d,e,x,k) → k = y + mEvery purple notation token opens its conservative definition. Expanding the displayed statement recovers the exact first-order Peano-arithmetic formula checked by the unchanged kernel.
Definitions used by this theorem
In the theorem statement
12 occurrences
In local proof propositions
10 occurrences
Exact expanded native-PA statement
forall p n f b c d e z v. ((~(p = 1) /\ forall frm_prime_left_legendre_successor_prime frm_prime_right_legendre_successor_prime. p = frm_prime_left_legendre_successor_prime * frm_prime_right_legendre_successor_prime -> frm_prime_left_legendre_successor_prime = 1 \/ frm_prime_right_legendre_successor_prime = 1)) -> ((((exists blsr_le_gap_legendre_successor_pointwise_valuation_exponent_bound. blsr_le_gap_legendre_successor_pointwise_valuation_exponent_bound + (f) = (S n)) /\ (exists bpvi_result_legendre_successor_pointwise_valuation_selected. ((exists bpvi_b_legendre_successor_pointwise_valuation_selected_power bpvi_c_legendre_successor_pointwise_valuation_selected_power. ((forall bpvi_i_legendre_successor_pointwise_valuation_selected_power. (exists bpvi_repeat_gap_legendre_successor_pointwise_valuation_selected_power. bpvi_repeat_gap_legendre_successor_pointwise_valuation_selected_power + S bpvi_i_legendre_successor_pointwise_valuation_selected_power = f) -> (((exists bpvi_h_legendre_successor_pointwise_valuation_selected_power_repeat. bpvi_h_legendre_successor_pointwise_valuation_selected_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_pointwise_valuation_selected_power)) * bpvi_c_legendre_successor_pointwise_valuation_selected_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_selected_power_repeat. bpvi_b_legendre_successor_pointwise_valuation_selected_power = bpvi_q_legendre_successor_pointwise_valuation_selected_power_repeat * S ((S (bpvi_i_legendre_successor_pointwise_valuation_selected_power)) * bpvi_c_legendre_successor_pointwise_valuation_selected_power) + (p)))) /\ (exists bpvi_u_legendre_successor_pointwise_valuation_selected_power bpvi_v_legendre_successor_pointwise_valuation_selected_power. ((((exists bpvi_h_legendre_successor_pointwise_valuation_selected_power_start. bpvi_h_legendre_successor_pointwise_valuation_selected_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_selected_power_start. bpvi_u_legendre_successor_pointwise_valuation_selected_power = bpvi_q_legendre_successor_pointwise_valuation_selected_power_start * S ((S (0)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_pointwise_valuation_selected_power_terminal. bpvi_h_legendre_successor_pointwise_valuation_selected_power_terminal + S (bpvi_result_legendre_successor_pointwise_valuation_selected) = S ((S (f)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_selected_power_terminal. bpvi_u_legendre_successor_pointwise_valuation_selected_power = bpvi_q_legendre_successor_pointwise_valuation_selected_power_terminal * S ((S (f)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power) + (bpvi_result_legendre_successor_pointwise_valuation_selected))) /\ forall bpvi_j_legendre_successor_pointwise_valuation_selected_power. (exists bpvi_product_gap_legendre_successor_pointwise_valuation_selected_power. bpvi_product_gap_legendre_successor_pointwise_valuation_selected_power + S bpvi_j_legendre_successor_pointwise_valuation_selected_power = f) -> exists bpvi_factor_legendre_successor_pointwise_valuation_selected_power bpvi_partial_legendre_successor_pointwise_valuation_selected_power bpvi_successor_legendre_successor_pointwise_valuation_selected_power. ((((exists bpvi_h_legendre_successor_pointwise_valuation_selected_power_factor. bpvi_h_legendre_successor_pointwise_valuation_selected_power_factor + S (bpvi_factor_legendre_successor_pointwise_valuation_selected_power) = S ((S (bpvi_j_legendre_successor_pointwise_valuation_selected_power)) * bpvi_c_legendre_successor_pointwise_valuation_selected_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_selected_power_factor. bpvi_b_legendre_successor_pointwise_valuation_selected_power = bpvi_q_legendre_successor_pointwise_valuation_selected_power_factor * S ((S (bpvi_j_legendre_successor_pointwise_valuation_selected_power)) * bpvi_c_legendre_successor_pointwise_valuation_selected_power) + (bpvi_factor_legendre_successor_pointwise_valuation_selected_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_valuation_selected_power_partial. bpvi_h_legendre_successor_pointwise_valuation_selected_power_partial + S (bpvi_partial_legendre_successor_pointwise_valuation_selected_power) = S ((S (bpvi_j_legendre_successor_pointwise_valuation_selected_power)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_selected_power_partial. bpvi_u_legendre_successor_pointwise_valuation_selected_power = bpvi_q_legendre_successor_pointwise_valuation_selected_power_partial * S ((S (bpvi_j_legendre_successor_pointwise_valuation_selected_power)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power) + (bpvi_partial_legendre_successor_pointwise_valuation_selected_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_valuation_selected_power_successor. bpvi_h_legendre_successor_pointwise_valuation_selected_power_successor + S (bpvi_successor_legendre_successor_pointwise_valuation_selected_power) = S ((S (S bpvi_j_legendre_successor_pointwise_valuation_selected_power)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_selected_power_successor. bpvi_u_legendre_successor_pointwise_valuation_selected_power = bpvi_q_legendre_successor_pointwise_valuation_selected_power_successor * S ((S (S bpvi_j_legendre_successor_pointwise_valuation_selected_power)) * bpvi_v_legendre_successor_pointwise_valuation_selected_power) + (bpvi_successor_legendre_successor_pointwise_valuation_selected_power))) /\ bpvi_successor_legendre_successor_pointwise_valuation_selected_power = bpvi_partial_legendre_successor_pointwise_valuation_selected_power * bpvi_factor_legendre_successor_pointwise_valuation_selected_power)))))))) /\ exists bpvi_divisor_factor_legendre_successor_pointwise_valuation_selected. S n = bpvi_result_legendre_successor_pointwise_valuation_selected * bpvi_divisor_factor_legendre_successor_pointwise_valuation_selected))) /\ forall blsr_candidate_legendre_successor_pointwise_valuation. (exists blsr_le_gap_legendre_successor_pointwise_valuation_candidate_bound. blsr_le_gap_legendre_successor_pointwise_valuation_candidate_bound + (blsr_candidate_legendre_successor_pointwise_valuation) = (S n)) -> (exists bpvi_result_legendre_successor_pointwise_valuation_candidate. ((exists bpvi_b_legendre_successor_pointwise_valuation_candidate_power bpvi_c_legendre_successor_pointwise_valuation_candidate_power. ((forall bpvi_i_legendre_successor_pointwise_valuation_candidate_power. (exists bpvi_repeat_gap_legendre_successor_pointwise_valuation_candidate_power. bpvi_repeat_gap_legendre_successor_pointwise_valuation_candidate_power + S bpvi_i_legendre_successor_pointwise_valuation_candidate_power = blsr_candidate_legendre_successor_pointwise_valuation) -> (((exists bpvi_h_legendre_successor_pointwise_valuation_candidate_power_repeat. bpvi_h_legendre_successor_pointwise_valuation_candidate_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_c_legendre_successor_pointwise_valuation_candidate_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_candidate_power_repeat. bpvi_b_legendre_successor_pointwise_valuation_candidate_power = bpvi_q_legendre_successor_pointwise_valuation_candidate_power_repeat * S ((S (bpvi_i_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_c_legendre_successor_pointwise_valuation_candidate_power) + (p)))) /\ (exists bpvi_u_legendre_successor_pointwise_valuation_candidate_power bpvi_v_legendre_successor_pointwise_valuation_candidate_power. ((((exists bpvi_h_legendre_successor_pointwise_valuation_candidate_power_start. bpvi_h_legendre_successor_pointwise_valuation_candidate_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_candidate_power_start. bpvi_u_legendre_successor_pointwise_valuation_candidate_power = bpvi_q_legendre_successor_pointwise_valuation_candidate_power_start * S ((S (0)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_pointwise_valuation_candidate_power_terminal. bpvi_h_legendre_successor_pointwise_valuation_candidate_power_terminal + S (bpvi_result_legendre_successor_pointwise_valuation_candidate) = S ((S (blsr_candidate_legendre_successor_pointwise_valuation)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_candidate_power_terminal. bpvi_u_legendre_successor_pointwise_valuation_candidate_power = bpvi_q_legendre_successor_pointwise_valuation_candidate_power_terminal * S ((S (blsr_candidate_legendre_successor_pointwise_valuation)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power) + (bpvi_result_legendre_successor_pointwise_valuation_candidate))) /\ forall bpvi_j_legendre_successor_pointwise_valuation_candidate_power. (exists bpvi_product_gap_legendre_successor_pointwise_valuation_candidate_power. bpvi_product_gap_legendre_successor_pointwise_valuation_candidate_power + S bpvi_j_legendre_successor_pointwise_valuation_candidate_power = blsr_candidate_legendre_successor_pointwise_valuation) -> exists bpvi_factor_legendre_successor_pointwise_valuation_candidate_power bpvi_partial_legendre_successor_pointwise_valuation_candidate_power bpvi_successor_legendre_successor_pointwise_valuation_candidate_power. ((((exists bpvi_h_legendre_successor_pointwise_valuation_candidate_power_factor. bpvi_h_legendre_successor_pointwise_valuation_candidate_power_factor + S (bpvi_factor_legendre_successor_pointwise_valuation_candidate_power) = S ((S (bpvi_j_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_c_legendre_successor_pointwise_valuation_candidate_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_candidate_power_factor. bpvi_b_legendre_successor_pointwise_valuation_candidate_power = bpvi_q_legendre_successor_pointwise_valuation_candidate_power_factor * S ((S (bpvi_j_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_c_legendre_successor_pointwise_valuation_candidate_power) + (bpvi_factor_legendre_successor_pointwise_valuation_candidate_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_valuation_candidate_power_partial. bpvi_h_legendre_successor_pointwise_valuation_candidate_power_partial + S (bpvi_partial_legendre_successor_pointwise_valuation_candidate_power) = S ((S (bpvi_j_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_candidate_power_partial. bpvi_u_legendre_successor_pointwise_valuation_candidate_power = bpvi_q_legendre_successor_pointwise_valuation_candidate_power_partial * S ((S (bpvi_j_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power) + (bpvi_partial_legendre_successor_pointwise_valuation_candidate_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_valuation_candidate_power_successor. bpvi_h_legendre_successor_pointwise_valuation_candidate_power_successor + S (bpvi_successor_legendre_successor_pointwise_valuation_candidate_power) = S ((S (S bpvi_j_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power)) /\ exists bpvi_q_legendre_successor_pointwise_valuation_candidate_power_successor. bpvi_u_legendre_successor_pointwise_valuation_candidate_power = bpvi_q_legendre_successor_pointwise_valuation_candidate_power_successor * S ((S (S bpvi_j_legendre_successor_pointwise_valuation_candidate_power)) * bpvi_v_legendre_successor_pointwise_valuation_candidate_power) + (bpvi_successor_legendre_successor_pointwise_valuation_candidate_power))) /\ bpvi_successor_legendre_successor_pointwise_valuation_candidate_power = bpvi_partial_legendre_successor_pointwise_valuation_candidate_power * bpvi_factor_legendre_successor_pointwise_valuation_candidate_power)))))))) /\ exists bpvi_divisor_factor_legendre_successor_pointwise_valuation_candidate. S n = bpvi_result_legendre_successor_pointwise_valuation_candidate * bpvi_divisor_factor_legendre_successor_pointwise_valuation_candidate)) -> (exists blsr_le_gap_legendre_successor_pointwise_valuation_maximal. blsr_le_gap_legendre_successor_pointwise_valuation_maximal + (blsr_candidate_legendre_successor_pointwise_valuation) = (f)))) -> (forall bls_index_legendre_successor_pointwise_old. (exists bls_gap_legendre_successor_pointwise_old_bound. bls_gap_legendre_successor_pointwise_old_bound + S (bls_index_legendre_successor_pointwise_old) = (S n)) -> exists bls_power_legendre_successor_pointwise_old bls_quotient_legendre_successor_pointwise_old bls_remainder_legendre_successor_pointwise_old. ((exists bpvi_b_bls_legendre_successor_pointwise_old_power bpvi_c_bls_legendre_successor_pointwise_old_power. ((forall bpvi_i_bls_legendre_successor_pointwise_old_power. (exists bpvi_repeat_gap_bls_legendre_successor_pointwise_old_power. bpvi_repeat_gap_bls_legendre_successor_pointwise_old_power + S bpvi_i_bls_legendre_successor_pointwise_old_power = S bls_index_legendre_successor_pointwise_old) -> (((exists bpvi_h_bls_legendre_successor_pointwise_old_power_repeat. bpvi_h_bls_legendre_successor_pointwise_old_power_repeat + S (p) = S ((S (bpvi_i_bls_legendre_successor_pointwise_old_power)) * bpvi_c_bls_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_old_power_repeat. bpvi_b_bls_legendre_successor_pointwise_old_power = bpvi_q_bls_legendre_successor_pointwise_old_power_repeat * S ((S (bpvi_i_bls_legendre_successor_pointwise_old_power)) * bpvi_c_bls_legendre_successor_pointwise_old_power) + (p)))) /\ (exists bpvi_u_bls_legendre_successor_pointwise_old_power bpvi_v_bls_legendre_successor_pointwise_old_power. ((((exists bpvi_h_bls_legendre_successor_pointwise_old_power_start. bpvi_h_bls_legendre_successor_pointwise_old_power_start + S (1) = S ((S (0)) * bpvi_v_bls_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_old_power_start. bpvi_u_bls_legendre_successor_pointwise_old_power = bpvi_q_bls_legendre_successor_pointwise_old_power_start * S ((S (0)) * bpvi_v_bls_legendre_successor_pointwise_old_power) + (1))) /\ ((((exists bpvi_h_bls_legendre_successor_pointwise_old_power_terminal. bpvi_h_bls_legendre_successor_pointwise_old_power_terminal + S (bls_power_legendre_successor_pointwise_old) = S ((S (S bls_index_legendre_successor_pointwise_old)) * bpvi_v_bls_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_old_power_terminal. bpvi_u_bls_legendre_successor_pointwise_old_power = bpvi_q_bls_legendre_successor_pointwise_old_power_terminal * S ((S (S bls_index_legendre_successor_pointwise_old)) * bpvi_v_bls_legendre_successor_pointwise_old_power) + (bls_power_legendre_successor_pointwise_old))) /\ forall bpvi_j_bls_legendre_successor_pointwise_old_power. (exists bpvi_product_gap_bls_legendre_successor_pointwise_old_power. bpvi_product_gap_bls_legendre_successor_pointwise_old_power + S bpvi_j_bls_legendre_successor_pointwise_old_power = S bls_index_legendre_successor_pointwise_old) -> exists bpvi_factor_bls_legendre_successor_pointwise_old_power bpvi_partial_bls_legendre_successor_pointwise_old_power bpvi_successor_bls_legendre_successor_pointwise_old_power. ((((exists bpvi_h_bls_legendre_successor_pointwise_old_power_factor. bpvi_h_bls_legendre_successor_pointwise_old_power_factor + S (bpvi_factor_bls_legendre_successor_pointwise_old_power) = S ((S (bpvi_j_bls_legendre_successor_pointwise_old_power)) * bpvi_c_bls_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_old_power_factor. bpvi_b_bls_legendre_successor_pointwise_old_power = bpvi_q_bls_legendre_successor_pointwise_old_power_factor * S ((S (bpvi_j_bls_legendre_successor_pointwise_old_power)) * bpvi_c_bls_legendre_successor_pointwise_old_power) + (bpvi_factor_bls_legendre_successor_pointwise_old_power))) /\ ((((exists bpvi_h_bls_legendre_successor_pointwise_old_power_partial. bpvi_h_bls_legendre_successor_pointwise_old_power_partial + S (bpvi_partial_bls_legendre_successor_pointwise_old_power) = S ((S (bpvi_j_bls_legendre_successor_pointwise_old_power)) * bpvi_v_bls_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_old_power_partial. bpvi_u_bls_legendre_successor_pointwise_old_power = bpvi_q_bls_legendre_successor_pointwise_old_power_partial * S ((S (bpvi_j_bls_legendre_successor_pointwise_old_power)) * bpvi_v_bls_legendre_successor_pointwise_old_power) + (bpvi_partial_bls_legendre_successor_pointwise_old_power))) /\ ((((exists bpvi_h_bls_legendre_successor_pointwise_old_power_successor. bpvi_h_bls_legendre_successor_pointwise_old_power_successor + S (bpvi_successor_bls_legendre_successor_pointwise_old_power) = S ((S (S bpvi_j_bls_legendre_successor_pointwise_old_power)) * bpvi_v_bls_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_old_power_successor. bpvi_u_bls_legendre_successor_pointwise_old_power = bpvi_q_bls_legendre_successor_pointwise_old_power_successor * S ((S (S bpvi_j_bls_legendre_successor_pointwise_old_power)) * bpvi_v_bls_legendre_successor_pointwise_old_power) + (bpvi_successor_bls_legendre_successor_pointwise_old_power))) /\ bpvi_successor_bls_legendre_successor_pointwise_old_power = bpvi_partial_bls_legendre_successor_pointwise_old_power * bpvi_factor_bls_legendre_successor_pointwise_old_power)))))))) /\ ((((exists ff_h_bls_legendre_successor_pointwise_old_quotient_entry. ff_h_bls_legendre_successor_pointwise_old_quotient_entry + S (bls_quotient_legendre_successor_pointwise_old) = S ((S (bls_index_legendre_successor_pointwise_old)) * c)) /\ exists ff_q_bls_legendre_successor_pointwise_old_quotient_entry. b = ff_q_bls_legendre_successor_pointwise_old_quotient_entry * S ((S (bls_index_legendre_successor_pointwise_old)) * c) + (bls_quotient_legendre_successor_pointwise_old))) /\ ((n = bls_power_legendre_successor_pointwise_old * bls_quotient_legendre_successor_pointwise_old + bls_remainder_legendre_successor_pointwise_old /\ exists bls_remainder_gap_legendre_successor_pointwise_old_division. bls_remainder_gap_legendre_successor_pointwise_old_division + S (bls_remainder_legendre_successor_pointwise_old) = bls_power_legendre_successor_pointwise_old))))) -> (forall bls_index_legendre_successor_pointwise_new. (exists bls_gap_legendre_successor_pointwise_new_bound. bls_gap_legendre_successor_pointwise_new_bound + S (bls_index_legendre_successor_pointwise_new) = (S n)) -> exists bls_power_legendre_successor_pointwise_new bls_quotient_legendre_successor_pointwise_new bls_remainder_legendre_successor_pointwise_new. ((exists bpvi_b_bls_legendre_successor_pointwise_new_power bpvi_c_bls_legendre_successor_pointwise_new_power. ((forall bpvi_i_bls_legendre_successor_pointwise_new_power. (exists bpvi_repeat_gap_bls_legendre_successor_pointwise_new_power. bpvi_repeat_gap_bls_legendre_successor_pointwise_new_power + S bpvi_i_bls_legendre_successor_pointwise_new_power = S bls_index_legendre_successor_pointwise_new) -> (((exists bpvi_h_bls_legendre_successor_pointwise_new_power_repeat. bpvi_h_bls_legendre_successor_pointwise_new_power_repeat + S (p) = S ((S (bpvi_i_bls_legendre_successor_pointwise_new_power)) * bpvi_c_bls_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_new_power_repeat. bpvi_b_bls_legendre_successor_pointwise_new_power = bpvi_q_bls_legendre_successor_pointwise_new_power_repeat * S ((S (bpvi_i_bls_legendre_successor_pointwise_new_power)) * bpvi_c_bls_legendre_successor_pointwise_new_power) + (p)))) /\ (exists bpvi_u_bls_legendre_successor_pointwise_new_power bpvi_v_bls_legendre_successor_pointwise_new_power. ((((exists bpvi_h_bls_legendre_successor_pointwise_new_power_start. bpvi_h_bls_legendre_successor_pointwise_new_power_start + S (1) = S ((S (0)) * bpvi_v_bls_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_new_power_start. bpvi_u_bls_legendre_successor_pointwise_new_power = bpvi_q_bls_legendre_successor_pointwise_new_power_start * S ((S (0)) * bpvi_v_bls_legendre_successor_pointwise_new_power) + (1))) /\ ((((exists bpvi_h_bls_legendre_successor_pointwise_new_power_terminal. bpvi_h_bls_legendre_successor_pointwise_new_power_terminal + S (bls_power_legendre_successor_pointwise_new) = S ((S (S bls_index_legendre_successor_pointwise_new)) * bpvi_v_bls_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_new_power_terminal. bpvi_u_bls_legendre_successor_pointwise_new_power = bpvi_q_bls_legendre_successor_pointwise_new_power_terminal * S ((S (S bls_index_legendre_successor_pointwise_new)) * bpvi_v_bls_legendre_successor_pointwise_new_power) + (bls_power_legendre_successor_pointwise_new))) /\ forall bpvi_j_bls_legendre_successor_pointwise_new_power. (exists bpvi_product_gap_bls_legendre_successor_pointwise_new_power. bpvi_product_gap_bls_legendre_successor_pointwise_new_power + S bpvi_j_bls_legendre_successor_pointwise_new_power = S bls_index_legendre_successor_pointwise_new) -> exists bpvi_factor_bls_legendre_successor_pointwise_new_power bpvi_partial_bls_legendre_successor_pointwise_new_power bpvi_successor_bls_legendre_successor_pointwise_new_power. ((((exists bpvi_h_bls_legendre_successor_pointwise_new_power_factor. bpvi_h_bls_legendre_successor_pointwise_new_power_factor + S (bpvi_factor_bls_legendre_successor_pointwise_new_power) = S ((S (bpvi_j_bls_legendre_successor_pointwise_new_power)) * bpvi_c_bls_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_new_power_factor. bpvi_b_bls_legendre_successor_pointwise_new_power = bpvi_q_bls_legendre_successor_pointwise_new_power_factor * S ((S (bpvi_j_bls_legendre_successor_pointwise_new_power)) * bpvi_c_bls_legendre_successor_pointwise_new_power) + (bpvi_factor_bls_legendre_successor_pointwise_new_power))) /\ ((((exists bpvi_h_bls_legendre_successor_pointwise_new_power_partial. bpvi_h_bls_legendre_successor_pointwise_new_power_partial + S (bpvi_partial_bls_legendre_successor_pointwise_new_power) = S ((S (bpvi_j_bls_legendre_successor_pointwise_new_power)) * bpvi_v_bls_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_new_power_partial. bpvi_u_bls_legendre_successor_pointwise_new_power = bpvi_q_bls_legendre_successor_pointwise_new_power_partial * S ((S (bpvi_j_bls_legendre_successor_pointwise_new_power)) * bpvi_v_bls_legendre_successor_pointwise_new_power) + (bpvi_partial_bls_legendre_successor_pointwise_new_power))) /\ ((((exists bpvi_h_bls_legendre_successor_pointwise_new_power_successor. bpvi_h_bls_legendre_successor_pointwise_new_power_successor + S (bpvi_successor_bls_legendre_successor_pointwise_new_power) = S ((S (S bpvi_j_bls_legendre_successor_pointwise_new_power)) * bpvi_v_bls_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_bls_legendre_successor_pointwise_new_power_successor. bpvi_u_bls_legendre_successor_pointwise_new_power = bpvi_q_bls_legendre_successor_pointwise_new_power_successor * S ((S (S bpvi_j_bls_legendre_successor_pointwise_new_power)) * bpvi_v_bls_legendre_successor_pointwise_new_power) + (bpvi_successor_bls_legendre_successor_pointwise_new_power))) /\ bpvi_successor_bls_legendre_successor_pointwise_new_power = bpvi_partial_bls_legendre_successor_pointwise_new_power * bpvi_factor_bls_legendre_successor_pointwise_new_power)))))))) /\ ((((exists ff_h_bls_legendre_successor_pointwise_new_quotient_entry. ff_h_bls_legendre_successor_pointwise_new_quotient_entry + S (bls_quotient_legendre_successor_pointwise_new) = S ((S (bls_index_legendre_successor_pointwise_new)) * e)) /\ exists ff_q_bls_legendre_successor_pointwise_new_quotient_entry. d = ff_q_bls_legendre_successor_pointwise_new_quotient_entry * S ((S (bls_index_legendre_successor_pointwise_new)) * e) + (bls_quotient_legendre_successor_pointwise_new))) /\ ((S n = bls_power_legendre_successor_pointwise_new * bls_quotient_legendre_successor_pointwise_new + bls_remainder_legendre_successor_pointwise_new /\ exists bls_remainder_gap_legendre_successor_pointwise_new_division. bls_remainder_gap_legendre_successor_pointwise_new_division + S (bls_remainder_legendre_successor_pointwise_new) = bls_power_legendre_successor_pointwise_new))))) -> (forall eis_index_legendre_successor_pointwise_threshold. (exists eis_lt_gap_legendre_successor_pointwise_threshold_bound. eis_lt_gap_legendre_successor_pointwise_threshold_bound + S (eis_index_legendre_successor_pointwise_threshold) = S n) -> exists eis_bit_legendre_successor_pointwise_threshold. ((((exists ff_h_eis_legendre_successor_pointwise_threshold_decoded. ff_h_eis_legendre_successor_pointwise_threshold_decoded + S (eis_bit_legendre_successor_pointwise_threshold) = S ((S (eis_index_legendre_successor_pointwise_threshold)) * v)) /\ exists ff_q_eis_legendre_successor_pointwise_threshold_decoded. z = ff_q_eis_legendre_successor_pointwise_threshold_decoded * S ((S (eis_index_legendre_successor_pointwise_threshold)) * v) + (eis_bit_legendre_successor_pointwise_threshold))) /\ (((eis_bit_legendre_successor_pointwise_threshold = 1 /\ (exists eis_le_gap_legendre_successor_pointwise_threshold_choice_inside. eis_le_gap_legendre_successor_pointwise_threshold_choice_inside + (S eis_index_legendre_successor_pointwise_threshold) = f)) \/ (eis_bit_legendre_successor_pointwise_threshold = 0 /\ (exists eis_lt_gap_legendre_successor_pointwise_threshold_choice_outside. eis_lt_gap_legendre_successor_pointwise_threshold_choice_outside + S (f) = S eis_index_legendre_successor_pointwise_threshold)))))) -> forall i a bit s. (exists blsr_lt_gap_legendre_successor_pointwise_index. blsr_lt_gap_legendre_successor_pointwise_index + S (i) = (S n)) -> (((exists ff_h_legendre_successor_pointwise_old_entry. ff_h_legendre_successor_pointwise_old_entry + S (a) = S ((S (i)) * c)) /\ exists ff_q_legendre_successor_pointwise_old_entry. b = ff_q_legendre_successor_pointwise_old_entry * S ((S (i)) * c) + (a))) -> (((exists ff_h_legendre_successor_pointwise_bit_entry. ff_h_legendre_successor_pointwise_bit_entry + S (bit) = S ((S (i)) * v)) /\ exists ff_q_legendre_successor_pointwise_bit_entry. z = ff_q_legendre_successor_pointwise_bit_entry * S ((S (i)) * v) + (bit))) -> (((exists ff_h_legendre_successor_pointwise_new_entry. ff_h_legendre_successor_pointwise_new_entry + S (s) = S ((S (i)) * e)) /\ exists ff_q_legendre_successor_pointwise_new_entry. d = ff_q_legendre_successor_pointwise_new_entry * S ((S (i)) * e) + (s))) -> s = a + bitProof neighborhood
Direct theorem prerequisites
BT00SJ power_quotient_prefix_decoded_divrem BT00JB eisenstein_initial_segment_decoded_choice BT00SI valuation_threshold_bit_decides_power_divides BT0082 pow_functional BT00SH division_successor_quotient_by_bit BT000C succ_ne_zeroDirect theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. Every changed line has an exact-AST conservative-expansion receipt; the kernel still receives the immutable original tactic script.
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 (6)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–20
03Fix variables and assumptionsL21–22
04Establish holdL23–32
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply power quotient prefix decoded divrem.
- L23
have hold : ∃ D. ∃ r. Pow(p,S i,D) ∧ DivRem(n,D,a,r)Definitions: Pow(p,S i,D)DivRem(n,D,a,r)Original native command in the exact edition - L24
specialize power_quotient_prefix_decoded_divrem p - L25
specialize power_quotient_prefix_decoded_divrem n - L26
specialize power_quotient_prefix_decoded_divrem b - L27
specialize power_quotient_prefix_decoded_divrem c - L28
specialize power_quotient_prefix_decoded_divrem (S n) - L29
specialize power_quotient_prefix_decoded_divrem i - L30
specialize power_quotient_prefix_decoded_divrem a - L31
apply power_quotient_prefix_decoded_divrem - L32
exact holdprefix
05Use earlier factsL33–34
06Establish hnewL35–44
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply power quotient prefix decoded divrem.
- L35
have hnew : ∃ E. ∃ t. Pow(p,S i,E) ∧ DivRem(S n,E,s,t)Definitions: Pow(p,S i,E)DivRem(S n,E,s,t)Original native command in the exact edition - L36
specialize power_quotient_prefix_decoded_divrem p - L37
specialize power_quotient_prefix_decoded_divrem (S n) - L38
specialize power_quotient_prefix_decoded_divrem d - L39
specialize power_quotient_prefix_decoded_divrem e - L40
specialize power_quotient_prefix_decoded_divrem (S n) - L41
specialize power_quotient_prefix_decoded_divrem i - L42
specialize power_quotient_prefix_decoded_divrem s - L43
apply power_quotient_prefix_decoded_divrem - L44
exact hnewprefix
07Use earlier factsL45–46
08Separate the logical casesL47–52
09Establish hpowerL53–62
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow functional.
- L53
have hpower : x = x2 - L54
specialize pow_functional p - L55
specialize pow_functional (S i) - L56
specialize pow_functional x - L57
specialize pow_functional x2 - L58
apply pow_functional - L59
exact hold_witness_witness_left - L60
exact hnew_witness_witness_left - L61
rewrite <- hpower at hnew_witness_witness_right - L62
rewrite <- hpower at hnew_witness_witness_right
10Establish hchoiceL63–72
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply eisenstein initial segment decoded choice.
- L63
have hchoice : bit = 1 ∧ Lt(i,f) ∨ bit = 0 ∧ Lt(f,S i)Definitions: Lt(i,f)Lt(f,S i)Original native command in the exact edition - L64
specialize eisenstein_initial_segment_decoded_choice f - L65
specialize eisenstein_initial_segment_decoded_choice z - L66
specialize eisenstein_initial_segment_decoded_choice v - L67
specialize eisenstein_initial_segment_decoded_choice (S n) - L68
specialize eisenstein_initial_segment_decoded_choice i - L69
specialize eisenstein_initial_segment_decoded_choice bit - L70
apply eisenstein_initial_segment_decoded_choice - L71
exact hthreshold - L72
exact hi
11Use earlier factsL73–73
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L73
exact hbit
12Establish hdecisionL74–83
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply valuation threshold bit decides power divides.
- L74
have hdecision : bit = 1 ∧ PowerDivides(p,S i,S n) ∨ bit = 0 ∧ ¬PowerDivides(p,S i,S n)Definitions: PowerDivides(p,S i,S n)Original native command in the exact edition - L75
specialize valuation_threshold_bit_decides_power_divides p - L76
specialize valuation_threshold_bit_decides_power_divides (S n) - L77
specialize valuation_threshold_bit_decides_power_divides f - L78
specialize valuation_threshold_bit_decides_power_divides i - L79
specialize valuation_threshold_bit_decides_power_divides bit - L80
apply valuation_threshold_bit_decides_power_divides - L81
exact hp - L82
specialize succ_ne_zero n - L83
exact succ_ne_zero
13Use earlier factsL84–85
14Establish hmultiple_bitL86–86
Establish this local claim before using it. It is not an additional assumption.
- L86
have hmultiple_bit : bit = 1 ∧ Dvd(x,S n) ∨ bit = 0 ∧ ¬Dvd(x,S n)Definitions: Dvd(x,S n)Original native command in the exact edition
15Separate the logical casesL87–90
16Use earlier factsL91–91
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L91
exact hdecision_left_left
17Separate the logical casesL92–94
18Establish hresultL95–102
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow functional.
19Separate the logical casesL103–103
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L103
cases hdecision_left_right_witness_right
20Construct an explicit witnessL104–104
Supply the displayed value, then prove that it has the required property.
- L104
exists x5
21Calculate and transport equalitiesL105–105
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L105
rewrite <- hresult
22Use earlier factsL106–106
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L106
exact hdecision_left_right_witness_right_witness
23Separate the logical casesL107–109
24Use earlier factsL110–110
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L110
exact hdecision_right_left
25Fix variables and assumptionsL111–111
Work with arbitrary variables or the premises of the current implication.
- L111
intro hmultiple
26Use earlier factsL112–112
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L112
apply hdecision_right_right
27Construct an explicit witnessL113–113
Supply the displayed value, then prove that it has the required property.
- L113
exists x
28Separate the logical casesL114–114
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L114
split
29Use earlier factsL115–124
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L115
exact hold_witness_witness_left - L116
exact hmultiple - L117
specialize division_successor_quotient_by_bit x - L118
specialize division_successor_quotient_by_bit n - L119
specialize division_successor_quotient_by_bit a - L120
specialize division_successor_quotient_by_bit x1 - L121
specialize division_successor_quotient_by_bit s - L122
specialize division_successor_quotient_by_bit x3 - L123
specialize division_successor_quotient_by_bit bit - L124
apply division_successor_quotient_by_bit
Original defined command ledger · 127 lines
- 0001
intro p - 0002
intro n - 0003
intro f - 0004
intro b - 0005
intro c - 0006
intro d - 0007
intro e - 0008
intro z - 0009
intro v - 0010
intro hp - 0011
intro hvaluation - 0012
intro holdprefix - 0013
intro hnewprefix - 0014
intro hthreshold - 0015
intro i - 0016
intro a - 0017
intro bit - 0018
intro s - 0019
intro hi - 0020
intro ha - 0021
intro hbit - 0022
intro hs - 0023
have hold : ∃ D. ∃ r. Pow(p,S i,D) ∧ DivRem(n,D,a,r)Exact native replay line
have hold : exists D r. ((exists bpvi_b_legendre_successor_pointwise_old_power bpvi_c_legendre_successor_pointwise_old_power. ((forall bpvi_i_legendre_successor_pointwise_old_power. (exists bpvi_repeat_gap_legendre_successor_pointwise_old_power. bpvi_repeat_gap_legendre_successor_pointwise_old_power + S bpvi_i_legendre_successor_pointwise_old_power = S i) -> (((exists bpvi_h_legendre_successor_pointwise_old_power_repeat. bpvi_h_legendre_successor_pointwise_old_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_pointwise_old_power)) * bpvi_c_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_legendre_successor_pointwise_old_power_repeat. bpvi_b_legendre_successor_pointwise_old_power = bpvi_q_legendre_successor_pointwise_old_power_repeat * S ((S (bpvi_i_legendre_successor_pointwise_old_power)) * bpvi_c_legendre_successor_pointwise_old_power) + (p)))) /\ (exists bpvi_u_legendre_successor_pointwise_old_power bpvi_v_legendre_successor_pointwise_old_power. ((((exists bpvi_h_legendre_successor_pointwise_old_power_start. bpvi_h_legendre_successor_pointwise_old_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_legendre_successor_pointwise_old_power_start. bpvi_u_legendre_successor_pointwise_old_power = bpvi_q_legendre_successor_pointwise_old_power_start * S ((S (0)) * bpvi_v_legendre_successor_pointwise_old_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_pointwise_old_power_terminal. bpvi_h_legendre_successor_pointwise_old_power_terminal + S (D) = S ((S (S i)) * bpvi_v_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_legendre_successor_pointwise_old_power_terminal. bpvi_u_legendre_successor_pointwise_old_power = bpvi_q_legendre_successor_pointwise_old_power_terminal * S ((S (S i)) * bpvi_v_legendre_successor_pointwise_old_power) + (D))) /\ forall bpvi_j_legendre_successor_pointwise_old_power. (exists bpvi_product_gap_legendre_successor_pointwise_old_power. bpvi_product_gap_legendre_successor_pointwise_old_power + S bpvi_j_legendre_successor_pointwise_old_power = S i) -> exists bpvi_factor_legendre_successor_pointwise_old_power bpvi_partial_legendre_successor_pointwise_old_power bpvi_successor_legendre_successor_pointwise_old_power. ((((exists bpvi_h_legendre_successor_pointwise_old_power_factor. bpvi_h_legendre_successor_pointwise_old_power_factor + S (bpvi_factor_legendre_successor_pointwise_old_power) = S ((S (bpvi_j_legendre_successor_pointwise_old_power)) * bpvi_c_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_legendre_successor_pointwise_old_power_factor. bpvi_b_legendre_successor_pointwise_old_power = bpvi_q_legendre_successor_pointwise_old_power_factor * S ((S (bpvi_j_legendre_successor_pointwise_old_power)) * bpvi_c_legendre_successor_pointwise_old_power) + (bpvi_factor_legendre_successor_pointwise_old_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_old_power_partial. bpvi_h_legendre_successor_pointwise_old_power_partial + S (bpvi_partial_legendre_successor_pointwise_old_power) = S ((S (bpvi_j_legendre_successor_pointwise_old_power)) * bpvi_v_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_legendre_successor_pointwise_old_power_partial. bpvi_u_legendre_successor_pointwise_old_power = bpvi_q_legendre_successor_pointwise_old_power_partial * S ((S (bpvi_j_legendre_successor_pointwise_old_power)) * bpvi_v_legendre_successor_pointwise_old_power) + (bpvi_partial_legendre_successor_pointwise_old_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_old_power_successor. bpvi_h_legendre_successor_pointwise_old_power_successor + S (bpvi_successor_legendre_successor_pointwise_old_power) = S ((S (S bpvi_j_legendre_successor_pointwise_old_power)) * bpvi_v_legendre_successor_pointwise_old_power)) /\ exists bpvi_q_legendre_successor_pointwise_old_power_successor. bpvi_u_legendre_successor_pointwise_old_power = bpvi_q_legendre_successor_pointwise_old_power_successor * S ((S (S bpvi_j_legendre_successor_pointwise_old_power)) * bpvi_v_legendre_successor_pointwise_old_power) + (bpvi_successor_legendre_successor_pointwise_old_power))) /\ bpvi_successor_legendre_successor_pointwise_old_power = bpvi_partial_legendre_successor_pointwise_old_power * bpvi_factor_legendre_successor_pointwise_old_power)))))))) /\ (((n) = (D) * (a) + (r) /\ exists blsr_lt_gap_legendre_successor_pointwise_old_division_bound. blsr_lt_gap_legendre_successor_pointwise_old_division_bound + S (r) = (D)))) - 0024
specialize power_quotient_prefix_decoded_divrem p - 0025
specialize power_quotient_prefix_decoded_divrem n - 0026
specialize power_quotient_prefix_decoded_divrem b - 0027
specialize power_quotient_prefix_decoded_divrem c - 0028
specialize power_quotient_prefix_decoded_divrem (S n) - 0029
specialize power_quotient_prefix_decoded_divrem i - 0030
specialize power_quotient_prefix_decoded_divrem a - 0031
apply power_quotient_prefix_decoded_divrem - 0032
exact holdprefix - 0033
exact hi - 0034
exact ha - 0035
have hnew : ∃ E. ∃ t. Pow(p,S i,E) ∧ DivRem(S n,E,s,t)Exact native replay line
have hnew : exists E t. ((exists bpvi_b_legendre_successor_pointwise_new_power bpvi_c_legendre_successor_pointwise_new_power. ((forall bpvi_i_legendre_successor_pointwise_new_power. (exists bpvi_repeat_gap_legendre_successor_pointwise_new_power. bpvi_repeat_gap_legendre_successor_pointwise_new_power + S bpvi_i_legendre_successor_pointwise_new_power = S i) -> (((exists bpvi_h_legendre_successor_pointwise_new_power_repeat. bpvi_h_legendre_successor_pointwise_new_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_pointwise_new_power)) * bpvi_c_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_legendre_successor_pointwise_new_power_repeat. bpvi_b_legendre_successor_pointwise_new_power = bpvi_q_legendre_successor_pointwise_new_power_repeat * S ((S (bpvi_i_legendre_successor_pointwise_new_power)) * bpvi_c_legendre_successor_pointwise_new_power) + (p)))) /\ (exists bpvi_u_legendre_successor_pointwise_new_power bpvi_v_legendre_successor_pointwise_new_power. ((((exists bpvi_h_legendre_successor_pointwise_new_power_start. bpvi_h_legendre_successor_pointwise_new_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_legendre_successor_pointwise_new_power_start. bpvi_u_legendre_successor_pointwise_new_power = bpvi_q_legendre_successor_pointwise_new_power_start * S ((S (0)) * bpvi_v_legendre_successor_pointwise_new_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_pointwise_new_power_terminal. bpvi_h_legendre_successor_pointwise_new_power_terminal + S (E) = S ((S (S i)) * bpvi_v_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_legendre_successor_pointwise_new_power_terminal. bpvi_u_legendre_successor_pointwise_new_power = bpvi_q_legendre_successor_pointwise_new_power_terminal * S ((S (S i)) * bpvi_v_legendre_successor_pointwise_new_power) + (E))) /\ forall bpvi_j_legendre_successor_pointwise_new_power. (exists bpvi_product_gap_legendre_successor_pointwise_new_power. bpvi_product_gap_legendre_successor_pointwise_new_power + S bpvi_j_legendre_successor_pointwise_new_power = S i) -> exists bpvi_factor_legendre_successor_pointwise_new_power bpvi_partial_legendre_successor_pointwise_new_power bpvi_successor_legendre_successor_pointwise_new_power. ((((exists bpvi_h_legendre_successor_pointwise_new_power_factor. bpvi_h_legendre_successor_pointwise_new_power_factor + S (bpvi_factor_legendre_successor_pointwise_new_power) = S ((S (bpvi_j_legendre_successor_pointwise_new_power)) * bpvi_c_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_legendre_successor_pointwise_new_power_factor. bpvi_b_legendre_successor_pointwise_new_power = bpvi_q_legendre_successor_pointwise_new_power_factor * S ((S (bpvi_j_legendre_successor_pointwise_new_power)) * bpvi_c_legendre_successor_pointwise_new_power) + (bpvi_factor_legendre_successor_pointwise_new_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_new_power_partial. bpvi_h_legendre_successor_pointwise_new_power_partial + S (bpvi_partial_legendre_successor_pointwise_new_power) = S ((S (bpvi_j_legendre_successor_pointwise_new_power)) * bpvi_v_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_legendre_successor_pointwise_new_power_partial. bpvi_u_legendre_successor_pointwise_new_power = bpvi_q_legendre_successor_pointwise_new_power_partial * S ((S (bpvi_j_legendre_successor_pointwise_new_power)) * bpvi_v_legendre_successor_pointwise_new_power) + (bpvi_partial_legendre_successor_pointwise_new_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_new_power_successor. bpvi_h_legendre_successor_pointwise_new_power_successor + S (bpvi_successor_legendre_successor_pointwise_new_power) = S ((S (S bpvi_j_legendre_successor_pointwise_new_power)) * bpvi_v_legendre_successor_pointwise_new_power)) /\ exists bpvi_q_legendre_successor_pointwise_new_power_successor. bpvi_u_legendre_successor_pointwise_new_power = bpvi_q_legendre_successor_pointwise_new_power_successor * S ((S (S bpvi_j_legendre_successor_pointwise_new_power)) * bpvi_v_legendre_successor_pointwise_new_power) + (bpvi_successor_legendre_successor_pointwise_new_power))) /\ bpvi_successor_legendre_successor_pointwise_new_power = bpvi_partial_legendre_successor_pointwise_new_power * bpvi_factor_legendre_successor_pointwise_new_power)))))))) /\ (((S n) = (E) * (s) + (t) /\ exists blsr_lt_gap_legendre_successor_pointwise_new_division_bound. blsr_lt_gap_legendre_successor_pointwise_new_division_bound + S (t) = (E)))) - 0036
specialize power_quotient_prefix_decoded_divrem p - 0037
specialize power_quotient_prefix_decoded_divrem (S n) - 0038
specialize power_quotient_prefix_decoded_divrem d - 0039
specialize power_quotient_prefix_decoded_divrem e - 0040
specialize power_quotient_prefix_decoded_divrem (S n) - 0041
specialize power_quotient_prefix_decoded_divrem i - 0042
specialize power_quotient_prefix_decoded_divrem s - 0043
apply power_quotient_prefix_decoded_divrem - 0044
exact hnewprefix - 0045
exact hi - 0046
exact hs - 0047
cases hold - 0048
cases hold_witness - 0049
cases hold_witness_witness - 0050
cases hnew - 0051
cases hnew_witness - 0052
cases hnew_witness_witness - 0053
have hpower : x = x2 - 0054
specialize pow_functional p - 0055
specialize pow_functional (S i) - 0056
specialize pow_functional x - 0057
specialize pow_functional x2 - 0058
apply pow_functional - 0059
exact hold_witness_witness_left - 0060
exact hnew_witness_witness_left - 0061
rewrite <- hpower at hnew_witness_witness_right - 0062
rewrite <- hpower at hnew_witness_witness_right - 0063
have hchoice : bit = 1 ∧ Lt(i,f) ∨ bit = 0 ∧ Lt(f,S i)Exact native replay line
have hchoice : ((bit = 1 /\ (exists eis_le_gap_legendre_successor_pointwise_choice_inside. eis_le_gap_legendre_successor_pointwise_choice_inside + (S i) = f)) \/ (bit = 0 /\ (exists eis_lt_gap_legendre_successor_pointwise_choice_outside. eis_lt_gap_legendre_successor_pointwise_choice_outside + S (f) = S i))) - 0064
specialize eisenstein_initial_segment_decoded_choice f - 0065
specialize eisenstein_initial_segment_decoded_choice z - 0066
specialize eisenstein_initial_segment_decoded_choice v - 0067
specialize eisenstein_initial_segment_decoded_choice (S n) - 0068
specialize eisenstein_initial_segment_decoded_choice i - 0069
specialize eisenstein_initial_segment_decoded_choice bit - 0070
apply eisenstein_initial_segment_decoded_choice - 0071
exact hthreshold - 0072
exact hi - 0073
exact hbit - 0074
have hdecision : bit = 1 ∧ PowerDivides(p,S i,S n) ∨ bit = 0 ∧ ¬PowerDivides(p,S i,S n)Exact native replay line
have hdecision : ((bit = 1 /\ exists bpvi_result_legendre_successor_pointwise_decision_left. ((exists bpvi_b_legendre_successor_pointwise_decision_left_power bpvi_c_legendre_successor_pointwise_decision_left_power. ((forall bpvi_i_legendre_successor_pointwise_decision_left_power. (exists bpvi_repeat_gap_legendre_successor_pointwise_decision_left_power. bpvi_repeat_gap_legendre_successor_pointwise_decision_left_power + S bpvi_i_legendre_successor_pointwise_decision_left_power = S i) -> (((exists bpvi_h_legendre_successor_pointwise_decision_left_power_repeat. bpvi_h_legendre_successor_pointwise_decision_left_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_pointwise_decision_left_power)) * bpvi_c_legendre_successor_pointwise_decision_left_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_left_power_repeat. bpvi_b_legendre_successor_pointwise_decision_left_power = bpvi_q_legendre_successor_pointwise_decision_left_power_repeat * S ((S (bpvi_i_legendre_successor_pointwise_decision_left_power)) * bpvi_c_legendre_successor_pointwise_decision_left_power) + (p)))) /\ (exists bpvi_u_legendre_successor_pointwise_decision_left_power bpvi_v_legendre_successor_pointwise_decision_left_power. ((((exists bpvi_h_legendre_successor_pointwise_decision_left_power_start. bpvi_h_legendre_successor_pointwise_decision_left_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_pointwise_decision_left_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_left_power_start. bpvi_u_legendre_successor_pointwise_decision_left_power = bpvi_q_legendre_successor_pointwise_decision_left_power_start * S ((S (0)) * bpvi_v_legendre_successor_pointwise_decision_left_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_pointwise_decision_left_power_terminal. bpvi_h_legendre_successor_pointwise_decision_left_power_terminal + S (bpvi_result_legendre_successor_pointwise_decision_left) = S ((S (S i)) * bpvi_v_legendre_successor_pointwise_decision_left_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_left_power_terminal. bpvi_u_legendre_successor_pointwise_decision_left_power = bpvi_q_legendre_successor_pointwise_decision_left_power_terminal * S ((S (S i)) * bpvi_v_legendre_successor_pointwise_decision_left_power) + (bpvi_result_legendre_successor_pointwise_decision_left))) /\ forall bpvi_j_legendre_successor_pointwise_decision_left_power. (exists bpvi_product_gap_legendre_successor_pointwise_decision_left_power. bpvi_product_gap_legendre_successor_pointwise_decision_left_power + S bpvi_j_legendre_successor_pointwise_decision_left_power = S i) -> exists bpvi_factor_legendre_successor_pointwise_decision_left_power bpvi_partial_legendre_successor_pointwise_decision_left_power bpvi_successor_legendre_successor_pointwise_decision_left_power. ((((exists bpvi_h_legendre_successor_pointwise_decision_left_power_factor. bpvi_h_legendre_successor_pointwise_decision_left_power_factor + S (bpvi_factor_legendre_successor_pointwise_decision_left_power) = S ((S (bpvi_j_legendre_successor_pointwise_decision_left_power)) * bpvi_c_legendre_successor_pointwise_decision_left_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_left_power_factor. bpvi_b_legendre_successor_pointwise_decision_left_power = bpvi_q_legendre_successor_pointwise_decision_left_power_factor * S ((S (bpvi_j_legendre_successor_pointwise_decision_left_power)) * bpvi_c_legendre_successor_pointwise_decision_left_power) + (bpvi_factor_legendre_successor_pointwise_decision_left_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_decision_left_power_partial. bpvi_h_legendre_successor_pointwise_decision_left_power_partial + S (bpvi_partial_legendre_successor_pointwise_decision_left_power) = S ((S (bpvi_j_legendre_successor_pointwise_decision_left_power)) * bpvi_v_legendre_successor_pointwise_decision_left_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_left_power_partial. bpvi_u_legendre_successor_pointwise_decision_left_power = bpvi_q_legendre_successor_pointwise_decision_left_power_partial * S ((S (bpvi_j_legendre_successor_pointwise_decision_left_power)) * bpvi_v_legendre_successor_pointwise_decision_left_power) + (bpvi_partial_legendre_successor_pointwise_decision_left_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_decision_left_power_successor. bpvi_h_legendre_successor_pointwise_decision_left_power_successor + S (bpvi_successor_legendre_successor_pointwise_decision_left_power) = S ((S (S bpvi_j_legendre_successor_pointwise_decision_left_power)) * bpvi_v_legendre_successor_pointwise_decision_left_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_left_power_successor. bpvi_u_legendre_successor_pointwise_decision_left_power = bpvi_q_legendre_successor_pointwise_decision_left_power_successor * S ((S (S bpvi_j_legendre_successor_pointwise_decision_left_power)) * bpvi_v_legendre_successor_pointwise_decision_left_power) + (bpvi_successor_legendre_successor_pointwise_decision_left_power))) /\ bpvi_successor_legendre_successor_pointwise_decision_left_power = bpvi_partial_legendre_successor_pointwise_decision_left_power * bpvi_factor_legendre_successor_pointwise_decision_left_power)))))))) /\ exists bpvi_divisor_factor_legendre_successor_pointwise_decision_left. S n = bpvi_result_legendre_successor_pointwise_decision_left * bpvi_divisor_factor_legendre_successor_pointwise_decision_left)) \/ (bit = 0 /\ ~(exists bpvi_result_legendre_successor_pointwise_decision_right. ((exists bpvi_b_legendre_successor_pointwise_decision_right_power bpvi_c_legendre_successor_pointwise_decision_right_power. ((forall bpvi_i_legendre_successor_pointwise_decision_right_power. (exists bpvi_repeat_gap_legendre_successor_pointwise_decision_right_power. bpvi_repeat_gap_legendre_successor_pointwise_decision_right_power + S bpvi_i_legendre_successor_pointwise_decision_right_power = S i) -> (((exists bpvi_h_legendre_successor_pointwise_decision_right_power_repeat. bpvi_h_legendre_successor_pointwise_decision_right_power_repeat + S (p) = S ((S (bpvi_i_legendre_successor_pointwise_decision_right_power)) * bpvi_c_legendre_successor_pointwise_decision_right_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_right_power_repeat. bpvi_b_legendre_successor_pointwise_decision_right_power = bpvi_q_legendre_successor_pointwise_decision_right_power_repeat * S ((S (bpvi_i_legendre_successor_pointwise_decision_right_power)) * bpvi_c_legendre_successor_pointwise_decision_right_power) + (p)))) /\ (exists bpvi_u_legendre_successor_pointwise_decision_right_power bpvi_v_legendre_successor_pointwise_decision_right_power. ((((exists bpvi_h_legendre_successor_pointwise_decision_right_power_start. bpvi_h_legendre_successor_pointwise_decision_right_power_start + S (1) = S ((S (0)) * bpvi_v_legendre_successor_pointwise_decision_right_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_right_power_start. bpvi_u_legendre_successor_pointwise_decision_right_power = bpvi_q_legendre_successor_pointwise_decision_right_power_start * S ((S (0)) * bpvi_v_legendre_successor_pointwise_decision_right_power) + (1))) /\ ((((exists bpvi_h_legendre_successor_pointwise_decision_right_power_terminal. bpvi_h_legendre_successor_pointwise_decision_right_power_terminal + S (bpvi_result_legendre_successor_pointwise_decision_right) = S ((S (S i)) * bpvi_v_legendre_successor_pointwise_decision_right_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_right_power_terminal. bpvi_u_legendre_successor_pointwise_decision_right_power = bpvi_q_legendre_successor_pointwise_decision_right_power_terminal * S ((S (S i)) * bpvi_v_legendre_successor_pointwise_decision_right_power) + (bpvi_result_legendre_successor_pointwise_decision_right))) /\ forall bpvi_j_legendre_successor_pointwise_decision_right_power. (exists bpvi_product_gap_legendre_successor_pointwise_decision_right_power. bpvi_product_gap_legendre_successor_pointwise_decision_right_power + S bpvi_j_legendre_successor_pointwise_decision_right_power = S i) -> exists bpvi_factor_legendre_successor_pointwise_decision_right_power bpvi_partial_legendre_successor_pointwise_decision_right_power bpvi_successor_legendre_successor_pointwise_decision_right_power. ((((exists bpvi_h_legendre_successor_pointwise_decision_right_power_factor. bpvi_h_legendre_successor_pointwise_decision_right_power_factor + S (bpvi_factor_legendre_successor_pointwise_decision_right_power) = S ((S (bpvi_j_legendre_successor_pointwise_decision_right_power)) * bpvi_c_legendre_successor_pointwise_decision_right_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_right_power_factor. bpvi_b_legendre_successor_pointwise_decision_right_power = bpvi_q_legendre_successor_pointwise_decision_right_power_factor * S ((S (bpvi_j_legendre_successor_pointwise_decision_right_power)) * bpvi_c_legendre_successor_pointwise_decision_right_power) + (bpvi_factor_legendre_successor_pointwise_decision_right_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_decision_right_power_partial. bpvi_h_legendre_successor_pointwise_decision_right_power_partial + S (bpvi_partial_legendre_successor_pointwise_decision_right_power) = S ((S (bpvi_j_legendre_successor_pointwise_decision_right_power)) * bpvi_v_legendre_successor_pointwise_decision_right_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_right_power_partial. bpvi_u_legendre_successor_pointwise_decision_right_power = bpvi_q_legendre_successor_pointwise_decision_right_power_partial * S ((S (bpvi_j_legendre_successor_pointwise_decision_right_power)) * bpvi_v_legendre_successor_pointwise_decision_right_power) + (bpvi_partial_legendre_successor_pointwise_decision_right_power))) /\ ((((exists bpvi_h_legendre_successor_pointwise_decision_right_power_successor. bpvi_h_legendre_successor_pointwise_decision_right_power_successor + S (bpvi_successor_legendre_successor_pointwise_decision_right_power) = S ((S (S bpvi_j_legendre_successor_pointwise_decision_right_power)) * bpvi_v_legendre_successor_pointwise_decision_right_power)) /\ exists bpvi_q_legendre_successor_pointwise_decision_right_power_successor. bpvi_u_legendre_successor_pointwise_decision_right_power = bpvi_q_legendre_successor_pointwise_decision_right_power_successor * S ((S (S bpvi_j_legendre_successor_pointwise_decision_right_power)) * bpvi_v_legendre_successor_pointwise_decision_right_power) + (bpvi_successor_legendre_successor_pointwise_decision_right_power))) /\ bpvi_successor_legendre_successor_pointwise_decision_right_power = bpvi_partial_legendre_successor_pointwise_decision_right_power * bpvi_factor_legendre_successor_pointwise_decision_right_power)))))))) /\ exists bpvi_divisor_factor_legendre_successor_pointwise_decision_right. S n = bpvi_result_legendre_successor_pointwise_decision_right * bpvi_divisor_factor_legendre_successor_pointwise_decision_right)))) - 0075
specialize valuation_threshold_bit_decides_power_divides p - 0076
specialize valuation_threshold_bit_decides_power_divides (S n) - 0077
specialize valuation_threshold_bit_decides_power_divides f - 0078
specialize valuation_threshold_bit_decides_power_divides i - 0079
specialize valuation_threshold_bit_decides_power_divides bit - 0080
apply valuation_threshold_bit_decides_power_divides - 0081
exact hp - 0082
specialize succ_ne_zero n - 0083
exact succ_ne_zero - 0084
exact hvaluation - 0085
exact hchoice - 0086
have hmultiple_bit : bit = 1 ∧ Dvd(x,S n) ∨ bit = 0 ∧ ¬Dvd(x,S n)Exact native replay line
have hmultiple_bit : ((bit = 1 /\ exists k. S n = x * k) \/ (bit = 0 /\ ~(exists k. S n = x * k))) - 0087
cases hdecision - 0088
cases hdecision_left - 0089
left - 0090
split - 0091
exact hdecision_left_left - 0092
cases hdecision_left_right - 0093
cases hdecision_left_right_witness - 0094
cases hdecision_left_right_witness_right - 0095
have hresult : x4 = x - 0096
specialize pow_functional p - 0097
specialize pow_functional (S i) - 0098
specialize pow_functional x4 - 0099
specialize pow_functional x - 0100
apply pow_functional - 0101
exact hdecision_left_right_witness_left - 0102
exact hold_witness_witness_left - 0103
cases hdecision_left_right_witness_right - 0104
exists x5 - 0105
rewrite <- hresult - 0106
exact hdecision_left_right_witness_right_witness - 0107
cases hdecision_right - 0108
right - 0109
split - 0110
exact hdecision_right_left - 0111
intro hmultiple - 0112
apply hdecision_right_right - 0113
exists x - 0114
split - 0115
exact hold_witness_witness_left - 0116
exact hmultiple - 0117
specialize division_successor_quotient_by_bit x - 0118
specialize division_successor_quotient_by_bit n - 0119
specialize division_successor_quotient_by_bit a - 0120
specialize division_successor_quotient_by_bit x1 - 0121
specialize division_successor_quotient_by_bit s - 0122
specialize division_successor_quotient_by_bit x3 - 0123
specialize division_successor_quotient_by_bit bit - 0124
apply division_successor_quotient_by_bit - 0125
exact hold_witness_witness_right - 0126
exact hnew_witness_witness_right - 0127
exact hmultiple_bit