Metamath Proof Explorer


Theorem subsubm

Description: A submonoid of a submonoid is a submonoid. (Contributed by Mario Carneiro, 21-Jun-2015)

Ref Expression
Hypothesis subsubm.h 𝐻 = ( 𝐺s 𝑆 )
Assertion subsubm ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) → ( 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ↔ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) )

Proof

Step Hyp Ref Expression
1 subsubm.h 𝐻 = ( 𝐺s 𝑆 )
2 eqid ( Base ‘ 𝐻 ) = ( Base ‘ 𝐻 )
3 2 submss ( 𝐴 ∈ ( SubMnd ‘ 𝐻 ) → 𝐴 ⊆ ( Base ‘ 𝐻 ) )
4 3 adantl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → 𝐴 ⊆ ( Base ‘ 𝐻 ) )
5 1 submbas ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) → 𝑆 = ( Base ‘ 𝐻 ) )
6 5 adantr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → 𝑆 = ( Base ‘ 𝐻 ) )
7 4 6 sseqtrrd ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → 𝐴𝑆 )
8 eqid ( Base ‘ 𝐺 ) = ( Base ‘ 𝐺 )
9 8 submss ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) → 𝑆 ⊆ ( Base ‘ 𝐺 ) )
10 9 adantr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → 𝑆 ⊆ ( Base ‘ 𝐺 ) )
11 7 10 sstrd ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → 𝐴 ⊆ ( Base ‘ 𝐺 ) )
12 eqid ( 0g𝐺 ) = ( 0g𝐺 )
13 1 12 subm0 ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) → ( 0g𝐺 ) = ( 0g𝐻 ) )
14 13 adantr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 0g𝐺 ) = ( 0g𝐻 ) )
15 eqid ( 0g𝐻 ) = ( 0g𝐻 )
16 15 subm0cl ( 𝐴 ∈ ( SubMnd ‘ 𝐻 ) → ( 0g𝐻 ) ∈ 𝐴 )
17 16 adantl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 0g𝐻 ) ∈ 𝐴 )
18 14 17 eqeltrd ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 0g𝐺 ) ∈ 𝐴 )
19 1 oveq1i ( 𝐻s 𝐴 ) = ( ( 𝐺s 𝑆 ) ↾s 𝐴 )
20 ressabs ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) → ( ( 𝐺s 𝑆 ) ↾s 𝐴 ) = ( 𝐺s 𝐴 ) )
21 19 20 eqtrid ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) → ( 𝐻s 𝐴 ) = ( 𝐺s 𝐴 ) )
22 7 21 syldan ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 𝐻s 𝐴 ) = ( 𝐺s 𝐴 ) )
23 eqid ( 𝐻s 𝐴 ) = ( 𝐻s 𝐴 )
24 23 submmnd ( 𝐴 ∈ ( SubMnd ‘ 𝐻 ) → ( 𝐻s 𝐴 ) ∈ Mnd )
25 24 adantl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 𝐻s 𝐴 ) ∈ Mnd )
26 22 25 eqeltrrd ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 𝐺s 𝐴 ) ∈ Mnd )
27 submrcl ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) → 𝐺 ∈ Mnd )
28 27 adantr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → 𝐺 ∈ Mnd )
29 eqid ( 𝐺s 𝐴 ) = ( 𝐺s 𝐴 )
30 8 12 29 issubm2 ( 𝐺 ∈ Mnd → ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ↔ ( 𝐴 ⊆ ( Base ‘ 𝐺 ) ∧ ( 0g𝐺 ) ∈ 𝐴 ∧ ( 𝐺s 𝐴 ) ∈ Mnd ) ) )
31 28 30 syl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ↔ ( 𝐴 ⊆ ( Base ‘ 𝐺 ) ∧ ( 0g𝐺 ) ∈ 𝐴 ∧ ( 𝐺s 𝐴 ) ∈ Mnd ) ) )
32 11 18 26 31 mpbir3and ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → 𝐴 ∈ ( SubMnd ‘ 𝐺 ) )
33 32 7 jca ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ) → ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) )
34 simprr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → 𝐴𝑆 )
35 5 adantr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → 𝑆 = ( Base ‘ 𝐻 ) )
36 34 35 sseqtrd ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → 𝐴 ⊆ ( Base ‘ 𝐻 ) )
37 13 adantr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → ( 0g𝐺 ) = ( 0g𝐻 ) )
38 12 subm0cl ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) → ( 0g𝐺 ) ∈ 𝐴 )
39 38 ad2antrl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → ( 0g𝐺 ) ∈ 𝐴 )
40 37 39 eqeltrrd ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → ( 0g𝐻 ) ∈ 𝐴 )
41 21 adantrl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → ( 𝐻s 𝐴 ) = ( 𝐺s 𝐴 ) )
42 29 submmnd ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) → ( 𝐺s 𝐴 ) ∈ Mnd )
43 42 ad2antrl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → ( 𝐺s 𝐴 ) ∈ Mnd )
44 41 43 eqeltrd ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → ( 𝐻s 𝐴 ) ∈ Mnd )
45 1 submmnd ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) → 𝐻 ∈ Mnd )
46 45 adantr ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → 𝐻 ∈ Mnd )
47 2 15 23 issubm2 ( 𝐻 ∈ Mnd → ( 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ↔ ( 𝐴 ⊆ ( Base ‘ 𝐻 ) ∧ ( 0g𝐻 ) ∈ 𝐴 ∧ ( 𝐻s 𝐴 ) ∈ Mnd ) ) )
48 46 47 syl ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → ( 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ↔ ( 𝐴 ⊆ ( Base ‘ 𝐻 ) ∧ ( 0g𝐻 ) ∈ 𝐴 ∧ ( 𝐻s 𝐴 ) ∈ Mnd ) ) )
49 36 40 44 48 mpbir3and ( ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) ∧ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) → 𝐴 ∈ ( SubMnd ‘ 𝐻 ) )
50 33 49 impbida ( 𝑆 ∈ ( SubMnd ‘ 𝐺 ) → ( 𝐴 ∈ ( SubMnd ‘ 𝐻 ) ↔ ( 𝐴 ∈ ( SubMnd ‘ 𝐺 ) ∧ 𝐴𝑆 ) ) )