| Step |
Hyp |
Ref |
Expression |
| 1 |
|
esplyfv.d |
|- D = { h e. ( NN0 ^m I ) | h finSupp 0 } |
| 2 |
|
esplyfv.i |
|- ( ph -> I e. Fin ) |
| 3 |
|
esplyfv.r |
|- ( ph -> R e. Ring ) |
| 4 |
|
esplyfv.k |
|- ( ph -> K e. ( 0 ... ( # ` I ) ) ) |
| 5 |
|
esplyfv.f |
|- ( ph -> F e. D ) |
| 6 |
|
esplyfv.0 |
|- .0. = ( 0g ` R ) |
| 7 |
|
esplyfv.1 |
|- .1. = ( 1r ` R ) |
| 8 |
|
eqeq2 |
|- ( if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) = if ( ran F C_ { 0 , 1 } , if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) , .0. ) -> ( ( ( ( I eSymPoly R ) ` K ) ` F ) = if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) <-> ( ( ( I eSymPoly R ) ` K ) ` F ) = if ( ran F C_ { 0 , 1 } , if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) , .0. ) ) ) |
| 9 |
|
eqeq2 |
|- ( .0. = if ( ran F C_ { 0 , 1 } , if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) , .0. ) -> ( ( ( ( I eSymPoly R ) ` K ) ` F ) = .0. <-> ( ( ( I eSymPoly R ) ` K ) ` F ) = if ( ran F C_ { 0 , 1 } , if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) , .0. ) ) ) |
| 10 |
2
|
adantr |
|- ( ( ph /\ ran F C_ { 0 , 1 } ) -> I e. Fin ) |
| 11 |
3
|
adantr |
|- ( ( ph /\ ran F C_ { 0 , 1 } ) -> R e. Ring ) |
| 12 |
4
|
adantr |
|- ( ( ph /\ ran F C_ { 0 , 1 } ) -> K e. ( 0 ... ( # ` I ) ) ) |
| 13 |
5
|
adantr |
|- ( ( ph /\ ran F C_ { 0 , 1 } ) -> F e. D ) |
| 14 |
|
simpr |
|- ( ( ph /\ ran F C_ { 0 , 1 } ) -> ran F C_ { 0 , 1 } ) |
| 15 |
1 10 11 12 13 6 7 14
|
esplyfv1 |
|- ( ( ph /\ ran F C_ { 0 , 1 } ) -> ( ( ( I eSymPoly R ) ` K ) ` F ) = if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) ) |
| 16 |
2
|
adantr |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> I e. Fin ) |
| 17 |
3
|
adantr |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> R e. Ring ) |
| 18 |
|
elfznn0 |
|- ( K e. ( 0 ... ( # ` I ) ) -> K e. NN0 ) |
| 19 |
4 18
|
syl |
|- ( ph -> K e. NN0 ) |
| 20 |
19
|
adantr |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> K e. NN0 ) |
| 21 |
1 16 17 20
|
esplyfval |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( I eSymPoly R ) ` K ) = ( ( ZRHom ` R ) o. ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ) ) |
| 22 |
21
|
fveq1d |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( ( I eSymPoly R ) ` K ) ` F ) = ( ( ( ZRHom ` R ) o. ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ) ` F ) ) |
| 23 |
|
ovex |
|- ( NN0 ^m I ) e. _V |
| 24 |
1 23
|
rabex2 |
|- D e. _V |
| 25 |
24
|
a1i |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> D e. _V ) |
| 26 |
1 16 17 20
|
esplylem |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) C_ D ) |
| 27 |
|
indf |
|- ( ( D e. _V /\ ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) C_ D ) -> ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) : D --> { 0 , 1 } ) |
| 28 |
25 26 27
|
syl2anc |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) : D --> { 0 , 1 } ) |
| 29 |
5
|
adantr |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> F e. D ) |
| 30 |
28 29
|
fvco3d |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( ( ZRHom ` R ) o. ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ) ` F ) = ( ( ZRHom ` R ) ` ( ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ` F ) ) ) |
| 31 |
|
simpr |
|- ( ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) /\ ( ( _Ind ` I ) ` d ) = F ) -> ( ( _Ind ` I ) ` d ) = F ) |
| 32 |
2
|
ad4antr |
|- ( ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) /\ ( ( _Ind ` I ) ` d ) = F ) -> I e. Fin ) |
| 33 |
|
ssrab2 |
|- { c e. ~P I | ( # ` c ) = K } C_ ~P I |
| 34 |
33
|
a1i |
|- ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) -> { c e. ~P I | ( # ` c ) = K } C_ ~P I ) |
| 35 |
34
|
sselda |
|- ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) -> d e. ~P I ) |
| 36 |
35
|
adantr |
|- ( ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) /\ ( ( _Ind ` I ) ` d ) = F ) -> d e. ~P I ) |
| 37 |
36
|
elpwid |
|- ( ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) /\ ( ( _Ind ` I ) ` d ) = F ) -> d C_ I ) |
| 38 |
|
indf |
|- ( ( I e. Fin /\ d C_ I ) -> ( ( _Ind ` I ) ` d ) : I --> { 0 , 1 } ) |
| 39 |
32 37 38
|
syl2anc |
|- ( ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) /\ ( ( _Ind ` I ) ` d ) = F ) -> ( ( _Ind ` I ) ` d ) : I --> { 0 , 1 } ) |
| 40 |
31 39
|
feq1dd |
|- ( ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) /\ ( ( _Ind ` I ) ` d ) = F ) -> F : I --> { 0 , 1 } ) |
| 41 |
40
|
frnd |
|- ( ( ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) /\ d e. { c e. ~P I | ( # ` c ) = K } ) /\ ( ( _Ind ` I ) ` d ) = F ) -> ran F C_ { 0 , 1 } ) |
| 42 |
|
indf1o |
|- ( I e. Fin -> ( _Ind ` I ) : ~P I -1-1-onto-> ( { 0 , 1 } ^m I ) ) |
| 43 |
|
f1of |
|- ( ( _Ind ` I ) : ~P I -1-1-onto-> ( { 0 , 1 } ^m I ) -> ( _Ind ` I ) : ~P I --> ( { 0 , 1 } ^m I ) ) |
| 44 |
16 42 43
|
3syl |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( _Ind ` I ) : ~P I --> ( { 0 , 1 } ^m I ) ) |
| 45 |
44
|
ffnd |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( _Ind ` I ) Fn ~P I ) |
| 46 |
33
|
a1i |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> { c e. ~P I | ( # ` c ) = K } C_ ~P I ) |
| 47 |
45 46
|
fvelimabd |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) <-> E. d e. { c e. ~P I | ( # ` c ) = K } ( ( _Ind ` I ) ` d ) = F ) ) |
| 48 |
47
|
biimpa |
|- ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) -> E. d e. { c e. ~P I | ( # ` c ) = K } ( ( _Ind ` I ) ` d ) = F ) |
| 49 |
41 48
|
r19.29a |
|- ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) -> ran F C_ { 0 , 1 } ) |
| 50 |
|
simplr |
|- ( ( ( ph /\ -. ran F C_ { 0 , 1 } ) /\ F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) -> -. ran F C_ { 0 , 1 } ) |
| 51 |
49 50
|
pm2.65da |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> -. F e. ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) |
| 52 |
29 51
|
eldifd |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> F e. ( D \ ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ) |
| 53 |
|
ind0 |
|- ( ( D e. _V /\ ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) C_ D /\ F e. ( D \ ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ) -> ( ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ` F ) = 0 ) |
| 54 |
24 26 52 53
|
mp3an2i |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ` F ) = 0 ) |
| 55 |
54
|
fveq2d |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( ZRHom ` R ) ` ( ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ` F ) ) = ( ( ZRHom ` R ) ` 0 ) ) |
| 56 |
|
eqid |
|- ( ZRHom ` R ) = ( ZRHom ` R ) |
| 57 |
56 6
|
zrh0 |
|- ( R e. Ring -> ( ( ZRHom ` R ) ` 0 ) = .0. ) |
| 58 |
3 57
|
syl |
|- ( ph -> ( ( ZRHom ` R ) ` 0 ) = .0. ) |
| 59 |
58
|
adantr |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( ZRHom ` R ) ` 0 ) = .0. ) |
| 60 |
55 59
|
eqtrd |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( ZRHom ` R ) ` ( ( ( _Ind ` D ) ` ( ( _Ind ` I ) " { c e. ~P I | ( # ` c ) = K } ) ) ` F ) ) = .0. ) |
| 61 |
22 30 60
|
3eqtrd |
|- ( ( ph /\ -. ran F C_ { 0 , 1 } ) -> ( ( ( I eSymPoly R ) ` K ) ` F ) = .0. ) |
| 62 |
8 9 15 61
|
ifbothda |
|- ( ph -> ( ( ( I eSymPoly R ) ` K ) ` F ) = if ( ran F C_ { 0 , 1 } , if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) , .0. ) ) |
| 63 |
|
ifan |
|- if ( ( ran F C_ { 0 , 1 } /\ ( # ` ( F supp 0 ) ) = K ) , .1. , .0. ) = if ( ran F C_ { 0 , 1 } , if ( ( # ` ( F supp 0 ) ) = K , .1. , .0. ) , .0. ) |
| 64 |
62 63
|
eqtr4di |
|- ( ph -> ( ( ( I eSymPoly R ) ` K ) ` F ) = if ( ( ran F C_ { 0 , 1 } /\ ( # ` ( F supp 0 ) ) = K ) , .1. , .0. ) ) |