Metamath Proof Explorer


Theorem insubm

Description: The intersection of two submonoids is a submonoid. (Contributed by AV, 25-Feb-2024)

Ref Expression
Assertion insubm
|- ( ( A e. ( SubMnd ` M ) /\ B e. ( SubMnd ` M ) ) -> ( A i^i B ) e. ( SubMnd ` M ) )

Proof

Step Hyp Ref Expression
1 submrcl
 |-  ( A e. ( SubMnd ` M ) -> M e. Mnd )
2 ssinss1
 |-  ( A C_ ( Base ` M ) -> ( A i^i B ) C_ ( Base ` M ) )
3 2 3ad2ant1
 |-  ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) -> ( A i^i B ) C_ ( Base ` M ) )
4 3 ad2antrl
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> ( A i^i B ) C_ ( Base ` M ) )
5 elin
 |-  ( ( 0g ` M ) e. ( A i^i B ) <-> ( ( 0g ` M ) e. A /\ ( 0g ` M ) e. B ) )
6 5 simplbi2com
 |-  ( ( 0g ` M ) e. B -> ( ( 0g ` M ) e. A -> ( 0g ` M ) e. ( A i^i B ) ) )
7 6 3ad2ant2
 |-  ( ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) -> ( ( 0g ` M ) e. A -> ( 0g ` M ) e. ( A i^i B ) ) )
8 7 com12
 |-  ( ( 0g ` M ) e. A -> ( ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) -> ( 0g ` M ) e. ( A i^i B ) ) )
9 8 3ad2ant2
 |-  ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) -> ( ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) -> ( 0g ` M ) e. ( A i^i B ) ) )
10 9 imp
 |-  ( ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) -> ( 0g ` M ) e. ( A i^i B ) )
11 10 adantl
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> ( 0g ` M ) e. ( A i^i B ) )
12 elin
 |-  ( x e. ( A i^i B ) <-> ( x e. A /\ x e. B ) )
13 elin
 |-  ( y e. ( A i^i B ) <-> ( y e. A /\ y e. B ) )
14 12 13 anbi12i
 |-  ( ( x e. ( A i^i B ) /\ y e. ( A i^i B ) ) <-> ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) )
15 oveq1
 |-  ( a = x -> ( a ( +g ` M ) b ) = ( x ( +g ` M ) b ) )
16 15 eleq1d
 |-  ( a = x -> ( ( a ( +g ` M ) b ) e. A <-> ( x ( +g ` M ) b ) e. A ) )
17 oveq2
 |-  ( b = y -> ( x ( +g ` M ) b ) = ( x ( +g ` M ) y ) )
18 17 eleq1d
 |-  ( b = y -> ( ( x ( +g ` M ) b ) e. A <-> ( x ( +g ` M ) y ) e. A ) )
19 simpl
 |-  ( ( x e. A /\ x e. B ) -> x e. A )
20 19 adantr
 |-  ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> x e. A )
21 eqidd
 |-  ( ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) /\ a = x ) -> A = A )
22 simpl
 |-  ( ( y e. A /\ y e. B ) -> y e. A )
23 22 adantl
 |-  ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> y e. A )
24 16 18 20 21 23 rspc2vd
 |-  ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A -> ( x ( +g ` M ) y ) e. A ) )
25 24 com12
 |-  ( A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. A ) )
26 25 3ad2ant3
 |-  ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. A ) )
27 26 ad2antrl
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. A ) )
28 27 imp
 |-  ( ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) /\ ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) ) -> ( x ( +g ` M ) y ) e. A )
29 15 eleq1d
 |-  ( a = x -> ( ( a ( +g ` M ) b ) e. B <-> ( x ( +g ` M ) b ) e. B ) )
30 17 eleq1d
 |-  ( b = y -> ( ( x ( +g ` M ) b ) e. B <-> ( x ( +g ` M ) y ) e. B ) )
31 simpr
 |-  ( ( x e. A /\ x e. B ) -> x e. B )
32 31 adantr
 |-  ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> x e. B )
33 eqidd
 |-  ( ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) /\ a = x ) -> B = B )
34 simpr
 |-  ( ( y e. A /\ y e. B ) -> y e. B )
35 34 adantl
 |-  ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> y e. B )
36 29 30 32 33 35 rspc2vd
 |-  ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B -> ( x ( +g ` M ) y ) e. B ) )
37 36 com12
 |-  ( A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. B ) )
38 37 3ad2ant3
 |-  ( ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. B ) )
39 38 adantl
 |-  ( ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. B ) )
40 39 adantl
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. B ) )
41 40 imp
 |-  ( ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) /\ ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) ) -> ( x ( +g ` M ) y ) e. B )
42 28 41 elind
 |-  ( ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) /\ ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) ) -> ( x ( +g ` M ) y ) e. ( A i^i B ) )
43 42 ex
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> ( ( ( x e. A /\ x e. B ) /\ ( y e. A /\ y e. B ) ) -> ( x ( +g ` M ) y ) e. ( A i^i B ) ) )
44 14 43 syl5bi
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> ( ( x e. ( A i^i B ) /\ y e. ( A i^i B ) ) -> ( x ( +g ` M ) y ) e. ( A i^i B ) ) )
45 44 ralrimivv
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> A. x e. ( A i^i B ) A. y e. ( A i^i B ) ( x ( +g ` M ) y ) e. ( A i^i B ) )
46 4 11 45 3jca
 |-  ( ( M e. Mnd /\ ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) -> ( ( A i^i B ) C_ ( Base ` M ) /\ ( 0g ` M ) e. ( A i^i B ) /\ A. x e. ( A i^i B ) A. y e. ( A i^i B ) ( x ( +g ` M ) y ) e. ( A i^i B ) ) )
47 46 ex
 |-  ( M e. Mnd -> ( ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) -> ( ( A i^i B ) C_ ( Base ` M ) /\ ( 0g ` M ) e. ( A i^i B ) /\ A. x e. ( A i^i B ) A. y e. ( A i^i B ) ( x ( +g ` M ) y ) e. ( A i^i B ) ) ) )
48 eqid
 |-  ( Base ` M ) = ( Base ` M )
49 eqid
 |-  ( 0g ` M ) = ( 0g ` M )
50 eqid
 |-  ( +g ` M ) = ( +g ` M )
51 48 49 50 issubm
 |-  ( M e. Mnd -> ( A e. ( SubMnd ` M ) <-> ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) ) )
52 48 49 50 issubm
 |-  ( M e. Mnd -> ( B e. ( SubMnd ` M ) <-> ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) )
53 51 52 anbi12d
 |-  ( M e. Mnd -> ( ( A e. ( SubMnd ` M ) /\ B e. ( SubMnd ` M ) ) <-> ( ( A C_ ( Base ` M ) /\ ( 0g ` M ) e. A /\ A. a e. A A. b e. A ( a ( +g ` M ) b ) e. A ) /\ ( B C_ ( Base ` M ) /\ ( 0g ` M ) e. B /\ A. a e. B A. b e. B ( a ( +g ` M ) b ) e. B ) ) ) )
54 48 49 50 issubm
 |-  ( M e. Mnd -> ( ( A i^i B ) e. ( SubMnd ` M ) <-> ( ( A i^i B ) C_ ( Base ` M ) /\ ( 0g ` M ) e. ( A i^i B ) /\ A. x e. ( A i^i B ) A. y e. ( A i^i B ) ( x ( +g ` M ) y ) e. ( A i^i B ) ) ) )
55 47 53 54 3imtr4d
 |-  ( M e. Mnd -> ( ( A e. ( SubMnd ` M ) /\ B e. ( SubMnd ` M ) ) -> ( A i^i B ) e. ( SubMnd ` M ) ) )
56 55 expd
 |-  ( M e. Mnd -> ( A e. ( SubMnd ` M ) -> ( B e. ( SubMnd ` M ) -> ( A i^i B ) e. ( SubMnd ` M ) ) ) )
57 1 56 mpcom
 |-  ( A e. ( SubMnd ` M ) -> ( B e. ( SubMnd ` M ) -> ( A i^i B ) e. ( SubMnd ` M ) ) )
58 57 imp
 |-  ( ( A e. ( SubMnd ` M ) /\ B e. ( SubMnd ` M ) ) -> ( A i^i B ) e. ( SubMnd ` M ) )