Metamath Proof Explorer


Theorem mplcoe3

Description: Decompose a monomial in one variable into a power of a variable. (Contributed by Mario Carneiro, 7-Jan-2015) (Proof shortened by AV, 18-Jul-2019)

Ref Expression
Hypotheses mplcoe1.p ⊢ P = I mPoly R
mplcoe1.d ⊢ D = f ∈ ℕ 0 I | f -1 ℕ ∈ Fin
mplcoe1.z ⊢ 0 ˙ = 0 R
mplcoe1.o ⊢ 1 ˙ = 1 R
mplcoe1.i ⊢ φ → I ∈ W
mplcoe2.g ⊢ G = mulGrp P
mplcoe2.m ⊢ × ˙ = ⋅ G
mplcoe2.v ⊢ V = I mVar R
mplcoe3.r ⊢ φ → R ∈ Ring
mplcoe3.x ⊢ φ → X ∈ I
mplcoe3.n ⊢ φ → N ∈ ℕ 0
Assertion mplcoe3 ⊢ φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X N 0 1 ˙ 0 ˙ = N × ˙ V ⁡ X

Proof

Step Hyp Ref Expression
1 mplcoe1.p ⊢ P = I mPoly R
2 mplcoe1.d ⊢ D = f ∈ ℕ 0 I | f -1 ℕ ∈ Fin
3 mplcoe1.z ⊢ 0 ˙ = 0 R
4 mplcoe1.o ⊢ 1 ˙ = 1 R
5 mplcoe1.i ⊢ φ → I ∈ W
6 mplcoe2.g ⊢ G = mulGrp P
7 mplcoe2.m ⊢ × ˙ = ⋅ G
8 mplcoe2.v ⊢ V = I mVar R
9 mplcoe3.r ⊢ φ → R ∈ Ring
10 mplcoe3.x ⊢ φ → X ∈ I
11 mplcoe3.n ⊢ φ → N ∈ ℕ 0
12 ifeq1 ⊢ x = 0 → if k = X x 0 = if k = X 0 0
13 ifid ⊢ if k = X 0 0 = 0
14 12 13 eqtrdi ⊢ x = 0 → if k = X x 0 = 0
15 14 mpteq2dv ⊢ x = 0 → k ∈ I ⟼ if k = X x 0 = k ∈ I ⟼ 0
16 fconstmpt ⊢ I × 0 = k ∈ I ⟼ 0
17 15 16 eqtr4di ⊢ x = 0 → k ∈ I ⟼ if k = X x 0 = I × 0
18 17 eqeq2d ⊢ x = 0 → y = k ∈ I ⟼ if k = X x 0 ↔ y = I × 0
19 18 ifbid ⊢ x = 0 → if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = if y = I × 0 1 ˙ 0 ˙
20 19 mpteq2dv ⊢ x = 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = I × 0 1 ˙ 0 ˙
21 oveq1 ⊢ x = 0 → x × ˙ V ⁡ X = 0 × ˙ V ⁡ X
22 20 21 eqeq12d ⊢ x = 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ y ∈ D ⟼ if y = I × 0 1 ˙ 0 ˙ = 0 × ˙ V ⁡ X
23 22 imbi2d ⊢ x = 0 → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ φ → y ∈ D ⟼ if y = I × 0 1 ˙ 0 ˙ = 0 × ˙ V ⁡ X
24 ifeq1 ⊢ x = n → if k = X x 0 = if k = X n 0
25 24 mpteq2dv ⊢ x = n → k ∈ I ⟼ if k = X x 0 = k ∈ I ⟼ if k = X n 0
26 25 eqeq2d ⊢ x = n → y = k ∈ I ⟼ if k = X x 0 ↔ y = k ∈ I ⟼ if k = X n 0
27 26 ifbid ⊢ x = n → if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙
28 27 mpteq2dv ⊢ x = n → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙
29 oveq1 ⊢ x = n → x × ˙ V ⁡ X = n × ˙ V ⁡ X
30 28 29 eqeq12d ⊢ x = n → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ = n × ˙ V ⁡ X
31 30 imbi2d ⊢ x = n → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ = n × ˙ V ⁡ X
32 ifeq1 ⊢ x = n + 1 → if k = X x 0 = if k = X n + 1 0
33 32 mpteq2dv ⊢ x = n + 1 → k ∈ I ⟼ if k = X x 0 = k ∈ I ⟼ if k = X n + 1 0
34 33 eqeq2d ⊢ x = n + 1 → y = k ∈ I ⟼ if k = X x 0 ↔ y = k ∈ I ⟼ if k = X n + 1 0
35 34 ifbid ⊢ x = n + 1 → if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙
36 35 mpteq2dv ⊢ x = n + 1 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙
37 oveq1 ⊢ x = n + 1 → x × ˙ V ⁡ X = n + 1 × ˙ V ⁡ X
38 36 37 eqeq12d ⊢ x = n + 1 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙ = n + 1 × ˙ V ⁡ X
39 38 imbi2d ⊢ x = n + 1 → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙ = n + 1 × ˙ V ⁡ X
40 ifeq1 ⊢ x = N → if k = X x 0 = if k = X N 0
41 40 mpteq2dv ⊢ x = N → k ∈ I ⟼ if k = X x 0 = k ∈ I ⟼ if k = X N 0
42 41 eqeq2d ⊢ x = N → y = k ∈ I ⟼ if k = X x 0 ↔ y = k ∈ I ⟼ if k = X N 0
43 42 ifbid ⊢ x = N → if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = if y = k ∈ I ⟼ if k = X N 0 1 ˙ 0 ˙
44 43 mpteq2dv ⊢ x = N → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X N 0 1 ˙ 0 ˙
45 oveq1 ⊢ x = N → x × ˙ V ⁡ X = N × ˙ V ⁡ X
46 44 45 eqeq12d ⊢ x = N → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ y ∈ D ⟼ if y = k ∈ I ⟼ if k = X N 0 1 ˙ 0 ˙ = N × ˙ V ⁡ X
47 46 imbi2d ⊢ x = N → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X x 0 1 ˙ 0 ˙ = x × ˙ V ⁡ X ↔ φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X N 0 1 ˙ 0 ˙ = N × ˙ V ⁡ X
48 eqid ⊢ Base P = Base P
49 1 8 48 5 9 10 mvrcl ⊢ φ → V ⁡ X ∈ Base P
50 6 48 mgpbas ⊢ Base P = Base G
51 eqid ⊢ 1 P = 1 P
52 6 51 ringidval ⊢ 1 P = 0 G
53 50 52 7 mulg0 ⊢ V ⁡ X ∈ Base P → 0 × ˙ V ⁡ X = 1 P
54 49 53 syl ⊢ φ → 0 × ˙ V ⁡ X = 1 P
55 1 2 3 4 51 5 9 mpl1 ⊢ φ → 1 P = y ∈ D ⟼ if y = I × 0 1 ˙ 0 ˙
56 54 55 eqtr2d ⊢ φ → y ∈ D ⟼ if y = I × 0 1 ˙ 0 ˙ = 0 × ˙ V ⁡ X
57 oveq1 ⊢ y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ = n × ˙ V ⁡ X → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ ⋅ P V ⁡ X = n × ˙ V ⁡ X ⋅ P V ⁡ X
58 5 adantr ⊢ φ ∧ n ∈ ℕ 0 → I ∈ W
59 9 adantr ⊢ φ ∧ n ∈ ℕ 0 → R ∈ Ring
60 2 snifpsrbag ⊢ I ∈ W ∧ n ∈ ℕ 0 → k ∈ I ⟼ if k = X n 0 ∈ D
61 5 60 sylan ⊢ φ ∧ n ∈ ℕ 0 → k ∈ I ⟼ if k = X n 0 ∈ D
62 eqid ⊢ ⋅ P = ⋅ P
63 1nn0 ⊢ 1 ∈ ℕ 0
64 63 a1i ⊢ n ∈ ℕ 0 → 1 ∈ ℕ 0
65 2 snifpsrbag ⊢ I ∈ W ∧ 1 ∈ ℕ 0 → k ∈ I ⟼ if k = X 1 0 ∈ D
66 5 64 65 syl2an ⊢ φ ∧ n ∈ ℕ 0 → k ∈ I ⟼ if k = X 1 0 ∈ D
67 1 48 3 4 2 58 59 61 62 66 mplmonmul ⊢ φ ∧ n ∈ ℕ 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ ⋅ P y ∈ D ⟼ if y = k ∈ I ⟼ if k = X 1 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 + f k ∈ I ⟼ if k = X 1 0 1 ˙ 0 ˙
68 10 adantr ⊢ φ ∧ n ∈ ℕ 0 → X ∈ I
69 8 2 3 4 58 59 68 mvrval ⊢ φ ∧ n ∈ ℕ 0 → V ⁡ X = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X 1 0 1 ˙ 0 ˙
70 69 eqcomd ⊢ φ ∧ n ∈ ℕ 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X 1 0 1 ˙ 0 ˙ = V ⁡ X
71 70 oveq2d ⊢ φ ∧ n ∈ ℕ 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ ⋅ P y ∈ D ⟼ if y = k ∈ I ⟼ if k = X 1 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ ⋅ P V ⁡ X
72 simplr ⊢ φ ∧ n ∈ ℕ 0 ∧ k ∈ I → n ∈ ℕ 0
73 0nn0 ⊢ 0 ∈ ℕ 0
74 ifcl ⊢ n ∈ ℕ 0 ∧ 0 ∈ ℕ 0 → if k = X n 0 ∈ ℕ 0
75 72 73 74 sylancl ⊢ φ ∧ n ∈ ℕ 0 ∧ k ∈ I → if k = X n 0 ∈ ℕ 0
76 63 73 ifcli ⊢ if k = X 1 0 ∈ ℕ 0
77 76 a1i ⊢ φ ∧ n ∈ ℕ 0 ∧ k ∈ I → if k = X 1 0 ∈ ℕ 0
78 eqidd ⊢ φ ∧ n ∈ ℕ 0 → k ∈ I ⟼ if k = X n 0 = k ∈ I ⟼ if k = X n 0
79 eqidd ⊢ φ ∧ n ∈ ℕ 0 → k ∈ I ⟼ if k = X 1 0 = k ∈ I ⟼ if k = X 1 0
80 58 75 77 78 79 offval2 ⊢ φ ∧ n ∈ ℕ 0 → k ∈ I ⟼ if k = X n 0 + f k ∈ I ⟼ if k = X 1 0 = k ∈ I ⟼ if k = X n 0 + if k = X 1 0
81 iftrue ⊢ k = X → if k = X n 0 = n
82 iftrue ⊢ k = X → if k = X 1 0 = 1
83 81 82 oveq12d ⊢ k = X → if k = X n 0 + if k = X 1 0 = n + 1
84 iftrue ⊢ k = X → if k = X n + 1 0 = n + 1
85 83 84 eqtr4d ⊢ k = X → if k = X n 0 + if k = X 1 0 = if k = X n + 1 0
86 00id ⊢ 0 + 0 = 0
87 iffalse ⊢ ¬ k = X → if k = X n 0 = 0
88 iffalse ⊢ ¬ k = X → if k = X 1 0 = 0
89 87 88 oveq12d ⊢ ¬ k = X → if k = X n 0 + if k = X 1 0 = 0 + 0
90 iffalse ⊢ ¬ k = X → if k = X n + 1 0 = 0
91 86 89 90 3eqtr4a ⊢ ¬ k = X → if k = X n 0 + if k = X 1 0 = if k = X n + 1 0
92 85 91 pm2.61i ⊢ if k = X n 0 + if k = X 1 0 = if k = X n + 1 0
93 92 mpteq2i ⊢ k ∈ I ⟼ if k = X n 0 + if k = X 1 0 = k ∈ I ⟼ if k = X n + 1 0
94 80 93 eqtrdi ⊢ φ ∧ n ∈ ℕ 0 → k ∈ I ⟼ if k = X n 0 + f k ∈ I ⟼ if k = X 1 0 = k ∈ I ⟼ if k = X n + 1 0
95 94 eqeq2d ⊢ φ ∧ n ∈ ℕ 0 → y = k ∈ I ⟼ if k = X n 0 + f k ∈ I ⟼ if k = X 1 0 ↔ y = k ∈ I ⟼ if k = X n + 1 0
96 95 ifbid ⊢ φ ∧ n ∈ ℕ 0 → if y = k ∈ I ⟼ if k = X n 0 + f k ∈ I ⟼ if k = X 1 0 1 ˙ 0 ˙ = if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙
97 96 mpteq2dv ⊢ φ ∧ n ∈ ℕ 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 + f k ∈ I ⟼ if k = X 1 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙
98 67 71 97 3eqtr3rd ⊢ φ ∧ n ∈ ℕ 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙ = y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ ⋅ P V ⁡ X
99 1 5 9 mplringd ⊢ φ → P ∈ Ring
100 6 ringmgp ⊢ P ∈ Ring → G ∈ Mnd
101 99 100 syl ⊢ φ → G ∈ Mnd
102 101 adantr ⊢ φ ∧ n ∈ ℕ 0 → G ∈ Mnd
103 simpr ⊢ φ ∧ n ∈ ℕ 0 → n ∈ ℕ 0
104 49 adantr ⊢ φ ∧ n ∈ ℕ 0 → V ⁡ X ∈ Base P
105 6 62 mgpplusg ⊢ ⋅ P = + G
106 50 7 105 mulgnn0p1 ⊢ G ∈ Mnd ∧ n ∈ ℕ 0 ∧ V ⁡ X ∈ Base P → n + 1 × ˙ V ⁡ X = n × ˙ V ⁡ X ⋅ P V ⁡ X
107 102 103 104 106 syl3anc ⊢ φ ∧ n ∈ ℕ 0 → n + 1 × ˙ V ⁡ X = n × ˙ V ⁡ X ⋅ P V ⁡ X
108 98 107 eqeq12d ⊢ φ ∧ n ∈ ℕ 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙ = n + 1 × ˙ V ⁡ X ↔ y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ ⋅ P V ⁡ X = n × ˙ V ⁡ X ⋅ P V ⁡ X
109 57 108 imbitrrid ⊢ φ ∧ n ∈ ℕ 0 → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ = n × ˙ V ⁡ X → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙ = n + 1 × ˙ V ⁡ X
110 109 expcom ⊢ n ∈ ℕ 0 → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ = n × ˙ V ⁡ X → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙ = n + 1 × ˙ V ⁡ X
111 110 a2d ⊢ n ∈ ℕ 0 → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n 0 1 ˙ 0 ˙ = n × ˙ V ⁡ X → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X n + 1 0 1 ˙ 0 ˙ = n + 1 × ˙ V ⁡ X
112 23 31 39 47 56 111 nn0ind ⊢ N ∈ ℕ 0 → φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X N 0 1 ˙ 0 ˙ = N × ˙ V ⁡ X
113 11 112 mpcom ⊢ φ → y ∈ D ⟼ if y = k ∈ I ⟼ if k = X N 0 1 ˙ 0 ˙ = N × ˙ V ⁡ X