Metamath Proof Explorer


Theorem mulgnn0subcl

Description: Closure of the group multiple (exponentiation) operation in a submonoid. (Contributed by Mario Carneiro, 10-Jan-2015)

Ref Expression
Hypotheses mulgnnsubcl.b 𝐵 = ( Base ‘ 𝐺 )
mulgnnsubcl.t · = ( .g𝐺 )
mulgnnsubcl.p + = ( +g𝐺 )
mulgnnsubcl.g ( 𝜑𝐺𝑉 )
mulgnnsubcl.s ( 𝜑𝑆𝐵 )
mulgnnsubcl.c ( ( 𝜑𝑥𝑆𝑦𝑆 ) → ( 𝑥 + 𝑦 ) ∈ 𝑆 )
mulgnn0subcl.z 0 = ( 0g𝐺 )
mulgnn0subcl.c ( 𝜑0𝑆 )
Assertion mulgnn0subcl ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → ( 𝑁 · 𝑋 ) ∈ 𝑆 )

Proof

Step Hyp Ref Expression
1 mulgnnsubcl.b 𝐵 = ( Base ‘ 𝐺 )
2 mulgnnsubcl.t · = ( .g𝐺 )
3 mulgnnsubcl.p + = ( +g𝐺 )
4 mulgnnsubcl.g ( 𝜑𝐺𝑉 )
5 mulgnnsubcl.s ( 𝜑𝑆𝐵 )
6 mulgnnsubcl.c ( ( 𝜑𝑥𝑆𝑦𝑆 ) → ( 𝑥 + 𝑦 ) ∈ 𝑆 )
7 mulgnn0subcl.z 0 = ( 0g𝐺 )
8 mulgnn0subcl.c ( 𝜑0𝑆 )
9 1 2 3 4 5 6 mulgnnsubcl ( ( 𝜑𝑁 ∈ ℕ ∧ 𝑋𝑆 ) → ( 𝑁 · 𝑋 ) ∈ 𝑆 )
10 9 3expa ( ( ( 𝜑𝑁 ∈ ℕ ) ∧ 𝑋𝑆 ) → ( 𝑁 · 𝑋 ) ∈ 𝑆 )
11 10 an32s ( ( ( 𝜑𝑋𝑆 ) ∧ 𝑁 ∈ ℕ ) → ( 𝑁 · 𝑋 ) ∈ 𝑆 )
12 11 3adantl2 ( ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) ∧ 𝑁 ∈ ℕ ) → ( 𝑁 · 𝑋 ) ∈ 𝑆 )
13 oveq1 ( 𝑁 = 0 → ( 𝑁 · 𝑋 ) = ( 0 · 𝑋 ) )
14 5 3ad2ant1 ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → 𝑆𝐵 )
15 simp3 ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → 𝑋𝑆 )
16 14 15 sseldd ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → 𝑋𝐵 )
17 1 7 2 mulg0 ( 𝑋𝐵 → ( 0 · 𝑋 ) = 0 )
18 16 17 syl ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → ( 0 · 𝑋 ) = 0 )
19 13 18 sylan9eqr ( ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) ∧ 𝑁 = 0 ) → ( 𝑁 · 𝑋 ) = 0 )
20 8 3ad2ant1 ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → 0𝑆 )
21 20 adantr ( ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) ∧ 𝑁 = 0 ) → 0𝑆 )
22 19 21 eqeltrd ( ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) ∧ 𝑁 = 0 ) → ( 𝑁 · 𝑋 ) ∈ 𝑆 )
23 simp2 ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → 𝑁 ∈ ℕ0 )
24 elnn0 ( 𝑁 ∈ ℕ0 ↔ ( 𝑁 ∈ ℕ ∨ 𝑁 = 0 ) )
25 23 24 sylib ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → ( 𝑁 ∈ ℕ ∨ 𝑁 = 0 ) )
26 12 22 25 mpjaodan ( ( 𝜑𝑁 ∈ ℕ0𝑋𝑆 ) → ( 𝑁 · 𝑋 ) ∈ 𝑆 )