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

Theorem frgrncvvdeqlem2 30766
Description: Lemma 2 for frgrncvvdeq 30775. In a friendship graph, for each neighbor of a vertex there is exactly one neighbor of another vertex so that there is an edge between these two neighbors. (Contributed by Alexander van der Vekens, 22-Dec-2017.) (Revised by AV, 10-May-2021.) (Proof shortened by AV, 12-Feb-2022.)
Hypotheses
Ref Expression
frgrncvvdeq.v1 𝑉 = (Vtx‘𝐺)
frgrncvvdeq.e 𝐸 = (Edg‘𝐺)
frgrncvvdeq.nx 𝐷 = (𝐺 NeighbVtx 𝑋)
frgrncvvdeq.ny 𝑁 = (𝐺 NeighbVtx 𝑌)
frgrncvvdeq.x (𝜑𝑋𝑉)
frgrncvvdeq.y (𝜑𝑌𝑉)
frgrncvvdeq.ne (𝜑𝑋𝑌)
frgrncvvdeq.xy (𝜑𝑌𝐷)
frgrncvvdeq.f (𝜑𝐺 ∈ FriendGraph )
frgrncvvdeq.a 𝐴 = (𝑥𝐷 ↦ (𝑦𝑁 {𝑥, 𝑦} ∈ 𝐸))
Assertion
Ref Expression
frgrncvvdeqlem2 ((𝜑𝑥𝐷) → ∃!𝑦𝑁 {𝑥, 𝑦} ∈ 𝐸)
Distinct variable groups:   𝑦,𝐸   𝑦,𝐺   𝑦,𝑉   𝑦,𝑌   𝑥,𝑦
Allowed substitution hints:   𝜑(𝑥, 𝑦)   𝐴(𝑥, 𝑦)   𝐷(𝑥, 𝑦)   𝐸(𝑥)   𝐺(𝑥)   𝑁(𝑥, 𝑦)   𝑉(𝑥)   𝑋(𝑥, 𝑦)   𝑌(𝑥)

Proof of Theorem frgrncvvdeqlem2
StepHypRef Expression
1 frgrncvvdeq.f . . . 4 (𝜑𝐺 ∈ FriendGraph )
21adantr 486 . . 3 ((𝜑𝑥𝐷) → 𝐺 ∈ FriendGraph )
3 frgrncvvdeq.nx . . . . . . 7 𝐷 = (𝐺 NeighbVtx 𝑋)
43eleq2i 2854 . . . . . 6 (𝑥𝐷𝑥 ∈ (𝐺 NeighbVtx 𝑋))
5 frgrncvvdeq.v1 . . . . . . . 8 𝑉 = (Vtx‘𝐺)
65nbgrisvtx 29787 . . . . . . 7 (𝑥 ∈ (𝐺 NeighbVtx 𝑋) → 𝑥𝑉)
76a1i 11 . . . . . 6 (𝜑 → (𝑥 ∈ (𝐺 NeighbVtx 𝑋) → 𝑥𝑉))
84, 7biimtrid 245 . . . . 5 (𝜑 → (𝑥𝐷𝑥𝑉))
98imp 412 . . . 4 ((𝜑𝑥𝐷) → 𝑥𝑉)
10 frgrncvvdeq.y . . . . 5 (𝜑𝑌𝑉)
1110adantr 486 . . . 4 ((𝜑𝑥𝐷) → 𝑌𝑉)
12 frgrncvvdeq.xy . . . . . 6 (𝜑𝑌𝐷)
13 elnelne2 3075 . . . . . . 7 ((𝑥𝐷𝑌𝐷) → 𝑥𝑌)
1413expcom 419 . . . . . 6 (𝑌𝐷 → (𝑥𝐷𝑥𝑌))
1512, 14syl 18 . . . . 5 (𝜑 → (𝑥𝐷𝑥𝑌))
1615imp 412 . . . 4 ((𝜑𝑥𝐷) → 𝑥𝑌)
179, 11, 163jca 1146 . . 3 ((𝜑𝑥𝐷) → (𝑥𝑉𝑌𝑉𝑥𝑌))
18 frgrncvvdeq.e . . . 4 𝐸 = (Edg‘𝐺)
195, 18frcond1 30732 . . 3 (𝐺 ∈ FriendGraph → ((𝑥𝑉𝑌𝑉𝑥𝑌) → ∃!𝑦𝑉 {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸))
202, 17, 19sylc 66 . 2 ((𝜑𝑥𝐷) → ∃!𝑦𝑉 {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸)
21 frgrusgr 30727 . . . 4 (𝐺 ∈ FriendGraph → 𝐺 ∈ USGraph)
22 prex 5407 . . . . . . . . . . . 12 {𝑥, 𝑦} ∈ V
23 prex 5407 . . . . . . . . . . . 12 {𝑦, 𝑌} ∈ V
2422, 23prss 4784 . . . . . . . . . . 11 (({𝑥, 𝑦} ∈ 𝐸 ∧ {𝑦, 𝑌} ∈ 𝐸) ↔ {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸)
25 ancom 466 . . . . . . . . . . 11 (({𝑥, 𝑦} ∈ 𝐸 ∧ {𝑦, 𝑌} ∈ 𝐸) ↔ ({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸))
2624, 25bitr3i 280 . . . . . . . . . 10 ({{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸 ↔ ({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸))
2726anbi2i 635 . . . . . . . . 9 ((𝑦𝑉 ∧ {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸) ↔ (𝑦𝑉 ∧ ({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸)))
28 usgrumgr 29627 . . . . . . . . . . . 12 (𝐺 ∈ USGraph → 𝐺 ∈ UMGraph)
295, 18umgrpredgv 29583 . . . . . . . . . . . . . 14 ((𝐺 ∈ UMGraph ∧ {𝑥, 𝑦} ∈ 𝐸) → (𝑥𝑉𝑦𝑉))
3029simprd 501 . . . . . . . . . . . . 13 ((𝐺 ∈ UMGraph ∧ {𝑥, 𝑦} ∈ 𝐸) → 𝑦𝑉)
3130ex 418 . . . . . . . . . . . 12 (𝐺 ∈ UMGraph → ({𝑥, 𝑦} ∈ 𝐸𝑦𝑉))
3228, 31syl 18 . . . . . . . . . . 11 (𝐺 ∈ USGraph → ({𝑥, 𝑦} ∈ 𝐸𝑦𝑉))
3332adantld 496 . . . . . . . . . 10 (𝐺 ∈ USGraph → (({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸) → 𝑦𝑉))
3433pm4.71rd 572 . . . . . . . . 9 (𝐺 ∈ USGraph → (({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸) ↔ (𝑦𝑉 ∧ ({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸))))
3527, 34bitr4id 293 . . . . . . . 8 (𝐺 ∈ USGraph → ((𝑦𝑉 ∧ {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸) ↔ ({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸)))
36 frgrncvvdeq.ny . . . . . . . . . . 11 𝑁 = (𝐺 NeighbVtx 𝑌)
3736eleq2i 2854 . . . . . . . . . 10 (𝑦𝑁𝑦 ∈ (𝐺 NeighbVtx 𝑌))
3818nbusgreledg 29799 . . . . . . . . . 10 (𝐺 ∈ USGraph → (𝑦 ∈ (𝐺 NeighbVtx 𝑌) ↔ {𝑦, 𝑌} ∈ 𝐸))
3937, 38bitr2id 287 . . . . . . . . 9 (𝐺 ∈ USGraph → ({𝑦, 𝑌} ∈ 𝐸𝑦𝑁))
4039anbi1d 643 . . . . . . . 8 (𝐺 ∈ USGraph → (({𝑦, 𝑌} ∈ 𝐸 ∧ {𝑥, 𝑦} ∈ 𝐸) ↔ (𝑦𝑁 ∧ {𝑥, 𝑦} ∈ 𝐸)))
4135, 40bitrd 282 . . . . . . 7 (𝐺 ∈ USGraph → ((𝑦𝑉 ∧ {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸) ↔ (𝑦𝑁 ∧ {𝑥, 𝑦} ∈ 𝐸)))
4241eubidv 2613 . . . . . 6 (𝐺 ∈ USGraph → (∃!𝑦(𝑦𝑉 ∧ {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸) ↔ ∃!𝑦(𝑦𝑁 ∧ {𝑥, 𝑦} ∈ 𝐸)))
4342biimpd 232 . . . . 5 (𝐺 ∈ USGraph → (∃!𝑦(𝑦𝑉 ∧ {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸) → ∃!𝑦(𝑦𝑁 ∧ {𝑥, 𝑦} ∈ 𝐸)))
44 df-reu 3368 . . . . 5 (∃!𝑦𝑉 {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸 ↔ ∃!𝑦(𝑦𝑉 ∧ {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸))
45 df-reu 3368 . . . . 5 (∃!𝑦𝑁 {𝑥, 𝑦} ∈ 𝐸 ↔ ∃!𝑦(𝑦𝑁 ∧ {𝑥, 𝑦} ∈ 𝐸))
4643, 44, 453imtr4g 299 . . . 4 (𝐺 ∈ USGraph → (∃!𝑦𝑉 {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸 → ∃!𝑦𝑁 {𝑥, 𝑦} ∈ 𝐸))
471, 21, 463syl 19 . . 3 (𝜑 → (∃!𝑦𝑉 {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸 → ∃!𝑦𝑁 {𝑥, 𝑦} ∈ 𝐸))
4847adantr 486 . 2 ((𝜑𝑥𝐷) → (∃!𝑦𝑉 {{𝑥, 𝑦}, {𝑦, 𝑌}} ⊆ 𝐸 → ∃!𝑦𝑁 {𝑥, 𝑦} ∈ 𝐸))
4920, 48mpd 16 1 ((𝜑𝑥𝐷) → ∃!𝑦𝑁 {𝑥, 𝑦} ∈ 𝐸)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2145  ∃!weu 2595  wne 2957  wnel 3063  ∃!wreu 3365  wss 3902  {cpr 4589  cmpt 5190  cfv 6537  crio 7372  (class class class)co 7416  Vtxcvtx 29439  Edgcedg 29490  UMGraphcumgr 29524  USGraphcusgr 29595   NeighbVtx cnbgr 29778   FriendGraph cfrgr 30724
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 2215  ax-ext 2734  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739  ax-cnex 11183  ax-resscn 11184  ax-1cn 11185  ax-icn 11186  ax-addcl 11187  ax-addrcl 11188  ax-mulcl 11189  ax-mulrcl 11190  ax-mulcom 11191  ax-addass 11192  ax-mulass 11193  ax-distr 11194  ax-i2m1 11195  ax-1ne0 11196  ax-1rid 11197  ax-rnegex 11198  ax-rrecex 11199  ax-cnre 11200  ax-pre-lttri 11201  ax-pre-lttrn 11202  ax-pre-ltadd 11203  ax-pre-mulgt0 11204
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-int 4911  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7866  df-1st 7989  df-2nd 7990  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-1o 8458  df-2o 8459  df-oadd 8462  df-er 8699  df-en 8956  df-dom 8957  df-sdom 8958  df-fin 8959  df-dju 9909  df-card 9947  df-pnf 11272  df-mnf 11273  df-xr 11274  df-ltxr 11275  df-le 11276  df-sub 11470  df-neg 11471  df-nn 12261  df-2 12330  df-n0 12532  df-xnn0 12605  df-z 12619  df-uz 12891  df-fz 13564  df-hash 14397  df-edg 29491  df-upgr 29525  df-umgr 29526  df-usgr 29597  df-nbgr 29779  df-frgr 30725
This theorem is used by:  frgrncvvdeqlem3  30767  frgrncvvdeqlem4  30768
  Copyright terms: Public domain W3C validator