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 a b x y. (exists pa_b_pc_power_reflect_left pa_c_pc_power_reflect_left. ((forall pa_i_pc_power_reflect_left_repeat. (exists pa_lt_pc_power_reflect_left_repeat_bound. pa_lt_pc_power_reflect_left_repeat_bound + S pa_i_pc_power_reflect_left_repeat = a) -> (((exists pa_h_pc_power_reflect_left_repeat_decoded. pa_h_pc_power_reflect_left_repeat_decoded + S (2) = S ((S (pa_i_pc_power_reflect_left_repeat)) * pa_c_pc_power_reflect_left)) /\ exists pa_q_pc_power_reflect_left_repeat_decoded. pa_b_pc_power_reflect_left = pa_q_pc_power_reflect_left_repeat_decoded * S ((S (pa_i_pc_power_reflect_left_repeat)) * pa_c_pc_power_reflect_left) + (2)))) /\ (exists pa_u_pc_power_reflect_left_product pa_v_pc_power_reflect_left_product. ((((exists pa_h_pc_power_reflect_left_product_start. pa_h_pc_power_reflect_left_product_start + S (1) = S ((S (0)) * pa_v_pc_power_reflect_left_product)) /\ exists pa_q_pc_power_reflect_left_product_start. pa_u_pc_power_reflect_left_product = pa_q_pc_power_reflect_left_product_start * S ((S (0)) * pa_v_pc_power_reflect_left_product) + (1))) /\ ((((exists pa_h_pc_power_reflect_left_product_terminal. pa_h_pc_power_reflect_left_product_terminal + S (x) = S ((S (a)) * pa_v_pc_power_reflect_left_product)) /\ exists pa_q_pc_power_reflect_left_product_terminal. pa_u_pc_power_reflect_left_product = pa_q_pc_power_reflect_left_product_terminal * S ((S (a)) * pa_v_pc_power_reflect_left_product) + (x))) /\ forall pa_i_pc_power_reflect_left_product. (exists pa_lt_pc_power_reflect_left_product_bound. pa_lt_pc_power_reflect_left_product_bound + S pa_i_pc_power_reflect_left_product = a) -> exists pa_p_pc_power_reflect_left_product pa_r_pc_power_reflect_left_product pa_s_pc_power_reflect_left_product. ((((exists pa_h_pc_power_reflect_left_product_factor. pa_h_pc_power_reflect_left_product_factor + S (pa_p_pc_power_reflect_left_product) = S ((S (pa_i_pc_power_reflect_left_product)) * pa_c_pc_power_reflect_left)) /\ exists pa_q_pc_power_reflect_left_product_factor. pa_b_pc_power_reflect_left = pa_q_pc_power_reflect_left_product_factor * S ((S (pa_i_pc_power_reflect_left_product)) * pa_c_pc_power_reflect_left) + (pa_p_pc_power_reflect_left_product))) /\ ((((exists pa_h_pc_power_reflect_left_product_partial. pa_h_pc_power_reflect_left_product_partial + S (pa_r_pc_power_reflect_left_product) = S ((S (pa_i_pc_power_reflect_left_product)) * pa_v_pc_power_reflect_left_product)) /\ exists pa_q_pc_power_reflect_left_product_partial. pa_u_pc_power_reflect_left_product = pa_q_pc_power_reflect_left_product_partial * S ((S (pa_i_pc_power_reflect_left_product)) * pa_v_pc_power_reflect_left_product) + (pa_r_pc_power_reflect_left_product))) /\ ((((exists pa_h_pc_power_reflect_left_product_successor. pa_h_pc_power_reflect_left_product_successor + S (pa_s_pc_power_reflect_left_product) = S ((S (S pa_i_pc_power_reflect_left_product)) * pa_v_pc_power_reflect_left_product)) /\ exists pa_q_pc_power_reflect_left_product_successor. pa_u_pc_power_reflect_left_product = pa_q_pc_power_reflect_left_product_successor * S ((S (S pa_i_pc_power_reflect_left_product)) * pa_v_pc_power_reflect_left_product) + (pa_s_pc_power_reflect_left_product))) /\ pa_s_pc_power_reflect_left_product = pa_r_pc_power_reflect_left_product * pa_p_pc_power_reflect_left_product)))))))) -> (exists pa_b_pc_power_reflect_right pa_c_pc_power_reflect_right. ((forall pa_i_pc_power_reflect_right_repeat. (exists pa_lt_pc_power_reflect_right_repeat_bound. pa_lt_pc_power_reflect_right_repeat_bound + S pa_i_pc_power_reflect_right_repeat = b) -> (((exists pa_h_pc_power_reflect_right_repeat_decoded. pa_h_pc_power_reflect_right_repeat_decoded + S (2) = S ((S (pa_i_pc_power_reflect_right_repeat)) * pa_c_pc_power_reflect_right)) /\ exists pa_q_pc_power_reflect_right_repeat_decoded. pa_b_pc_power_reflect_right = pa_q_pc_power_reflect_right_repeat_decoded * S ((S (pa_i_pc_power_reflect_right_repeat)) * pa_c_pc_power_reflect_right) + (2)))) /\ (exists pa_u_pc_power_reflect_right_product pa_v_pc_power_reflect_right_product. ((((exists pa_h_pc_power_reflect_right_product_start. pa_h_pc_power_reflect_right_product_start + S (1) = S ((S (0)) * pa_v_pc_power_reflect_right_product)) /\ exists pa_q_pc_power_reflect_right_product_start. pa_u_pc_power_reflect_right_product = pa_q_pc_power_reflect_right_product_start * S ((S (0)) * pa_v_pc_power_reflect_right_product) + (1))) /\ ((((exists pa_h_pc_power_reflect_right_product_terminal. pa_h_pc_power_reflect_right_product_terminal + S (y) = S ((S (b)) * pa_v_pc_power_reflect_right_product)) /\ exists pa_q_pc_power_reflect_right_product_terminal. pa_u_pc_power_reflect_right_product = pa_q_pc_power_reflect_right_product_terminal * S ((S (b)) * pa_v_pc_power_reflect_right_product) + (y))) /\ forall pa_i_pc_power_reflect_right_product. (exists pa_lt_pc_power_reflect_right_product_bound. pa_lt_pc_power_reflect_right_product_bound + S pa_i_pc_power_reflect_right_product = b) -> exists pa_p_pc_power_reflect_right_product pa_r_pc_power_reflect_right_product pa_s_pc_power_reflect_right_product. ((((exists pa_h_pc_power_reflect_right_product_factor. pa_h_pc_power_reflect_right_product_factor + S (pa_p_pc_power_reflect_right_product) = S ((S (pa_i_pc_power_reflect_right_product)) * pa_c_pc_power_reflect_right)) /\ exists pa_q_pc_power_reflect_right_product_factor. pa_b_pc_power_reflect_right = pa_q_pc_power_reflect_right_product_factor * S ((S (pa_i_pc_power_reflect_right_product)) * pa_c_pc_power_reflect_right) + (pa_p_pc_power_reflect_right_product))) /\ ((((exists pa_h_pc_power_reflect_right_product_partial. pa_h_pc_power_reflect_right_product_partial + S (pa_r_pc_power_reflect_right_product) = S ((S (pa_i_pc_power_reflect_right_product)) * pa_v_pc_power_reflect_right_product)) /\ exists pa_q_pc_power_reflect_right_product_partial. pa_u_pc_power_reflect_right_product = pa_q_pc_power_reflect_right_product_partial * S ((S (pa_i_pc_power_reflect_right_product)) * pa_v_pc_power_reflect_right_product) + (pa_r_pc_power_reflect_right_product))) /\ ((((exists pa_h_pc_power_reflect_right_product_successor. pa_h_pc_power_reflect_right_product_successor + S (pa_s_pc_power_reflect_right_product) = S ((S (S pa_i_pc_power_reflect_right_product)) * pa_v_pc_power_reflect_right_product)) /\ exists pa_q_pc_power_reflect_right_product_successor. pa_u_pc_power_reflect_right_product = pa_q_pc_power_reflect_right_product_successor * S ((S (S pa_i_pc_power_reflect_right_product)) * pa_v_pc_power_reflect_right_product) + (pa_s_pc_power_reflect_right_product))) /\ pa_s_pc_power_reflect_right_product = pa_r_pc_power_reflect_right_product * pa_p_pc_power_reflect_right_product)))))))) -> (exists pc_le_power_reflect_values. pc_le_power_reflect_values + (x) = (y)) -> (exists pc_le_power_reflect_result. pc_le_power_reflect_result + (a) = (b))Constructive proof overview
Generated structural guide
Weak order between actual powers of two reflects weak order of the exponents.
The unchanged tactic script uses 3 declared prerequisites and contains 26 exact native proof lines.
Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
le_or_lt Stable theorem; checked-use authorized binary_power_two_exponent_strict Alpha theorem; checked-use authorized lt_not_le Stable theorem; checked-use authorizedDirect 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.
01Fix variables and assumptionsL1–7
02Establish hcL8–11
03Separate the logical casesL12–12
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L12
cases hc
04Use earlier factsL13–13
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L13
exact hc_left
05Separate the logical casesL14–14
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L14
exfalso
06Use earlier factsL15–24
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L15
specialize lt_not_le y - L16
specialize lt_not_le x - L17
apply lt_not_le - L18
specialize binary_power_two_exponent_strict b - L19
specialize binary_power_two_exponent_strict a - L20
specialize binary_power_two_exponent_strict y - L21
specialize binary_power_two_exponent_strict x - L22
apply binary_power_two_exponent_strict - L23
exact hc_right - L24
exact hy
Original exact command ledger · 26 lines
- 0001
intro a - 0002
intro b - 0003
intro x - 0004
intro y - 0005
intro hx - 0006
intro hy - 0007
intro hle - 0008
have hc : (exists g. g + a = b) \/ (exists g. g + S b = a) - 0009
specialize le_or_lt a - 0010
specialize le_or_lt b - 0011
apply le_or_lt - 0012
cases hc - 0013
exact hc_left - 0014
exfalso - 0015
specialize lt_not_le y - 0016
specialize lt_not_le x - 0017
apply lt_not_le - 0018
specialize binary_power_two_exponent_strict b - 0019
specialize binary_power_two_exponent_strict a - 0020
specialize binary_power_two_exponent_strict y - 0021
specialize binary_power_two_exponent_strict x - 0022
apply binary_power_two_exponent_strict - 0023
exact hc_right - 0024
exact hy - 0025
exact hx - 0026
exact hle