 Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  df-umgr Structured version   Visualization version   GIF version

Definition df-umgr 25891
 Description: Define the class of all undirected multigraphs. An (undirected) multigraph consists of a set 𝑣 (of "vertices") and a function 𝑒 (representing indexed "edges") into subsets of 𝑣 of cardinality two, representing the two vertices incident to the edge. In contrast to a pseudograph, a multigraph has no loop. This is according to Chartrand, Gary and Zhang, Ping (2012): "A First Course in Graph Theory.", Dover, ISBN 978-0-486-48368-9, section 1.4, p. 26: "A multigraph M consists of a finite nonempty set V of vertices and a set E of edges, where every two vertices of M are joined by a finite number of edges (possibly zero). If two or more edges join the same pair of (distinct) vertices, then these edges are called parallel edges." To provide uniform definitions for all kinds of graphs, 𝑥 ∈ (𝒫 𝑣 ∖ {∅}) is used as restriction of the class abstraction, although 𝑥 ∈ 𝒫 𝑣 would be sufficient (see prprrab 13201 and isumgrs 25903). (Contributed by AV, 24-Nov-2020.)
Assertion
Ref Expression
df-umgr UMGraph = {𝑔[(Vtx‘𝑔) / 𝑣][(iEdg‘𝑔) / 𝑒]𝑒:dom 𝑒⟶{𝑥 ∈ (𝒫 𝑣 ∖ {∅}) ∣ (#‘𝑥) = 2}}
Distinct variable group:   𝑒,𝑔,𝑣,𝑥

Detailed syntax breakdown of Definition df-umgr
StepHypRef Expression
1 cumgr 25889 . 2 class UMGraph
2 ve . . . . . . . 8 setvar 𝑒
32cv 1479 . . . . . . 7 class 𝑒
43cdm 5079 . . . . . 6 class dom 𝑒
5 vx . . . . . . . . . 10 setvar 𝑥
65cv 1479 . . . . . . . . 9 class 𝑥
7 chash 13065 . . . . . . . . 9 class #
86, 7cfv 5852 . . . . . . . 8 class (#‘𝑥)
9 c2 11022 . . . . . . . 8 class 2
108, 9wceq 1480 . . . . . . 7 wff (#‘𝑥) = 2
11 vv . . . . . . . . . 10 setvar 𝑣
1211cv 1479 . . . . . . . . 9 class 𝑣
1312cpw 4135 . . . . . . . 8 class 𝒫 𝑣
14 c0 3896 . . . . . . . . 9 class
1514csn 4153 . . . . . . . 8 class {∅}
1613, 15cdif 3556 . . . . . . 7 class (𝒫 𝑣 ∖ {∅})
1710, 5, 16crab 2911 . . . . . 6 class {𝑥 ∈ (𝒫 𝑣 ∖ {∅}) ∣ (#‘𝑥) = 2}
184, 17, 3wf 5848 . . . . 5 wff 𝑒:dom 𝑒⟶{𝑥 ∈ (𝒫 𝑣 ∖ {∅}) ∣ (#‘𝑥) = 2}
19 vg . . . . . . 7 setvar 𝑔
2019cv 1479 . . . . . 6 class 𝑔
21 ciedg 25792 . . . . . 6 class iEdg
2220, 21cfv 5852 . . . . 5 class (iEdg‘𝑔)
2318, 2, 22wsbc 3421 . . . 4 wff [(iEdg‘𝑔) / 𝑒]𝑒:dom 𝑒⟶{𝑥 ∈ (𝒫 𝑣 ∖ {∅}) ∣ (#‘𝑥) = 2}
24 cvtx 25791 . . . . 5 class Vtx
2520, 24cfv 5852 . . . 4 class (Vtx‘𝑔)
2623, 11, 25wsbc 3421 . . 3 wff [(Vtx‘𝑔) / 𝑣][(iEdg‘𝑔) / 𝑒]𝑒:dom 𝑒⟶{𝑥 ∈ (𝒫 𝑣 ∖ {∅}) ∣ (#‘𝑥) = 2}
2726, 19cab 2607 . 2 class {𝑔[(Vtx‘𝑔) / 𝑣][(iEdg‘𝑔) / 𝑒]𝑒:dom 𝑒⟶{𝑥 ∈ (𝒫 𝑣 ∖ {∅}) ∣ (#‘𝑥) = 2}}
281, 27wceq 1480 1 wff UMGraph = {𝑔[(Vtx‘𝑔) / 𝑣][(iEdg‘𝑔) / 𝑒]𝑒:dom 𝑒⟶{𝑥 ∈ (𝒫 𝑣 ∖ {∅}) ∣ (#‘𝑥) = 2}}
 Colors of variables: wff setvar class This definition is referenced by:  isumgr  25902
 Copyright terms: Public domain W3C validator