This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: If an alternatively defined simple graph has the vertices and edges of an arbitrary graph, the arbitrary graph is an undirected multigraph. (Contributed by AV, 18-Oct-2020) (Revised by AV, 25-Nov-2020)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | ausgr.1 | |- G = { <. v , e >. | e C_ { x e. ~P v | ( # ` x ) = 2 } } |
|
| Assertion | ausgrumgri | |- ( ( H e. W /\ ( Vtx ` H ) G ( Edg ` H ) /\ Fun ( iEdg ` H ) ) -> H e. UMGraph ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | ausgr.1 | |- G = { <. v , e >. | e C_ { x e. ~P v | ( # ` x ) = 2 } } |
|
| 2 | fvex | |- ( Vtx ` H ) e. _V |
|
| 3 | fvex | |- ( Edg ` H ) e. _V |
|
| 4 | 1 | isausgr | |- ( ( ( Vtx ` H ) e. _V /\ ( Edg ` H ) e. _V ) -> ( ( Vtx ` H ) G ( Edg ` H ) <-> ( Edg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) |
| 5 | 2 3 4 | mp2an | |- ( ( Vtx ` H ) G ( Edg ` H ) <-> ( Edg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) |
| 6 | edgval | |- ( Edg ` H ) = ran ( iEdg ` H ) |
|
| 7 | 6 | a1i | |- ( H e. W -> ( Edg ` H ) = ran ( iEdg ` H ) ) |
| 8 | 7 | sseq1d | |- ( H e. W -> ( ( Edg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } <-> ran ( iEdg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) |
| 9 | funfn | |- ( Fun ( iEdg ` H ) <-> ( iEdg ` H ) Fn dom ( iEdg ` H ) ) |
|
| 10 | 9 | biimpi | |- ( Fun ( iEdg ` H ) -> ( iEdg ` H ) Fn dom ( iEdg ` H ) ) |
| 11 | 10 | 3ad2ant3 | |- ( ( H e. W /\ ran ( iEdg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } /\ Fun ( iEdg ` H ) ) -> ( iEdg ` H ) Fn dom ( iEdg ` H ) ) |
| 12 | simp2 | |- ( ( H e. W /\ ran ( iEdg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } /\ Fun ( iEdg ` H ) ) -> ran ( iEdg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) |
|
| 13 | df-f | |- ( ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } <-> ( ( iEdg ` H ) Fn dom ( iEdg ` H ) /\ ran ( iEdg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) |
|
| 14 | 11 12 13 | sylanbrc | |- ( ( H e. W /\ ran ( iEdg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } /\ Fun ( iEdg ` H ) ) -> ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) |
| 15 | 14 | 3exp | |- ( H e. W -> ( ran ( iEdg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } -> ( Fun ( iEdg ` H ) -> ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) ) |
| 16 | 8 15 | sylbid | |- ( H e. W -> ( ( Edg ` H ) C_ { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } -> ( Fun ( iEdg ` H ) -> ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) ) |
| 17 | 5 16 | biimtrid | |- ( H e. W -> ( ( Vtx ` H ) G ( Edg ` H ) -> ( Fun ( iEdg ` H ) -> ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) ) |
| 18 | 17 | 3imp | |- ( ( H e. W /\ ( Vtx ` H ) G ( Edg ` H ) /\ Fun ( iEdg ` H ) ) -> ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) |
| 19 | eqid | |- ( Vtx ` H ) = ( Vtx ` H ) |
|
| 20 | eqid | |- ( iEdg ` H ) = ( iEdg ` H ) |
|
| 21 | 19 20 | isumgrs | |- ( H e. W -> ( H e. UMGraph <-> ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) |
| 22 | 21 | 3ad2ant1 | |- ( ( H e. W /\ ( Vtx ` H ) G ( Edg ` H ) /\ Fun ( iEdg ` H ) ) -> ( H e. UMGraph <-> ( iEdg ` H ) : dom ( iEdg ` H ) --> { x e. ~P ( Vtx ` H ) | ( # ` x ) = 2 } ) ) |
| 23 | 18 22 | mpbird | |- ( ( H e. W /\ ( Vtx ` H ) G ( Edg ` H ) /\ Fun ( iEdg ` H ) ) -> H e. UMGraph ) |