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 d e tb tc ub uc p t v. ~(p=0) -> t+v=p -> (forall fms_i_pullback fms_j_pullback. (exists fms_gap_pullback_i. fms_gap_pullback_i + S (fms_i_pullback) = (p)) -> (exists fms_gap_pullback_j. fms_gap_pullback_j + S (fms_j_pullback) = (p)) -> (exists fms_u_pullback fms_v_pullback. (fms_i_pullback + v) + (p) * fms_u_pullback = (fms_j_pullback) + (p) * fms_v_pullback) -> ((((((exists fs_h_fms_pullback_target. fs_h_fms_pullback_target + S (1) = S ((S (fms_i_pullback)) * tc)) /\ exists fs_q_fms_pullback_target. tb = fs_q_fms_pullback_target * S ((S (fms_i_pullback)) * tc) + (1))) -> (((exists fs_h_fms_pullback_source. fs_h_fms_pullback_source + S (1) = S ((S (fms_j_pullback)) * e)) /\ exists fs_q_fms_pullback_source. d = fs_q_fms_pullback_source * S ((S (fms_j_pullback)) * e) + (1)))) /\ ((((exists fs_h_fms_pullback_source. fs_h_fms_pullback_source + S (1) = S ((S (fms_j_pullback)) * e)) /\ exists fs_q_fms_pullback_source. d = fs_q_fms_pullback_source * S ((S (fms_j_pullback)) * e) + (1))) -> (((exists fs_h_fms_pullback_target. fs_h_fms_pullback_target + S (1) = S ((S (fms_i_pullback)) * tc)) /\ exists fs_q_fms_pullback_target. tb = fs_q_fms_pullback_target * S ((S (fms_i_pullback)) * tc) + (1))))))) -> (forall fms_i_binary. (exists fms_gap_binary. fms_gap_binary + S (fms_i_binary) = (p)) -> ((((((exists fs_h_fms_binary_result. fs_h_fms_binary_result + S (1) = S ((S (fms_i_binary)) * uc)) /\ exists fs_q_fms_binary_result. ub = fs_q_fms_binary_result * S ((S (fms_i_binary)) * uc) + (1))) -> (((((exists fs_h_fms_binary_left. fs_h_fms_binary_left + S (1) = S ((S (fms_i_binary)) * c)) /\ exists fs_q_fms_binary_left. b = fs_q_fms_binary_left * S ((S (fms_i_binary)) * c) + (1))) \/ (((exists fs_h_fms_binary_right. fs_h_fms_binary_right + S (1) = S ((S (fms_i_binary)) * tc)) /\ exists fs_q_fms_binary_right. tb = fs_q_fms_binary_right * S ((S (fms_i_binary)) * tc) + (1)))))) /\ ((((((exists fs_h_fms_binary_left. fs_h_fms_binary_left + S (1) = S ((S (fms_i_binary)) * c)) /\ exists fs_q_fms_binary_left. b = fs_q_fms_binary_left * S ((S (fms_i_binary)) * c) + (1))) \/ (((exists fs_h_fms_binary_right. fs_h_fms_binary_right + S (1) = S ((S (fms_i_binary)) * tc)) /\ exists fs_q_fms_binary_right. tb = fs_q_fms_binary_right * S ((S (fms_i_binary)) * tc) + (1))))) -> (((exists fs_h_fms_binary_result. fs_h_fms_binary_result + S (1) = S ((S (fms_i_binary)) * uc)) /\ exists fs_q_fms_binary_result. ub = fs_q_fms_binary_result * S ((S (fms_i_binary)) * uc) + (1))))))) -> (forall cd_output_upper. (exists fms_gap_cd_upper_bound. fms_gap_cd_upper_bound + S (cd_output_upper) = (p)) -> ((((((exists fs_h_cd_upper_result. fs_h_cd_upper_result + S (1) = S ((S (cd_output_upper)) * uc)) /\ exists fs_q_cd_upper_result. ub = fs_q_cd_upper_result * S ((S (cd_output_upper)) * uc) + (1))) -> ((((exists fs_h_cd_upper_old. fs_h_cd_upper_old + S (1) = S ((S (cd_output_upper)) * c)) /\ exists fs_q_cd_upper_old. b = fs_q_cd_upper_old * S ((S (cd_output_upper)) * c) + (1))) \/ (exists cd_source_upper. (((exists fms_gap_cd_upper_member. fms_gap_cd_upper_member + S (cd_source_upper) = (p)) /\ (((exists fs_h_fms_cd_upper_member. fs_h_fms_cd_upper_member + S (1) = S ((S (cd_source_upper)) * e)) /\ exists fs_q_fms_cd_upper_member. d = fs_q_fms_cd_upper_member * S ((S (cd_source_upper)) * e) + (1))))) /\ (exists fms_u_cd_upper_mod fms_v_cd_upper_mod. (cd_source_upper+t) + (p) * fms_u_cd_upper_mod = (cd_output_upper) + (p) * fms_v_cd_upper_mod)))) /\ (((((exists fs_h_cd_upper_old. fs_h_cd_upper_old + S (1) = S ((S (cd_output_upper)) * c)) /\ exists fs_q_cd_upper_old. b = fs_q_cd_upper_old * S ((S (cd_output_upper)) * c) + (1))) \/ (exists cd_source_upper. (((exists fms_gap_cd_upper_member. fms_gap_cd_upper_member + S (cd_source_upper) = (p)) /\ (((exists fs_h_fms_cd_upper_member. fs_h_fms_cd_upper_member + S (1) = S ((S (cd_source_upper)) * e)) /\ exists fs_q_fms_cd_upper_member. d = fs_q_fms_cd_upper_member * S ((S (cd_source_upper)) * e) + (1))))) /\ (exists fms_u_cd_upper_mod fms_v_cd_upper_mod. (cd_source_upper+t) + (p) * fms_u_cd_upper_mod = (cd_output_upper) + (p) * fms_v_cd_upper_mod))) -> (((exists fs_h_cd_upper_result. fs_h_cd_upper_result + S (1) = S ((S (cd_output_upper)) * uc)) /\ exists fs_q_cd_upper_result. ub = fs_q_cd_upper_result * S ((S (cd_output_upper)) * uc) + (1)))))))Constructive proof overview
Generated structural guide
The actual union with a genuine forward translate has exactly the upper Dyson-transform membership.
The unchanged tactic script uses 1 declared prerequisite and contains 56 exact native proof lines.
Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
Direct 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 (1)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–17
03Establish hshiftL18–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite modular pushforward membership witness.
- L18
have hshift : (BetaAt(tb,tc,z,1) → ∃ x. ModularSetMember(d,e,p,x) ∧ ModEq(p,x + t,z)) ∧ ((∃ x. ModularSetMember(d,e,p,x) ∧ ModEq(p,x + t,z)) → BetaAt(tb,tc,z,1))Definitions: ModularSetMemberModEqBetaAt - L19
specialize finite_modular_pushforward_membership_witness d - L20
specialize finite_modular_pushforward_membership_witness e - L21
specialize finite_modular_pushforward_membership_witness tb - L22
specialize finite_modular_pushforward_membership_witness tc - L23
specialize finite_modular_pushforward_membership_witness p - L24
specialize finite_modular_pushforward_membership_witness t - L25
specialize finite_modular_pushforward_membership_witness v - L26
specialize finite_modular_pushforward_membership_witness z - L27
apply finite_modular_pushforward_membership_witness
04Use earlier factsL28–31
05Separate the logical casesL32–32
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L32
cases hshift
06Establish hunL33–36
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hunion.
07Separate the logical casesL37–38
08Fix variables and assumptionsL39–39
Work with arbitrary variables or the premises of the current implication.
- L39
intro hu
09Establish hcaseL40–42
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hun left.
- L40
have hcase : (((exists fs_h_cd_U_A. fs_h_cd_U_A + S (1) = S ((S (z)) * c)) /\ exists fs_q_cd_U_A. b = fs_q_cd_U_A * S ((S (z)) * c) + (1))) \/ (((exists fs_h_cd_U_T. fs_h_cd_U_T + S (1) = S ((S (z)) * tc)) /\ exists fs_q_cd_U_T. tb = fs_q_cd_U_T * S ((S (z)) * tc) + (1))) - L41
apply hun_left - L42
exact hu
10Separate the logical casesL43–44
11Use earlier factsL45–45
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
exact hcase_left
12Separate the logical casesL46–46
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
right
13Use earlier factsL47–48
14Fix variables and assumptionsL49–49
Work with arbitrary variables or the premises of the current implication.
- L49
intro hcase
15Use earlier factsL50–50
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L50
apply hun_right
16Separate the logical casesL51–52
17Use earlier factsL53–53
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L53
exact hcase_left
18Separate the logical casesL54–54
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L54
right
Original exact command ledger · 56 lines
- 0001
intro b - 0002
intro c - 0003
intro d - 0004
intro e - 0005
intro tb - 0006
intro tc - 0007
intro ub - 0008
intro uc - 0009
intro p - 0010
intro t - 0011
intro v - 0012
intro hp - 0013
intro htv - 0014
intro hpull - 0015
intro hunion - 0016
intro z - 0017
intro hz - 0018
have hshift : (((((exists fs_h_cd_upper_shift. fs_h_cd_upper_shift + S (1) = S ((S (z)) * tc)) /\ exists fs_q_cd_upper_shift. tb = fs_q_cd_upper_shift * S ((S (z)) * tc) + (1))) -> (exists a. (((exists fms_gap_member. fms_gap_member + S (a) = (p)) /\ (((exists fs_h_fms_member. fs_h_fms_member + S (1) = S ((S (a)) * e)) /\ exists fs_q_fms_member. d = fs_q_fms_member * S ((S (a)) * e) + (1))))) /\ (exists fms_u_mod fms_v_mod. (a+t) + (p) * fms_u_mod = (z) + (p) * fms_v_mod))) /\ ((exists a. (((exists fms_gap_member. fms_gap_member + S (a) = (p)) /\ (((exists fs_h_fms_member. fs_h_fms_member + S (1) = S ((S (a)) * e)) /\ exists fs_q_fms_member. d = fs_q_fms_member * S ((S (a)) * e) + (1))))) /\ (exists fms_u_mod fms_v_mod. (a+t) + (p) * fms_u_mod = (z) + (p) * fms_v_mod)) -> (((exists fs_h_cd_upper_shift. fs_h_cd_upper_shift + S (1) = S ((S (z)) * tc)) /\ exists fs_q_cd_upper_shift. tb = fs_q_cd_upper_shift * S ((S (z)) * tc) + (1))))) - 0019
specialize finite_modular_pushforward_membership_witness d - 0020
specialize finite_modular_pushforward_membership_witness e - 0021
specialize finite_modular_pushforward_membership_witness tb - 0022
specialize finite_modular_pushforward_membership_witness tc - 0023
specialize finite_modular_pushforward_membership_witness p - 0024
specialize finite_modular_pushforward_membership_witness t - 0025
specialize finite_modular_pushforward_membership_witness v - 0026
specialize finite_modular_pushforward_membership_witness z - 0027
apply finite_modular_pushforward_membership_witness - 0028
exact hp - 0029
exact htv - 0030
exact hpull - 0031
exact hz - 0032
cases hshift - 0033
have hun : (((((exists fs_h_cd_upper_new. fs_h_cd_upper_new + S (1) = S ((S (z)) * uc)) /\ exists fs_q_cd_upper_new. ub = fs_q_cd_upper_new * S ((S (z)) * uc) + (1))) -> ((((exists fs_h_cd_U_A. fs_h_cd_U_A + S (1) = S ((S (z)) * c)) /\ exists fs_q_cd_U_A. b = fs_q_cd_U_A * S ((S (z)) * c) + (1))) \/ (((exists fs_h_cd_U_T. fs_h_cd_U_T + S (1) = S ((S (z)) * tc)) /\ exists fs_q_cd_U_T. tb = fs_q_cd_U_T * S ((S (z)) * tc) + (1))))) /\ (((((exists fs_h_cd_U_A. fs_h_cd_U_A + S (1) = S ((S (z)) * c)) /\ exists fs_q_cd_U_A. b = fs_q_cd_U_A * S ((S (z)) * c) + (1))) \/ (((exists fs_h_cd_U_T. fs_h_cd_U_T + S (1) = S ((S (z)) * tc)) /\ exists fs_q_cd_U_T. tb = fs_q_cd_U_T * S ((S (z)) * tc) + (1)))) -> (((exists fs_h_cd_upper_new. fs_h_cd_upper_new + S (1) = S ((S (z)) * uc)) /\ exists fs_q_cd_upper_new. ub = fs_q_cd_upper_new * S ((S (z)) * uc) + (1))))) - 0034
specialize hunion z - 0035
apply hunion - 0036
exact hz - 0037
cases hun - 0038
split - 0039
intro hu - 0040
have hcase : (((exists fs_h_cd_U_A. fs_h_cd_U_A + S (1) = S ((S (z)) * c)) /\ exists fs_q_cd_U_A. b = fs_q_cd_U_A * S ((S (z)) * c) + (1))) \/ (((exists fs_h_cd_U_T. fs_h_cd_U_T + S (1) = S ((S (z)) * tc)) /\ exists fs_q_cd_U_T. tb = fs_q_cd_U_T * S ((S (z)) * tc) + (1))) - 0041
apply hun_left - 0042
exact hu - 0043
cases hcase - 0044
left - 0045
exact hcase_left - 0046
right - 0047
apply hshift_left - 0048
exact hcase_right - 0049
intro hcase - 0050
apply hun_right - 0051
cases hcase - 0052
left - 0053
exact hcase_left - 0054
right - 0055
apply hshift_right - 0056
exact hcase_right