This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Lemma for elrgspn . (Contributed by Thierry Arnoux, 5-Oct-2025)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | elrgspn.b | |- B = ( Base ` R ) |
|
| elrgspn.m | |- M = ( mulGrp ` R ) |
||
| elrgspn.x | |- .x. = ( .g ` R ) |
||
| elrgspn.n | |- N = ( RingSpan ` R ) |
||
| elrgspn.f | |- F = { f e. ( ZZ ^m Word A ) | f finSupp 0 } |
||
| elrgspn.r | |- ( ph -> R e. Ring ) |
||
| elrgspn.a | |- ( ph -> A C_ B ) |
||
| elrgspnlem1.1 | |- S = ran ( g e. F |-> ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) ) |
||
| Assertion | elrgspnlem3 | |- ( ph -> A C_ S ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | elrgspn.b | |- B = ( Base ` R ) |
|
| 2 | elrgspn.m | |- M = ( mulGrp ` R ) |
|
| 3 | elrgspn.x | |- .x. = ( .g ` R ) |
|
| 4 | elrgspn.n | |- N = ( RingSpan ` R ) |
|
| 5 | elrgspn.f | |- F = { f e. ( ZZ ^m Word A ) | f finSupp 0 } |
|
| 6 | elrgspn.r | |- ( ph -> R e. Ring ) |
|
| 7 | elrgspn.a | |- ( ph -> A C_ B ) |
|
| 8 | elrgspnlem1.1 | |- S = ran ( g e. F |-> ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) ) |
|
| 9 | eqid | |- ( g e. F |-> ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) ) = ( g e. F |-> ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) ) |
|
| 10 | fveq1 | |- ( g = ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) -> ( g ` w ) = ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) ) |
|
| 11 | 10 | oveq1d | |- ( g = ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) -> ( ( g ` w ) .x. ( M gsum w ) ) = ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) ) |
| 12 | 11 | mpteq2dv | |- ( g = ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) -> ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) = ( w e. Word A |-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) ) ) |
| 13 | 12 | oveq2d | |- ( g = ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) -> ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) = ( R gsum ( w e. Word A |-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) ) ) ) |
| 14 | 13 | eqeq2d | |- ( g = ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) -> ( x = ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) <-> x = ( R gsum ( w e. Word A |-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) ) ) ) ) |
| 15 | breq1 | |- ( f = ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) -> ( f finSupp 0 <-> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) finSupp 0 ) ) |
|
| 16 | zex | |- ZZ e. _V |
|
| 17 | 16 | a1i | |- ( ( ph /\ x e. A ) -> ZZ e. _V ) |
| 18 | 1 | fvexi | |- B e. _V |
| 19 | 18 | a1i | |- ( ph -> B e. _V ) |
| 20 | 19 7 | ssexd | |- ( ph -> A e. _V ) |
| 21 | wrdexg | |- ( A e. _V -> Word A e. _V ) |
|
| 22 | 20 21 | syl | |- ( ph -> Word A e. _V ) |
| 23 | 22 | adantr | |- ( ( ph /\ x e. A ) -> Word A e. _V ) |
| 24 | 1zzd | |- ( ( ( ( ph /\ x e. A ) /\ v e. Word A ) /\ v = <" x "> ) -> 1 e. ZZ ) |
|
| 25 | 0zd | |- ( ( ( ( ph /\ x e. A ) /\ v e. Word A ) /\ -. v = <" x "> ) -> 0 e. ZZ ) |
|
| 26 | 24 25 | ifclda | |- ( ( ( ph /\ x e. A ) /\ v e. Word A ) -> if ( v = <" x "> , 1 , 0 ) e. ZZ ) |
| 27 | 26 | fmpttd | |- ( ( ph /\ x e. A ) -> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) : Word A --> ZZ ) |
| 28 | 17 23 27 | elmapdd | |- ( ( ph /\ x e. A ) -> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) e. ( ZZ ^m Word A ) ) |
| 29 | 28 | elexd | |- ( ( ph /\ x e. A ) -> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) e. _V ) |
| 30 | 27 | ffund | |- ( ( ph /\ x e. A ) -> Fun ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ) |
| 31 | 0zd | |- ( ( ph /\ x e. A ) -> 0 e. ZZ ) |
|
| 32 | snfi | |- { <" x "> } e. Fin |
|
| 33 | 32 | a1i | |- ( ( ph /\ x e. A ) -> { <" x "> } e. Fin ) |
| 34 | eldifsni | |- ( v e. ( Word A \ { <" x "> } ) -> v =/= <" x "> ) |
|
| 35 | 34 | adantl | |- ( ( ( ph /\ x e. A ) /\ v e. ( Word A \ { <" x "> } ) ) -> v =/= <" x "> ) |
| 36 | 35 | neneqd | |- ( ( ( ph /\ x e. A ) /\ v e. ( Word A \ { <" x "> } ) ) -> -. v = <" x "> ) |
| 37 | 36 | iffalsed | |- ( ( ( ph /\ x e. A ) /\ v e. ( Word A \ { <" x "> } ) ) -> if ( v = <" x "> , 1 , 0 ) = 0 ) |
| 38 | 37 23 | suppss2 | |- ( ( ph /\ x e. A ) -> ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) supp 0 ) C_ { <" x "> } ) |
| 39 | suppssfifsupp | |- ( ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) e. _V /\ Fun ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) /\ 0 e. ZZ ) /\ ( { <" x "> } e. Fin /\ ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) supp 0 ) C_ { <" x "> } ) ) -> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) finSupp 0 ) |
|
| 40 | 29 30 31 33 38 39 | syl32anc | |- ( ( ph /\ x e. A ) -> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) finSupp 0 ) |
| 41 | 15 28 40 | elrabd | |- ( ( ph /\ x e. A ) -> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) e. { f e. ( ZZ ^m Word A ) | f finSupp 0 } ) |
| 42 | 41 5 | eleqtrrdi | |- ( ( ph /\ x e. A ) -> ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) e. F ) |
| 43 | eqeq2 | |- ( x = if ( w = <" x "> , x , ( 0g ` R ) ) -> ( ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = x <-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = if ( w = <" x "> , x , ( 0g ` R ) ) ) ) |
|
| 44 | eqeq2 | |- ( ( 0g ` R ) = if ( w = <" x "> , x , ( 0g ` R ) ) -> ( ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = ( 0g ` R ) <-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = if ( w = <" x "> , x , ( 0g ` R ) ) ) ) |
|
| 45 | eqid | |- ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) = ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) |
|
| 46 | simpr | |- ( ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) /\ v = w ) -> v = w ) |
|
| 47 | simplr | |- ( ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) /\ v = w ) -> w = <" x "> ) |
|
| 48 | 46 47 | eqtrd | |- ( ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) /\ v = w ) -> v = <" x "> ) |
| 49 | 48 | iftrued | |- ( ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) /\ v = w ) -> if ( v = <" x "> , 1 , 0 ) = 1 ) |
| 50 | simplr | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> w e. Word A ) |
|
| 51 | 1zzd | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> 1 e. ZZ ) |
|
| 52 | 45 49 50 51 | fvmptd2 | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) = 1 ) |
| 53 | simpr | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> w = <" x "> ) |
|
| 54 | 53 | oveq2d | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> ( M gsum w ) = ( M gsum <" x "> ) ) |
| 55 | 7 | sselda | |- ( ( ph /\ x e. A ) -> x e. B ) |
| 56 | 55 | ad2antrr | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> x e. B ) |
| 57 | 2 1 | mgpbas | |- B = ( Base ` M ) |
| 58 | 57 | gsumws1 | |- ( x e. B -> ( M gsum <" x "> ) = x ) |
| 59 | 56 58 | syl | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> ( M gsum <" x "> ) = x ) |
| 60 | 54 59 | eqtrd | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> ( M gsum w ) = x ) |
| 61 | 52 60 | oveq12d | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = ( 1 .x. x ) ) |
| 62 | 1 3 | mulg1 | |- ( x e. B -> ( 1 .x. x ) = x ) |
| 63 | 56 62 | syl | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> ( 1 .x. x ) = x ) |
| 64 | 61 63 | eqtrd | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ w = <" x "> ) -> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = x ) |
| 65 | eqeq1 | |- ( v = w -> ( v = <" x "> <-> w = <" x "> ) ) |
|
| 66 | 65 | notbid | |- ( v = w -> ( -. v = <" x "> <-> -. w = <" x "> ) ) |
| 67 | 66 | biimparc | |- ( ( -. w = <" x "> /\ v = w ) -> -. v = <" x "> ) |
| 68 | 67 | adantll | |- ( ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) /\ v = w ) -> -. v = <" x "> ) |
| 69 | 68 | iffalsed | |- ( ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) /\ v = w ) -> if ( v = <" x "> , 1 , 0 ) = 0 ) |
| 70 | simplr | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> w e. Word A ) |
|
| 71 | 0zd | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> 0 e. ZZ ) |
|
| 72 | 45 69 70 71 | fvmptd2 | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) = 0 ) |
| 73 | 72 | oveq1d | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = ( 0 .x. ( M gsum w ) ) ) |
| 74 | 2 | ringmgp | |- ( R e. Ring -> M e. Mnd ) |
| 75 | 6 74 | syl | |- ( ph -> M e. Mnd ) |
| 76 | 75 | ad3antrrr | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> M e. Mnd ) |
| 77 | sswrd | |- ( A C_ B -> Word A C_ Word B ) |
|
| 78 | 7 77 | syl | |- ( ph -> Word A C_ Word B ) |
| 79 | 78 | adantr | |- ( ( ph /\ x e. A ) -> Word A C_ Word B ) |
| 80 | 79 | sselda | |- ( ( ( ph /\ x e. A ) /\ w e. Word A ) -> w e. Word B ) |
| 81 | 80 | adantr | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> w e. Word B ) |
| 82 | 57 | gsumwcl | |- ( ( M e. Mnd /\ w e. Word B ) -> ( M gsum w ) e. B ) |
| 83 | 76 81 82 | syl2anc | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> ( M gsum w ) e. B ) |
| 84 | eqid | |- ( 0g ` R ) = ( 0g ` R ) |
|
| 85 | 1 84 3 | mulg0 | |- ( ( M gsum w ) e. B -> ( 0 .x. ( M gsum w ) ) = ( 0g ` R ) ) |
| 86 | 83 85 | syl | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> ( 0 .x. ( M gsum w ) ) = ( 0g ` R ) ) |
| 87 | 73 86 | eqtrd | |- ( ( ( ( ph /\ x e. A ) /\ w e. Word A ) /\ -. w = <" x "> ) -> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = ( 0g ` R ) ) |
| 88 | 43 44 64 87 | ifbothda | |- ( ( ( ph /\ x e. A ) /\ w e. Word A ) -> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) = if ( w = <" x "> , x , ( 0g ` R ) ) ) |
| 89 | 88 | mpteq2dva | |- ( ( ph /\ x e. A ) -> ( w e. Word A |-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) ) = ( w e. Word A |-> if ( w = <" x "> , x , ( 0g ` R ) ) ) ) |
| 90 | 89 | oveq2d | |- ( ( ph /\ x e. A ) -> ( R gsum ( w e. Word A |-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) ) ) = ( R gsum ( w e. Word A |-> if ( w = <" x "> , x , ( 0g ` R ) ) ) ) ) |
| 91 | ringmnd | |- ( R e. Ring -> R e. Mnd ) |
|
| 92 | 6 91 | syl | |- ( ph -> R e. Mnd ) |
| 93 | 92 | adantr | |- ( ( ph /\ x e. A ) -> R e. Mnd ) |
| 94 | simpr | |- ( ( ph /\ x e. A ) -> x e. A ) |
|
| 95 | 94 | s1cld | |- ( ( ph /\ x e. A ) -> <" x "> e. Word A ) |
| 96 | eqid | |- ( w e. Word A |-> if ( w = <" x "> , x , ( 0g ` R ) ) ) = ( w e. Word A |-> if ( w = <" x "> , x , ( 0g ` R ) ) ) |
|
| 97 | 7 1 | sseqtrdi | |- ( ph -> A C_ ( Base ` R ) ) |
| 98 | 97 | sselda | |- ( ( ph /\ x e. A ) -> x e. ( Base ` R ) ) |
| 99 | 84 93 23 95 96 98 | gsummptif1n0 | |- ( ( ph /\ x e. A ) -> ( R gsum ( w e. Word A |-> if ( w = <" x "> , x , ( 0g ` R ) ) ) ) = x ) |
| 100 | 90 99 | eqtr2d | |- ( ( ph /\ x e. A ) -> x = ( R gsum ( w e. Word A |-> ( ( ( v e. Word A |-> if ( v = <" x "> , 1 , 0 ) ) ` w ) .x. ( M gsum w ) ) ) ) ) |
| 101 | 14 42 100 | rspcedvdw | |- ( ( ph /\ x e. A ) -> E. g e. F x = ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) ) |
| 102 | 9 101 94 | elrnmptd | |- ( ( ph /\ x e. A ) -> x e. ran ( g e. F |-> ( R gsum ( w e. Word A |-> ( ( g ` w ) .x. ( M gsum w ) ) ) ) ) ) |
| 103 | 102 8 | eleqtrrdi | |- ( ( ph /\ x e. A ) -> x e. S ) |
| 104 | 103 | ex | |- ( ph -> ( x e. A -> x e. S ) ) |
| 105 | 104 | ssrdv | |- ( ph -> A C_ S ) |