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 l i. (forall ff_i_fms_bits. (exists ff_lt_fms_bits_bound. ff_lt_fms_bits_bound + S ff_i_fms_bits = (l)) -> exists ff_bit_fms_bits. ((((exists ff_h_fms_bits_decoded. ff_h_fms_bits_decoded + S (ff_bit_fms_bits) = S ((S (ff_i_fms_bits)) * (c))) /\ exists ff_q_fms_bits_decoded. (b) = ff_q_fms_bits_decoded * S ((S (ff_i_fms_bits)) * (c)) + (ff_bit_fms_bits))) /\ (ff_bit_fms_bits = 0 \/ ff_bit_fms_bits = 1))) -> (exists fms_gap_lt. fms_gap_lt + S (i) = (l)) -> (((exists fs_h_fms_member_yes. fs_h_fms_member_yes + S (1) = S ((S (i)) * c)) /\ exists fs_q_fms_member_yes. b = fs_q_fms_member_yes * S ((S (i)) * c) + (1))) \/ ~(((exists fs_h_fms_member_no. fs_h_fms_member_no + S (1) = S ((S (i)) * c)) /\ exists fs_q_fms_member_no. b = fs_q_fms_member_no * S ((S (i)) * c) + (1)))Constructive proof overview
Generated structural guide
Membership in a genuine finite characteristic set is constructively decidable.
The unchanged tactic script uses 4 declared prerequisites and contains 40 exact native proof lines.
Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
beta_at_exists Stable theorem; checked-use authorized CD0001 finite_bit_entry_cases beta_at_unique Stable theorem; checked-use authorized succ_ne_zero 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.
Named ingredients (1)
01Fix variables and assumptionsL1–6
02Use earlier factsL7–9
03Separate the logical casesL10–10
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L10
cases beta_at_exists
04Establish hcaseL11–20
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite bit entry cases.
- L11
have hcase : x=0 \/ x=1 - L12
specialize finite_bit_entry_cases b - L13
specialize finite_bit_entry_cases c - L14
specialize finite_bit_entry_cases l - L15
specialize finite_bit_entry_cases i - L16
specialize finite_bit_entry_cases x - L17
apply finite_bit_entry_cases - L18
exact hbits - L19
exact hi - L20
exact beta_at_exists_witness
05Separate the logical casesL21–22
06Fix variables and assumptionsL23–23
Work with arbitrary variables or the premises of the current implication.
- L23
intro hone
07Establish heqL24–33
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
08Use earlier factsL34–36
09Separate the logical casesL37–37
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
left
10Calculate and transport equalitiesL38–39
11Use earlier factsL40–40
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L40
exact beta_at_exists_witness
Original exact command ledger · 40 lines
- 0001
intro b - 0002
intro c - 0003
intro l - 0004
intro i - 0005
intro hbits - 0006
intro hi - 0007
specialize beta_at_exists b - 0008
specialize beta_at_exists c - 0009
specialize beta_at_exists i - 0010
cases beta_at_exists - 0011
have hcase : x=0 \/ x=1 - 0012
specialize finite_bit_entry_cases b - 0013
specialize finite_bit_entry_cases c - 0014
specialize finite_bit_entry_cases l - 0015
specialize finite_bit_entry_cases i - 0016
specialize finite_bit_entry_cases x - 0017
apply finite_bit_entry_cases - 0018
exact hbits - 0019
exact hi - 0020
exact beta_at_exists_witness - 0021
cases hcase - 0022
right - 0023
intro hone - 0024
have heq : 1=x - 0025
specialize beta_at_unique b - 0026
specialize beta_at_unique c - 0027
specialize beta_at_unique i - 0028
specialize beta_at_unique 1 - 0029
specialize beta_at_unique x - 0030
apply beta_at_unique - 0031
exact hone - 0032
exact beta_at_exists_witness - 0033
rewrite hcase_left at heq - 0034
specialize succ_ne_zero 0 - 0035
apply succ_ne_zero - 0036
exact heq - 0037
left - 0038
rewrite hcase_right at beta_at_exists_witness - 0039
rewrite hcase_right at beta_at_exists_witness - 0040
exact beta_at_exists_witness