This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: There are finitely many bags dominated by a given bag. (Contributed by Mario Carneiro, 29-Dec-2014) (Revised by Mario Carneiro, 25-Jan-2015) Remove a sethood antecedent. (Revised by SN, 5-Aug-2024)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | psrbag.d | |- D = { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |
|
| Assertion | psrbaglefi | |- ( F e. D -> { y e. D | y oR <_ F } e. Fin ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | psrbag.d | |- D = { f e. ( NN0 ^m I ) | ( `' f " NN ) e. Fin } |
|
| 2 | df-rab | |- { y e. D | y oR <_ F } = { y | ( y e. D /\ y oR <_ F ) } |
|
| 3 | 1 | psrbagf | |- ( y e. D -> y : I --> NN0 ) |
| 4 | 3 | a1i | |- ( F e. D -> ( y e. D -> y : I --> NN0 ) ) |
| 5 | 4 | adantrd | |- ( F e. D -> ( ( y e. D /\ y oR <_ F ) -> y : I --> NN0 ) ) |
| 6 | ss2ixp | |- ( A. x e. I ( 0 ... ( F ` x ) ) C_ NN0 -> X_ x e. I ( 0 ... ( F ` x ) ) C_ X_ x e. I NN0 ) |
|
| 7 | fz0ssnn0 | |- ( 0 ... ( F ` x ) ) C_ NN0 |
|
| 8 | 7 | a1i | |- ( x e. I -> ( 0 ... ( F ` x ) ) C_ NN0 ) |
| 9 | 6 8 | mprg | |- X_ x e. I ( 0 ... ( F ` x ) ) C_ X_ x e. I NN0 |
| 10 | 9 | sseli | |- ( y e. X_ x e. I ( 0 ... ( F ` x ) ) -> y e. X_ x e. I NN0 ) |
| 11 | vex | |- y e. _V |
|
| 12 | 11 | elixpconst | |- ( y e. X_ x e. I NN0 <-> y : I --> NN0 ) |
| 13 | 10 12 | sylib | |- ( y e. X_ x e. I ( 0 ... ( F ` x ) ) -> y : I --> NN0 ) |
| 14 | 13 | a1i | |- ( F e. D -> ( y e. X_ x e. I ( 0 ... ( F ` x ) ) -> y : I --> NN0 ) ) |
| 15 | ffn | |- ( y : I --> NN0 -> y Fn I ) |
|
| 16 | 15 | adantl | |- ( ( F e. D /\ y : I --> NN0 ) -> y Fn I ) |
| 17 | 11 | elixp | |- ( y e. X_ x e. I ( 0 ... ( F ` x ) ) <-> ( y Fn I /\ A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) ) ) |
| 18 | 17 | baib | |- ( y Fn I -> ( y e. X_ x e. I ( 0 ... ( F ` x ) ) <-> A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) ) ) |
| 19 | 16 18 | syl | |- ( ( F e. D /\ y : I --> NN0 ) -> ( y e. X_ x e. I ( 0 ... ( F ` x ) ) <-> A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) ) ) |
| 20 | ffvelcdm | |- ( ( y : I --> NN0 /\ x e. I ) -> ( y ` x ) e. NN0 ) |
|
| 21 | 20 | adantll | |- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( y ` x ) e. NN0 ) |
| 22 | nn0uz | |- NN0 = ( ZZ>= ` 0 ) |
|
| 23 | 21 22 | eleqtrdi | |- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( y ` x ) e. ( ZZ>= ` 0 ) ) |
| 24 | 1 | psrbagf | |- ( F e. D -> F : I --> NN0 ) |
| 25 | 24 | adantr | |- ( ( F e. D /\ y : I --> NN0 ) -> F : I --> NN0 ) |
| 26 | 25 | ffvelcdmda | |- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( F ` x ) e. NN0 ) |
| 27 | 26 | nn0zd | |- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( F ` x ) e. ZZ ) |
| 28 | elfz5 | |- ( ( ( y ` x ) e. ( ZZ>= ` 0 ) /\ ( F ` x ) e. ZZ ) -> ( ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> ( y ` x ) <_ ( F ` x ) ) ) |
|
| 29 | 23 27 28 | syl2anc | |- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> ( y ` x ) <_ ( F ` x ) ) ) |
| 30 | 29 | ralbidva | |- ( ( F e. D /\ y : I --> NN0 ) -> ( A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> A. x e. I ( y ` x ) <_ ( F ` x ) ) ) |
| 31 | 24 | ffnd | |- ( F e. D -> F Fn I ) |
| 32 | 31 | adantr | |- ( ( F e. D /\ y : I --> NN0 ) -> F Fn I ) |
| 33 | 11 | a1i | |- ( ( F e. D /\ y : I --> NN0 ) -> y e. _V ) |
| 34 | simpl | |- ( ( F e. D /\ y : I --> NN0 ) -> F e. D ) |
|
| 35 | inidm | |- ( I i^i I ) = I |
|
| 36 | eqidd | |- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( y ` x ) = ( y ` x ) ) |
|
| 37 | eqidd | |- ( ( ( F e. D /\ y : I --> NN0 ) /\ x e. I ) -> ( F ` x ) = ( F ` x ) ) |
|
| 38 | 16 32 33 34 35 36 37 | ofrfvalg | |- ( ( F e. D /\ y : I --> NN0 ) -> ( y oR <_ F <-> A. x e. I ( y ` x ) <_ ( F ` x ) ) ) |
| 39 | 30 38 | bitr4d | |- ( ( F e. D /\ y : I --> NN0 ) -> ( A. x e. I ( y ` x ) e. ( 0 ... ( F ` x ) ) <-> y oR <_ F ) ) |
| 40 | 1 | psrbaglecl | |- ( ( F e. D /\ y : I --> NN0 /\ y oR <_ F ) -> y e. D ) |
| 41 | 40 | 3expia | |- ( ( F e. D /\ y : I --> NN0 ) -> ( y oR <_ F -> y e. D ) ) |
| 42 | 41 | pm4.71rd | |- ( ( F e. D /\ y : I --> NN0 ) -> ( y oR <_ F <-> ( y e. D /\ y oR <_ F ) ) ) |
| 43 | 19 39 42 | 3bitrrd | |- ( ( F e. D /\ y : I --> NN0 ) -> ( ( y e. D /\ y oR <_ F ) <-> y e. X_ x e. I ( 0 ... ( F ` x ) ) ) ) |
| 44 | 43 | ex | |- ( F e. D -> ( y : I --> NN0 -> ( ( y e. D /\ y oR <_ F ) <-> y e. X_ x e. I ( 0 ... ( F ` x ) ) ) ) ) |
| 45 | 5 14 44 | pm5.21ndd | |- ( F e. D -> ( ( y e. D /\ y oR <_ F ) <-> y e. X_ x e. I ( 0 ... ( F ` x ) ) ) ) |
| 46 | 45 | eqabcdv | |- ( F e. D -> { y | ( y e. D /\ y oR <_ F ) } = X_ x e. I ( 0 ... ( F ` x ) ) ) |
| 47 | 2 46 | eqtrid | |- ( F e. D -> { y e. D | y oR <_ F } = X_ x e. I ( 0 ... ( F ` x ) ) ) |
| 48 | cnveq | |- ( f = F -> `' f = `' F ) |
|
| 49 | 48 | imaeq1d | |- ( f = F -> ( `' f " NN ) = ( `' F " NN ) ) |
| 50 | 49 | eleq1d | |- ( f = F -> ( ( `' f " NN ) e. Fin <-> ( `' F " NN ) e. Fin ) ) |
| 51 | 50 1 | elrab2 | |- ( F e. D <-> ( F e. ( NN0 ^m I ) /\ ( `' F " NN ) e. Fin ) ) |
| 52 | 51 | simprbi | |- ( F e. D -> ( `' F " NN ) e. Fin ) |
| 53 | fzfid | |- ( ( F e. D /\ x e. I ) -> ( 0 ... ( F ` x ) ) e. Fin ) |
|
| 54 | fcdmnn0suppg | |- ( ( F e. D /\ F : I --> NN0 ) -> ( F supp 0 ) = ( `' F " NN ) ) |
|
| 55 | 24 54 | mpdan | |- ( F e. D -> ( F supp 0 ) = ( `' F " NN ) ) |
| 56 | eqimss | |- ( ( F supp 0 ) = ( `' F " NN ) -> ( F supp 0 ) C_ ( `' F " NN ) ) |
|
| 57 | 55 56 | syl | |- ( F e. D -> ( F supp 0 ) C_ ( `' F " NN ) ) |
| 58 | id | |- ( F e. D -> F e. D ) |
|
| 59 | c0ex | |- 0 e. _V |
|
| 60 | 59 | a1i | |- ( F e. D -> 0 e. _V ) |
| 61 | 24 57 58 60 | suppssrg | |- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( F ` x ) = 0 ) |
| 62 | 61 | oveq2d | |- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( 0 ... ( F ` x ) ) = ( 0 ... 0 ) ) |
| 63 | fz0sn | |- ( 0 ... 0 ) = { 0 } |
|
| 64 | 62 63 | eqtrdi | |- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( 0 ... ( F ` x ) ) = { 0 } ) |
| 65 | eqimss | |- ( ( 0 ... ( F ` x ) ) = { 0 } -> ( 0 ... ( F ` x ) ) C_ { 0 } ) |
|
| 66 | 64 65 | syl | |- ( ( F e. D /\ x e. ( I \ ( `' F " NN ) ) ) -> ( 0 ... ( F ` x ) ) C_ { 0 } ) |
| 67 | 52 53 66 | ixpfi2 | |- ( F e. D -> X_ x e. I ( 0 ... ( F ` x ) ) e. Fin ) |
| 68 | 47 67 | eqeltrd | |- ( F e. D -> { y e. D | y oR <_ F } e. Fin ) |