This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Absorption law for filter generation. (Contributed by Mario Carneiro, 15-Oct-2015)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | fgabs | |- ( ( F e. ( fBas ` Y ) /\ Y C_ X ) -> ( X filGen ( Y filGen F ) ) = ( X filGen F ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | simpll | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> F e. ( fBas ` Y ) ) |
|
| 2 | fgcl | |- ( F e. ( fBas ` Y ) -> ( Y filGen F ) e. ( Fil ` Y ) ) |
|
| 3 | filfbas | |- ( ( Y filGen F ) e. ( Fil ` Y ) -> ( Y filGen F ) e. ( fBas ` Y ) ) |
|
| 4 | 1 2 3 | 3syl | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( Y filGen F ) e. ( fBas ` Y ) ) |
| 5 | fbsspw | |- ( ( Y filGen F ) e. ( fBas ` Y ) -> ( Y filGen F ) C_ ~P Y ) |
|
| 6 | 4 5 | syl | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( Y filGen F ) C_ ~P Y ) |
| 7 | simplr | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> Y C_ X ) |
|
| 8 | 7 | sspwd | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ~P Y C_ ~P X ) |
| 9 | 6 8 | sstrd | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( Y filGen F ) C_ ~P X ) |
| 10 | simpr | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> X e. _V ) |
|
| 11 | fbasweak | |- ( ( ( Y filGen F ) e. ( fBas ` Y ) /\ ( Y filGen F ) C_ ~P X /\ X e. _V ) -> ( Y filGen F ) e. ( fBas ` X ) ) |
|
| 12 | 4 9 10 11 | syl3anc | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( Y filGen F ) e. ( fBas ` X ) ) |
| 13 | elfg | |- ( ( Y filGen F ) e. ( fBas ` X ) -> ( x e. ( X filGen ( Y filGen F ) ) <-> ( x C_ X /\ E. y e. ( Y filGen F ) y C_ x ) ) ) |
|
| 14 | 12 13 | syl | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( x e. ( X filGen ( Y filGen F ) ) <-> ( x C_ X /\ E. y e. ( Y filGen F ) y C_ x ) ) ) |
| 15 | 1 | adantr | |- ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ x C_ X ) -> F e. ( fBas ` Y ) ) |
| 16 | elfg | |- ( F e. ( fBas ` Y ) -> ( y e. ( Y filGen F ) <-> ( y C_ Y /\ E. z e. F z C_ y ) ) ) |
|
| 17 | 15 16 | syl | |- ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ x C_ X ) -> ( y e. ( Y filGen F ) <-> ( y C_ Y /\ E. z e. F z C_ y ) ) ) |
| 18 | fbsspw | |- ( F e. ( fBas ` Y ) -> F C_ ~P Y ) |
|
| 19 | 1 18 | syl | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> F C_ ~P Y ) |
| 20 | 19 8 | sstrd | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> F C_ ~P X ) |
| 21 | fbasweak | |- ( ( F e. ( fBas ` Y ) /\ F C_ ~P X /\ X e. _V ) -> F e. ( fBas ` X ) ) |
|
| 22 | 1 20 10 21 | syl3anc | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> F e. ( fBas ` X ) ) |
| 23 | fgcl | |- ( F e. ( fBas ` X ) -> ( X filGen F ) e. ( Fil ` X ) ) |
|
| 24 | 22 23 | syl | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( X filGen F ) e. ( Fil ` X ) ) |
| 25 | 24 | ad2antrr | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( ( z e. F /\ z C_ y ) /\ y C_ x ) ) -> ( X filGen F ) e. ( Fil ` X ) ) |
| 26 | ssfg | |- ( F e. ( fBas ` X ) -> F C_ ( X filGen F ) ) |
|
| 27 | 22 26 | syl | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> F C_ ( X filGen F ) ) |
| 28 | 27 | adantr | |- ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) -> F C_ ( X filGen F ) ) |
| 29 | 28 | sselda | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ z e. F ) -> z e. ( X filGen F ) ) |
| 30 | 29 | adantrr | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( z e. F /\ z C_ y ) ) -> z e. ( X filGen F ) ) |
| 31 | 30 | adantrr | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( ( z e. F /\ z C_ y ) /\ y C_ x ) ) -> z e. ( X filGen F ) ) |
| 32 | simplrl | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( ( z e. F /\ z C_ y ) /\ y C_ x ) ) -> x C_ X ) |
|
| 33 | simprlr | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( ( z e. F /\ z C_ y ) /\ y C_ x ) ) -> z C_ y ) |
|
| 34 | simprr | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( ( z e. F /\ z C_ y ) /\ y C_ x ) ) -> y C_ x ) |
|
| 35 | 33 34 | sstrd | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( ( z e. F /\ z C_ y ) /\ y C_ x ) ) -> z C_ x ) |
| 36 | filss | |- ( ( ( X filGen F ) e. ( Fil ` X ) /\ ( z e. ( X filGen F ) /\ x C_ X /\ z C_ x ) ) -> x e. ( X filGen F ) ) |
|
| 37 | 25 31 32 35 36 | syl13anc | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( ( z e. F /\ z C_ y ) /\ y C_ x ) ) -> x e. ( X filGen F ) ) |
| 38 | 37 | expr | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) /\ ( z e. F /\ z C_ y ) ) -> ( y C_ x -> x e. ( X filGen F ) ) ) |
| 39 | 38 | rexlimdvaa | |- ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ ( x C_ X /\ y C_ Y ) ) -> ( E. z e. F z C_ y -> ( y C_ x -> x e. ( X filGen F ) ) ) ) |
| 40 | 39 | anassrs | |- ( ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ x C_ X ) /\ y C_ Y ) -> ( E. z e. F z C_ y -> ( y C_ x -> x e. ( X filGen F ) ) ) ) |
| 41 | 40 | expimpd | |- ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ x C_ X ) -> ( ( y C_ Y /\ E. z e. F z C_ y ) -> ( y C_ x -> x e. ( X filGen F ) ) ) ) |
| 42 | 17 41 | sylbid | |- ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ x C_ X ) -> ( y e. ( Y filGen F ) -> ( y C_ x -> x e. ( X filGen F ) ) ) ) |
| 43 | 42 | rexlimdv | |- ( ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) /\ x C_ X ) -> ( E. y e. ( Y filGen F ) y C_ x -> x e. ( X filGen F ) ) ) |
| 44 | 43 | expimpd | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( ( x C_ X /\ E. y e. ( Y filGen F ) y C_ x ) -> x e. ( X filGen F ) ) ) |
| 45 | 14 44 | sylbid | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( x e. ( X filGen ( Y filGen F ) ) -> x e. ( X filGen F ) ) ) |
| 46 | 45 | ssrdv | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( X filGen ( Y filGen F ) ) C_ ( X filGen F ) ) |
| 47 | ssfg | |- ( F e. ( fBas ` Y ) -> F C_ ( Y filGen F ) ) |
|
| 48 | 47 | ad2antrr | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> F C_ ( Y filGen F ) ) |
| 49 | fgss | |- ( ( F e. ( fBas ` X ) /\ ( Y filGen F ) e. ( fBas ` X ) /\ F C_ ( Y filGen F ) ) -> ( X filGen F ) C_ ( X filGen ( Y filGen F ) ) ) |
|
| 50 | 22 12 48 49 | syl3anc | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( X filGen F ) C_ ( X filGen ( Y filGen F ) ) ) |
| 51 | 46 50 | eqssd | |- ( ( ( F e. ( fBas ` Y ) /\ Y C_ X ) /\ X e. _V ) -> ( X filGen ( Y filGen F ) ) = ( X filGen F ) ) |
| 52 | 51 | ex | |- ( ( F e. ( fBas ` Y ) /\ Y C_ X ) -> ( X e. _V -> ( X filGen ( Y filGen F ) ) = ( X filGen F ) ) ) |
| 53 | df-fg | |- filGen = ( w e. _V , x e. ( fBas ` w ) |-> { y e. ~P w | ( x i^i ~P y ) =/= (/) } ) |
|
| 54 | 53 | reldmmpo | |- Rel dom filGen |
| 55 | 54 | ovprc1 | |- ( -. X e. _V -> ( X filGen ( Y filGen F ) ) = (/) ) |
| 56 | 54 | ovprc1 | |- ( -. X e. _V -> ( X filGen F ) = (/) ) |
| 57 | 55 56 | eqtr4d | |- ( -. X e. _V -> ( X filGen ( Y filGen F ) ) = ( X filGen F ) ) |
| 58 | 52 57 | pm2.61d1 | |- ( ( F e. ( fBas ` Y ) /\ Y C_ X ) -> ( X filGen ( Y filGen F ) ) = ( X filGen F ) ) |