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

Theorem incistruhgr 29666
Description: An incidence structure ⟨𝑃, 𝐿, 𝐼⟩ "where 𝑃 is a set whose elements are called points, 𝐿 is a distinct set whose elements are called lines and 𝐼 ⊆ (𝑃 × 𝐿) is the incidence relation" (see Wikipedia "Incidence structure" (24-Oct-2020), https://en.wikipedia.org/wiki/Incidence_structure) implies an undirected hypergraph, if the incidence relation is right-total (to exclude empty edges). The points become the vertices, and the edge function is derived from the incidence relation by mapping each line ("edge") to the set of vertices incident to the line/edge. With 𝑃 = (Base‘𝑆) and by defining two new slots for lines and incidence relations (analogous to LineG and Itv) and enhancing the definition of iEdg accordingly, it would even be possible to express that a corresponding incidence structure is an undirected hypergraph. By choosing the incident relation appropriately, other kinds of undirected graphs (pseudographs, multigraphs, simple graphs, etc.) could be defined. (Contributed by AV, 24-Oct-2020.)
Hypotheses
Ref Expression
incistruhgr.v 𝑉 = (Vtx‘𝐺)
incistruhgr.e 𝐸 = (iEdg‘𝐺)
Assertion
Ref Expression
incistruhgr ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿) → ((𝑉 = 𝑃 ∧ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})) → 𝐺 ∈ UHGraph))
Distinct variable groups:   𝑒,𝐸   𝑒,𝐺   𝑒,𝐼,𝑣   𝑒,𝐿,𝑣   𝑃,𝑒,𝑣   𝑒,𝑉,𝑣   𝑒,𝑊
Allowed substitution hints:   𝐸(𝑣)   𝐺(𝑣)   𝑊(𝑣)

Proof of Theorem incistruhgr
StepHypRef Expression
1 rabeq 3426 . . . . . . . . 9 (𝑉 = 𝑃 → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})
21mpteq2dv 5198 . . . . . . . 8 (𝑉 = 𝑃 → (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}))
32eqeq2d 2771 . . . . . . 7 (𝑉 = 𝑃 → (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ↔ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})))
4 xpeq1 5665 . . . . . . . . 9 (𝑉 = 𝑃 → (𝑉 × 𝐿) = (𝑃 × 𝐿))
54sseq2d 3941 . . . . . . . 8 (𝑉 = 𝑃 → (𝐼 ⊆ (𝑉 × 𝐿) ↔ 𝐼 ⊆ (𝑃 × 𝐿)))
653anbi2d 1469 . . . . . . 7 (𝑉 = 𝑃 → ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ↔ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿)))
73, 6anbi12d 644 . . . . . 6 (𝑉 = 𝑃 → ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿)) ↔ (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿))))
8 dmeq 5886 . . . . . . . . 9 (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) → dom 𝐸 = dom (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}))
9 incistruhgr.v . . . . . . . . . . . 12 𝑉 = (Vtx‘𝐺)
109fvexi 6904 . . . . . . . . . . 11 𝑉 ∈ V
1110rabex 5300 . . . . . . . . . 10 {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ V
12 eqid 2760 . . . . . . . . . 10 (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒})
1311, 12dmmpti 6688 . . . . . . . . 9 dom (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = 𝐿
148, 13eqtrdi 2811 . . . . . . . 8 (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) → dom 𝐸 = 𝐿)
15 ssrab2 4004 . . . . . . . . . . . . 13 {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉
1615a1i 11 . . . . . . . . . . . 12 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉)
1711elpw 4560 . . . . . . . . . . . 12 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ 𝒫 𝑉 ↔ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉)
1816, 17sylibr 237 . . . . . . . . . . 11 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ 𝒫 𝑉)
19 eleq2 2849 . . . . . . . . . . . . . . . 16 (ran 𝐼 = 𝐿 → (𝑒 ∈ ran 𝐼 ↔ 𝑒 ∈ 𝐿))
20193ad2ant3 1153 . . . . . . . . . . . . . . 15 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ ran 𝐼 ↔ 𝑒 ∈ 𝐿))
21 ssrelrn 5877 . . . . . . . . . . . . . . . . 17 ((𝐼 ⊆ (𝑉 × 𝐿) ∧ 𝑒 ∈ ran 𝐼) → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2221ex 418 . . . . . . . . . . . . . . . 16 (𝐼 ⊆ (𝑉 × 𝐿) → (𝑒 ∈ ran 𝐼 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
23223ad2ant2 1152 . . . . . . . . . . . . . . 15 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ ran 𝐼 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
2420, 23sylbird 263 . . . . . . . . . . . . . 14 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ 𝐿 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
2524imp 412 . . . . . . . . . . . . 13 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
26 df-ne 2956 . . . . . . . . . . . . . 14 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ≠ ∅ ↔ ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
27 rabn0 4338 . . . . . . . . . . . . . 14 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ≠ ∅ ↔ ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2826, 27bitr3i 280 . . . . . . . . . . . . 13 (¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅ ↔ ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2925, 28sylibr 237 . . . . . . . . . . . 12 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
3011elsn 4595 . . . . . . . . . . . 12 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ {∅} ↔ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
3129, 30sylnibr 332 . . . . . . . . . . 11 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ {∅})
3218, 31eldifd 4049 . . . . . . . . . 10 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ (𝒫 𝑉 ∖ {∅}))
3332fmpttd 7120 . . . . . . . . 9 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}):𝐿⟶(𝒫 𝑉 ∖ {∅}))
34 simpl 488 . . . . . . . . . 10 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}))
35 simpr 490 . . . . . . . . . 10 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → dom 𝐸 = 𝐿)
3634, 35feq12d 6702 . . . . . . . . 9 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → (𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅}) ↔ (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}):𝐿⟶(𝒫 𝑉 ∖ {∅})))
3733, 36imbitrrid 249 . . . . . . . 8 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅})))
3814, 37mpdan 700 . . . . . . 7 (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) → ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅})))
3938imp 412 . . . . . 6 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿)) → 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅}))
407, 39biimtrrdi 257 . . . . 5 (𝑉 = 𝑃 → ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿)) → 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅})))
4140expdimp 458 . . . 4 ((𝑉 = 𝑃 ∧ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})) → ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿) → 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅})))
4241impcom 413 . . 3 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ (𝑉 = 𝑃 ∧ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}))) → 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅}))
43 incistruhgr.e . . . . . 6 𝐸 = (iEdg‘𝐺)
449, 43isuhgr 29647 . . . . 5 (𝐺 ∈ 𝑊 → (𝐺 ∈ UHGraph ↔ 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅})))
45443ad2ant1 1151 . . . 4 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝐺 ∈ UHGraph ↔ 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅})))
4645adantr 486 . . 3 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ (𝑉 = 𝑃 ∧ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}))) → (𝐺 ∈ UHGraph ↔ 𝐸:dom 𝐸⟶(𝒫 𝑉 ∖ {∅})))
4742, 46mpbird 260 . 2 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ (𝑉 = 𝑃 ∧ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}))) → 𝐺 ∈ UHGraph)
4847ex 418 1 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿) → ((𝑉 = 𝑃 ∧ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})) → 𝐺 ∈ UHGraph))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   ∧ w3a 1103   = wceq 1569   ∈ wcel 2144   ≠ wne 2955  ∃wrex 3086  {crab 3412   ⊆ wss 3896   ∖ cdif 4044  ∅c0 4277  𝒫 cpw 4556  {csn 4584   class class class wbr 5102   ↦ cmpt 5185   × cxp 5649  dom cdm 5651  ran crn 5652  ⟶wf 6539  ‘cfv 6543  Vtxcvtx 29583  iEdgciedg 29584  UHGraphcuhgr 29643
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-sep 5248  ax-nul 5259  ax-pr 5391
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-rab 3413  df-v 3452  df-sbc 3739  df-ss 3897  df-dif 4046  df-in 4090  df-un 4150  df-nul 4278  df-if 4482  df-pw 4558  df-sn 4585  df-pr 4587  df-op 4835  df-uni 4867  df-br 5103  df-opab 5167  df-mpt 5186  df-id 5546  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-iota 6497  df-fun 6545  df-fn 6546  df-f 6547  df-fv 6551  df-uhgr 29645
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator