Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Each statement retains its explicit modulus, coprimality and divisibility assumptions. These twelve arithmetic laws do not assert all order, primitive-root, Carmichael, exponential or simultaneous-polynomial congruence goals are finished.
Exact theorem in conservative defined notation
∀ a. ∀ m. ∀ g. ∀ A. ∀ M. ∀ b. ∀ r. ∀ x. ¬m = 0 → IsGCD(g,a,m) → a = g · A → m = g · M → Lt(r,M) → ModEq(m,a · r,b) → (Lt(x,m) ∧ ModEq(m,a · x,b) → ∃ y. Lt(y,g) ∧ x = r + M · y) ∧ ((∃ y. Lt(y,g) ∧ x = r + M · y) → Lt(x,m) ∧ ModEq(m,a · x,b))
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 57 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay 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 (2)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–14
03Establish hcL15–24
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply linear congruence solution class iff reduced modulus.
- L15
have hc : (ModEq(m,a · x,b) → ModEq(M,x,r)) ∧ (ModEq(M,x,r) → ModEq(m,a · x,b))Definitions: ModEq(m,a · x,b)ModEq(M,x,r)Original native command in the exact edition - L16
specialize linear_congruence_solution_class_iff_reduced_modulus (a) - L17
specialize linear_congruence_solution_class_iff_reduced_modulus (m) - L18
specialize linear_congruence_solution_class_iff_reduced_modulus (g) - L19
specialize linear_congruence_solution_class_iff_reduced_modulus (A) - L20
specialize linear_congruence_solution_class_iff_reduced_modulus (M) - L21
specialize linear_congruence_solution_class_iff_reduced_modulus (b) - L22
specialize linear_congruence_solution_class_iff_reduced_modulus (r) - L23
specialize linear_congruence_solution_class_iff_reduced_modulus (x) - L24
apply linear_congruence_solution_class_iff_reduced_modulus
04Use earlier factsL25–29
05Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
cases hc
06Establish hpL31–37
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply linear congruence bounded residue parametrized.
- L31
have hp : (Lt(x,g · M) ∧ ModEq(M,x,r) → ∃ y. Lt(y,g) ∧ x = r + M · y) ∧ ((∃ y. Lt(y,g) ∧ x = r + M · y) → Lt(x,g · M) ∧ ModEq(M,x,r))Definitions: Lt(x,g · M)ModEq(M,x,r)Lt(y,g)Original native command in the exact edition - L32
specialize linear_congruence_bounded_residue_parametrized (M) - L33
specialize linear_congruence_bounded_residue_parametrized (g) - L34
specialize linear_congruence_bounded_residue_parametrized (r) - L35
specialize linear_congruence_bounded_residue_parametrized (x) - L36
apply linear_congruence_bounded_residue_parametrized - L37
exact hr
07Separate the logical casesL38–39
08Fix variables and assumptionsL40–40
Work with arbitrary variables or the premises of the current implication.
- L40
intro h
09Separate the logical casesL41–41
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L41
cases h
10Use earlier factsL42–42
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L42
apply hp_left
11Separate the logical casesL43–43
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L43
split
12Calculate and transport equalitiesL44–44
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L44
rewrite <- hm
13Use earlier factsL45–47
14Fix variables and assumptionsL48–48
Work with arbitrary variables or the premises of the current implication.
- L48
intro h
15Establish heL49–51
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hp right.
- L49
have he : Lt(x,g · M) ∧ ModEq(M,x,r)Definitions: Lt(x,g · M)ModEq(M,x,r)Original native command in the exact edition - L50
apply hp_right - L51
exact h
16Separate the logical casesL52–53
17Calculate and transport equalitiesL54–54
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L54
rewrite hm
Original defined command ledger · 57 lines
- 0001
intro a - 0002
intro m - 0003
intro g - 0004
intro A - 0005
intro M - 0006
intro b - 0007
intro r - 0008
intro x - 0009
intro hm0 - 0010
intro hg - 0011
intro ha - 0012
intro hm - 0013
intro hr - 0014
intro hs - 0015
have hc : (ModEq(m,a · x,b) → ModEq(M,x,r)) ∧ (ModEq(M,x,r) → ModEq(m,a · x,b)) - 0016
specialize linear_congruence_solution_class_iff_reduced_modulus (a) - 0017
specialize linear_congruence_solution_class_iff_reduced_modulus (m) - 0018
specialize linear_congruence_solution_class_iff_reduced_modulus (g) - 0019
specialize linear_congruence_solution_class_iff_reduced_modulus (A) - 0020
specialize linear_congruence_solution_class_iff_reduced_modulus (M) - 0021
specialize linear_congruence_solution_class_iff_reduced_modulus (b) - 0022
specialize linear_congruence_solution_class_iff_reduced_modulus (r) - 0023
specialize linear_congruence_solution_class_iff_reduced_modulus (x) - 0024
apply linear_congruence_solution_class_iff_reduced_modulus - 0025
exact hm0 - 0026
exact hg - 0027
exact ha - 0028
exact hm - 0029
exact hs - 0030
cases hc - 0031
have hp : (Lt(x,g · M) ∧ ModEq(M,x,r) → ∃ y. Lt(y,g) ∧ x = r + M · y) ∧ ((∃ y. Lt(y,g) ∧ x = r + M · y) → Lt(x,g · M) ∧ ModEq(M,x,r)) - 0032
specialize linear_congruence_bounded_residue_parametrized (M) - 0033
specialize linear_congruence_bounded_residue_parametrized (g) - 0034
specialize linear_congruence_bounded_residue_parametrized (r) - 0035
specialize linear_congruence_bounded_residue_parametrized (x) - 0036
apply linear_congruence_bounded_residue_parametrized - 0037
exact hr - 0038
cases hp - 0039
split - 0040
intro h - 0041
cases h - 0042
apply hp_left - 0043
split - 0044
rewrite <- hm - 0045
exact h_left - 0046
apply hc_left - 0047
exact h_right - 0048
intro h - 0049
have he : Lt(x,g · M) ∧ ModEq(M,x,r) - 0050
apply hp_right - 0051
exact h - 0052
cases he - 0053
split - 0054
rewrite hm - 0055
exact he_left - 0056
apply hc_right - 0057
exact he_right