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 p a b x y t. (exists fms_u_mod fms_v_mod. (a+t) + (p) * fms_u_mod = (x) + (p) * fms_v_mod) -> (exists fms_u_mod fms_v_mod. (y+t) + (p) * fms_u_mod = (b) + (p) * fms_v_mod) -> (exists fms_u_mod fms_v_mod. (a+b) + (p) * fms_u_mod = (x+y) + (p) * fms_v_mod)Constructive proof overview
Generated structural guide
Moving a common shift between two summands preserves their exact modular sum.
The unchanged tactic script uses 6 declared prerequisites and contains 50 exact native proof lines.
Alpha v34 checked-use · first admitted v27 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
mod_eq_add Stable theorem; checked-use authorized mod_eq_refl Stable theorem; checked-use authorized mod_eq_symm Stable theorem; checked-use authorized mod_eq_trans Stable theorem; checked-use authorized add_assoc Stable theorem; checked-use authorized add_comm 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.
01Fix variables and assumptionsL1–8
02Use earlier factsL9–18
Instantiate or apply named facts and discharge the corresponding proof obligations.
03Use earlier factsL19–27
04Establish heL28–37
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add comm.
05Use earlier factsL38–39
06Calculate and transport equalitiesL40–40
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L40
rewrite he
07Use earlier factsL41–50
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original exact command ledger · 50 lines
- 0001
intro p - 0002
intro a - 0003
intro b - 0004
intro x - 0005
intro y - 0006
intro t - 0007
intro ha - 0008
intro hb - 0009
specialize mod_eq_trans p - 0010
specialize mod_eq_trans a+b - 0011
specialize mod_eq_trans a+(y+t) - 0012
specialize mod_eq_trans x+y - 0013
apply mod_eq_trans - 0014
specialize mod_eq_add p - 0015
specialize mod_eq_add a - 0016
specialize mod_eq_add a - 0017
specialize mod_eq_add b - 0018
specialize mod_eq_add y+t - 0019
apply mod_eq_add - 0020
specialize mod_eq_refl p - 0021
specialize mod_eq_refl a - 0022
apply mod_eq_refl - 0023
specialize mod_eq_symm p - 0024
specialize mod_eq_symm y+t - 0025
specialize mod_eq_symm b - 0026
apply mod_eq_symm - 0027
exact hb - 0028
have he : a+(y+t)=(a+t)+y - 0029
trans a+(t+y) - 0030
congr - 0031
refl - 0032
specialize add_comm y - 0033
specialize add_comm t - 0034
apply add_comm - 0035
symm - 0036
specialize add_assoc a - 0037
specialize add_assoc t - 0038
specialize add_assoc y - 0039
apply add_assoc - 0040
rewrite he - 0041
specialize mod_eq_add p - 0042
specialize mod_eq_add a+t - 0043
specialize mod_eq_add x - 0044
specialize mod_eq_add y - 0045
specialize mod_eq_add y - 0046
apply mod_eq_add - 0047
exact ha - 0048
specialize mod_eq_refl p - 0049
specialize mod_eq_refl y - 0050
apply mod_eq_refl