Step |
Hyp |
Ref |
Expression |
1 |
|
irngval.o |
|- O = ( R evalSub1 S ) |
2 |
|
irngval.u |
|- U = ( R |`s S ) |
3 |
|
irngval.b |
|- B = ( Base ` R ) |
4 |
|
irngval.0 |
|- .0. = ( 0g ` R ) |
5 |
|
elirng.r |
|- ( ph -> R e. CRing ) |
6 |
|
elirng.s |
|- ( ph -> S e. ( SubRing ` R ) ) |
7 |
|
irngss.1 |
|- ( ph -> R e. NzRing ) |
8 |
|
simpl |
|- ( ( ph /\ x e. S ) -> ph ) |
9 |
3
|
subrgss |
|- ( S e. ( SubRing ` R ) -> S C_ B ) |
10 |
6 9
|
syl |
|- ( ph -> S C_ B ) |
11 |
10
|
sselda |
|- ( ( ph /\ x e. S ) -> x e. B ) |
12 |
|
eqid |
|- ( Poly1 ` R ) = ( Poly1 ` R ) |
13 |
|
eqid |
|- ( Poly1 ` U ) = ( Poly1 ` U ) |
14 |
|
eqid |
|- ( Base ` ( Poly1 ` U ) ) = ( Base ` ( Poly1 ` U ) ) |
15 |
6
|
adantr |
|- ( ( ph /\ x e. S ) -> S e. ( SubRing ` R ) ) |
16 |
|
eqid |
|- ( ( Poly1 ` R ) |`s ( Base ` ( Poly1 ` U ) ) ) = ( ( Poly1 ` R ) |`s ( Base ` ( Poly1 ` U ) ) ) |
17 |
|
eqid |
|- ( var1 ` R ) = ( var1 ` R ) |
18 |
17 15 2 13 14
|
subrgvr1cl |
|- ( ( ph /\ x e. S ) -> ( var1 ` R ) e. ( Base ` ( Poly1 ` U ) ) ) |
19 |
|
eqid |
|- ( algSc ` ( Poly1 ` R ) ) = ( algSc ` ( Poly1 ` R ) ) |
20 |
|
simpr |
|- ( ( ph /\ x e. S ) -> x e. S ) |
21 |
19 2 12 13 14 15 20
|
asclply1subcl |
|- ( ( ph /\ x e. S ) -> ( ( algSc ` ( Poly1 ` R ) ) ` x ) e. ( Base ` ( Poly1 ` U ) ) ) |
22 |
12 2 13 14 15 16 18 21
|
ressply1sub |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` U ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) = ( ( var1 ` R ) ( -g ` ( ( Poly1 ` R ) |`s ( Base ` ( Poly1 ` U ) ) ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) |
23 |
12 2 13 14
|
subrgply1 |
|- ( S e. ( SubRing ` R ) -> ( Base ` ( Poly1 ` U ) ) e. ( SubRing ` ( Poly1 ` R ) ) ) |
24 |
|
subrgsubg |
|- ( ( Base ` ( Poly1 ` U ) ) e. ( SubRing ` ( Poly1 ` R ) ) -> ( Base ` ( Poly1 ` U ) ) e. ( SubGrp ` ( Poly1 ` R ) ) ) |
25 |
6 23 24
|
3syl |
|- ( ph -> ( Base ` ( Poly1 ` U ) ) e. ( SubGrp ` ( Poly1 ` R ) ) ) |
26 |
25
|
adantr |
|- ( ( ph /\ x e. S ) -> ( Base ` ( Poly1 ` U ) ) e. ( SubGrp ` ( Poly1 ` R ) ) ) |
27 |
|
eqid |
|- ( -g ` ( Poly1 ` R ) ) = ( -g ` ( Poly1 ` R ) ) |
28 |
|
eqid |
|- ( -g ` ( ( Poly1 ` R ) |`s ( Base ` ( Poly1 ` U ) ) ) ) = ( -g ` ( ( Poly1 ` R ) |`s ( Base ` ( Poly1 ` U ) ) ) ) |
29 |
27 16 28
|
subgsub |
|- ( ( ( Base ` ( Poly1 ` U ) ) e. ( SubGrp ` ( Poly1 ` R ) ) /\ ( var1 ` R ) e. ( Base ` ( Poly1 ` U ) ) /\ ( ( algSc ` ( Poly1 ` R ) ) ` x ) e. ( Base ` ( Poly1 ` U ) ) ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) = ( ( var1 ` R ) ( -g ` ( ( Poly1 ` R ) |`s ( Base ` ( Poly1 ` U ) ) ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) |
30 |
26 18 21 29
|
syl3anc |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) = ( ( var1 ` R ) ( -g ` ( ( Poly1 ` R ) |`s ( Base ` ( Poly1 ` U ) ) ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) |
31 |
22 30
|
eqtr4d |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` U ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) = ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) |
32 |
2
|
subrgcrng |
|- ( ( R e. CRing /\ S e. ( SubRing ` R ) ) -> U e. CRing ) |
33 |
5 6 32
|
syl2anc |
|- ( ph -> U e. CRing ) |
34 |
13
|
ply1crng |
|- ( U e. CRing -> ( Poly1 ` U ) e. CRing ) |
35 |
33 34
|
syl |
|- ( ph -> ( Poly1 ` U ) e. CRing ) |
36 |
35
|
adantr |
|- ( ( ph /\ x e. S ) -> ( Poly1 ` U ) e. CRing ) |
37 |
36
|
crnggrpd |
|- ( ( ph /\ x e. S ) -> ( Poly1 ` U ) e. Grp ) |
38 |
|
eqid |
|- ( -g ` ( Poly1 ` U ) ) = ( -g ` ( Poly1 ` U ) ) |
39 |
14 38
|
grpsubcl |
|- ( ( ( Poly1 ` U ) e. Grp /\ ( var1 ` R ) e. ( Base ` ( Poly1 ` U ) ) /\ ( ( algSc ` ( Poly1 ` R ) ) ` x ) e. ( Base ` ( Poly1 ` U ) ) ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` U ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( Base ` ( Poly1 ` U ) ) ) |
40 |
37 18 21 39
|
syl3anc |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` U ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( Base ` ( Poly1 ` U ) ) ) |
41 |
31 40
|
eqeltrrd |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( Base ` ( Poly1 ` U ) ) ) |
42 |
|
eqid |
|- ( Base ` ( Poly1 ` R ) ) = ( Base ` ( Poly1 ` R ) ) |
43 |
|
eqid |
|- ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) = ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) |
44 |
|
eqid |
|- ( eval1 ` R ) = ( eval1 ` R ) |
45 |
7
|
adantr |
|- ( ( ph /\ x e. S ) -> R e. NzRing ) |
46 |
5
|
adantr |
|- ( ( ph /\ x e. S ) -> R e. CRing ) |
47 |
|
eqid |
|- ( Monic1p ` R ) = ( Monic1p ` R ) |
48 |
|
eqid |
|- ( deg1 ` R ) = ( deg1 ` R ) |
49 |
12 42 3 17 27 19 43 44 45 46 11 47 48 4
|
ply1remlem |
|- ( ( ph /\ x e. S ) -> ( ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( Monic1p ` R ) /\ ( ( deg1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) = 1 /\ ( `' ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) " { .0. } ) = { x } ) ) |
50 |
49
|
simp1d |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( Monic1p ` R ) ) |
51 |
41 50
|
elind |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( ( Base ` ( Poly1 ` U ) ) i^i ( Monic1p ` R ) ) ) |
52 |
|
eqid |
|- ( Monic1p ` U ) = ( Monic1p ` U ) |
53 |
12 2 13 14 6 47 52
|
ressply1mon1p |
|- ( ph -> ( Monic1p ` U ) = ( ( Base ` ( Poly1 ` U ) ) i^i ( Monic1p ` R ) ) ) |
54 |
53
|
adantr |
|- ( ( ph /\ x e. S ) -> ( Monic1p ` U ) = ( ( Base ` ( Poly1 ` U ) ) i^i ( Monic1p ` R ) ) ) |
55 |
51 54
|
eleqtrrd |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( Monic1p ` U ) ) |
56 |
|
fveq2 |
|- ( f = ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) -> ( O ` f ) = ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ) |
57 |
56
|
fveq1d |
|- ( f = ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) -> ( ( O ` f ) ` x ) = ( ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) ) |
58 |
57
|
eqeq1d |
|- ( f = ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) -> ( ( ( O ` f ) ` x ) = .0. <-> ( ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) = .0. ) ) |
59 |
58
|
adantl |
|- ( ( ( ph /\ x e. S ) /\ f = ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) -> ( ( ( O ` f ) ` x ) = .0. <-> ( ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) = .0. ) ) |
60 |
1 3 13 2 14 44 46 15
|
ressply1evl |
|- ( ( ph /\ x e. S ) -> O = ( ( eval1 ` R ) |` ( Base ` ( Poly1 ` U ) ) ) ) |
61 |
60
|
fveq1d |
|- ( ( ph /\ x e. S ) -> ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) = ( ( ( eval1 ` R ) |` ( Base ` ( Poly1 ` U ) ) ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ) |
62 |
41
|
fvresd |
|- ( ( ph /\ x e. S ) -> ( ( ( eval1 ` R ) |` ( Base ` ( Poly1 ` U ) ) ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) = ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ) |
63 |
61 62
|
eqtrd |
|- ( ( ph /\ x e. S ) -> ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) = ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ) |
64 |
63
|
fveq1d |
|- ( ( ph /\ x e. S ) -> ( ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) = ( ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) ) |
65 |
|
eqid |
|- ( R ^s B ) = ( R ^s B ) |
66 |
|
eqid |
|- ( Base ` ( R ^s B ) ) = ( Base ` ( R ^s B ) ) |
67 |
3
|
fvexi |
|- B e. _V |
68 |
67
|
a1i |
|- ( ( ph /\ x e. S ) -> B e. _V ) |
69 |
44 12 65 3
|
evl1rhm |
|- ( R e. CRing -> ( eval1 ` R ) e. ( ( Poly1 ` R ) RingHom ( R ^s B ) ) ) |
70 |
42 66
|
rhmf |
|- ( ( eval1 ` R ) e. ( ( Poly1 ` R ) RingHom ( R ^s B ) ) -> ( eval1 ` R ) : ( Base ` ( Poly1 ` R ) ) --> ( Base ` ( R ^s B ) ) ) |
71 |
5 69 70
|
3syl |
|- ( ph -> ( eval1 ` R ) : ( Base ` ( Poly1 ` R ) ) --> ( Base ` ( R ^s B ) ) ) |
72 |
71
|
adantr |
|- ( ( ph /\ x e. S ) -> ( eval1 ` R ) : ( Base ` ( Poly1 ` R ) ) --> ( Base ` ( R ^s B ) ) ) |
73 |
|
eqid |
|- ( PwSer1 ` U ) = ( PwSer1 ` U ) |
74 |
|
eqid |
|- ( Base ` ( PwSer1 ` U ) ) = ( Base ` ( PwSer1 ` U ) ) |
75 |
12 2 13 14 6 73 74 42
|
ressply1bas2 |
|- ( ph -> ( Base ` ( Poly1 ` U ) ) = ( ( Base ` ( PwSer1 ` U ) ) i^i ( Base ` ( Poly1 ` R ) ) ) ) |
76 |
75
|
adantr |
|- ( ( ph /\ x e. S ) -> ( Base ` ( Poly1 ` U ) ) = ( ( Base ` ( PwSer1 ` U ) ) i^i ( Base ` ( Poly1 ` R ) ) ) ) |
77 |
41 76
|
eleqtrd |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( ( Base ` ( PwSer1 ` U ) ) i^i ( Base ` ( Poly1 ` R ) ) ) ) |
78 |
77
|
elin2d |
|- ( ( ph /\ x e. S ) -> ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) e. ( Base ` ( Poly1 ` R ) ) ) |
79 |
72 78
|
ffvelcdmd |
|- ( ( ph /\ x e. S ) -> ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) e. ( Base ` ( R ^s B ) ) ) |
80 |
65 3 66 45 68 79
|
pwselbas |
|- ( ( ph /\ x e. S ) -> ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) : B --> B ) |
81 |
80
|
ffnd |
|- ( ( ph /\ x e. S ) -> ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) Fn B ) |
82 |
|
vsnid |
|- x e. { x } |
83 |
49
|
simp3d |
|- ( ( ph /\ x e. S ) -> ( `' ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) " { .0. } ) = { x } ) |
84 |
82 83
|
eleqtrrid |
|- ( ( ph /\ x e. S ) -> x e. ( `' ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) " { .0. } ) ) |
85 |
|
fniniseg |
|- ( ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) Fn B -> ( x e. ( `' ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) " { .0. } ) <-> ( x e. B /\ ( ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) = .0. ) ) ) |
86 |
85
|
simplbda |
|- ( ( ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) Fn B /\ x e. ( `' ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) " { .0. } ) ) -> ( ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) = .0. ) |
87 |
81 84 86
|
syl2anc |
|- ( ( ph /\ x e. S ) -> ( ( ( eval1 ` R ) ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) = .0. ) |
88 |
64 87
|
eqtrd |
|- ( ( ph /\ x e. S ) -> ( ( O ` ( ( var1 ` R ) ( -g ` ( Poly1 ` R ) ) ( ( algSc ` ( Poly1 ` R ) ) ` x ) ) ) ` x ) = .0. ) |
89 |
55 59 88
|
rspcedvd |
|- ( ( ph /\ x e. S ) -> E. f e. ( Monic1p ` U ) ( ( O ` f ) ` x ) = .0. ) |
90 |
1 2 3 4 5 6
|
elirng |
|- ( ph -> ( x e. ( R IntgRing S ) <-> ( x e. B /\ E. f e. ( Monic1p ` U ) ( ( O ` f ) ` x ) = .0. ) ) ) |
91 |
90
|
biimpar |
|- ( ( ph /\ ( x e. B /\ E. f e. ( Monic1p ` U ) ( ( O ` f ) ` x ) = .0. ) ) -> x e. ( R IntgRing S ) ) |
92 |
8 11 89 91
|
syl12anc |
|- ( ( ph /\ x e. S ) -> x e. ( R IntgRing S ) ) |
93 |
92
|
ex |
|- ( ph -> ( x e. S -> x e. ( R IntgRing S ) ) ) |
94 |
93
|
ssrdv |
|- ( ph -> S C_ ( R IntgRing S ) ) |