Table of ContentsTable of Contents User Sandbox < Previous   Next >
Related theorems
Unicode version

Theorem ishgrag 10740
Description: Express the predicate "H is a hypergraph." Definition of hypergraph in [Diestel] p. 28, which states "A hypergraph is a pair (V, E) of disjoint sets, where the elements of E are non-empty subsets (of any cardinality) of V."

Because V and E are both used as symbols (for the universal class df-v 1815 and the epsilon relation df-eprel 2838, respectively) in Metamath, we instead use A to represent V, the set of vertices or atoms of the hypergraph, and B to represent E, the set of edges or blocks that each connect one or more atoms in A. (See Definition 2.1 in [McKMegPav] p. 2384 for an analogous use of atom and block in Greechie diagrams.)

Hypothesis
Ref Expression
ishgrag.1 |- H = <.A, B>.
Assertion
Ref Expression
ishgrag |- ((A e. C /\ B e. D) -> (H e. HypGrph <-> ((A i^i B) = (/) /\ A.b e. B (b (_ A /\ b =/= (/)))))
Distinct variable groups:   A,b   B,b

Proof of Theorem ishgrag
StepHypRef Expression
1 ineq1 2213 . . . . . . 7 |- (x = A -> (x i^i y) = (A i^i y))
21eqeq1d 1486 . . . . . 6 |- (x = A -> ((x i^i y) = (/) <-> (A i^i y) = (/)))
3 pweq 2407 . . . . . . . 8 |- (x = A -> P~x = P~A)
43difeq1d 2161 . . . . . . 7 |- (x = A -> (P~x \ {(/)}) = (P~A \ {(/)}))
54sseq2d 2092 . . . . . 6 |- (x = A -> (y (_ (P~x \ {(/)}) <-> y (_ (P~A \ {(/)})))
62, 5anbi12d 630 . . . . 5 |- (x = A -> (((x i^i y) = (/) /\ y (_ (P~x \ {(/)})) <-> ((A i^i y) = (/) /\ y (_ (P~A \ {(/)}))))
7 ineq2 2214 . . . . . . 7 |- (y = B -> (A i^i y) = (A i^i B))
87eqeq1d 1486 . . . . . 6 |- (y = B -> ((A i^i y) = (/) <-> (A i^i B) = (/)))
9 sseq1 2085 . . . . . 6 |- (y = B -> (y (_ (P~A \ {(/)}) <-> B (_ (P~A \ {(/)})))
108, 9anbi12d 630 . . . . 5 |- (y = B -> (((A i^i y) = (/) /\ y (_ (P~A \ {(/)})) <-> ((A i^i B) = (/) /\ B (_ (P~A \ {(/)}))))
116, 10opelopabg 2823 . . . 4 |- ((A e. C /\ B e. D) -> (<.A, B>. e. {<.x, y>. | ((x i^i y) = (/) /\ y (_ (P~x \ {(/)}))} <-> ((A i^i B) = (/) /\ B (_ (P~A \ {(/)}))))
12 df-hgra 10737 . . . . 5 |- HypGrph = {<.x, y>. | ((x i^i y) = (/) /\ y (_ (P~x \ {(/)}))}
1312eleq2i 1541 . . . 4 |- (<.A, B>. e. HypGrph <-> <.A, B>. e. {<.x, y>. | ((x i^i y) = (/) /\ y (_ (P~x \ {(/)}))})
1411, 13syl5bb 534 . . 3 |- ((A e. C /\ B e. D) -> (<.A, B>. e. HypGrph <-> ((A i^i B) = (/) /\ B (_ (P~A \ {(/)}))))
15 ishgrag.1 . . . 4 |- H = <.A, B>.
1615eleq1i 1540 . . 3 |- (H e. HypGrph <-> <.A, B>. e. HypGrph)
1714, 16syl5bb 534 . 2 |- ((A e. C /\ B e. D) -> (H e. HypGrph <-> ((A i^i B) = (/) /\ B (_ (P~A \ {(/)}))))
18 blkssatm 10738 . . 3 |- (B (_ (P~A \ {(/)}) <-> A.b e. B (b (_ A /\ b =/= (/)))
1918anbi2i 482 . 2 |- (((A i^i B) = (/) /\ B (_ (P~A \ {(/)})) <-> ((A i^i B) = (/) /\ A.b e. B (b (_ A /\ b =/= (/))))
2017, 19syl6bb 538 1 |- ((A e. C /\ B e. D) -> (H e. HypGrph <-> ((A i^i B) = (/) /\ A.b e. B (b (_ A /\ b =/= (/)))))
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 146   /\ wa 223   = wceq 958   e. wcel 960   =/= wne 1588  A.wral 1648   \ cdif 2047   i^i cin 2049   (_ wss 2050  (/)c0 2283  P~cpw 2405  {csn 2413  <.cop 2415  {copab 2671  HypGrphchgra 10736
This theorem is referenced by:  emhgrat 10746
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 964  ax-gen 965  ax-8 966  ax-10 968  ax-11 969  ax-12 970  ax-13 971  ax-14 972  ax-17 973  ax-4 975  ax-5o 977  ax-6o 980  ax-9o 1125  ax-10o 1142  ax-16 1212  ax-11o 1220  ax-ext 1462  ax-sep 2708  ax-pow 2748  ax-pr 2785
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-ex 983  df-sb 1174  df-eu 1384  df-mo 1385  df-clab 1467  df-cleq 1472  df-clel 1475  df-ne 1590  df-ral 1652  df-v 1815  df-dif 2052  df-un 2053  df-in 2054  df-ss 2056  df-nul 2284  df-pw 2406  df-sn 2416  df-pr 2417  df-op 2420  df-opab 2672  df-hgra 10737
Copyright terms: Public domain