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.
The exact G102 milestone is fully proved for every natural exponent and every modulus greater than one, including actual canonical digits, a beta-coded accumulator execution, modular-power correctness, and the formal bound k≤3·BitLen(e)+2. The independent T13 determinant/rank/integer-span substrate is now closed in the separate Alpha-v27 integer-linear-algebra branch. Full T13 proof · Alpha v27
Exact theorem in conservative defined notation
∀ b. ∀ c. ∀ l. ∀ d. BinaryDigitPrefix(b,c,l) → d = 0 ∨ d = 1 → ∃ x. ∃ y. Beta(x,y,l,d) ∧ (BinaryDigitPrefix(x,y,S l) ∧ (∀ z. ∀ n. Lt(z,l) → Beta(b,c,z,n) → Beta(x,y,z,n)))
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete unchanged native tactic proof
All 77 lines are the exact independently kernel-checked original script.
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
02Establish hcodeL7–12
Establish this local claim before using it. It is not an additional assumption.
- L7
have hcode : ∃ z. ∃ e. Beta(z,e,l,d) ∧ (∀ x. ∀ y. Lt(x,l) → Beta(b,c,x,y) → Beta(z,e,x,y))Definitions: BetaLtOriginal native command in the exact edition - L8
specialize binary_digit_code_recode_exists b - L9
specialize binary_digit_code_recode_exists c - L10
specialize binary_digit_code_recode_exists l - L11
specialize binary_digit_code_recode_exists d - L12
exact binary_digit_code_recode_exists
03Separate the logical casesL13–15
04Construct an explicit witnessL16–17
05Separate the logical casesL18–18
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L18
split
06Use earlier factsL19–19
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L19
exact hcode_witness_witness_left
07Separate the logical casesL20–20
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L20
split
08Fix variables and assumptionsL21–24
09Establish hcasesL25–29
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
10Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
cases hcases
11Calculate and transport equalitiesL31–32
12Establish hlastL33–41
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
13Establish hlastbitL42–46
14Establish hsourceL47–51
Establish this local claim before using it. It is not an additional assumption.
- L47
have hsource : exists value. (((exists ff_h_bd_append_source. ff_h_bd_append_source + S (value) = S ((S (i)) * c)) /\ exists ff_q_bd_append_source. b = ff_q_bd_append_source * S ((S (i)) * c) + (value))) - L48
specialize beta_at_exists b - L49
specialize beta_at_exists c - L50
specialize beta_at_exists i - L51
exact beta_at_exists
15Separate the logical casesL52–52
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L52
cases hsource
16Establish htransportL53–58
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hcode witness witness right.
- L53
have htransport : (((exists ff_h_bd_append_transport. ff_h_bd_append_transport + S (x2) = S ((S (i)) * x1)) /\ exists ff_q_bd_append_transport. x = ff_q_bd_append_transport * S ((S (i)) * x1) + (x2))) - L54
specialize hcode_witness_witness_right i - L55
specialize hcode_witness_witness_right x2 - L56
apply hcode_witness_witness_right - L57
exact hcases_right - L58
exact hsource_witness
17Establish holdvalueL59–67
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
18Establish holdbitL68–77
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hdigits.
Original defined command ledger · 77 lines
- 0001
intro b - 0002
intro c - 0003
intro l - 0004
intro d - 0005
intro hdigits - 0006
intro hdigit - 0007
have hcode : exists z e. ((((exists ff_h_bd_recode_terminal. ff_h_bd_recode_terminal + S (d) = S ((S (l)) * e)) /\ exists ff_q_bd_recode_terminal. z = ff_q_bd_recode_terminal * S ((S (l)) * e) + (d))) /\ (forall bd_index_recode_result bd_value_recode_result. (exists bd_gap_recode_result. bd_gap_recode_result + S bd_index_recode_result = l) -> (((exists ff_h_bd_recode_result_old. ff_h_bd_recode_result_old + S (bd_value_recode_result) = S ((S (bd_index_recode_result)) * c)) /\ exists ff_q_bd_recode_result_old. b = ff_q_bd_recode_result_old * S ((S (bd_index_recode_result)) * c) + (bd_value_recode_result))) -> (((exists ff_h_bd_recode_result_new. ff_h_bd_recode_result_new + S (bd_value_recode_result) = S ((S (bd_index_recode_result)) * e)) /\ exists ff_q_bd_recode_result_new. z = ff_q_bd_recode_result_new * S ((S (bd_index_recode_result)) * e) + (bd_value_recode_result))))) - 0008
specialize binary_digit_code_recode_exists b - 0009
specialize binary_digit_code_recode_exists c - 0010
specialize binary_digit_code_recode_exists l - 0011
specialize binary_digit_code_recode_exists d - 0012
exact binary_digit_code_recode_exists - 0013
cases hcode - 0014
cases hcode_witness - 0015
cases hcode_witness_witness - 0016
exists x - 0017
exists x1 - 0018
split - 0019
exact hcode_witness_witness_left - 0020
split - 0021
intro i - 0022
intro a - 0023
intro hbound - 0024
intro hentry - 0025
have hcases : i = l \/ exists gap. gap + S i = l - 0026
specialize finite_lt_succ_eq_or_lt l - 0027
specialize finite_lt_succ_eq_or_lt i - 0028
apply finite_lt_succ_eq_or_lt - 0029
exact hbound - 0030
cases hcases - 0031
rewrite hcases_left at hentry - 0032
rewrite hcases_left at hentry - 0033
have hlast : d = a - 0034
specialize beta_at_unique x - 0035
specialize beta_at_unique x1 - 0036
specialize beta_at_unique l - 0037
specialize beta_at_unique d - 0038
specialize beta_at_unique a - 0039
apply beta_at_unique - 0040
exact hcode_witness_witness_left - 0041
exact hentry - 0042
have hlastbit : d = 0 \/ d = 1 - 0043
exact hdigit - 0044
rewrite hlast at hlastbit - 0045
rewrite hlast at hlastbit - 0046
exact hlastbit - 0047
have hsource : exists value. (((exists ff_h_bd_append_source. ff_h_bd_append_source + S (value) = S ((S (i)) * c)) /\ exists ff_q_bd_append_source. b = ff_q_bd_append_source * S ((S (i)) * c) + (value))) - 0048
specialize beta_at_exists b - 0049
specialize beta_at_exists c - 0050
specialize beta_at_exists i - 0051
exact beta_at_exists - 0052
cases hsource - 0053
have htransport : (((exists ff_h_bd_append_transport. ff_h_bd_append_transport + S (x2) = S ((S (i)) * x1)) /\ exists ff_q_bd_append_transport. x = ff_q_bd_append_transport * S ((S (i)) * x1) + (x2))) - 0054
specialize hcode_witness_witness_right i - 0055
specialize hcode_witness_witness_right x2 - 0056
apply hcode_witness_witness_right - 0057
exact hcases_right - 0058
exact hsource_witness - 0059
have holdvalue : x2 = a - 0060
specialize beta_at_unique x - 0061
specialize beta_at_unique x1 - 0062
specialize beta_at_unique i - 0063
specialize beta_at_unique x2 - 0064
specialize beta_at_unique a - 0065
apply beta_at_unique - 0066
exact htransport - 0067
exact hentry - 0068
have holdbit : x2 = 0 \/ x2 = 1 - 0069
specialize hdigits i - 0070
specialize hdigits x2 - 0071
apply hdigits - 0072
exact hcases_right - 0073
exact hsource_witness - 0074
rewrite holdvalue at holdbit - 0075
rewrite holdvalue at holdbit - 0076
exact holdbit - 0077
exact hcode_witness_witness_right