This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: A set is open iff it is a neighborhood of all of its points. (Contributed by Jeff Hankins, 15-Sep-2009)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | opnnei | |- ( J e. Top -> ( S e. J <-> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | 0opn | |- ( J e. Top -> (/) e. J ) |
|
| 2 | 1 | adantr | |- ( ( J e. Top /\ S = (/) ) -> (/) e. J ) |
| 3 | eleq1 | |- ( S = (/) -> ( S e. J <-> (/) e. J ) ) |
|
| 4 | 3 | adantl | |- ( ( J e. Top /\ S = (/) ) -> ( S e. J <-> (/) e. J ) ) |
| 5 | 2 4 | mpbird | |- ( ( J e. Top /\ S = (/) ) -> S e. J ) |
| 6 | rzal | |- ( S = (/) -> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) |
|
| 7 | 6 | adantl | |- ( ( J e. Top /\ S = (/) ) -> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) |
| 8 | 5 7 | 2thd | |- ( ( J e. Top /\ S = (/) ) -> ( S e. J <-> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |
| 9 | opnneip | |- ( ( J e. Top /\ S e. J /\ x e. S ) -> S e. ( ( nei ` J ) ` { x } ) ) |
|
| 10 | 9 | 3expia | |- ( ( J e. Top /\ S e. J ) -> ( x e. S -> S e. ( ( nei ` J ) ` { x } ) ) ) |
| 11 | 10 | ralrimiv | |- ( ( J e. Top /\ S e. J ) -> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) |
| 12 | 11 | ex | |- ( J e. Top -> ( S e. J -> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |
| 13 | 12 | adantr | |- ( ( J e. Top /\ -. S = (/) ) -> ( S e. J -> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |
| 14 | df-ne | |- ( S =/= (/) <-> -. S = (/) ) |
|
| 15 | r19.2z | |- ( ( S =/= (/) /\ A. x e. S S e. ( ( nei ` J ) ` { x } ) ) -> E. x e. S S e. ( ( nei ` J ) ` { x } ) ) |
|
| 16 | 15 | ex | |- ( S =/= (/) -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> E. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |
| 17 | 14 16 | sylbir | |- ( -. S = (/) -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> E. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |
| 18 | eqid | |- U. J = U. J |
|
| 19 | 18 | neii1 | |- ( ( J e. Top /\ S e. ( ( nei ` J ) ` { x } ) ) -> S C_ U. J ) |
| 20 | 19 | ex | |- ( J e. Top -> ( S e. ( ( nei ` J ) ` { x } ) -> S C_ U. J ) ) |
| 21 | 20 | rexlimdvw | |- ( J e. Top -> ( E. x e. S S e. ( ( nei ` J ) ` { x } ) -> S C_ U. J ) ) |
| 22 | 17 21 | sylan9r | |- ( ( J e. Top /\ -. S = (/) ) -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> S C_ U. J ) ) |
| 23 | 18 | ntrss2 | |- ( ( J e. Top /\ S C_ U. J ) -> ( ( int ` J ) ` S ) C_ S ) |
| 24 | 23 | adantr | |- ( ( ( J e. Top /\ S C_ U. J ) /\ A. x e. S { x } C_ ( ( int ` J ) ` S ) ) -> ( ( int ` J ) ` S ) C_ S ) |
| 25 | vex | |- x e. _V |
|
| 26 | 25 | snss | |- ( x e. ( ( int ` J ) ` S ) <-> { x } C_ ( ( int ` J ) ` S ) ) |
| 27 | 26 | ralbii | |- ( A. x e. S x e. ( ( int ` J ) ` S ) <-> A. x e. S { x } C_ ( ( int ` J ) ` S ) ) |
| 28 | dfss3 | |- ( S C_ ( ( int ` J ) ` S ) <-> A. x e. S x e. ( ( int ` J ) ` S ) ) |
|
| 29 | 28 | biimpri | |- ( A. x e. S x e. ( ( int ` J ) ` S ) -> S C_ ( ( int ` J ) ` S ) ) |
| 30 | 29 | adantl | |- ( ( ( J e. Top /\ S C_ U. J ) /\ A. x e. S x e. ( ( int ` J ) ` S ) ) -> S C_ ( ( int ` J ) ` S ) ) |
| 31 | 27 30 | sylan2br | |- ( ( ( J e. Top /\ S C_ U. J ) /\ A. x e. S { x } C_ ( ( int ` J ) ` S ) ) -> S C_ ( ( int ` J ) ` S ) ) |
| 32 | 24 31 | eqssd | |- ( ( ( J e. Top /\ S C_ U. J ) /\ A. x e. S { x } C_ ( ( int ` J ) ` S ) ) -> ( ( int ` J ) ` S ) = S ) |
| 33 | 32 | ex | |- ( ( J e. Top /\ S C_ U. J ) -> ( A. x e. S { x } C_ ( ( int ` J ) ` S ) -> ( ( int ` J ) ` S ) = S ) ) |
| 34 | 25 | snss | |- ( x e. S <-> { x } C_ S ) |
| 35 | sstr2 | |- ( { x } C_ S -> ( S C_ U. J -> { x } C_ U. J ) ) |
|
| 36 | 35 | com12 | |- ( S C_ U. J -> ( { x } C_ S -> { x } C_ U. J ) ) |
| 37 | 36 | adantl | |- ( ( J e. Top /\ S C_ U. J ) -> ( { x } C_ S -> { x } C_ U. J ) ) |
| 38 | 34 37 | biimtrid | |- ( ( J e. Top /\ S C_ U. J ) -> ( x e. S -> { x } C_ U. J ) ) |
| 39 | 38 | imp | |- ( ( ( J e. Top /\ S C_ U. J ) /\ x e. S ) -> { x } C_ U. J ) |
| 40 | 18 | neiint | |- ( ( J e. Top /\ { x } C_ U. J /\ S C_ U. J ) -> ( S e. ( ( nei ` J ) ` { x } ) <-> { x } C_ ( ( int ` J ) ` S ) ) ) |
| 41 | 40 | 3com23 | |- ( ( J e. Top /\ S C_ U. J /\ { x } C_ U. J ) -> ( S e. ( ( nei ` J ) ` { x } ) <-> { x } C_ ( ( int ` J ) ` S ) ) ) |
| 42 | 41 | 3expa | |- ( ( ( J e. Top /\ S C_ U. J ) /\ { x } C_ U. J ) -> ( S e. ( ( nei ` J ) ` { x } ) <-> { x } C_ ( ( int ` J ) ` S ) ) ) |
| 43 | 39 42 | syldan | |- ( ( ( J e. Top /\ S C_ U. J ) /\ x e. S ) -> ( S e. ( ( nei ` J ) ` { x } ) <-> { x } C_ ( ( int ` J ) ` S ) ) ) |
| 44 | 43 | ralbidva | |- ( ( J e. Top /\ S C_ U. J ) -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) <-> A. x e. S { x } C_ ( ( int ` J ) ` S ) ) ) |
| 45 | 18 | isopn3 | |- ( ( J e. Top /\ S C_ U. J ) -> ( S e. J <-> ( ( int ` J ) ` S ) = S ) ) |
| 46 | 33 44 45 | 3imtr4d | |- ( ( J e. Top /\ S C_ U. J ) -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> S e. J ) ) |
| 47 | 46 | ex | |- ( J e. Top -> ( S C_ U. J -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> S e. J ) ) ) |
| 48 | 47 | com23 | |- ( J e. Top -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> ( S C_ U. J -> S e. J ) ) ) |
| 49 | 48 | adantr | |- ( ( J e. Top /\ -. S = (/) ) -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> ( S C_ U. J -> S e. J ) ) ) |
| 50 | 22 49 | mpdd | |- ( ( J e. Top /\ -. S = (/) ) -> ( A. x e. S S e. ( ( nei ` J ) ` { x } ) -> S e. J ) ) |
| 51 | 13 50 | impbid | |- ( ( J e. Top /\ -. S = (/) ) -> ( S e. J <-> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |
| 52 | 8 51 | pm2.61dan | |- ( J e. Top -> ( S e. J <-> A. x e. S S e. ( ( nei ` J ) ` { x } ) ) ) |