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 u b c i. exists e. (((exists pc_lt_cutchoice_exists_below. pc_lt_cutchoice_exists_below + S (i) = (u)) /\ e = 0) \/ ((exists pc_le_cutchoice_exists_above. pc_le_cutchoice_exists_above + (u) = (i)) /\ (((exists fs_h_pc_cutchoice_exists_source. fs_h_pc_cutchoice_exists_source + S (e) = S ((S (i)) * c)) /\ exists fs_q_pc_cutchoice_exists_source. b = fs_q_pc_cutchoice_exists_source * S ((S (i)) * c) + (e)))))Constructive proof overview
Generated structural guide
Construct each exact cutoff entry by decidable order and beta decoding.
The unchanged tactic script uses 2 declared prerequisites and contains 25 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 beta_at_exists 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–4
02Establish hsL5–8
03Separate the logical casesL9–9
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L9
cases hs
04Establish heL10–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at exists.
- L10
have he : exists e. ((exists fs_h_pc_cutchoice_value. fs_h_pc_cutchoice_value + S (e) = S ((S (i)) * c)) /\ exists fs_q_pc_cutchoice_value. b = fs_q_pc_cutchoice_value * S ((S (i)) * c) + (e)) - L11
specialize beta_at_exists b - L12
specialize beta_at_exists c - L13
specialize beta_at_exists i - L14
apply beta_at_exists
05Separate the logical casesL15–15
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L15
cases he
06Construct an explicit witnessL16–16
Supply the displayed value, then prove that it has the required property.
- L16
exists x
07Separate the logical casesL17–18
08Use earlier factsL19–20
09Construct an explicit witnessL21–21
Supply the displayed value, then prove that it has the required property.
- L21
exists 0
10Separate the logical casesL22–23
11Use earlier factsL24–24
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L24
exact hs_right
12Calculate and transport equalitiesL25–25
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L25
refl
Original exact command ledger · 25 lines
- 0001
intro u - 0002
intro b - 0003
intro c - 0004
intro i - 0005
have hs : (exists g. g + u = i) \/ (exists g. g + S i = u) - 0006
specialize le_or_lt u - 0007
specialize le_or_lt i - 0008
apply le_or_lt - 0009
cases hs - 0010
have he : exists e. ((exists fs_h_pc_cutchoice_value. fs_h_pc_cutchoice_value + S (e) = S ((S (i)) * c)) /\ exists fs_q_pc_cutchoice_value. b = fs_q_pc_cutchoice_value * S ((S (i)) * c) + (e)) - 0011
specialize beta_at_exists b - 0012
specialize beta_at_exists c - 0013
specialize beta_at_exists i - 0014
apply beta_at_exists - 0015
cases he - 0016
exists x - 0017
right - 0018
split - 0019
exact hs_left - 0020
exact he_witness - 0021
exists 0 - 0022
left - 0023
split - 0024
exact hs_right - 0025
refl