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.
Historical partial components only: this chapter proves canonical solutions for finite positive pairwise-coprime systems and exact LCM solution classes. G011 is now closed in the separate Alpha-v27 generalized-crt branch for arbitrary pairwise-compatible systems, including noncoprime moduli. Full G011 proof · Alpha v27
Exact theorem in conservative defined notation
∀ r. ∀ s. ∀ b. ∀ c. ∀ l. ∀ x. ∀ a. ∀ m. CRTPrefixSolution(r,s,b,c,l,x) → Beta(r,s,l,a) → Beta(b,c,l,m) → ModEq(m,x,a) → CRTPrefixSolution(r,s,b,c,S l,x)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete unchanged native tactic proof
All 57 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.
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–18
03Establish hsplitL19–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
04Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
cases hsplit
05Calculate and transport equalitiesL25–28
06Establish hresidueL29–37
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
07Establish hmodulusL38–47
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta at unique.
08Calculate and transport equalitiesL48–49
Original defined command ledger · 57 lines
- 0001
intro r - 0002
intro s - 0003
intro b - 0004
intro c - 0005
intro l - 0006
intro x - 0007
intro a - 0008
intro m - 0009
intro hprefix - 0010
intro ha - 0011
intro hm - 0012
intro hnew - 0013
intro i - 0014
intro q - 0015
intro n - 0016
intro hi - 0017
intro hq - 0018
intro hn - 0019
have hsplit : i = l \/ exists gap. gap + S i = l - 0020
specialize finite_lt_succ_eq_or_lt l - 0021
specialize finite_lt_succ_eq_or_lt i - 0022
apply finite_lt_succ_eq_or_lt - 0023
exact hi - 0024
cases hsplit - 0025
rewrite hsplit_left at hq - 0026
rewrite hsplit_left at hq - 0027
rewrite hsplit_left at hn - 0028
rewrite hsplit_left at hn - 0029
have hresidue : q = a - 0030
specialize beta_at_unique r - 0031
specialize beta_at_unique s - 0032
specialize beta_at_unique l - 0033
specialize beta_at_unique q - 0034
specialize beta_at_unique a - 0035
apply beta_at_unique - 0036
exact hq - 0037
exact ha - 0038
have hmodulus : n = m - 0039
specialize beta_at_unique b - 0040
specialize beta_at_unique c - 0041
specialize beta_at_unique l - 0042
specialize beta_at_unique n - 0043
specialize beta_at_unique m - 0044
apply beta_at_unique - 0045
exact hn - 0046
exact hm - 0047
rewrite hmodulus - 0048
rewrite hmodulus - 0049
rewrite hresidue - 0050
exact hnew - 0051
specialize hprefix i - 0052
specialize hprefix q - 0053
specialize hprefix n - 0054
apply hprefix - 0055
exact hsplit_right - 0056
exact hq - 0057
exact hn