Step |
Hyp |
Ref |
Expression |
1 |
|
pf1const.b |
|- B = ( Base ` R ) |
2 |
|
pf1const.q |
|- Q = ran ( eval1 ` R ) |
3 |
|
eqid |
|- ( eval1 ` R ) = ( eval1 ` R ) |
4 |
|
eqid |
|- ( Poly1 ` R ) = ( Poly1 ` R ) |
5 |
|
eqid |
|- ( R ^s B ) = ( R ^s B ) |
6 |
3 4 5 1
|
evl1rhm |
|- ( R e. CRing -> ( eval1 ` R ) e. ( ( Poly1 ` R ) RingHom ( R ^s B ) ) ) |
7 |
|
eqid |
|- ( Base ` ( Poly1 ` R ) ) = ( Base ` ( Poly1 ` R ) ) |
8 |
|
eqid |
|- ( Base ` ( R ^s B ) ) = ( Base ` ( R ^s B ) ) |
9 |
7 8
|
rhmf |
|- ( ( eval1 ` R ) e. ( ( Poly1 ` R ) RingHom ( R ^s B ) ) -> ( eval1 ` R ) : ( Base ` ( Poly1 ` R ) ) --> ( Base ` ( R ^s B ) ) ) |
10 |
|
ffn |
|- ( ( eval1 ` R ) : ( Base ` ( Poly1 ` R ) ) --> ( Base ` ( R ^s B ) ) -> ( eval1 ` R ) Fn ( Base ` ( Poly1 ` R ) ) ) |
11 |
|
fnima |
|- ( ( eval1 ` R ) Fn ( Base ` ( Poly1 ` R ) ) -> ( ( eval1 ` R ) " ( Base ` ( Poly1 ` R ) ) ) = ran ( eval1 ` R ) ) |
12 |
6 9 10 11
|
4syl |
|- ( R e. CRing -> ( ( eval1 ` R ) " ( Base ` ( Poly1 ` R ) ) ) = ran ( eval1 ` R ) ) |
13 |
12 2
|
eqtr4di |
|- ( R e. CRing -> ( ( eval1 ` R ) " ( Base ` ( Poly1 ` R ) ) ) = Q ) |
14 |
4
|
ply1assa |
|- ( R e. CRing -> ( Poly1 ` R ) e. AssAlg ) |
15 |
|
assaring |
|- ( ( Poly1 ` R ) e. AssAlg -> ( Poly1 ` R ) e. Ring ) |
16 |
7
|
subrgid |
|- ( ( Poly1 ` R ) e. Ring -> ( Base ` ( Poly1 ` R ) ) e. ( SubRing ` ( Poly1 ` R ) ) ) |
17 |
14 15 16
|
3syl |
|- ( R e. CRing -> ( Base ` ( Poly1 ` R ) ) e. ( SubRing ` ( Poly1 ` R ) ) ) |
18 |
|
rhmima |
|- ( ( ( eval1 ` R ) e. ( ( Poly1 ` R ) RingHom ( R ^s B ) ) /\ ( Base ` ( Poly1 ` R ) ) e. ( SubRing ` ( Poly1 ` R ) ) ) -> ( ( eval1 ` R ) " ( Base ` ( Poly1 ` R ) ) ) e. ( SubRing ` ( R ^s B ) ) ) |
19 |
6 17 18
|
syl2anc |
|- ( R e. CRing -> ( ( eval1 ` R ) " ( Base ` ( Poly1 ` R ) ) ) e. ( SubRing ` ( R ^s B ) ) ) |
20 |
13 19
|
eqeltrrd |
|- ( R e. CRing -> Q e. ( SubRing ` ( R ^s B ) ) ) |