Metamath Proof Explorer


Theorem expsne0

Description: A non-negative surreal integer power is non-zero if its base is non-zero. (Contributed by Scott Fenton, 7-Aug-2025)

Ref Expression
Assertion expsne0 ( ( 𝐴 No 𝐴 ≠ 0s𝑁 ∈ ℕ0s ) → ( 𝐴s 𝑁 ) ≠ 0s )

Proof

Step Hyp Ref Expression
1 oveq2 ( 𝑚 = 0s → ( 𝐴s 𝑚 ) = ( 𝐴s 0s ) )
2 1 eqeq1d ( 𝑚 = 0s → ( ( 𝐴s 𝑚 ) = 0s ↔ ( 𝐴s 0s ) = 0s ) )
3 2 imbi1d ( 𝑚 = 0s → ( ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ↔ ( ( 𝐴s 0s ) = 0s𝐴 = 0s ) ) )
4 3 imbi2d ( 𝑚 = 0s → ( ( 𝐴 No → ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ) ↔ ( 𝐴 No → ( ( 𝐴s 0s ) = 0s𝐴 = 0s ) ) ) )
5 oveq2 ( 𝑚 = 𝑛 → ( 𝐴s 𝑚 ) = ( 𝐴s 𝑛 ) )
6 5 eqeq1d ( 𝑚 = 𝑛 → ( ( 𝐴s 𝑚 ) = 0s ↔ ( 𝐴s 𝑛 ) = 0s ) )
7 6 imbi1d ( 𝑚 = 𝑛 → ( ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ↔ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) )
8 7 imbi2d ( 𝑚 = 𝑛 → ( ( 𝐴 No → ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ) ↔ ( 𝐴 No → ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) ) )
9 oveq2 ( 𝑚 = ( 𝑛 +s 1s ) → ( 𝐴s 𝑚 ) = ( 𝐴s ( 𝑛 +s 1s ) ) )
10 9 eqeq1d ( 𝑚 = ( 𝑛 +s 1s ) → ( ( 𝐴s 𝑚 ) = 0s ↔ ( 𝐴s ( 𝑛 +s 1s ) ) = 0s ) )
11 10 imbi1d ( 𝑚 = ( 𝑛 +s 1s ) → ( ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ↔ ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s𝐴 = 0s ) ) )
12 11 imbi2d ( 𝑚 = ( 𝑛 +s 1s ) → ( ( 𝐴 No → ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ) ↔ ( 𝐴 No → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s𝐴 = 0s ) ) ) )
13 oveq2 ( 𝑚 = 𝑁 → ( 𝐴s 𝑚 ) = ( 𝐴s 𝑁 ) )
14 13 eqeq1d ( 𝑚 = 𝑁 → ( ( 𝐴s 𝑚 ) = 0s ↔ ( 𝐴s 𝑁 ) = 0s ) )
15 14 imbi1d ( 𝑚 = 𝑁 → ( ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ↔ ( ( 𝐴s 𝑁 ) = 0s𝐴 = 0s ) ) )
16 15 imbi2d ( 𝑚 = 𝑁 → ( ( 𝐴 No → ( ( 𝐴s 𝑚 ) = 0s𝐴 = 0s ) ) ↔ ( 𝐴 No → ( ( 𝐴s 𝑁 ) = 0s𝐴 = 0s ) ) ) )
17 1sne0s 1s ≠ 0s
18 exps0 ( 𝐴 No → ( 𝐴s 0s ) = 1s )
19 18 neeq1d ( 𝐴 No → ( ( 𝐴s 0s ) ≠ 0s ↔ 1s ≠ 0s ) )
20 17 19 mpbiri ( 𝐴 No → ( 𝐴s 0s ) ≠ 0s )
21 20 neneqd ( 𝐴 No → ¬ ( 𝐴s 0s ) = 0s )
22 21 pm2.21d ( 𝐴 No → ( ( 𝐴s 0s ) = 0s𝐴 = 0s ) )
23 expsp1 ( ( 𝐴 No 𝑛 ∈ ℕ0s ) → ( 𝐴s ( 𝑛 +s 1s ) ) = ( ( 𝐴s 𝑛 ) ·s 𝐴 ) )
24 23 eqeq1d ( ( 𝐴 No 𝑛 ∈ ℕ0s ) → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s ↔ ( ( 𝐴s 𝑛 ) ·s 𝐴 ) = 0s ) )
25 expscl ( ( 𝐴 No 𝑛 ∈ ℕ0s ) → ( 𝐴s 𝑛 ) ∈ No )
26 simpl ( ( 𝐴 No 𝑛 ∈ ℕ0s ) → 𝐴 No )
27 25 26 muls0ord ( ( 𝐴 No 𝑛 ∈ ℕ0s ) → ( ( ( 𝐴s 𝑛 ) ·s 𝐴 ) = 0s ↔ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) )
28 24 27 bitrd ( ( 𝐴 No 𝑛 ∈ ℕ0s ) → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s ↔ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) )
29 28 adantr ( ( ( 𝐴 No 𝑛 ∈ ℕ0s ) ∧ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s ↔ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) )
30 simpr ( ( ( 𝐴 No 𝑛 ∈ ℕ0s ) ∧ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) → ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) )
31 idd ( ( ( 𝐴 No 𝑛 ∈ ℕ0s ) ∧ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) → ( 𝐴 = 0s𝐴 = 0s ) )
32 30 31 jaod ( ( ( 𝐴 No 𝑛 ∈ ℕ0s ) ∧ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) → ( ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) → 𝐴 = 0s ) )
33 29 32 sylbid ( ( ( 𝐴 No 𝑛 ∈ ℕ0s ) ∧ ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s𝐴 = 0s ) )
34 33 ex ( ( 𝐴 No 𝑛 ∈ ℕ0s ) → ( ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s𝐴 = 0s ) ) )
35 34 expcom ( 𝑛 ∈ ℕ0s → ( 𝐴 No → ( ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s𝐴 = 0s ) ) ) )
36 35 a2d ( 𝑛 ∈ ℕ0s → ( ( 𝐴 No → ( ( 𝐴s 𝑛 ) = 0s𝐴 = 0s ) ) → ( 𝐴 No → ( ( 𝐴s ( 𝑛 +s 1s ) ) = 0s𝐴 = 0s ) ) ) )
37 4 8 12 16 22 36 n0sind ( 𝑁 ∈ ℕ0s → ( 𝐴 No → ( ( 𝐴s 𝑁 ) = 0s𝐴 = 0s ) ) )
38 37 imp ( ( 𝑁 ∈ ℕ0s𝐴 No ) → ( ( 𝐴s 𝑁 ) = 0s𝐴 = 0s ) )
39 38 necon3d ( ( 𝑁 ∈ ℕ0s𝐴 No ) → ( 𝐴 ≠ 0s → ( 𝐴s 𝑁 ) ≠ 0s ) )
40 39 ex ( 𝑁 ∈ ℕ0s → ( 𝐴 No → ( 𝐴 ≠ 0s → ( 𝐴s 𝑁 ) ≠ 0s ) ) )
41 40 3imp231 ( ( 𝐴 No 𝐴 ≠ 0s𝑁 ∈ ℕ0s ) → ( 𝐴s 𝑁 ) ≠ 0s )