This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: If a polynomial given as a sum of scaled monomials by factors A is the zero polynomial, then all factors A are zero. (Contributed by Thierry Arnoux, 20-Feb-2025)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | ply1gsumz.p | |- P = ( Poly1 ` R ) |
|
| ply1gsumz.b | |- B = ( Base ` R ) |
||
| ply1gsumz.n | |- ( ph -> N e. NN0 ) |
||
| ply1gsumz.r | |- ( ph -> R e. Ring ) |
||
| ply1gsumz.f | |- F = ( n e. ( 0 ..^ N ) |-> ( n ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) |
||
| ply1gsumz.1 | |- .0. = ( 0g ` R ) |
||
| ply1gsumz.z | |- Z = ( 0g ` P ) |
||
| ply1gsumz.a | |- ( ph -> A : ( 0 ..^ N ) --> B ) |
||
| ply1gsumz.s | |- ( ph -> ( P gsum ( A oF ( .s ` P ) F ) ) = Z ) |
||
| Assertion | ply1gsumz | |- ( ph -> A = ( ( 0 ..^ N ) X. { .0. } ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | ply1gsumz.p | |- P = ( Poly1 ` R ) |
|
| 2 | ply1gsumz.b | |- B = ( Base ` R ) |
|
| 3 | ply1gsumz.n | |- ( ph -> N e. NN0 ) |
|
| 4 | ply1gsumz.r | |- ( ph -> R e. Ring ) |
|
| 5 | ply1gsumz.f | |- F = ( n e. ( 0 ..^ N ) |-> ( n ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) |
|
| 6 | ply1gsumz.1 | |- .0. = ( 0g ` R ) |
|
| 7 | ply1gsumz.z | |- Z = ( 0g ` P ) |
|
| 8 | ply1gsumz.a | |- ( ph -> A : ( 0 ..^ N ) --> B ) |
|
| 9 | ply1gsumz.s | |- ( ph -> ( P gsum ( A oF ( .s ` P ) F ) ) = Z ) |
|
| 10 | 8 | ffnd | |- ( ph -> A Fn ( 0 ..^ N ) ) |
| 11 | 1 | ply1ring | |- ( R e. Ring -> P e. Ring ) |
| 12 | eqid | |- ( Base ` P ) = ( Base ` P ) |
|
| 13 | 12 7 | ring0cl | |- ( P e. Ring -> Z e. ( Base ` P ) ) |
| 14 | 4 11 13 | 3syl | |- ( ph -> Z e. ( Base ` P ) ) |
| 15 | eqid | |- ( coe1 ` Z ) = ( coe1 ` Z ) |
|
| 16 | 15 12 1 2 | coe1f | |- ( Z e. ( Base ` P ) -> ( coe1 ` Z ) : NN0 --> B ) |
| 17 | 14 16 | syl | |- ( ph -> ( coe1 ` Z ) : NN0 --> B ) |
| 18 | 17 | ffnd | |- ( ph -> ( coe1 ` Z ) Fn NN0 ) |
| 19 | fzo0ssnn0 | |- ( 0 ..^ N ) C_ NN0 |
|
| 20 | 19 | a1i | |- ( ph -> ( 0 ..^ N ) C_ NN0 ) |
| 21 | 18 20 | fnssresd | |- ( ph -> ( ( coe1 ` Z ) |` ( 0 ..^ N ) ) Fn ( 0 ..^ N ) ) |
| 22 | simpr | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> j e. ( 0 ..^ N ) ) |
|
| 23 | 22 | fvresd | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( ( ( coe1 ` Z ) |` ( 0 ..^ N ) ) ` j ) = ( ( coe1 ` Z ) ` j ) ) |
| 24 | elfzonn0 | |- ( j e. ( 0 ..^ N ) -> j e. NN0 ) |
|
| 25 | 9 14 | eqeltrd | |- ( ph -> ( P gsum ( A oF ( .s ` P ) F ) ) e. ( Base ` P ) ) |
| 26 | eqid | |- ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) = ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) |
|
| 27 | 1 12 26 15 | ply1coe1eq | |- ( ( R e. Ring /\ ( P gsum ( A oF ( .s ` P ) F ) ) e. ( Base ` P ) /\ Z e. ( Base ` P ) ) -> ( A. j e. NN0 ( ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) ` j ) = ( ( coe1 ` Z ) ` j ) <-> ( P gsum ( A oF ( .s ` P ) F ) ) = Z ) ) |
| 28 | 27 | biimpar | |- ( ( ( R e. Ring /\ ( P gsum ( A oF ( .s ` P ) F ) ) e. ( Base ` P ) /\ Z e. ( Base ` P ) ) /\ ( P gsum ( A oF ( .s ` P ) F ) ) = Z ) -> A. j e. NN0 ( ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) ` j ) = ( ( coe1 ` Z ) ` j ) ) |
| 29 | 4 25 14 9 28 | syl31anc | |- ( ph -> A. j e. NN0 ( ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) ` j ) = ( ( coe1 ` Z ) ` j ) ) |
| 30 | 29 | r19.21bi | |- ( ( ph /\ j e. NN0 ) -> ( ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) ` j ) = ( ( coe1 ` Z ) ` j ) ) |
| 31 | 24 30 | sylan2 | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) ` j ) = ( ( coe1 ` Z ) ` j ) ) |
| 32 | 10 | adantr | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> A Fn ( 0 ..^ N ) ) |
| 33 | nfv | |- F/ n ph |
|
| 34 | ovexd | |- ( ( ph /\ n e. ( 0 ..^ N ) ) -> ( n ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) e. _V ) |
|
| 35 | 33 34 5 | fnmptd | |- ( ph -> F Fn ( 0 ..^ N ) ) |
| 36 | 35 | adantr | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> F Fn ( 0 ..^ N ) ) |
| 37 | ovexd | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( 0 ..^ N ) e. _V ) |
|
| 38 | inidm | |- ( ( 0 ..^ N ) i^i ( 0 ..^ N ) ) = ( 0 ..^ N ) |
|
| 39 | eqidd | |- ( ( ( ph /\ j e. ( 0 ..^ N ) ) /\ i e. ( 0 ..^ N ) ) -> ( A ` i ) = ( A ` i ) ) |
|
| 40 | oveq1 | |- ( n = i -> ( n ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) = ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) |
|
| 41 | simpr | |- ( ( ( ph /\ j e. ( 0 ..^ N ) ) /\ i e. ( 0 ..^ N ) ) -> i e. ( 0 ..^ N ) ) |
|
| 42 | ovexd | |- ( ( ( ph /\ j e. ( 0 ..^ N ) ) /\ i e. ( 0 ..^ N ) ) -> ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) e. _V ) |
|
| 43 | 5 40 41 42 | fvmptd3 | |- ( ( ( ph /\ j e. ( 0 ..^ N ) ) /\ i e. ( 0 ..^ N ) ) -> ( F ` i ) = ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) |
| 44 | 32 36 37 37 38 39 43 | offval | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( A oF ( .s ` P ) F ) = ( i e. ( 0 ..^ N ) |-> ( ( A ` i ) ( .s ` P ) ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) ) ) |
| 45 | 44 | oveq2d | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( P gsum ( A oF ( .s ` P ) F ) ) = ( P gsum ( i e. ( 0 ..^ N ) |-> ( ( A ` i ) ( .s ` P ) ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) ) ) ) |
| 46 | 45 | fveq2d | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) = ( coe1 ` ( P gsum ( i e. ( 0 ..^ N ) |-> ( ( A ` i ) ( .s ` P ) ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) ) ) ) ) |
| 47 | 46 | fveq1d | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) ` j ) = ( ( coe1 ` ( P gsum ( i e. ( 0 ..^ N ) |-> ( ( A ` i ) ( .s ` P ) ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) ) ) ) ` j ) ) |
| 48 | eqid | |- ( var1 ` R ) = ( var1 ` R ) |
|
| 49 | eqid | |- ( .g ` ( mulGrp ` P ) ) = ( .g ` ( mulGrp ` P ) ) |
|
| 50 | 4 | adantr | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> R e. Ring ) |
| 51 | eqid | |- ( .s ` P ) = ( .s ` P ) |
|
| 52 | 8 | adantr | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> A : ( 0 ..^ N ) --> B ) |
| 53 | 52 | ffvelcdmda | |- ( ( ( ph /\ j e. ( 0 ..^ N ) ) /\ i e. ( 0 ..^ N ) ) -> ( A ` i ) e. B ) |
| 54 | 53 | ralrimiva | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> A. i e. ( 0 ..^ N ) ( A ` i ) e. B ) |
| 55 | 3 | adantr | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> N e. NN0 ) |
| 56 | fveq2 | |- ( i = j -> ( A ` i ) = ( A ` j ) ) |
|
| 57 | 1 12 48 49 50 2 51 6 54 22 55 56 | gsummoncoe1fzo | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( ( coe1 ` ( P gsum ( i e. ( 0 ..^ N ) |-> ( ( A ` i ) ( .s ` P ) ( i ( .g ` ( mulGrp ` P ) ) ( var1 ` R ) ) ) ) ) ) ` j ) = ( A ` j ) ) |
| 58 | 47 57 | eqtrd | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( ( coe1 ` ( P gsum ( A oF ( .s ` P ) F ) ) ) ` j ) = ( A ` j ) ) |
| 59 | 23 31 58 | 3eqtr2rd | |- ( ( ph /\ j e. ( 0 ..^ N ) ) -> ( A ` j ) = ( ( ( coe1 ` Z ) |` ( 0 ..^ N ) ) ` j ) ) |
| 60 | 10 21 59 | eqfnfvd | |- ( ph -> A = ( ( coe1 ` Z ) |` ( 0 ..^ N ) ) ) |
| 61 | 1 7 6 | coe1z | |- ( R e. Ring -> ( coe1 ` Z ) = ( NN0 X. { .0. } ) ) |
| 62 | 4 61 | syl | |- ( ph -> ( coe1 ` Z ) = ( NN0 X. { .0. } ) ) |
| 63 | 62 | reseq1d | |- ( ph -> ( ( coe1 ` Z ) |` ( 0 ..^ N ) ) = ( ( NN0 X. { .0. } ) |` ( 0 ..^ N ) ) ) |
| 64 | 60 63 | eqtrd | |- ( ph -> A = ( ( NN0 X. { .0. } ) |` ( 0 ..^ N ) ) ) |
| 65 | xpssres | |- ( ( 0 ..^ N ) C_ NN0 -> ( ( NN0 X. { .0. } ) |` ( 0 ..^ N ) ) = ( ( 0 ..^ N ) X. { .0. } ) ) |
|
| 66 | 19 65 | ax-mp | |- ( ( NN0 X. { .0. } ) |` ( 0 ..^ N ) ) = ( ( 0 ..^ N ) X. { .0. } ) |
| 67 | 64 66 | eqtrdi | |- ( ph -> A = ( ( 0 ..^ N ) X. { .0. } ) ) |