Metamath Proof Explorer


Theorem pf1mpf

Description: Convert a univariate polynomial function to multivariate. (Contributed by Mario Carneiro, 12-Jun-2015)

Ref Expression
Hypotheses pf1rcl.q ⊢ Q = ran ⁡ eval 1 ⁡ R
pf1f.b ⊢ B = Base R
mpfpf1.q ⊢ E = ran ⁡ 1 𝑜 eval R
Assertion pf1mpf ⊢ F ∈ Q → F ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ ∈ E

Proof

Step Hyp Ref Expression
1 pf1rcl.q ⊢ Q = ran ⁡ eval 1 ⁡ R
2 pf1f.b ⊢ B = Base R
3 mpfpf1.q ⊢ E = ran ⁡ 1 𝑜 eval R
4 1 pf1rcl ⊢ F ∈ Q → R ∈ CRing
5 id ⊢ F ∈ Q → F ∈ Q
6 5 1 eleqtrdi ⊢ F ∈ Q → F ∈ ran ⁡ eval 1 ⁡ R
7 eqid ⊢ eval 1 ⁡ R = eval 1 ⁡ R
8 eqid ⊢ Poly 1 ⁡ R = Poly 1 ⁡ R
9 eqid ⊢ R ↑ 𝑠 B = R ↑ 𝑠 B
10 7 8 9 2 evl1rhm ⊢ R ∈ CRing → eval 1 ⁡ R ∈ Poly 1 ⁡ R RingHom R ↑ 𝑠 B
11 4 10 syl ⊢ F ∈ Q → eval 1 ⁡ R ∈ Poly 1 ⁡ R RingHom R ↑ 𝑠 B
12 eqid ⊢ Base Poly 1 ⁡ R = Base Poly 1 ⁡ R
13 eqid ⊢ Base R ↑ 𝑠 B = Base R ↑ 𝑠 B
14 12 13 rhmf ⊢ eval 1 ⁡ R ∈ Poly 1 ⁡ R RingHom R ↑ 𝑠 B → eval 1 ⁡ R : Base Poly 1 ⁡ R ⟶ Base R ↑ 𝑠 B
15 ffn ⊢ eval 1 ⁡ R : Base Poly 1 ⁡ R ⟶ Base R ↑ 𝑠 B → eval 1 ⁡ R Fn Base Poly 1 ⁡ R
16 fvelrnb ⊢ eval 1 ⁡ R Fn Base Poly 1 ⁡ R → F ∈ ran ⁡ eval 1 ⁡ R ↔ ∃ y ∈ Base Poly 1 ⁡ R eval 1 ⁡ R ⁡ y = F
17 11 14 15 16 4syl ⊢ F ∈ Q → F ∈ ran ⁡ eval 1 ⁡ R ↔ ∃ y ∈ Base Poly 1 ⁡ R eval 1 ⁡ R ⁡ y = F
18 6 17 mpbid ⊢ F ∈ Q → ∃ y ∈ Base Poly 1 ⁡ R eval 1 ⁡ R ⁡ y = F
19 eqid ⊢ 1 𝑜 eval R = 1 𝑜 eval R
20 eqid ⊢ 1 𝑜 mPoly R = 1 𝑜 mPoly R
21 8 12 ply1bas ⊢ Base Poly 1 ⁡ R = Base 1 𝑜 mPoly R
22 7 19 2 20 21 evl1val ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → eval 1 ⁡ R ⁡ y = 1 𝑜 eval R ⁡ y ∘ z ∈ B ⟼ 1 𝑜 × z
23 22 coeq1d ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → eval 1 ⁡ R ⁡ y ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = 1 𝑜 eval R ⁡ y ∘ z ∈ B ⟼ 1 𝑜 × z ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅
24 coass ⊢ 1 𝑜 eval R ⁡ y ∘ z ∈ B ⟼ 1 𝑜 × z ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = 1 𝑜 eval R ⁡ y ∘ z ∈ B ⟼ 1 𝑜 × z ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅
25 df1o2 ⊢ 1 𝑜 = ∅
26 2 fvexi ⊢ B ∈ V
27 0ex ⊢ ∅ ∈ V
28 eqid ⊢ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = x ∈ B 1 𝑜 ⟼ x ⁡ ∅
29 25 26 27 28 mapsncnv ⊢ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ -1 = z ∈ B ⟼ 1 𝑜 × z
30 29 coeq1i ⊢ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ -1 ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = z ∈ B ⟼ 1 𝑜 × z ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅
31 25 26 27 28 mapsnf1o2 ⊢ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ : B 1 𝑜 ⟶ 1-1 onto B
32 f1ococnv1 ⊢ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ : B 1 𝑜 ⟶ 1-1 onto B → x ∈ B 1 𝑜 ⟼ x ⁡ ∅ -1 ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = I ↾ B 1 𝑜
33 31 32 mp1i ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → x ∈ B 1 𝑜 ⟼ x ⁡ ∅ -1 ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = I ↾ B 1 𝑜
34 30 33 eqtr3id ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → z ∈ B ⟼ 1 𝑜 × z ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = I ↾ B 1 𝑜
35 34 coeq2d ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y ∘ z ∈ B ⟼ 1 𝑜 × z ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = 1 𝑜 eval R ⁡ y ∘ I ↾ B 1 𝑜
36 24 35 eqtrid ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y ∘ z ∈ B ⟼ 1 𝑜 × z ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = 1 𝑜 eval R ⁡ y ∘ I ↾ B 1 𝑜
37 eqid ⊢ R ↑ 𝑠 B 1 𝑜 = R ↑ 𝑠 B 1 𝑜
38 eqid ⊢ Base R ↑ 𝑠 B 1 𝑜 = Base R ↑ 𝑠 B 1 𝑜
39 simpl ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → R ∈ CRing
40 ovexd ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → B 1 𝑜 ∈ V
41 1on ⊢ 1 𝑜 ∈ On
42 19 2 20 37 evlrhm ⊢ 1 𝑜 ∈ On ∧ R ∈ CRing → 1 𝑜 eval R ∈ 1 𝑜 mPoly R RingHom R ↑ 𝑠 B 1 𝑜
43 41 42 mpan ⊢ R ∈ CRing → 1 𝑜 eval R ∈ 1 𝑜 mPoly R RingHom R ↑ 𝑠 B 1 𝑜
44 21 38 rhmf ⊢ 1 𝑜 eval R ∈ 1 𝑜 mPoly R RingHom R ↑ 𝑠 B 1 𝑜 → 1 𝑜 eval R : Base Poly 1 ⁡ R ⟶ Base R ↑ 𝑠 B 1 𝑜
45 43 44 syl ⊢ R ∈ CRing → 1 𝑜 eval R : Base Poly 1 ⁡ R ⟶ Base R ↑ 𝑠 B 1 𝑜
46 45 ffvelcdmda ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y ∈ Base R ↑ 𝑠 B 1 𝑜
47 37 2 38 39 40 46 pwselbas ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y : B 1 𝑜 ⟶ B
48 fcoi1 ⊢ 1 𝑜 eval R ⁡ y : B 1 𝑜 ⟶ B → 1 𝑜 eval R ⁡ y ∘ I ↾ B 1 𝑜 = 1 𝑜 eval R ⁡ y
49 47 48 syl ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y ∘ I ↾ B 1 𝑜 = 1 𝑜 eval R ⁡ y
50 23 36 49 3eqtrd ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → eval 1 ⁡ R ⁡ y ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = 1 𝑜 eval R ⁡ y
51 45 ffnd ⊢ R ∈ CRing → 1 𝑜 eval R Fn Base Poly 1 ⁡ R
52 fnfvelrn ⊢ 1 𝑜 eval R Fn Base Poly 1 ⁡ R ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y ∈ ran ⁡ 1 𝑜 eval R
53 51 52 sylan ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y ∈ ran ⁡ 1 𝑜 eval R
54 53 3 eleqtrrdi ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → 1 𝑜 eval R ⁡ y ∈ E
55 50 54 eqeltrd ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → eval 1 ⁡ R ⁡ y ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ ∈ E
56 coeq1 ⊢ eval 1 ⁡ R ⁡ y = F → eval 1 ⁡ R ⁡ y ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ = F ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅
57 56 eleq1d ⊢ eval 1 ⁡ R ⁡ y = F → eval 1 ⁡ R ⁡ y ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ ∈ E ↔ F ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ ∈ E
58 55 57 syl5ibcom ⊢ R ∈ CRing ∧ y ∈ Base Poly 1 ⁡ R → eval 1 ⁡ R ⁡ y = F → F ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ ∈ E
59 58 rexlimdva ⊢ R ∈ CRing → ∃ y ∈ Base Poly 1 ⁡ R eval 1 ⁡ R ⁡ y = F → F ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ ∈ E
60 4 18 59 sylc ⊢ F ∈ Q → F ∘ x ∈ B 1 𝑜 ⟼ x ⁡ ∅ ∈ E