Metamath Proof Explorer


Theorem mgm2nsgrplem3

Description: Lemma 3 for mgm2nsgrp . (Contributed by AV, 28-Jan-2020)

Ref Expression
Hypotheses mgm2nsgrp.s ⊢ S = A B
mgm2nsgrp.b ⊢ Base M = S
mgm2nsgrp.o ⊢ + M = x ∈ S , y ∈ S ⟼ if x = A ∧ y = A B A
mgm2nsgrp.p No typesetting found for |- .o. = ( +g ` M ) with typecode |-
Assertion mgm2nsgrplem3 Could not format assertion : No typesetting found for |- ( ( A e. V /\ B e. W ) -> ( A .o. ( A .o. B ) ) = B ) with typecode |-

Proof

Step Hyp Ref Expression
1 mgm2nsgrp.s ⊢ S = A B
2 mgm2nsgrp.b ⊢ Base M = S
3 mgm2nsgrp.o ⊢ + M = x ∈ S , y ∈ S ⟼ if x = A ∧ y = A B A
4 mgm2nsgrp.p Could not format .o. = ( +g ` M ) : No typesetting found for |- .o. = ( +g ` M ) with typecode |-
5 prid1g ⊢ A ∈ V → A ∈ A B
6 5 1 eleqtrrdi ⊢ A ∈ V → A ∈ S
7 prid2g ⊢ B ∈ W → B ∈ A B
8 7 1 eleqtrrdi ⊢ B ∈ W → B ∈ S
9 4 3 eqtri Could not format .o. = ( x e. S , y e. S |-> if ( ( x = A /\ y = A ) , B , A ) ) : No typesetting found for |- .o. = ( x e. S , y e. S |-> if ( ( x = A /\ y = A ) , B , A ) ) with typecode |-
10 9 a1i Could not format ( ( A e. S /\ B e. S ) -> .o. = ( x e. S , y e. S |-> if ( ( x = A /\ y = A ) , B , A ) ) ) : No typesetting found for |- ( ( A e. S /\ B e. S ) -> .o. = ( x e. S , y e. S |-> if ( ( x = A /\ y = A ) , B , A ) ) ) with typecode |-
11 simprl Could not format ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> x = A ) : No typesetting found for |- ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> x = A ) with typecode |-
12 simpr Could not format ( ( x = A /\ y = ( A .o. B ) ) -> y = ( A .o. B ) ) : No typesetting found for |- ( ( x = A /\ y = ( A .o. B ) ) -> y = ( A .o. B ) ) with typecode |-
13 ifeq1 ⊢ B = A → if x = A ∧ y = A B A = if x = A ∧ y = A A A
14 ifid ⊢ if x = A ∧ y = A A A = A
15 13 14 eqtrdi ⊢ B = A → if x = A ∧ y = A B A = A
16 15 a1d ⊢ B = A → x = A ∧ y = B → if x = A ∧ y = A B A = A
17 eqeq1 ⊢ y = B → y = A ↔ B = A
18 17 biimpcd ⊢ y = A → y = B → B = A
19 18 adantl ⊢ x = A ∧ y = A → y = B → B = A
20 19 com12 ⊢ y = B → x = A ∧ y = A → B = A
21 20 adantl ⊢ x = A ∧ y = B → x = A ∧ y = A → B = A
22 21 con3d ⊢ x = A ∧ y = B → ¬ B = A → ¬ x = A ∧ y = A
23 22 impcom ⊢ ¬ B = A ∧ x = A ∧ y = B → ¬ x = A ∧ y = A
24 23 iffalsed ⊢ ¬ B = A ∧ x = A ∧ y = B → if x = A ∧ y = A B A = A
25 24 ex ⊢ ¬ B = A → x = A ∧ y = B → if x = A ∧ y = A B A = A
26 16 25 pm2.61i ⊢ x = A ∧ y = B → if x = A ∧ y = A B A = A
27 26 adantl ⊢ A ∈ S ∧ B ∈ S ∧ x = A ∧ y = B → if x = A ∧ y = A B A = A
28 simpl ⊢ A ∈ S ∧ B ∈ S → A ∈ S
29 simpr ⊢ A ∈ S ∧ B ∈ S → B ∈ S
30 10 27 28 29 28 ovmpod Could not format ( ( A e. S /\ B e. S ) -> ( A .o. B ) = A ) : No typesetting found for |- ( ( A e. S /\ B e. S ) -> ( A .o. B ) = A ) with typecode |-
31 12 30 sylan9eqr Could not format ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> y = A ) : No typesetting found for |- ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> y = A ) with typecode |-
32 11 31 jca Could not format ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> ( x = A /\ y = A ) ) : No typesetting found for |- ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> ( x = A /\ y = A ) ) with typecode |-
33 32 iftrued Could not format ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> if ( ( x = A /\ y = A ) , B , A ) = B ) : No typesetting found for |- ( ( ( A e. S /\ B e. S ) /\ ( x = A /\ y = ( A .o. B ) ) ) -> if ( ( x = A /\ y = A ) , B , A ) = B ) with typecode |-
34 30 28 eqeltrd Could not format ( ( A e. S /\ B e. S ) -> ( A .o. B ) e. S ) : No typesetting found for |- ( ( A e. S /\ B e. S ) -> ( A .o. B ) e. S ) with typecode |-
35 10 33 28 34 29 ovmpod Could not format ( ( A e. S /\ B e. S ) -> ( A .o. ( A .o. B ) ) = B ) : No typesetting found for |- ( ( A e. S /\ B e. S ) -> ( A .o. ( A .o. B ) ) = B ) with typecode |-
36 6 8 35 syl2an Could not format ( ( A e. V /\ B e. W ) -> ( A .o. ( A .o. B ) ) = B ) : No typesetting found for |- ( ( A e. V /\ B e. W ) -> ( A .o. ( A .o. B ) ) = B ) with typecode |-