Metamath Proof Explorer


Theorem ismndd

Description: Deduce a monoid from its properties. (Contributed by Mario Carneiro, 6-Jan-2015)

Ref Expression
Hypotheses ismndd.b ⊢ φ → B = Base G
ismndd.p ⊢ φ → + ˙ = + G
ismndd.c ⊢ φ ∧ x ∈ B ∧ y ∈ B → x + ˙ y ∈ B
ismndd.a ⊢ φ ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → x + ˙ y + ˙ z = x + ˙ y + ˙ z
ismndd.z ⊢ φ → 0 ˙ ∈ B
ismndd.i ⊢ φ ∧ x ∈ B → 0 ˙ + ˙ x = x
ismndd.j ⊢ φ ∧ x ∈ B → x + ˙ 0 ˙ = x
Assertion ismndd ⊢ φ → G ∈ Mnd

Proof

Step Hyp Ref Expression
1 ismndd.b ⊢ φ → B = Base G
2 ismndd.p ⊢ φ → + ˙ = + G
3 ismndd.c ⊢ φ ∧ x ∈ B ∧ y ∈ B → x + ˙ y ∈ B
4 ismndd.a ⊢ φ ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → x + ˙ y + ˙ z = x + ˙ y + ˙ z
5 ismndd.z ⊢ φ → 0 ˙ ∈ B
6 ismndd.i ⊢ φ ∧ x ∈ B → 0 ˙ + ˙ x = x
7 ismndd.j ⊢ φ ∧ x ∈ B → x + ˙ 0 ˙ = x
8 3 3expb ⊢ φ ∧ x ∈ B ∧ y ∈ B → x + ˙ y ∈ B
9 simpll ⊢ φ ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → φ
10 simplrl ⊢ φ ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → x ∈ B
11 simplrr ⊢ φ ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → y ∈ B
12 simpr ⊢ φ ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → z ∈ B
13 9 10 11 12 4 syl13anc ⊢ φ ∧ x ∈ B ∧ y ∈ B ∧ z ∈ B → x + ˙ y + ˙ z = x + ˙ y + ˙ z
14 13 ralrimiva ⊢ φ ∧ x ∈ B ∧ y ∈ B → ∀ z ∈ B x + ˙ y + ˙ z = x + ˙ y + ˙ z
15 8 14 jca ⊢ φ ∧ x ∈ B ∧ y ∈ B → x + ˙ y ∈ B ∧ ∀ z ∈ B x + ˙ y + ˙ z = x + ˙ y + ˙ z
16 15 ralrimivva ⊢ φ → ∀ x ∈ B ∀ y ∈ B x + ˙ y ∈ B ∧ ∀ z ∈ B x + ˙ y + ˙ z = x + ˙ y + ˙ z
17 2 oveqd ⊢ φ → x + ˙ y = x + G y
18 17 1 eleq12d ⊢ φ → x + ˙ y ∈ B ↔ x + G y ∈ Base G
19 eqidd ⊢ φ → z = z
20 2 17 19 oveq123d ⊢ φ → x + ˙ y + ˙ z = x + G y + G z
21 eqidd ⊢ φ → x = x
22 2 oveqd ⊢ φ → y + ˙ z = y + G z
23 2 21 22 oveq123d ⊢ φ → x + ˙ y + ˙ z = x + G y + G z
24 20 23 eqeq12d ⊢ φ → x + ˙ y + ˙ z = x + ˙ y + ˙ z ↔ x + G y + G z = x + G y + G z
25 1 24 raleqbidv ⊢ φ → ∀ z ∈ B x + ˙ y + ˙ z = x + ˙ y + ˙ z ↔ ∀ z ∈ Base G x + G y + G z = x + G y + G z
26 18 25 anbi12d ⊢ φ → x + ˙ y ∈ B ∧ ∀ z ∈ B x + ˙ y + ˙ z = x + ˙ y + ˙ z ↔ x + G y ∈ Base G ∧ ∀ z ∈ Base G x + G y + G z = x + G y + G z
27 1 26 raleqbidv ⊢ φ → ∀ y ∈ B x + ˙ y ∈ B ∧ ∀ z ∈ B x + ˙ y + ˙ z = x + ˙ y + ˙ z ↔ ∀ y ∈ Base G x + G y ∈ Base G ∧ ∀ z ∈ Base G x + G y + G z = x + G y + G z
28 1 27 raleqbidv ⊢ φ → ∀ x ∈ B ∀ y ∈ B x + ˙ y ∈ B ∧ ∀ z ∈ B x + ˙ y + ˙ z = x + ˙ y + ˙ z ↔ ∀ x ∈ Base G ∀ y ∈ Base G x + G y ∈ Base G ∧ ∀ z ∈ Base G x + G y + G z = x + G y + G z
29 16 28 mpbid ⊢ φ → ∀ x ∈ Base G ∀ y ∈ Base G x + G y ∈ Base G ∧ ∀ z ∈ Base G x + G y + G z = x + G y + G z
30 5 1 eleqtrd ⊢ φ → 0 ˙ ∈ Base G
31 1 eleq2d ⊢ φ → x ∈ B ↔ x ∈ Base G
32 31 biimpar ⊢ φ ∧ x ∈ Base G → x ∈ B
33 2 adantr ⊢ φ ∧ x ∈ B → + ˙ = + G
34 33 oveqd ⊢ φ ∧ x ∈ B → 0 ˙ + ˙ x = 0 ˙ + G x
35 34 6 eqtr3d ⊢ φ ∧ x ∈ B → 0 ˙ + G x = x
36 33 oveqd ⊢ φ ∧ x ∈ B → x + ˙ 0 ˙ = x + G 0 ˙
37 36 7 eqtr3d ⊢ φ ∧ x ∈ B → x + G 0 ˙ = x
38 35 37 jca ⊢ φ ∧ x ∈ B → 0 ˙ + G x = x ∧ x + G 0 ˙ = x
39 32 38 syldan ⊢ φ ∧ x ∈ Base G → 0 ˙ + G x = x ∧ x + G 0 ˙ = x
40 39 ralrimiva ⊢ φ → ∀ x ∈ Base G 0 ˙ + G x = x ∧ x + G 0 ˙ = x
41 oveq1 ⊢ u = 0 ˙ → u + G x = 0 ˙ + G x
42 41 eqeq1d ⊢ u = 0 ˙ → u + G x = x ↔ 0 ˙ + G x = x
43 42 ovanraleqv ⊢ u = 0 ˙ → ∀ x ∈ Base G u + G x = x ∧ x + G u = x ↔ ∀ x ∈ Base G 0 ˙ + G x = x ∧ x + G 0 ˙ = x
44 43 rspcev ⊢ 0 ˙ ∈ Base G ∧ ∀ x ∈ Base G 0 ˙ + G x = x ∧ x + G 0 ˙ = x → ∃ u ∈ Base G ∀ x ∈ Base G u + G x = x ∧ x + G u = x
45 30 40 44 syl2anc ⊢ φ → ∃ u ∈ Base G ∀ x ∈ Base G u + G x = x ∧ x + G u = x
46 eqid ⊢ Base G = Base G
47 eqid ⊢ + G = + G
48 46 47 ismnd ⊢ G ∈ Mnd ↔ ∀ x ∈ Base G ∀ y ∈ Base G x + G y ∈ Base G ∧ ∀ z ∈ Base G x + G y + G z = x + G y + G z ∧ ∃ u ∈ Base G ∀ x ∈ Base G u + G x = x ∧ x + G u = x
49 29 45 48 sylanbrc ⊢ φ → G ∈ Mnd