MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  mpfpf1 Structured version   Unicode version

Theorem mpfpf1 19973
Description: Convert a multivariate polynomial function to univariate. (Contributed by Mario Carneiro, 12-Jun-2015.)
Hypotheses
Ref Expression
pf1rcl.q  |-  Q  =  ran  (eval1 `  R )
pf1f.b  |-  B  =  ( Base `  R
)
mpfpf1.q  |-  E  =  ran  ( 1o eval  R
)
Assertion
Ref Expression
mpfpf1  |-  ( F  e.  E  ->  ( F  o.  ( y  e.  B  |->  ( 1o 
X.  { y } ) ) )  e.  Q )
Distinct variable groups:    y, B    y, E    y, F    y, R
Allowed substitution hint:    Q( y)

Proof of Theorem mpfpf1
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 mpfpf1.q . . . . 5  |-  E  =  ran  ( 1o eval  R
)
2 eqid 2438 . . . . . . 7  |-  ( 1o eval  R )  =  ( 1o eval  R )
3 pf1f.b . . . . . . 7  |-  B  =  ( Base `  R
)
42, 3evlval 19947 . . . . . 6  |-  ( 1o eval  R )  =  ( ( 1o evalSub  R ) `  B )
54rneqi 5098 . . . . 5  |-  ran  ( 1o eval  R )  =  ran  ( ( 1o evalSub  R ) `
 B )
61, 5eqtri 2458 . . . 4  |-  E  =  ran  ( ( 1o evalSub  R ) `  B
)
76mpfrcl 19941 . . 3  |-  ( F  e.  E  ->  ( 1o  e.  _V  /\  R  e.  CRing  /\  B  e.  (SubRing `  R ) ) )
87simp2d 971 . 2  |-  ( F  e.  E  ->  R  e.  CRing )
9 id 21 . . . 4  |-  ( F  e.  E  ->  F  e.  E )
109, 1syl6eleq 2528 . . 3  |-  ( F  e.  E  ->  F  e.  ran  ( 1o eval  R
) )
11 1on 6733 . . . . 5  |-  1o  e.  On
12 eqid 2438 . . . . . 6  |-  ( 1o mPoly  R )  =  ( 1o mPoly  R )
13 eqid 2438 . . . . . 6  |-  ( R  ^s  ( B  ^m  1o ) )  =  ( R  ^s  ( B  ^m  1o ) )
142, 3, 12, 13evlrhm 19948 . . . . 5  |-  ( ( 1o  e.  On  /\  R  e.  CRing )  -> 
( 1o eval  R )  e.  ( ( 1o mPoly  R
) RingHom  ( R  ^s  ( B  ^m  1o ) ) ) )
1511, 8, 14sylancr 646 . . . 4  |-  ( F  e.  E  ->  ( 1o eval  R )  e.  ( ( 1o mPoly  R ) RingHom  ( R  ^s  ( B  ^m  1o ) ) ) )
16 eqid 2438 . . . . . 6  |-  (Poly1 `  R
)  =  (Poly1 `  R
)
17 eqid 2438 . . . . . 6  |-  (PwSer1 `  R
)  =  (PwSer1 `  R
)
18 eqid 2438 . . . . . 6  |-  ( Base `  (Poly1 `  R ) )  =  ( Base `  (Poly1 `  R ) )
1916, 17, 18ply1bas 16595 . . . . 5  |-  ( Base `  (Poly1 `  R ) )  =  ( Base `  ( 1o mPoly  R ) )
20 eqid 2438 . . . . 5  |-  ( Base `  ( R  ^s  ( B  ^m  1o ) ) )  =  ( Base `  ( R  ^s  ( B  ^m  1o ) ) )
2119, 20rhmf 15829 . . . 4  |-  ( ( 1o eval  R )  e.  ( ( 1o mPoly  R
) RingHom  ( R  ^s  ( B  ^m  1o ) ) )  ->  ( 1o eval  R ) : ( Base `  (Poly1 `  R ) ) --> ( Base `  ( R  ^s  ( B  ^m  1o ) ) ) )
22 ffn 5593 . . . 4  |-  ( ( 1o eval  R ) : ( Base `  (Poly1 `  R ) ) --> (
Base `  ( R  ^s  ( B  ^m  1o ) ) )  ->  ( 1o eval  R )  Fn  ( Base `  (Poly1 `  R ) ) )
23 fvelrnb 5776 . . . 4  |-  ( ( 1o eval  R )  Fn  ( Base `  (Poly1 `  R ) )  -> 
( F  e.  ran  ( 1o eval  R )  <->  E. x  e.  ( Base `  (Poly1 `  R ) ) ( ( 1o eval  R
) `  x )  =  F ) )
2415, 21, 22, 234syl 20 . . 3  |-  ( F  e.  E  ->  ( F  e.  ran  ( 1o eval  R )  <->  E. x  e.  ( Base `  (Poly1 `  R ) ) ( ( 1o eval  R ) `
 x )  =  F ) )
2510, 24mpbid 203 . 2  |-  ( F  e.  E  ->  E. x  e.  ( Base `  (Poly1 `  R ) ) ( ( 1o eval  R ) `
 x )  =  F )
26 eqid 2438 . . . . . 6  |-  (eval1 `  R
)  =  (eval1 `  R
)
2726, 2, 3, 12, 19evl1val 19950 . . . . 5  |-  ( ( R  e.  CRing  /\  x  e.  ( Base `  (Poly1 `  R ) ) )  ->  ( (eval1 `  R
) `  x )  =  ( ( ( 1o eval  R ) `  x )  o.  (
y  e.  B  |->  ( 1o  X.  { y } ) ) ) )
28 eqid 2438 . . . . . . . . 9  |-  ( R  ^s  B )  =  ( R  ^s  B )
2926, 16, 28, 3evl1rhm 19951 . . . . . . . 8  |-  ( R  e.  CRing  ->  (eval1 `  R
)  e.  ( (Poly1 `  R ) RingHom  ( R  ^s  B ) ) )
30 eqid 2438 . . . . . . . . 9  |-  ( Base `  ( R  ^s  B ) )  =  ( Base `  ( R  ^s  B ) )
3118, 30rhmf 15829 . . . . . . . 8  |-  ( (eval1 `  R )  e.  ( (Poly1 `  R ) RingHom  ( R  ^s  B ) )  -> 
(eval1 `
 R ) : ( Base `  (Poly1 `  R ) ) --> (
Base `  ( R  ^s  B ) ) )
32 ffn 5593 . . . . . . . 8  |-  ( (eval1 `  R ) : (
Base `  (Poly1 `  R
) ) --> ( Base `  ( R  ^s  B ) )  ->  (eval1 `  R
)  Fn  ( Base `  (Poly1 `  R ) ) )
3329, 31, 323syl 19 . . . . . . 7  |-  ( R  e.  CRing  ->  (eval1 `  R
)  Fn  ( Base `  (Poly1 `  R ) ) )
34 fnfvelrn 5869 . . . . . . 7  |-  ( ( (eval1 `  R )  Fn  ( Base `  (Poly1 `  R ) )  /\  x  e.  ( Base `  (Poly1 `  R ) ) )  ->  ( (eval1 `  R ) `  x
)  e.  ran  (eval1 `  R ) )
3533, 34sylan 459 . . . . . 6  |-  ( ( R  e.  CRing  /\  x  e.  ( Base `  (Poly1 `  R ) ) )  ->  ( (eval1 `  R
) `  x )  e.  ran  (eval1 `  R ) )
36 pf1rcl.q . . . . . 6  |-  Q  =  ran  (eval1 `  R )
3735, 36syl6eleqr 2529 . . . . 5  |-  ( ( R  e.  CRing  /\  x  e.  ( Base `  (Poly1 `  R ) ) )  ->  ( (eval1 `  R
) `  x )  e.  Q )
3827, 37eqeltrrd 2513 . . . 4  |-  ( ( R  e.  CRing  /\  x  e.  ( Base `  (Poly1 `  R ) ) )  ->  ( ( ( 1o eval  R ) `  x )  o.  (
y  e.  B  |->  ( 1o  X.  { y } ) ) )  e.  Q )
39 coeq1 5032 . . . . 5  |-  ( ( ( 1o eval  R ) `
 x )  =  F  ->  ( (
( 1o eval  R ) `  x )  o.  (
y  e.  B  |->  ( 1o  X.  { y } ) ) )  =  ( F  o.  ( y  e.  B  |->  ( 1o  X.  {
y } ) ) ) )
4039eleq1d 2504 . . . 4  |-  ( ( ( 1o eval  R ) `
 x )  =  F  ->  ( (
( ( 1o eval  R
) `  x )  o.  ( y  e.  B  |->  ( 1o  X.  {
y } ) ) )  e.  Q  <->  ( F  o.  ( y  e.  B  |->  ( 1o  X.  {
y } ) ) )  e.  Q ) )
4138, 40syl5ibcom 213 . . 3  |-  ( ( R  e.  CRing  /\  x  e.  ( Base `  (Poly1 `  R ) ) )  ->  ( ( ( 1o eval  R ) `  x )  =  F  ->  ( F  o.  ( y  e.  B  |->  ( 1o  X.  {
y } ) ) )  e.  Q ) )
4241rexlimdva 2832 . 2  |-  ( R  e.  CRing  ->  ( E. x  e.  ( Base `  (Poly1 `  R ) ) ( ( 1o eval  R
) `  x )  =  F  ->  ( F  o.  ( y  e.  B  |->  ( 1o  X.  { y } ) ) )  e.  Q
) )
438, 25, 42sylc 59 1  |-  ( F  e.  E  ->  ( F  o.  ( y  e.  B  |->  ( 1o 
X.  { y } ) ) )  e.  Q )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 178    /\ wa 360    = wceq 1653    e. wcel 1726   E.wrex 2708   _Vcvv 2958   {csn 3816    e. cmpt 4268   Oncon0 4583    X. cxp 4878   ran crn 4881    o. ccom 4884    Fn wfn 5451   -->wf 5452   ` cfv 5456  (class class class)co 6083   1oc1o 6719    ^m cmap 7020   Basecbs 13471    ^s cpws 13672   CRingccrg 15663   RingHom crh 15819  SubRingcsubrg 15866   mPoly cmpl 16410   evalSub ces 16411   eval cevl 16412  PwSer1cps1 16571  Poly1cpl1 16573  eval1ce1 16575
This theorem is referenced by:  pf1ind  19977
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1556  ax-5 1567  ax-17 1627  ax-9 1667  ax-8 1688  ax-13 1728  ax-14 1730  ax-6 1745  ax-7 1750  ax-11 1762  ax-12 1951  ax-ext 2419  ax-rep 4322  ax-sep 4332  ax-nul 4340  ax-pow 4379  ax-pr 4405  ax-un 4703  ax-inf2 7598  ax-cnex 9048  ax-resscn 9049  ax-1cn 9050  ax-icn 9051  ax-addcl 9052  ax-addrcl 9053  ax-mulcl 9054  ax-mulrcl 9055  ax-mulcom 9056  ax-addass 9057  ax-mulass 9058  ax-distr 9059  ax-i2m1 9060  ax-1ne0 9061  ax-1rid 9062  ax-rnegex 9063  ax-rrecex 9064  ax-cnre 9065  ax-pre-lttri 9066  ax-pre-lttrn 9067  ax-pre-ltadd 9068  ax-pre-mulgt0 9069
This theorem depends on definitions:  df-bi 179  df-or 361  df-an 362  df-3or 938  df-3an 939  df-tru 1329  df-ex 1552  df-nf 1555  df-sb 1660  df-eu 2287  df-mo 2288  df-clab 2425  df-cleq 2431  df-clel 2434  df-nfc 2563  df-ne 2603  df-nel 2604  df-ral 2712  df-rex 2713  df-reu 2714  df-rmo 2715  df-rab 2716  df-v 2960  df-sbc 3164  df-csb 3254  df-dif 3325  df-un 3327  df-in 3329  df-ss 3336  df-pss 3338  df-nul 3631  df-if 3742  df-pw 3803  df-sn 3822  df-pr 3823  df-tp 3824  df-op 3825  df-uni 4018  df-int 4053  df-iun 4097  df-iin 4098  df-br 4215  df-opab 4269  df-mpt 4270  df-tr 4305  df-eprel 4496  df-id 4500  df-po 4505  df-so 4506  df-fr 4543  df-se 4544  df-we 4545  df-ord 4586  df-on 4587  df-lim 4588  df-suc 4589  df-om 4848  df-xp 4886  df-rel 4887  df-cnv 4888  df-co 4889  df-dm 4890  df-rn 4891  df-res 4892  df-ima 4893  df-iota 5420  df-fun 5458  df-fn 5459  df-f 5460  df-f1 5461  df-fo 5462  df-f1o 5463  df-fv 5464  df-isom 5465  df-ov 6086  df-oprab 6087  df-mpt2 6088  df-of 6307  df-ofr 6308  df-1st 6351  df-2nd 6352  df-riota 6551  df-recs 6635  df-rdg 6670  df-1o 6726  df-2o 6727  df-oadd 6730  df-er 6907  df-map 7022  df-pm 7023  df-ixp 7066  df-en 7112  df-dom 7113  df-sdom 7114  df-fin 7115  df-sup 7448  df-oi 7481  df-card 7828  df-pnf 9124  df-mnf 9125  df-xr 9126  df-ltxr 9127  df-le 9128  df-sub 9295  df-neg 9296  df-nn 10003  df-2 10060  df-3 10061  df-4 10062  df-5 10063  df-6 10064  df-7 10065  df-8 10066  df-9 10067  df-10 10068  df-n0 10224  df-z 10285  df-dec 10385  df-uz 10491  df-fz 11046  df-fzo 11138  df-seq 11326  df-hash 11621  df-struct 13473  df-ndx 13474  df-slot 13475  df-base 13476  df-sets 13477  df-ress 13478  df-plusg 13544  df-mulr 13545  df-sca 13547  df-vsca 13548  df-tset 13550  df-ple 13551  df-ds 13553  df-hom 13555  df-cco 13556  df-prds 13673  df-pws 13675  df-0g 13729  df-gsum 13730  df-mre 13813  df-mrc 13814  df-acs 13816  df-mnd 14692  df-mhm 14740  df-submnd 14741  df-grp 14814  df-minusg 14815  df-sbg 14816  df-mulg 14817  df-subg 14943  df-ghm 15006  df-cntz 15118  df-cmn 15416  df-abl 15417  df-mgp 15651  df-rng 15665  df-cring 15666  df-ur 15667  df-rnghom 15821  df-subrg 15868  df-lmod 15954  df-lss 16011  df-lsp 16050  df-assa 16374  df-asp 16375  df-ascl 16376  df-psr 16419  df-mvr 16420  df-mpl 16421  df-evls 16422  df-evl 16423  df-opsr 16427  df-psr1 16578  df-ply1 16580  df-evl1 16582
  Copyright terms: Public domain W3C validator