Exact expanded first-order arithmetic statement
forall b c k B C D E j. (exists jt_index_listedliftold jt_code_listedliftold jt_scale_listedliftold. ((exists jt_gap_listedliftoldindex. jt_gap_listedliftoldindex+S (jt_index_listedliftold)=(j)) /\ (((((((exists fs_h_jt_listedliftoldcode. fs_h_jt_listedliftoldcode + S (jt_code_listedliftold) = S ((S (jt_index_listedliftold)) * C)) /\ exists fs_q_jt_listedliftoldcode. B = fs_q_jt_listedliftoldcode * S ((S (jt_index_listedliftold)) * C) + (jt_code_listedliftold))) /\ (((exists fs_h_jt_listedliftoldscale. fs_h_jt_listedliftoldscale + S (jt_scale_listedliftold) = S ((S (jt_index_listedliftold)) * E)) /\ exists fs_q_jt_listedliftoldscale. D = fs_q_jt_listedliftoldscale * S ((S (jt_index_listedliftold)) * E) + (jt_scale_listedliftold))))) /\ (forall jt_index_listedliftoldequal jt_left_listedliftoldequal jt_right_listedliftoldequal. (exists jt_gap_listedliftoldequalindex. jt_gap_listedliftoldequalindex+S (jt_index_listedliftoldequal)=(k)) -> (((exists fs_h_jt_listedliftoldequalleft. fs_h_jt_listedliftoldequalleft + S (jt_left_listedliftoldequal) = S ((S (jt_index_listedliftoldequal)) * c)) /\ exists fs_q_jt_listedliftoldequalleft. b = fs_q_jt_listedliftoldequalleft * S ((S (jt_index_listedliftoldequal)) * c) + (jt_left_listedliftoldequal))) -> (((exists fs_h_jt_listedliftoldequalright. fs_h_jt_listedliftoldequalright + S (jt_right_listedliftoldequal) = S ((S (jt_index_listedliftoldequal)) * jt_scale_listedliftold)) /\ exists fs_q_jt_listedliftoldequalright. jt_code_listedliftold = fs_q_jt_listedliftoldequalright * S ((S (jt_index_listedliftoldequal)) * jt_scale_listedliftold) + (jt_right_listedliftoldequal))) -> jt_left_listedliftoldequal=jt_right_listedliftoldequal))))) -> (exists jt_index_listedliftnew jt_code_listedliftnew jt_scale_listedliftnew. ((exists jt_gap_listedliftnewindex. jt_gap_listedliftnewindex+S (jt_index_listedliftnew)=(S j)) /\ (((((((exists fs_h_jt_listedliftnewcode. fs_h_jt_listedliftnewcode + S (jt_code_listedliftnew) = S ((S (jt_index_listedliftnew)) * C)) /\ exists fs_q_jt_listedliftnewcode. B = fs_q_jt_listedliftnewcode * S ((S (jt_index_listedliftnew)) * C) + (jt_code_listedliftnew))) /\ (((exists fs_h_jt_listedliftnewscale. fs_h_jt_listedliftnewscale + S (jt_scale_listedliftnew) = S ((S (jt_index_listedliftnew)) * E)) /\ exists fs_q_jt_listedliftnewscale. D = fs_q_jt_listedliftnewscale * S ((S (jt_index_listedliftnew)) * E) + (jt_scale_listedliftnew))))) /\ (forall jt_index_listedliftnewequal jt_left_listedliftnewequal jt_right_listedliftnewequal. (exists jt_gap_listedliftnewequalindex. jt_gap_listedliftnewequalindex+S (jt_index_listedliftnewequal)=(k)) -> (((exists fs_h_jt_listedliftnewequalleft. fs_h_jt_listedliftnewequalleft + S (jt_left_listedliftnewequal) = S ((S (jt_index_listedliftnewequal)) * c)) /\ exists fs_q_jt_listedliftnewequalleft. b = fs_q_jt_listedliftnewequalleft * S ((S (jt_index_listedliftnewequal)) * c) + (jt_left_listedliftnewequal))) -> (((exists fs_h_jt_listedliftnewequalright. fs_h_jt_listedliftnewequalright + S (jt_right_listedliftnewequal) = S ((S (jt_index_listedliftnewequal)) * jt_scale_listedliftnew)) /\ exists fs_q_jt_listedliftnewequalright. jt_code_listedliftnew = fs_q_jt_listedliftnewequalright * S ((S (jt_index_listedliftnewequal)) * jt_scale_listedliftnew) + (jt_right_listedliftnewequal))) -> jt_left_listedliftnewequal=jt_right_listedliftnewequal)))))Constructive proof overview
Generated structural guide
An existing list position remains below the successor bound.
The unchanged tactic script uses 1 declared prerequisite and contains 25 exact native proof lines.
Alpha v35 checked-use · first admitted v35 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
le_succ Alpha 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–9
02Separate the logical casesL10–14
03Construct an explicit witnessL15–17
04Separate the logical casesL18–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
split
05Use earlier factsL19–22
06Separate the logical casesL23–23
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L23
split
Original exact command ledger · 25 lines
- 0001
intro b - 0002
intro c - 0003
intro k - 0004
intro B - 0005
intro C - 0006
intro D - 0007
intro E - 0008
intro j - 0009
intro h - 0010
cases h - 0011
cases h_witness - 0012
cases h_witness_witness - 0013
cases h_witness_witness_witness - 0014
cases h_witness_witness_witness_right - 0015
exists x - 0016
exists x1 - 0017
exists x2 - 0018
split - 0019
specialize le_succ (S x) - 0020
specialize le_succ (j) - 0021
apply le_succ - 0022
exact h_witness_witness_witness_left - 0023
split - 0024
exact h_witness_witness_witness_right_left - 0025
exact h_witness_witness_witness_right_right