Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Exact expanded first-order arithmetic statement
forall b c a m l. (exists ff_modulus_gap_binary_execution_guard. ff_modulus_gap_binary_execution_guard + S 1 = m) -> (forall ff_index_be_prefix ff_digit_be_prefix. (exists ff_lt_be_prefix_bound. ff_lt_be_prefix_bound + S ff_index_be_prefix = l) -> (((exists ff_h_be_prefix_digit. ff_h_be_prefix_digit + S (ff_digit_be_prefix) = S ((S (ff_index_be_prefix)) * c)) /\ exists ff_q_be_prefix_digit. b = ff_q_be_prefix_digit * S ((S (ff_index_be_prefix)) * c) + (ff_digit_be_prefix))) -> (ff_digit_be_prefix = 0 \/ ff_digit_be_prefix = 1)) -> exists e r. ((exists ff_u_ph_be_exponent ff_v_ph_be_exponent. ((((exists fs_h_ph_be_exponent_body_start. fs_h_ph_be_exponent_body_start + S (0) = S ((S (0)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_start. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_start * S ((S (0)) * ff_v_ph_be_exponent) + (0))) /\ ((((exists fs_h_ph_be_exponent_body_terminal. fs_h_ph_be_exponent_body_terminal + S (e) = S ((S (l)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_terminal. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_terminal * S ((S (l)) * ff_v_ph_be_exponent) + (e))) /\ forall ff_i_ph_be_exponent_body_steps. (exists ph_bound_be_exponent_body_steps. ph_bound_be_exponent_body_steps + S ff_i_ph_be_exponent_body_steps = l) -> exists ff_coefficient_ph_be_exponent_body_steps ff_previous_ph_be_exponent_body_steps ff_current_ph_be_exponent_body_steps. ((((exists fs_h_ph_be_exponent_body_steps_coefficient. fs_h_ph_be_exponent_body_steps_coefficient + S (ff_coefficient_ph_be_exponent_body_steps) = S ((S (ff_i_ph_be_exponent_body_steps)) * c)) /\ exists fs_q_ph_be_exponent_body_steps_coefficient. b = fs_q_ph_be_exponent_body_steps_coefficient * S ((S (ff_i_ph_be_exponent_body_steps)) * c) + (ff_coefficient_ph_be_exponent_body_steps))) /\ ((((exists fs_h_ph_be_exponent_body_steps_before. fs_h_ph_be_exponent_body_steps_before + S (ff_previous_ph_be_exponent_body_steps) = S ((S (ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_steps_before. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_steps_before * S ((S (ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent) + (ff_previous_ph_be_exponent_body_steps))) /\ ((((exists fs_h_ph_be_exponent_body_steps_after. fs_h_ph_be_exponent_body_steps_after + S (ff_current_ph_be_exponent_body_steps) = S ((S (S ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_steps_after. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_steps_after * S ((S (S ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent) + (ff_current_ph_be_exponent_body_steps))) /\ ff_current_ph_be_exponent_body_steps = ff_previous_ph_be_exponent_body_steps * 2 + ff_coefficient_ph_be_exponent_body_steps)))))) /\ ((exists ff_trace_code_be_execution ff_trace_scale_be_execution. ((((((exists ff_h_be_execution_trace_start. ff_h_be_execution_trace_start + S (1) = S ((S (0)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_trace_start. ff_trace_code_be_execution = ff_q_be_execution_trace_start * S ((S (0)) * ff_trace_scale_be_execution) + (1))) /\ forall ff_index_be_execution_trace. (exists ff_lt_be_execution_trace_bound. ff_lt_be_execution_trace_bound + S ff_index_be_execution_trace = l) -> exists ff_digit_be_execution_trace ff_previous_be_execution_trace ff_current_be_execution_trace. ((((exists ff_h_be_execution_trace_source. ff_h_be_execution_trace_source + S (ff_digit_be_execution_trace) = S ((S (ff_index_be_execution_trace)) * c)) /\ exists ff_q_be_execution_trace_source. b = ff_q_be_execution_trace_source * S ((S (ff_index_be_execution_trace)) * c) + (ff_digit_be_execution_trace))) /\ ((((exists ff_h_be_execution_trace_before. ff_h_be_execution_trace_before + S (ff_previous_be_execution_trace) = S ((S (ff_index_be_execution_trace)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_trace_before. ff_trace_code_be_execution = ff_q_be_execution_trace_before * S ((S (ff_index_be_execution_trace)) * ff_trace_scale_be_execution) + (ff_previous_be_execution_trace))) /\ ((((exists ff_h_be_execution_trace_after. ff_h_be_execution_trace_after + S (ff_current_be_execution_trace) = S ((S (S ff_index_be_execution_trace)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_trace_after. ff_trace_code_be_execution = ff_q_be_execution_trace_after * S ((S (S ff_index_be_execution_trace)) * ff_trace_scale_be_execution) + (ff_current_be_execution_trace))) /\ ((((ff_digit_be_execution_trace = 0) /\ (((exists ff_gap_binary_be_execution_trace_transition_square. ff_gap_binary_be_execution_trace_transition_square + S (ff_current_be_execution_trace) = m) /\ (exists ff_left_binary_be_execution_trace_transition_square_congruence ff_right_binary_be_execution_trace_transition_square_congruence. (ff_previous_be_execution_trace * ff_previous_be_execution_trace) + m * ff_left_binary_be_execution_trace_transition_square_congruence = (ff_current_be_execution_trace) + m * ff_right_binary_be_execution_trace_transition_square_congruence)))) \/ ((ff_digit_be_execution_trace = 1) /\ (((exists ff_gap_binary_be_execution_trace_transition_multiply. ff_gap_binary_be_execution_trace_transition_multiply + S (ff_current_be_execution_trace) = m) /\ (exists ff_left_binary_be_execution_trace_transition_multiply_congruence ff_right_binary_be_execution_trace_transition_multiply_congruence. ((ff_previous_be_execution_trace * ff_previous_be_execution_trace) * a) + m * ff_left_binary_be_execution_trace_transition_multiply_congruence = (ff_current_be_execution_trace) + m * ff_right_binary_be_execution_trace_transition_multiply_congruence))))))))))) /\ (((exists ff_h_be_execution_terminal. ff_h_be_execution_terminal + S (r) = S ((S (l)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_terminal. ff_trace_code_be_execution = ff_q_be_execution_terminal * S ((S (l)) * ff_trace_scale_be_execution) + (r))))) /\ (exists ff_power_binary_terminal_power. ((exists ff_b_binary_terminal_power_value ff_c_binary_terminal_power_value. ((forall ff_i_binary_terminal_power_value_repeat. (exists ff_lt_binary_terminal_power_value_repeat_bound. ff_lt_binary_terminal_power_value_repeat_bound + S ff_i_binary_terminal_power_value_repeat = e) -> (((exists ff_h_binary_terminal_power_value_repeat_decoded. ff_h_binary_terminal_power_value_repeat_decoded + S (a) = S ((S (ff_i_binary_terminal_power_value_repeat)) * ff_c_binary_terminal_power_value)) /\ exists ff_q_binary_terminal_power_value_repeat_decoded. ff_b_binary_terminal_power_value = ff_q_binary_terminal_power_value_repeat_decoded * S ((S (ff_i_binary_terminal_power_value_repeat)) * ff_c_binary_terminal_power_value) + (a)))) /\ (exists ff_u_binary_terminal_power_value_product ff_v_binary_terminal_power_value_product. ((((exists ff_h_binary_terminal_power_value_product_start. ff_h_binary_terminal_power_value_product_start + S (1) = S ((S (0)) * ff_v_binary_terminal_power_value_product)) /\ exists ff_q_binary_terminal_power_value_product_start. ff_u_binary_terminal_power_value_product = ff_q_binary_terminal_power_value_product_start * S ((S (0)) * ff_v_binary_terminal_power_value_product) + (1))) /\ ((((exists ff_h_binary_terminal_power_value_product_terminal. ff_h_binary_terminal_power_value_product_terminal + S (ff_power_binary_terminal_power) = S ((S (e)) * ff_v_binary_terminal_power_value_product)) /\ exists ff_q_binary_terminal_power_value_product_terminal. ff_u_binary_terminal_power_value_product = ff_q_binary_terminal_power_value_product_terminal * S ((S (e)) * ff_v_binary_terminal_power_value_product) + (ff_power_binary_terminal_power))) /\ forall ff_i_binary_terminal_power_value_product. (exists ff_lt_binary_terminal_power_value_product_bound. ff_lt_binary_terminal_power_value_product_bound + S ff_i_binary_terminal_power_value_product = e) -> exists ff_p_binary_terminal_power_value_product ff_r_binary_terminal_power_value_product ff_s_binary_terminal_power_value_product. ((((exists ff_h_binary_terminal_power_value_product_factor. ff_h_binary_terminal_power_value_product_factor + S (ff_p_binary_terminal_power_value_product) = S ((S (ff_i_binary_terminal_power_value_product)) * ff_c_binary_terminal_power_value)) /\ exists ff_q_binary_terminal_power_value_product_factor. ff_b_binary_terminal_power_value = ff_q_binary_terminal_power_value_product_factor * S ((S (ff_i_binary_terminal_power_value_product)) * ff_c_binary_terminal_power_value) + (ff_p_binary_terminal_power_value_product))) /\ ((((exists ff_h_binary_terminal_power_value_product_partial. ff_h_binary_terminal_power_value_product_partial + S (ff_r_binary_terminal_power_value_product) = S ((S (ff_i_binary_terminal_power_value_product)) * ff_v_binary_terminal_power_value_product)) /\ exists ff_q_binary_terminal_power_value_product_partial. ff_u_binary_terminal_power_value_product = ff_q_binary_terminal_power_value_product_partial * S ((S (ff_i_binary_terminal_power_value_product)) * ff_v_binary_terminal_power_value_product) + (ff_r_binary_terminal_power_value_product))) /\ ((((exists ff_h_binary_terminal_power_value_product_successor. ff_h_binary_terminal_power_value_product_successor + S (ff_s_binary_terminal_power_value_product) = S ((S (S ff_i_binary_terminal_power_value_product)) * ff_v_binary_terminal_power_value_product)) /\ exists ff_q_binary_terminal_power_value_product_successor. ff_u_binary_terminal_power_value_product = ff_q_binary_terminal_power_value_product_successor * S ((S (S ff_i_binary_terminal_power_value_product)) * ff_v_binary_terminal_power_value_product) + (ff_s_binary_terminal_power_value_product))) /\ ff_s_binary_terminal_power_value_product = ff_r_binary_terminal_power_value_product * ff_p_binary_terminal_power_value_product)))))))) /\ (((exists ff_gap_binary_terminal_power_residue. ff_gap_binary_terminal_power_residue + S (r) = m) /\ (exists ff_left_binary_terminal_power_residue_congruence ff_right_binary_terminal_power_residue_congruence. (ff_power_binary_terminal_power) + m * ff_left_binary_terminal_power_residue_congruence = (r) + m * ff_right_binary_terminal_power_residue_congruence)))))))Constructive proof overview
Generated structural guide
Every valid beta-coded binary prefix has a witnessed Horner exponent, complete actual modular execution, and independently proved canonical power invariant.
The unchanged tactic script uses 3 declared prerequisites and contains 41 exact native proof lines.
Alpha v34 checked-use · first admitted v22 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
beta_horner_eval_exists Alpha theorem; checked-use authorized BE000C binary_modular_execution_exists BE0010 binary_modular_execution_power_correctDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
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–7
02Establish hhornerL8–13
Establish this local claim before using it. It is not an additional assumption.
03Separate the logical casesL14–14
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L14
cases hhorner
04Establish hexecutionL15–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply binary modular execution exists.
- L15
have hexecution : ∃ r. BinaryModularExecution(b,c,a,m,l,r)Definitions: BinaryModularExecution - L16
specialize binary_modular_execution_exists b - L17
specialize binary_modular_execution_exists c - L18
specialize binary_modular_execution_exists a - L19
specialize binary_modular_execution_exists m - L20
specialize binary_modular_execution_exists l - L21
apply binary_modular_execution_exists - L22
exact hmodulus - L23
exact hdigits
05Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
cases hexecution
06Construct an explicit witnessL25–26
07Separate the logical casesL27–27
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L27
split
08Use earlier factsL28–28
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L28
exact hhorner_witness
09Separate the logical casesL29–29
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L29
split
10Use earlier factsL30–39
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L30
exact hexecution_witness - L31
specialize binary_modular_execution_power_correct b - L32
specialize binary_modular_execution_power_correct c - L33
specialize binary_modular_execution_power_correct a - L34
specialize binary_modular_execution_power_correct m - L35
specialize binary_modular_execution_power_correct l - L36
specialize binary_modular_execution_power_correct x - L37
specialize binary_modular_execution_power_correct x1 - L38
apply binary_modular_execution_power_correct - L39
exact hmodulus
Original exact command ledger · 41 lines
- 0001
intro b - 0002
intro c - 0003
intro a - 0004
intro m - 0005
intro l - 0006
intro hmodulus - 0007
intro hdigits - 0008
have hhorner : exists e. (exists ff_u_ph_be_exponent ff_v_ph_be_exponent. ((((exists fs_h_ph_be_exponent_body_start. fs_h_ph_be_exponent_body_start + S (0) = S ((S (0)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_start. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_start * S ((S (0)) * ff_v_ph_be_exponent) + (0))) /\ ((((exists fs_h_ph_be_exponent_body_terminal. fs_h_ph_be_exponent_body_terminal + S (e) = S ((S (l)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_terminal. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_terminal * S ((S (l)) * ff_v_ph_be_exponent) + (e))) /\ forall ff_i_ph_be_exponent_body_steps. (exists ph_bound_be_exponent_body_steps. ph_bound_be_exponent_body_steps + S ff_i_ph_be_exponent_body_steps = l) -> exists ff_coefficient_ph_be_exponent_body_steps ff_previous_ph_be_exponent_body_steps ff_current_ph_be_exponent_body_steps. ((((exists fs_h_ph_be_exponent_body_steps_coefficient. fs_h_ph_be_exponent_body_steps_coefficient + S (ff_coefficient_ph_be_exponent_body_steps) = S ((S (ff_i_ph_be_exponent_body_steps)) * c)) /\ exists fs_q_ph_be_exponent_body_steps_coefficient. b = fs_q_ph_be_exponent_body_steps_coefficient * S ((S (ff_i_ph_be_exponent_body_steps)) * c) + (ff_coefficient_ph_be_exponent_body_steps))) /\ ((((exists fs_h_ph_be_exponent_body_steps_before. fs_h_ph_be_exponent_body_steps_before + S (ff_previous_ph_be_exponent_body_steps) = S ((S (ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_steps_before. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_steps_before * S ((S (ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent) + (ff_previous_ph_be_exponent_body_steps))) /\ ((((exists fs_h_ph_be_exponent_body_steps_after. fs_h_ph_be_exponent_body_steps_after + S (ff_current_ph_be_exponent_body_steps) = S ((S (S ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent)) /\ exists fs_q_ph_be_exponent_body_steps_after. ff_u_ph_be_exponent = fs_q_ph_be_exponent_body_steps_after * S ((S (S ff_i_ph_be_exponent_body_steps)) * ff_v_ph_be_exponent) + (ff_current_ph_be_exponent_body_steps))) /\ ff_current_ph_be_exponent_body_steps = ff_previous_ph_be_exponent_body_steps * 2 + ff_coefficient_ph_be_exponent_body_steps)))))) - 0009
specialize beta_horner_eval_exists b - 0010
specialize beta_horner_eval_exists c - 0011
specialize beta_horner_eval_exists 2 - 0012
specialize beta_horner_eval_exists l - 0013
exact beta_horner_eval_exists - 0014
cases hhorner - 0015
have hexecution : exists r. (exists ff_trace_code_be_execution ff_trace_scale_be_execution. ((((((exists ff_h_be_execution_trace_start. ff_h_be_execution_trace_start + S (1) = S ((S (0)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_trace_start. ff_trace_code_be_execution = ff_q_be_execution_trace_start * S ((S (0)) * ff_trace_scale_be_execution) + (1))) /\ forall ff_index_be_execution_trace. (exists ff_lt_be_execution_trace_bound. ff_lt_be_execution_trace_bound + S ff_index_be_execution_trace = l) -> exists ff_digit_be_execution_trace ff_previous_be_execution_trace ff_current_be_execution_trace. ((((exists ff_h_be_execution_trace_source. ff_h_be_execution_trace_source + S (ff_digit_be_execution_trace) = S ((S (ff_index_be_execution_trace)) * c)) /\ exists ff_q_be_execution_trace_source. b = ff_q_be_execution_trace_source * S ((S (ff_index_be_execution_trace)) * c) + (ff_digit_be_execution_trace))) /\ ((((exists ff_h_be_execution_trace_before. ff_h_be_execution_trace_before + S (ff_previous_be_execution_trace) = S ((S (ff_index_be_execution_trace)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_trace_before. ff_trace_code_be_execution = ff_q_be_execution_trace_before * S ((S (ff_index_be_execution_trace)) * ff_trace_scale_be_execution) + (ff_previous_be_execution_trace))) /\ ((((exists ff_h_be_execution_trace_after. ff_h_be_execution_trace_after + S (ff_current_be_execution_trace) = S ((S (S ff_index_be_execution_trace)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_trace_after. ff_trace_code_be_execution = ff_q_be_execution_trace_after * S ((S (S ff_index_be_execution_trace)) * ff_trace_scale_be_execution) + (ff_current_be_execution_trace))) /\ ((((ff_digit_be_execution_trace = 0) /\ (((exists ff_gap_binary_be_execution_trace_transition_square. ff_gap_binary_be_execution_trace_transition_square + S (ff_current_be_execution_trace) = m) /\ (exists ff_left_binary_be_execution_trace_transition_square_congruence ff_right_binary_be_execution_trace_transition_square_congruence. (ff_previous_be_execution_trace * ff_previous_be_execution_trace) + m * ff_left_binary_be_execution_trace_transition_square_congruence = (ff_current_be_execution_trace) + m * ff_right_binary_be_execution_trace_transition_square_congruence)))) \/ ((ff_digit_be_execution_trace = 1) /\ (((exists ff_gap_binary_be_execution_trace_transition_multiply. ff_gap_binary_be_execution_trace_transition_multiply + S (ff_current_be_execution_trace) = m) /\ (exists ff_left_binary_be_execution_trace_transition_multiply_congruence ff_right_binary_be_execution_trace_transition_multiply_congruence. ((ff_previous_be_execution_trace * ff_previous_be_execution_trace) * a) + m * ff_left_binary_be_execution_trace_transition_multiply_congruence = (ff_current_be_execution_trace) + m * ff_right_binary_be_execution_trace_transition_multiply_congruence))))))))))) /\ (((exists ff_h_be_execution_terminal. ff_h_be_execution_terminal + S (r) = S ((S (l)) * ff_trace_scale_be_execution)) /\ exists ff_q_be_execution_terminal. ff_trace_code_be_execution = ff_q_be_execution_terminal * S ((S (l)) * ff_trace_scale_be_execution) + (r))))) - 0016
specialize binary_modular_execution_exists b - 0017
specialize binary_modular_execution_exists c - 0018
specialize binary_modular_execution_exists a - 0019
specialize binary_modular_execution_exists m - 0020
specialize binary_modular_execution_exists l - 0021
apply binary_modular_execution_exists - 0022
exact hmodulus - 0023
exact hdigits - 0024
cases hexecution - 0025
exists x - 0026
exists x1 - 0027
split - 0028
exact hhorner_witness - 0029
split - 0030
exact hexecution_witness - 0031
specialize binary_modular_execution_power_correct b - 0032
specialize binary_modular_execution_power_correct c - 0033
specialize binary_modular_execution_power_correct a - 0034
specialize binary_modular_execution_power_correct m - 0035
specialize binary_modular_execution_power_correct l - 0036
specialize binary_modular_execution_power_correct x - 0037
specialize binary_modular_execution_power_correct x1 - 0038
apply binary_modular_execution_power_correct - 0039
exact hmodulus - 0040
exact hhorner_witness - 0041
exact hexecution_witness