Users' Mathboxes Mathbox for Alexander van der Vekens < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  dfnbgr6 Structured version   Visualization version   GIF version

Theorem dfnbgr6 48682
Description: Alternate definition of the (open) neighborhood of a vertex as a difference of its semiopen neighborhood and the singleton of itself. (Contributed by AV, 17-May-2025.)
Hypotheses
Ref Expression
dfvopnbgr2.v 𝑉 = (Vtx‘𝐺)
dfvopnbgr2.e 𝐸 = (Edg‘𝐺)
dfvopnbgr2.u 𝑈 = {𝑛𝑉 ∣ (𝑛 ∈ (𝐺 NeighbVtx 𝑁) ∨ ∃𝑒𝐸 (𝑁 = 𝑛𝑒 = {𝑁}))}
Assertion
Ref Expression
dfnbgr6 (𝑁𝑉 → (𝐺 NeighbVtx 𝑁) = (𝑈 ∖ {𝑁}))
Distinct variable groups:   𝑒,𝐸   𝑒,𝐺   𝑒,𝑁,𝑛   𝑒,𝑉,𝑛   𝑛,𝐸   𝑛,𝐺
Allowed substitution hints:   𝑈(𝑒, 𝑛)

Proof of Theorem dfnbgr6
Dummy variable 𝑣 is distinct from all other variables.
StepHypRef Expression
1 rabdif 4274 . . 3 ({𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ∖ {𝑁}) = {𝑛 ∈ (𝑉 ∖ {𝑁}) ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)}
2 3anass 1111 . . . . . . . . . . . . 13 ((𝑣𝑁𝑁𝑒𝑣𝑒) ↔ (𝑣𝑁 ∧ (𝑁𝑒𝑣𝑒)))
32biimpri 231 . . . . . . . . . . . 12 ((𝑣𝑁 ∧ (𝑁𝑒𝑣𝑒)) → (𝑣𝑁𝑁𝑒𝑣𝑒))
43orcd 887 . . . . . . . . . . 11 ((𝑣𝑁 ∧ (𝑁𝑒𝑣𝑒)) → ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣})))
54ex 418 . . . . . . . . . 10 (𝑣𝑁 → ((𝑁𝑒𝑣𝑒) → ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))))
6 3simpc 1168 . . . . . . . . . . . 12 ((𝑣𝑁𝑁𝑒𝑣𝑒) → (𝑁𝑒𝑣𝑒))
76a1i 11 . . . . . . . . . . 11 (𝑣𝑁 → ((𝑣𝑁𝑁𝑒𝑣𝑒) → (𝑁𝑒𝑣𝑒)))
8 eqneqall 2971 . . . . . . . . . . . . 13 (𝑣 = 𝑁 → (𝑣𝑁 → (𝑒 = {𝑣} → (𝑁𝑒𝑣𝑒))))
98com12 33 . . . . . . . . . . . 12 (𝑣𝑁 → (𝑣 = 𝑁 → (𝑒 = {𝑣} → (𝑁𝑒𝑣𝑒))))
109impd 416 . . . . . . . . . . 11 (𝑣𝑁 → ((𝑣 = 𝑁𝑒 = {𝑣}) → (𝑁𝑒𝑣𝑒)))
117, 10jaod 873 . . . . . . . . . 10 (𝑣𝑁 → (((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣})) → (𝑁𝑒𝑣𝑒)))
125, 11impbid 215 . . . . . . . . 9 (𝑣𝑁 → ((𝑁𝑒𝑣𝑒) ↔ ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))))
1312rexbidv 3191 . . . . . . . 8 (𝑣𝑁 → (∃𝑒𝐸 (𝑁𝑒𝑣𝑒) ↔ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))))
1413anbi2d 642 . . . . . . 7 (𝑣𝑁 → ((𝑣𝑉 ∧ ∃𝑒𝐸 (𝑁𝑒𝑣𝑒)) ↔ (𝑣𝑉 ∧ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣})))))
1514pm5.32ri 586 . . . . . 6 (((𝑣𝑉 ∧ ∃𝑒𝐸 (𝑁𝑒𝑣𝑒)) ∧ 𝑣𝑁) ↔ ((𝑣𝑉 ∧ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))) ∧ 𝑣𝑁))
1615a1i 11 . . . . 5 (𝑁𝑉 → (((𝑣𝑉 ∧ ∃𝑒𝐸 (𝑁𝑒𝑣𝑒)) ∧ 𝑣𝑁) ↔ ((𝑣𝑉 ∧ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))) ∧ 𝑣𝑁)))
17 eldif 3916 . . . . . 6 (𝑣 ∈ ({𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ∖ {𝑁}) ↔ (𝑣 ∈ {𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ∧ ¬ 𝑣 ∈ {𝑁}))
18 elequ1 2153 . . . . . . . . . 10 (𝑛 = 𝑣 → (𝑛𝑒𝑣𝑒))
1918anbi2d 642 . . . . . . . . 9 (𝑛 = 𝑣 → ((𝑁𝑒𝑛𝑒) ↔ (𝑁𝑒𝑣𝑒)))
2019rexbidv 3191 . . . . . . . 8 (𝑛 = 𝑣 → (∃𝑒𝐸 (𝑁𝑒𝑛𝑒) ↔ ∃𝑒𝐸 (𝑁𝑒𝑣𝑒)))
2120elrab 3652 . . . . . . 7 (𝑣 ∈ {𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ↔ (𝑣𝑉 ∧ ∃𝑒𝐸 (𝑁𝑒𝑣𝑒)))
22 velsn 4607 . . . . . . . 8 (𝑣 ∈ {𝑁} ↔ 𝑣 = 𝑁)
2322necon3bbii 3007 . . . . . . 7 𝑣 ∈ {𝑁} ↔ 𝑣𝑁)
2421, 23anbi12i 640 . . . . . 6 ((𝑣 ∈ {𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ∧ ¬ 𝑣 ∈ {𝑁}) ↔ ((𝑣𝑉 ∧ ∃𝑒𝐸 (𝑁𝑒𝑣𝑒)) ∧ 𝑣𝑁))
2517, 24bitri 278 . . . . 5 (𝑣 ∈ ({𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ∖ {𝑁}) ↔ ((𝑣𝑉 ∧ ∃𝑒𝐸 (𝑁𝑒𝑣𝑒)) ∧ 𝑣𝑁))
26 eldif 3916 . . . . . 6 (𝑣 ∈ ({𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∖ {𝑁}) ↔ (𝑣 ∈ {𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∧ ¬ 𝑣 ∈ {𝑁}))
27 neeq1 3022 . . . . . . . . . . 11 (𝑛 = 𝑣 → (𝑛𝑁𝑣𝑁))
2827, 183anbi13d 1466 . . . . . . . . . 10 (𝑛 = 𝑣 → ((𝑛𝑁𝑁𝑒𝑛𝑒) ↔ (𝑣𝑁𝑁𝑒𝑣𝑒)))
29 eqeq1 2769 . . . . . . . . . . 11 (𝑛 = 𝑣 → (𝑛 = 𝑁𝑣 = 𝑁))
30 sneq 4601 . . . . . . . . . . . 12 (𝑛 = 𝑣 → {𝑛} = {𝑣})
3130eqeq2d 2776 . . . . . . . . . . 11 (𝑛 = 𝑣 → (𝑒 = {𝑛} ↔ 𝑒 = {𝑣}))
3229, 31anbi12d 644 . . . . . . . . . 10 (𝑛 = 𝑣 → ((𝑛 = 𝑁𝑒 = {𝑛}) ↔ (𝑣 = 𝑁𝑒 = {𝑣})))
3328, 32orbi12d 932 . . . . . . . . 9 (𝑛 = 𝑣 → (((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛})) ↔ ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))))
3433rexbidv 3191 . . . . . . . 8 (𝑛 = 𝑣 → (∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛})) ↔ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))))
3534elrab 3652 . . . . . . 7 (𝑣 ∈ {𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ↔ (𝑣𝑉 ∧ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))))
3635, 23anbi12i 640 . . . . . 6 ((𝑣 ∈ {𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∧ ¬ 𝑣 ∈ {𝑁}) ↔ ((𝑣𝑉 ∧ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))) ∧ 𝑣𝑁))
3726, 36bitri 278 . . . . 5 (𝑣 ∈ ({𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∖ {𝑁}) ↔ ((𝑣𝑉 ∧ ∃𝑒𝐸 ((𝑣𝑁𝑁𝑒𝑣𝑒) ∨ (𝑣 = 𝑁𝑒 = {𝑣}))) ∧ 𝑣𝑁))
3816, 25, 373bitr4g 317 . . . 4 (𝑁𝑉 → (𝑣 ∈ ({𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ∖ {𝑁}) ↔ 𝑣 ∈ ({𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∖ {𝑁})))
3938eqrdv 2763 . . 3 (𝑁𝑉 → ({𝑛𝑉 ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} ∖ {𝑁}) = ({𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∖ {𝑁}))
401, 39eqtr3id 2814 . 2 (𝑁𝑉 → {𝑛 ∈ (𝑉 ∖ {𝑁}) ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)} = ({𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∖ {𝑁}))
41 dfvopnbgr2.v . . 3 𝑉 = (Vtx‘𝐺)
42 dfvopnbgr2.e . . 3 𝐸 = (Edg‘𝐺)
4341, 42dfnbgr2 29747 . 2 (𝑁𝑉 → (𝐺 NeighbVtx 𝑁) = {𝑛 ∈ (𝑉 ∖ {𝑁}) ∣ ∃𝑒𝐸 (𝑁𝑒𝑛𝑒)})
44 dfvopnbgr2.u . . . 4 𝑈 = {𝑛𝑉 ∣ (𝑛 ∈ (𝐺 NeighbVtx 𝑁) ∨ ∃𝑒𝐸 (𝑁 = 𝑛𝑒 = {𝑁}))}
4541, 42, 44dfvopnbgr2 48678 . . 3 (𝑁𝑉𝑈 = {𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))})
4645difeq1d 4080 . 2 (𝑁𝑉 → (𝑈 ∖ {𝑁}) = ({𝑛𝑉 ∣ ∃𝑒𝐸 ((𝑛𝑁𝑁𝑒𝑛𝑒) ∨ (𝑛 = 𝑁𝑒 = {𝑛}))} ∖ {𝑁}))
4740, 43, 463eqtr4d 2810 1 (𝑁𝑉 → (𝐺 NeighbVtx 𝑁) = (𝑈 ∖ {𝑁}))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  wo 861  w3a 1103   = wceq 1570  wcel 2146  wne 2960  wrex 3091  {crab 3418  cdif 3903  {csn 4591  cfv 6540  (class class class)co 7419  Vtxcvtx 29403  Edgcedg 29454   NeighbVtx cnbgr 29742
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-sep 5259  ax-nul 5271  ax-pr 5406  ax-un 7742
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 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3082  df-rex 3092  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-id 5558  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-iota 6496  df-fun 6542  df-fv 6548  df-ov 7422  df-oprab 7423  df-mpo 7424  df-1st 7992  df-2nd 7993  df-nbgr 29743
This theorem is used by:  dfnbgrss2  48684
  Copyright terms: Public domain W3C validator