This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The trace operation and the filGen operation are inverses to one another in some sense, with filGen growing the base set and ` |``t ` shrinking it. See fgtr for the converse cancellation law. (Contributed by Mario Carneiro, 15-Oct-2015)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | trfg | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ( ( X filGen F ) |`t A ) = F ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | filfbas | |- ( F e. ( Fil ` A ) -> F e. ( fBas ` A ) ) |
|
| 2 | 1 | 3ad2ant1 | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> F e. ( fBas ` A ) ) |
| 3 | filsspw | |- ( F e. ( Fil ` A ) -> F C_ ~P A ) |
|
| 4 | 3 | 3ad2ant1 | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> F C_ ~P A ) |
| 5 | simp2 | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> A C_ X ) |
|
| 6 | 5 | sspwd | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ~P A C_ ~P X ) |
| 7 | 4 6 | sstrd | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> F C_ ~P X ) |
| 8 | simp3 | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> X e. V ) |
|
| 9 | fbasweak | |- ( ( F e. ( fBas ` A ) /\ F C_ ~P X /\ X e. V ) -> F e. ( fBas ` X ) ) |
|
| 10 | 2 7 8 9 | syl3anc | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> F e. ( fBas ` X ) ) |
| 11 | fgcl | |- ( F e. ( fBas ` X ) -> ( X filGen F ) e. ( Fil ` X ) ) |
|
| 12 | 10 11 | syl | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ( X filGen F ) e. ( Fil ` X ) ) |
| 13 | filtop | |- ( F e. ( Fil ` A ) -> A e. F ) |
|
| 14 | 13 | 3ad2ant1 | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> A e. F ) |
| 15 | restval | |- ( ( ( X filGen F ) e. ( Fil ` X ) /\ A e. F ) -> ( ( X filGen F ) |`t A ) = ran ( x e. ( X filGen F ) |-> ( x i^i A ) ) ) |
|
| 16 | 12 14 15 | syl2anc | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ( ( X filGen F ) |`t A ) = ran ( x e. ( X filGen F ) |-> ( x i^i A ) ) ) |
| 17 | elfg | |- ( F e. ( fBas ` X ) -> ( x e. ( X filGen F ) <-> ( x C_ X /\ E. y e. F y C_ x ) ) ) |
|
| 18 | 10 17 | syl | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ( x e. ( X filGen F ) <-> ( x C_ X /\ E. y e. F y C_ x ) ) ) |
| 19 | 18 | simplbda | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) -> E. y e. F y C_ x ) |
| 20 | simpll1 | |- ( ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) /\ ( y e. F /\ y C_ x ) ) -> F e. ( Fil ` A ) ) |
|
| 21 | simprl | |- ( ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) /\ ( y e. F /\ y C_ x ) ) -> y e. F ) |
|
| 22 | inss2 | |- ( x i^i A ) C_ A |
|
| 23 | 22 | a1i | |- ( ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) /\ ( y e. F /\ y C_ x ) ) -> ( x i^i A ) C_ A ) |
| 24 | simprr | |- ( ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) /\ ( y e. F /\ y C_ x ) ) -> y C_ x ) |
|
| 25 | filelss | |- ( ( F e. ( Fil ` A ) /\ y e. F ) -> y C_ A ) |
|
| 26 | 25 | 3ad2antl1 | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ y e. F ) -> y C_ A ) |
| 27 | 26 | ad2ant2r | |- ( ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) /\ ( y e. F /\ y C_ x ) ) -> y C_ A ) |
| 28 | 24 27 | ssind | |- ( ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) /\ ( y e. F /\ y C_ x ) ) -> y C_ ( x i^i A ) ) |
| 29 | filss | |- ( ( F e. ( Fil ` A ) /\ ( y e. F /\ ( x i^i A ) C_ A /\ y C_ ( x i^i A ) ) ) -> ( x i^i A ) e. F ) |
|
| 30 | 20 21 23 28 29 | syl13anc | |- ( ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) /\ ( y e. F /\ y C_ x ) ) -> ( x i^i A ) e. F ) |
| 31 | 19 30 | rexlimddv | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. ( X filGen F ) ) -> ( x i^i A ) e. F ) |
| 32 | 31 | fmpttd | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ( x e. ( X filGen F ) |-> ( x i^i A ) ) : ( X filGen F ) --> F ) |
| 33 | 32 | frnd | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ran ( x e. ( X filGen F ) |-> ( x i^i A ) ) C_ F ) |
| 34 | 16 33 | eqsstrd | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ( ( X filGen F ) |`t A ) C_ F ) |
| 35 | filelss | |- ( ( F e. ( Fil ` A ) /\ x e. F ) -> x C_ A ) |
|
| 36 | 35 | 3ad2antl1 | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. F ) -> x C_ A ) |
| 37 | dfss2 | |- ( x C_ A <-> ( x i^i A ) = x ) |
|
| 38 | 36 37 | sylib | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. F ) -> ( x i^i A ) = x ) |
| 39 | 12 | adantr | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. F ) -> ( X filGen F ) e. ( Fil ` X ) ) |
| 40 | 14 | adantr | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. F ) -> A e. F ) |
| 41 | ssfg | |- ( F e. ( fBas ` X ) -> F C_ ( X filGen F ) ) |
|
| 42 | 10 41 | syl | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> F C_ ( X filGen F ) ) |
| 43 | 42 | sselda | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. F ) -> x e. ( X filGen F ) ) |
| 44 | elrestr | |- ( ( ( X filGen F ) e. ( Fil ` X ) /\ A e. F /\ x e. ( X filGen F ) ) -> ( x i^i A ) e. ( ( X filGen F ) |`t A ) ) |
|
| 45 | 39 40 43 44 | syl3anc | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. F ) -> ( x i^i A ) e. ( ( X filGen F ) |`t A ) ) |
| 46 | 38 45 | eqeltrrd | |- ( ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) /\ x e. F ) -> x e. ( ( X filGen F ) |`t A ) ) |
| 47 | 34 46 | eqelssd | |- ( ( F e. ( Fil ` A ) /\ A C_ X /\ X e. V ) -> ( ( X filGen F ) |`t A ) = F ) |