| Step |
Hyp |
Ref |
Expression |
| 1 |
|
dgradd.1 |
⊢ 𝑀 = ( deg ‘ 𝐹 ) |
| 2 |
|
dgradd.2 |
⊢ 𝑁 = ( deg ‘ 𝐺 ) |
| 3 |
|
plyaddcl |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ) → ( 𝐹 ∘f + 𝐺 ) ∈ ( Poly ‘ ℂ ) ) |
| 4 |
3
|
3adant3 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( 𝐹 ∘f + 𝐺 ) ∈ ( Poly ‘ ℂ ) ) |
| 5 |
|
dgrcl |
⊢ ( ( 𝐹 ∘f + 𝐺 ) ∈ ( Poly ‘ ℂ ) → ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ∈ ℕ0 ) |
| 6 |
4 5
|
syl |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ∈ ℕ0 ) |
| 7 |
6
|
nn0red |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ∈ ℝ ) |
| 8 |
|
dgrcl |
⊢ ( 𝐺 ∈ ( Poly ‘ 𝑆 ) → ( deg ‘ 𝐺 ) ∈ ℕ0 ) |
| 9 |
2 8
|
eqeltrid |
⊢ ( 𝐺 ∈ ( Poly ‘ 𝑆 ) → 𝑁 ∈ ℕ0 ) |
| 10 |
9
|
3ad2ant2 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑁 ∈ ℕ0 ) |
| 11 |
10
|
nn0red |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑁 ∈ ℝ ) |
| 12 |
|
dgrcl |
⊢ ( 𝐹 ∈ ( Poly ‘ 𝑆 ) → ( deg ‘ 𝐹 ) ∈ ℕ0 ) |
| 13 |
1 12
|
eqeltrid |
⊢ ( 𝐹 ∈ ( Poly ‘ 𝑆 ) → 𝑀 ∈ ℕ0 ) |
| 14 |
13
|
3ad2ant1 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑀 ∈ ℕ0 ) |
| 15 |
14
|
nn0red |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑀 ∈ ℝ ) |
| 16 |
11 15
|
ifcld |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) ∈ ℝ ) |
| 17 |
1 2
|
dgradd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ) → ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ≤ if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) ) |
| 18 |
17
|
3adant3 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ≤ if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) ) |
| 19 |
11
|
leidd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑁 ≤ 𝑁 ) |
| 20 |
|
simp3 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑀 < 𝑁 ) |
| 21 |
15 11 20
|
ltled |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑀 ≤ 𝑁 ) |
| 22 |
|
breq1 |
⊢ ( 𝑁 = if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) → ( 𝑁 ≤ 𝑁 ↔ if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) ≤ 𝑁 ) ) |
| 23 |
|
breq1 |
⊢ ( 𝑀 = if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) → ( 𝑀 ≤ 𝑁 ↔ if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) ≤ 𝑁 ) ) |
| 24 |
22 23
|
ifboth |
⊢ ( ( 𝑁 ≤ 𝑁 ∧ 𝑀 ≤ 𝑁 ) → if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) ≤ 𝑁 ) |
| 25 |
19 21 24
|
syl2anc |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → if ( 𝑀 ≤ 𝑁 , 𝑁 , 𝑀 ) ≤ 𝑁 ) |
| 26 |
7 16 11 18 25
|
letrd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ≤ 𝑁 ) |
| 27 |
|
eqid |
⊢ ( coeff ‘ 𝐹 ) = ( coeff ‘ 𝐹 ) |
| 28 |
|
eqid |
⊢ ( coeff ‘ 𝐺 ) = ( coeff ‘ 𝐺 ) |
| 29 |
27 28
|
coeadd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ) → ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) = ( ( coeff ‘ 𝐹 ) ∘f + ( coeff ‘ 𝐺 ) ) ) |
| 30 |
29
|
3adant3 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) = ( ( coeff ‘ 𝐹 ) ∘f + ( coeff ‘ 𝐺 ) ) ) |
| 31 |
30
|
fveq1d |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) ‘ 𝑁 ) = ( ( ( coeff ‘ 𝐹 ) ∘f + ( coeff ‘ 𝐺 ) ) ‘ 𝑁 ) ) |
| 32 |
27
|
coef3 |
⊢ ( 𝐹 ∈ ( Poly ‘ 𝑆 ) → ( coeff ‘ 𝐹 ) : ℕ0 ⟶ ℂ ) |
| 33 |
32
|
3ad2ant1 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( coeff ‘ 𝐹 ) : ℕ0 ⟶ ℂ ) |
| 34 |
33
|
ffnd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( coeff ‘ 𝐹 ) Fn ℕ0 ) |
| 35 |
28
|
coef3 |
⊢ ( 𝐺 ∈ ( Poly ‘ 𝑆 ) → ( coeff ‘ 𝐺 ) : ℕ0 ⟶ ℂ ) |
| 36 |
35
|
3ad2ant2 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( coeff ‘ 𝐺 ) : ℕ0 ⟶ ℂ ) |
| 37 |
36
|
ffnd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( coeff ‘ 𝐺 ) Fn ℕ0 ) |
| 38 |
|
nn0ex |
⊢ ℕ0 ∈ V |
| 39 |
38
|
a1i |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ℕ0 ∈ V ) |
| 40 |
|
inidm |
⊢ ( ℕ0 ∩ ℕ0 ) = ℕ0 |
| 41 |
15 11
|
ltnled |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( 𝑀 < 𝑁 ↔ ¬ 𝑁 ≤ 𝑀 ) ) |
| 42 |
20 41
|
mpbid |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ¬ 𝑁 ≤ 𝑀 ) |
| 43 |
|
simp1 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝐹 ∈ ( Poly ‘ 𝑆 ) ) |
| 44 |
27 1
|
dgrub |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑁 ∈ ℕ0 ∧ ( ( coeff ‘ 𝐹 ) ‘ 𝑁 ) ≠ 0 ) → 𝑁 ≤ 𝑀 ) |
| 45 |
44
|
3expia |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑁 ∈ ℕ0 ) → ( ( ( coeff ‘ 𝐹 ) ‘ 𝑁 ) ≠ 0 → 𝑁 ≤ 𝑀 ) ) |
| 46 |
43 10 45
|
syl2anc |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( ( coeff ‘ 𝐹 ) ‘ 𝑁 ) ≠ 0 → 𝑁 ≤ 𝑀 ) ) |
| 47 |
46
|
necon1bd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ¬ 𝑁 ≤ 𝑀 → ( ( coeff ‘ 𝐹 ) ‘ 𝑁 ) = 0 ) ) |
| 48 |
42 47
|
mpd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( coeff ‘ 𝐹 ) ‘ 𝑁 ) = 0 ) |
| 49 |
48
|
adantr |
⊢ ( ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) ∧ 𝑁 ∈ ℕ0 ) → ( ( coeff ‘ 𝐹 ) ‘ 𝑁 ) = 0 ) |
| 50 |
|
eqidd |
⊢ ( ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) ∧ 𝑁 ∈ ℕ0 ) → ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) = ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ) |
| 51 |
34 37 39 39 40 49 50
|
ofval |
⊢ ( ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) ∧ 𝑁 ∈ ℕ0 ) → ( ( ( coeff ‘ 𝐹 ) ∘f + ( coeff ‘ 𝐺 ) ) ‘ 𝑁 ) = ( 0 + ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ) ) |
| 52 |
10 51
|
mpdan |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( ( coeff ‘ 𝐹 ) ∘f + ( coeff ‘ 𝐺 ) ) ‘ 𝑁 ) = ( 0 + ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ) ) |
| 53 |
36 10
|
ffvelcdmd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ∈ ℂ ) |
| 54 |
53
|
addlidd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( 0 + ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ) = ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ) |
| 55 |
31 52 54
|
3eqtrd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) ‘ 𝑁 ) = ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ) |
| 56 |
|
simp2 |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝐺 ∈ ( Poly ‘ 𝑆 ) ) |
| 57 |
|
0red |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 0 ∈ ℝ ) |
| 58 |
14
|
nn0ge0d |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 0 ≤ 𝑀 ) |
| 59 |
57 15 11 58 20
|
lelttrd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 0 < 𝑁 ) |
| 60 |
59
|
gt0ne0d |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑁 ≠ 0 ) |
| 61 |
2 28
|
dgreq0 |
⊢ ( 𝐺 ∈ ( Poly ‘ 𝑆 ) → ( 𝐺 = 0𝑝 ↔ ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) = 0 ) ) |
| 62 |
|
fveq2 |
⊢ ( 𝐺 = 0𝑝 → ( deg ‘ 𝐺 ) = ( deg ‘ 0𝑝 ) ) |
| 63 |
|
dgr0 |
⊢ ( deg ‘ 0𝑝 ) = 0 |
| 64 |
63
|
eqcomi |
⊢ 0 = ( deg ‘ 0𝑝 ) |
| 65 |
62 2 64
|
3eqtr4g |
⊢ ( 𝐺 = 0𝑝 → 𝑁 = 0 ) |
| 66 |
61 65
|
biimtrrdi |
⊢ ( 𝐺 ∈ ( Poly ‘ 𝑆 ) → ( ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) = 0 → 𝑁 = 0 ) ) |
| 67 |
66
|
necon3d |
⊢ ( 𝐺 ∈ ( Poly ‘ 𝑆 ) → ( 𝑁 ≠ 0 → ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ≠ 0 ) ) |
| 68 |
56 60 67
|
sylc |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( coeff ‘ 𝐺 ) ‘ 𝑁 ) ≠ 0 ) |
| 69 |
55 68
|
eqnetrd |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) ‘ 𝑁 ) ≠ 0 ) |
| 70 |
|
eqid |
⊢ ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) = ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) |
| 71 |
|
eqid |
⊢ ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) = ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) |
| 72 |
70 71
|
dgrub |
⊢ ( ( ( 𝐹 ∘f + 𝐺 ) ∈ ( Poly ‘ ℂ ) ∧ 𝑁 ∈ ℕ0 ∧ ( ( coeff ‘ ( 𝐹 ∘f + 𝐺 ) ) ‘ 𝑁 ) ≠ 0 ) → 𝑁 ≤ ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ) |
| 73 |
4 10 69 72
|
syl3anc |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → 𝑁 ≤ ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ) |
| 74 |
7 11
|
letri3d |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) = 𝑁 ↔ ( ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ≤ 𝑁 ∧ 𝑁 ≤ ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) ) ) ) |
| 75 |
26 73 74
|
mpbir2and |
⊢ ( ( 𝐹 ∈ ( Poly ‘ 𝑆 ) ∧ 𝐺 ∈ ( Poly ‘ 𝑆 ) ∧ 𝑀 < 𝑁 ) → ( deg ‘ ( 𝐹 ∘f + 𝐺 ) ) = 𝑁 ) |