Goal and scope
On the carrier G={0,1,2,3} a complete 4×4 Cayley table is given (the cell in row a, column b is a*b): row 0 is (1,2,3,0), row 1 is (2,3,0,1), row 2 is (3,0,1,2), row 3 is (0,1,2,3). Check closure, associativity, a unique identity and inverses in that order, then check a*b=b*a for all a, b, to decide whether (G,*) is a finite abelian group; find the orders of the elements 0 and 1 and the cyclic subgroups they generate; and use the symmetric table a∘b=|a−b| on {0,1,2} to show that a symmetric table cannot replace group qualification.
Stays inside the MKO's slice: carrier labels 0 to n−1 (here n=4) and a complete n×n table, classifying only an explicitly supplied finite table. Modular arithmetic modulo 4 gives the universal proofs, and exhaustive checks over the whole carrier serve as cross-checks. The structure theorem for finite abelian groups and other groups are not treated; the canonical MKO and its English edition are not changed.
Main derivation
S01 · definition
Before
(G,*)\ \text{finite abelian group}After
\text{closure}\land\text{assoc}\land\text{unique } e\land\text{inverses},\ \text{then}\ \forall a,b:\ a*b=b*aConditions: none
Rule: mko_fag · Uses: mko_fag, group_axioms
Leaf basis: mko_fag + def_unfold
By the MKO, classification has two stages: first use the complete table to check group qualification (closure, associativity, a unique identity, inverses), and only after all of these pass check commutativity a*b=b*a for all a, b. The order cannot be reversed: commutativity makes an 'abelian group' only of a structure that is already a group.
S02 · equivalent
Before
a*b\ \text{read from the table}After
a*b=(a+b+1)\bmod 4\ \text{for all 16 pairs}Conditions: none
Rule: table_read · Uses: G1, G2, table_read, mod_arith
Leaf basis: table_read + mod_arith + numeric_evaluation
Compare cell by cell: row a lists, for b=0,1,2,3, the remainders of a+1, a+2, a+3, a+4 on division by 4. For example row 0 gives 1, 2, 3 and 4 mod 4=0, that is (1,2,3,0); row 2 gives the remainders of 3, 4, 5, 6, that is (3,0,1,2). All 16 cells of the four rows agree with (a+b+1) mod 4. This is an exhaustive comparison over the complete table, not a sample; afterwards modular arithmetic can argue for all elements at once.
S03 · implies
Before
a,b\in G
After
a*b=(a+b+1)\bmod 4\in\{0,1,2,3\}=GConditions: none
Rule: mod_arith · Uses: S02, mod_arith
Leaf basis: mod_arith + forall_intro
Closure: a remainder on division by 4 always lies between 0 and 3, so every a*b lies in G. Reading the table gives the same: all 16 cells are among 0, 1, 2, 3.
S04 · implies
Before
(a*b)*c,\ a*(b*c)
After
(a*b)*c=a*(b*c)\ \text{for all } a,b,c\in GConditions: none
Rule: mod_arith · Uses: S02, S03, mod_arith
Leaf basis: mod_arith + add_assoc + add_comm + forall_intro
Associativity must hold for all 64 triples (a,b,c). Instead of listing them, modular arithmetic proves it at once: both sides are congruent to a+b+c+2 modulo 4 (S04.1, S04.2), and both lie between 0 and 3, so they are equal (S04.3). N3 additionally cross-checks all 64 triples exhaustively.
S05 · implies
Before
3*b,\ a*3
After
3*b=(b+4)\bmod 4=b,\ a*3=(a+4)\bmod 4=a
Conditions: none
Rule: mod_arith · Uses: S02, mod_arith
Leaf basis: mod_arith + forall_intro
Take e=3: 3*b=(3+b+1) mod 4=(b+4) mod 4=b, since b lies between 0 and 3 and b+4≡b; likewise a*3=a. Row 3 of the table, (0,1,2,3), and column 3 both reproduce the labels, consistently. Note that the identity is 3, not the label 0: 0*0=1≠0.
S06 · implies
Before
e=3\ \text{is an identity}After
e=3\ \text{is the unique identity}Conditions: none
Rule: L_id_unique · Uses: S05, L_id_unique
Leaf basis: L_id_unique
The MKO requires the identity to be unique. By Lemma L_id_unique (proved in S06.1), any other two-sided identity e′ equals 3.
S07 · implies
Before
a\in G
After
a^{-1}=(2-a)\bmod 4:\ 0\leftrightarrow 2,\ 1\leftrightarrow 1,\ 3\leftrightarrow 3Conditions: none
Rule: mod_arith · Uses: S02, S05, mod_arith
Leaf basis: mod_arith + forall_intro
For b=(2−a) mod 4: a*b≡a+(2−a)+1=3 (mod 4), and a*b lies between 0 and 3, so a*b=3=e; likewise b*a=3. Concretely: 0*2=3, 1*1=3, 2*0=3, 3*3=3, matching the table. Every element has an inverse.
S08 · implies
Before
\text{closure, associativity, unique } e,\ \text{inverses}After
(G,*)\ \text{is a group}Conditions: none
Rule: group_axioms · Uses: S03, S04, S06, S07, group_axioms
Leaf basis: group_axioms + and_intro_elim
All four items of group qualification are proved (S03, S04, S06, S07), so by the group axioms (G,*) is a group. Only now does the second stage begin.
S09 · implies
Before
a*b=(a+b+1)\bmod 4
After
a*b=(b+a+1)\bmod 4=b*a\ \text{for all } a,b\in GConditions: none
Rule: add_comm · Uses: S02, S08, add_comm
Leaf basis: add_comm + forall_intro
Integer addition is commutative, a+b+1=b+a+1, so a*b=b*a; a and b are arbitrary, covering all 16 pairs (including the 6 unordered off-diagonal pairs), not just a few samples. Equivalently, with rows and columns in the same order, the table is symmetric about its main diagonal; but this symmetry signals an abelian group only after the group qualification of S08.
S10 · implies
Before
(G,*)\ \text{group},\ \forall a,b:\ a*b=b*aAfter
(G,*)\ \text{is a finite abelian group of order } 4Conditions: none
Rule: mko_fag · Uses: S08, S09, mko_fag
Leaf basis: mko_fag + and_intro_elim
Both stages pass: (G,*) is a group (S08) and all elements commute pairwise (S09). By the MKO, (G,*) is a finite abelian group of order |G|=4.
S11 · implies
Before
0^1=0
After
0^2=0*0=1,\ 0^3=1*0=2,\ 0^4=2*0=3=e;\ \operatorname{ord}(0)=4Conditions: none
Rule: power_def · Uses: S02, S05, power_def
Leaf basis: power_def + table_read
Compute with the same group operation, by the definition of powers: 0²=0*0=1, 0³=0²*0=1*0=2, 0⁴=0³*0=2*0=3=e. None of 0¹, 0², 0³ equals e=3, so the order of 0 is 4. The order must be computed relative to the identity 3, not the label 0 (MKO para1).
S12 · implies
Before
\langle 0\rangle,\ 1^2=1*1
After
\langle 0\rangle=\{0,1,2,3\}=G;\ 1^2=3=e,\ \operatorname{ord}(1)=2,\ \langle 1\rangle=\{1,3\}Conditions: none
Rule: power_def · Uses: S11, S02, S05, power_def
Leaf basis: power_def + table_read
The powers of 0 are 0, 1, 2, 3 and then repeat, so ⟨0⟩=G and the group defined by this table is cyclic. On the other hand 1¹=1≠e and 1²=1*1=3=e, so the order of 1 is 2 and ⟨1⟩={1,3}. The label 1 is not a generator; these subgroups belong only to this specified finite group (MKO para2).
S13 · implies
Before
a\circ b=|a-b|\ \text{on}\ K=\{0,1,2\}After
(1\circ 1)\circ 2=2\neq 0=1\circ(1\circ 2);\ (K,\circ)\ \text{is not a group}Conditions: none
Rule: quantifier_negation · Uses: G3, abs_rules, quantifier_negation
Leaf basis: quantifier_negation + abs_rules + numeric_evaluation
Contrast table: |a−b|=|b−a|, so the table is symmetric about its diagonal; 0 is an identity (|0−b|=b); every element is its own inverse (a∘a=0). But (1∘1)∘2=0∘2=2 while 1∘(1∘2)=1∘1=0, so associativity fails. One counterexample refutes 'associative for all triples', so (K,∘) is not a group, and hence not an abelian group. A symmetric table cannot replace group qualification.
Substeps and lemmas
S04.1 · implies
Before
(a*b)*c=\big((a*b)+c+1\big)\bmod 4
After
(a*b)*c\equiv(a+b+1)+c+1=a+b+c+2\pmod 4
Conditions: none
Rule: mod_arith · Uses: S02, mod_arith, add_assoc
Leaf basis: mod_arith + add_assoc + add_comm
By the formula (a*b)*c=((a*b)+c+1) mod 4, it is congruent to (a*b)+c+1; also a*b≡a+b+1, and congruence is compatible with addition, so (a*b)*c≡a+b+1+c+1=a+b+c+2 (mod 4).
S04.2 · implies
Before
a*(b*c)=\big(a+(b*c)+1\big)\bmod 4
After
a*(b*c)\equiv a+(b+c+1)+1=a+b+c+2\pmod 4
Conditions: none
Rule: mod_arith · Uses: S02, mod_arith, add_assoc
Leaf basis: mod_arith + add_assoc
Likewise, a*(b*c)≡a+(b*c)+1≡a+(b+c+1)+1=a+b+c+2 (mod 4).
S04.3 · implies
Before
(a*b)*c\equiv a*(b*c)\pmod 4,\ \text{both in}\ \{0,1,2,3\}After
(a*b)*c=a*(b*c)
Conditions: none
Rule: mod_arith · Uses: S04.1, S04.2, S03, mod_arith
Leaf basis: mod_arith
Transitivity of congruence gives (a*b)*c≡a*(b*c); by S03 both lie between 0 and 3, and two integers in this range that are congruent are equal.
S06.1 · implies
Before
e,\ e'\ \text{two-sided identities}After
e=e*e'=e'
Conditions: none
Rule: eq_refl_symm_trans · Uses: eq_refl_symm_trans
Leaf basis: eq_refl_symm_trans + def_unfold
Since e′ is an identity, e*e′=e; since e is an identity, e*e′=e′. By symmetry and transitivity of equality, e=e′. This proves Lemma L_id_unique, valid for any binary operation and without associativity.