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

Theorem incistruhgr 29650
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 3427 . . . . . . . . 9 (𝑉 = 𝑃 → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})
21mpteq2dv 5199 . . . . . . . 8 (𝑉 = 𝑃 → (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}))
32eqeq2d 2772 . . . . . . 7 (𝑉 = 𝑃 → (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ↔ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})))
4 xpeq1 5665 . . . . . . . . 9 (𝑉 = 𝑃 → (𝑉 × 𝐿) = (𝑃 × 𝐿))
54sseq2d 3963 . . . . . . . 8 (𝑉 = 𝑃 → (𝐼 ⊆ (𝑉 × 𝐿) ↔ 𝐼 ⊆ (𝑃 × 𝐿)))
653anbi2d 1469 . . . . . . 7 (𝑉 = 𝑃 → ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ↔ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿)))
73, 6anbi12d 644 . . . . . 6 (𝑉 = 𝑃 → ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿)) ↔ (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿))))
8 dmeq 5885 . . . . . . . . 9 (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) → dom 𝐸 = dom (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}))
9 incistruhgr.v . . . . . . . . . . . 12 𝑉 = (Vtx‘𝐺)
109fvexi 6897 . . . . . . . . . . 11 𝑉 ∈ V
1110rabex 5300 . . . . . . . . . 10 {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ V
12 eqid 2761 . . . . . . . . . 10 (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒})
1311, 12dmmpti 6681 . . . . . . . . 9 dom (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = 𝐿
148, 13eqtrdi 2812 . . . . . . . 8 (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) → dom 𝐸 = 𝐿)
15 ssrab2 4028 . . . . . . . . . . . . 13 {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉
1615a1i 11 . . . . . . . . . . . 12 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉)
1711elpw 4561 . . . . . . . . . . . 12 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ 𝒫 𝑉 ↔ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉)
1816, 17sylibr 237 . . . . . . . . . . 11 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ 𝒫 𝑉)
19 eleq2 2850 . . . . . . . . . . . . . . . 16 (ran 𝐼 = 𝐿 → (𝑒 ∈ ran 𝐼 ↔ 𝑒 ∈ 𝐿))
20193ad2ant3 1153 . . . . . . . . . . . . . . 15 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ ran 𝐼 ↔ 𝑒 ∈ 𝐿))
21 ssrelrn 5876 . . . . . . . . . . . . . . . . 17 ((𝐼 ⊆ (𝑉 × 𝐿) ∧ 𝑒 ∈ ran 𝐼) → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2221ex 418 . . . . . . . . . . . . . . . 16 (𝐼 ⊆ (𝑉 × 𝐿) → (𝑒 ∈ ran 𝐼 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
23223ad2ant2 1152 . . . . . . . . . . . . . . 15 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ ran 𝐼 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
2420, 23sylbird 263 . . . . . . . . . . . . . 14 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ 𝐿 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
2524imp 412 . . . . . . . . . . . . 13 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
26 df-ne 2957 . . . . . . . . . . . . . 14 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ≠ ∅ ↔ ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
27 rabn0 4339 . . . . . . . . . . . . . 14 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ≠ ∅ ↔ ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2826, 27bitr3i 280 . . . . . . . . . . . . 13 (¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅ ↔ ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2925, 28sylibr 237 . . . . . . . . . . . 12 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
3011elsn 4599 . . . . . . . . . . . 12 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ {∅} ↔ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
3129, 30sylnibr 332 . . . . . . . . . . 11 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ {∅})
3218, 31eldifd 3910 . . . . . . . . . 10 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ (𝒫 𝑉 ∖ {∅}))
3332fmpttd 7113 . . . . . . . . 9 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}):𝐿⟶(𝒫 𝑉 ∖ {∅}))
34 simpl 488 . . . . . . . . . 10 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}))
35 simpr 490 . . . . . . . . . 10 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → dom 𝐸 = 𝐿)
3634, 35feq12d 6695 . . . . . . . . 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 29631 . . . . 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 1570   ∈ wcel 2145   ≠ wne 2956  ∃wrex 3087  {crab 3413   ∖ cdif 3896   ⊆ wss 3899  ∅c0 4279  𝒫 cpw 4557  {csn 4584   class class class wbr 5103   ↦ cmpt 5186   × cxp 5649  dom cdm 5651  ran crn 5652  ⟶wf 6533  ‘cfv 6537  Vtxcvtx 29567  iEdgciedg 29568  UHGraphcuhgr 29627
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pr 5391
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-sbc 3740  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  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 6493  df-fun 6539  df-fn 6540  df-f 6541  df-fv 6545  df-uhgr 29629
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator