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

Theorem incistruhgr 29714
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 3430 . . . . . . . . 9 (𝑉 = 𝑃 → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})
21mpteq2dv 5205 . . . . . . . 8 (𝑉 = 𝑃 → (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}))
32eqeq2d 2774 . . . . . . 7 (𝑉 = 𝑃 → (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ↔ 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒})))
4 xpeq1 5672 . . . . . . . . 9 (𝑉 = 𝑃 → (𝑉 × 𝐿) = (𝑃 × 𝐿))
54sseq2d 3945 . . . . . . . 8 (𝑉 = 𝑃 → (𝐼 ⊆ (𝑉 × 𝐿) ↔ 𝐼 ⊆ (𝑃 × 𝐿)))
653anbi2d 1470 . . . . . . 7 (𝑉 = 𝑃 → ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ↔ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿)))
73, 6anbi12d 644 . . . . . 6 (𝑉 = 𝑃 → ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿)) ↔ (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑃 ∣ 𝑣𝐼𝑒}) ∧ (𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑃 × 𝐿) ∧ ran 𝐼 = 𝐿))))
8 dmeq 5897 . . . . . . . . 9 (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) → dom 𝐸 = dom (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}))
9 incistruhgr.v . . . . . . . . . . . 12 𝑉 = (Vtx‘𝐺)
109fvexi 6930 . . . . . . . . . . 11 𝑉 ∈ V
1110rabex 5307 . . . . . . . . . 10 {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ V
12 eqid 2763 . . . . . . . . . 10 (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒})
1311, 12dmmpti 6713 . . . . . . . . 9 dom (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) = 𝐿
148, 13eqtrdi 2814 . . . . . . . 8 (𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) → dom 𝐸 = 𝐿)
15 ssrab2 4008 . . . . . . . . . . . . 13 {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉
1615a1i 11 . . . . . . . . . . . 12 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉)
1711elpw 4564 . . . . . . . . . . . 12 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ 𝒫 𝑉 ↔ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ⊆ 𝑉)
1816, 17sylibr 237 . . . . . . . . . . 11 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ 𝒫 𝑉)
19 eleq2 2853 . . . . . . . . . . . . . . . 16 (ran 𝐼 = 𝐿 → (𝑒 ∈ ran 𝐼 ↔ 𝑒 ∈ 𝐿))
20193ad2ant3 1153 . . . . . . . . . . . . . . 15 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ ran 𝐼 ↔ 𝑒 ∈ 𝐿))
21 ssrelrn 5888 . . . . . . . . . . . . . . . . 17 ((𝐼 ⊆ (𝑉 × 𝐿) ∧ 𝑒 ∈ ran 𝐼) → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2221ex 418 . . . . . . . . . . . . . . . 16 (𝐼 ⊆ (𝑉 × 𝐿) → (𝑒 ∈ ran 𝐼 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
23223ad2ant2 1152 . . . . . . . . . . . . . . 15 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ ran 𝐼 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
2420, 23sylbird 263 . . . . . . . . . . . . . 14 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ 𝐿 → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒))
2524imp 412 . . . . . . . . . . . . 13 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
26 df-ne 2960 . . . . . . . . . . . . . 14 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ≠ ∅ ↔ ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
27 rabn0 4342 . . . . . . . . . . . . . 14 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ≠ ∅ ↔ ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2826, 27bitr3i 280 . . . . . . . . . . . . 13 (¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅ ↔ ∃𝑣 ∈ 𝑉 𝑣𝐼𝑒)
2925, 28sylibr 237 . . . . . . . . . . . 12 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
3011elsn 4599 . . . . . . . . . . . 12 ({𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ {∅} ↔ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} = ∅)
3129, 30sylnibr 332 . . . . . . . . . . 11 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → ¬ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ {∅})
3218, 31eldifd 4053 . . . . . . . . . 10 (((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) ∧ 𝑒 ∈ 𝐿) → {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒} ∈ (𝒫 𝑉 ∖ {∅}))
3332fmpttd 7147 . . . . . . . . 9 ((𝐺 ∈ 𝑊 ∧ 𝐼 ⊆ (𝑉 × 𝐿) ∧ ran 𝐼 = 𝐿) → (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}):𝐿⟶(𝒫 𝑉 ∖ {∅}))
34 simpl 488 . . . . . . . . . 10 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → 𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}))
35 simpr 490 . . . . . . . . . 10 ((𝐸 = (𝑒 ∈ 𝐿 ↦ {𝑣 ∈ 𝑉 ∣ 𝑣𝐼𝑒}) ∧ dom 𝐸 = 𝐿) → dom 𝐸 = 𝐿)
3634, 35feq12d 6727 . . . . . . . . 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 29695 . . . . 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 2147   ≠ wne 2959  ∃wrex 3090  {crab 3416   ⊆ wss 3900   ∖ cdif 4048  ∅c0 4281  𝒫 cpw 4560  {csn 4588   class class class wbr 5108   ↦ cmpt 5192   × cxp 5656  dom cdm 5658  ran crn 5659  ⟶wf 6562  ‘cfv 6566  Vtxcvtx 29631  iEdgciedg 29632  UHGraphcuhgr 29691
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5255  ax-nul 5266  ax-pr 5398
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rab 3417  df-v 3456  df-sbc 3743  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-br 5109  df-opab 5174  df-mpt 5193  df-id 5553  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-fv 6574  df-uhgr 29693
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator