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

Theorem isfrgr 41430
Description: The property of being a friendship graph. (Contributed by Alexander van der Vekens, 4-Oct-2017.) (Revised by AV, 29-Mar-2021.)
Hypotheses
Ref Expression
isfrgr.v 𝑉 = (Vtx‘𝐺)
isfrgr.e 𝐸 = (Edg‘𝐺)
Assertion
Ref Expression
isfrgr (𝐺𝑈 → (𝐺 ∈ FriendGraph ↔ (𝐺 ∈ USGraph ∧ ∀𝑘𝑉𝑙 ∈ (𝑉 ∖ {𝑘})∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸)))
Distinct variable groups:   𝑘,𝑙,𝑥,𝐺   𝑘,𝑉,𝑙,𝑥
Allowed substitution hints:   𝑈(𝑥,𝑘,𝑙)   𝐸(𝑥,𝑘,𝑙)

Proof of Theorem isfrgr
Dummy variables 𝑒 𝑔 𝑣 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-frgr 41429 . . 3 FriendGraph = {𝑔 ∣ (𝑔 ∈ USGraph ∧ [(Vtx‘𝑔) / 𝑣][(Edg‘𝑔) / 𝑒]𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒)}
21eleq2i 2680 . 2 (𝐺 ∈ FriendGraph ↔ 𝐺 ∈ {𝑔 ∣ (𝑔 ∈ USGraph ∧ [(Vtx‘𝑔) / 𝑣][(Edg‘𝑔) / 𝑒]𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒)})
3 eleq1 2676 . . . 4 ( = 𝐺 → ( ∈ USGraph ↔ 𝐺 ∈ USGraph ))
4 fveq2 6103 . . . . . 6 ( = 𝐺 → (Vtx‘) = (Vtx‘𝐺))
5 isfrgr.v . . . . . 6 𝑉 = (Vtx‘𝐺)
64, 5syl6eqr 2662 . . . . 5 ( = 𝐺 → (Vtx‘) = 𝑉)
76difeq1d 3689 . . . . . 6 ( = 𝐺 → ((Vtx‘) ∖ {𝑘}) = (𝑉 ∖ {𝑘}))
8 biidd 251 . . . . . . . . 9 ((Vtx‘) = 𝑉 → ({{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
98reueqd 3125 . . . . . . . 8 ((Vtx‘) = 𝑉 → (∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ ∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
106, 9syl 17 . . . . . . 7 ( = 𝐺 → (∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ ∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
11 fveq2 6103 . . . . . . . . . 10 ( = 𝐺 → (Edg‘) = (Edg‘𝐺))
12 isfrgr.e . . . . . . . . . 10 𝐸 = (Edg‘𝐺)
1311, 12syl6eqr 2662 . . . . . . . . 9 ( = 𝐺 → (Edg‘) = 𝐸)
1413sseq2d 3596 . . . . . . . 8 ( = 𝐺 → ({{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸))
1514reubidv 3103 . . . . . . 7 ( = 𝐺 → (∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ ∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸))
1610, 15bitrd 267 . . . . . 6 ( = 𝐺 → (∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ ∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸))
177, 16raleqbidv 3129 . . . . 5 ( = 𝐺 → (∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ ∀𝑙 ∈ (𝑉 ∖ {𝑘})∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸))
186, 17raleqbidv 3129 . . . 4 ( = 𝐺 → (∀𝑘 ∈ (Vtx‘)∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘) ↔ ∀𝑘𝑉𝑙 ∈ (𝑉 ∖ {𝑘})∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸))
193, 18anbi12d 743 . . 3 ( = 𝐺 → (( ∈ USGraph ∧ ∀𝑘 ∈ (Vtx‘)∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)) ↔ (𝐺 ∈ USGraph ∧ ∀𝑘𝑉𝑙 ∈ (𝑉 ∖ {𝑘})∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸)))
20 eleq1 2676 . . . . 5 (𝑔 = → (𝑔 ∈ USGraph ↔ ∈ USGraph ))
21 fvex 6113 . . . . . . 7 (Vtx‘𝑔) ∈ V
2221a1i 11 . . . . . 6 (𝑔 = → (Vtx‘𝑔) ∈ V)
23 fveq2 6103 . . . . . 6 (𝑔 = → (Vtx‘𝑔) = (Vtx‘))
24 fvex 6113 . . . . . . . 8 (Edg‘𝑔) ∈ V
2524a1i 11 . . . . . . 7 ((𝑔 = 𝑣 = (Vtx‘)) → (Edg‘𝑔) ∈ V)
26 fveq2 6103 . . . . . . . 8 (𝑔 = → (Edg‘𝑔) = (Edg‘))
2726adantr 480 . . . . . . 7 ((𝑔 = 𝑣 = (Vtx‘)) → (Edg‘𝑔) = (Edg‘))
28 simpr 476 . . . . . . . . 9 ((𝑔 = 𝑣 = (Vtx‘)) → 𝑣 = (Vtx‘))
2928adantr 480 . . . . . . . 8 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → 𝑣 = (Vtx‘))
30 difeq1 3683 . . . . . . . . . 10 (𝑣 = (Vtx‘) → (𝑣 ∖ {𝑘}) = ((Vtx‘) ∖ {𝑘}))
3130ad2antlr 759 . . . . . . . . 9 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → (𝑣 ∖ {𝑘}) = ((Vtx‘) ∖ {𝑘}))
32 biidd 251 . . . . . . . . . . . 12 (𝑣 = (Vtx‘) → ({{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒))
3332reueqd 3125 . . . . . . . . . . 11 (𝑣 = (Vtx‘) → (∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒))
3433ad2antlr 759 . . . . . . . . . 10 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → (∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒))
35 simpr 476 . . . . . . . . . . . 12 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → 𝑒 = (Edg‘))
3635sseq2d 3596 . . . . . . . . . . 11 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → ({{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
3736reubidv 3103 . . . . . . . . . 10 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → (∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
3834, 37bitrd 267 . . . . . . . . 9 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → (∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
3931, 38raleqbidv 3129 . . . . . . . 8 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → (∀𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
4029, 39raleqbidv 3129 . . . . . . 7 (((𝑔 = 𝑣 = (Vtx‘)) ∧ 𝑒 = (Edg‘)) → (∀𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∀𝑘 ∈ (Vtx‘)∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
4125, 27, 40sbcied2 3440 . . . . . 6 ((𝑔 = 𝑣 = (Vtx‘)) → ([(Edg‘𝑔) / 𝑒]𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∀𝑘 ∈ (Vtx‘)∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
4222, 23, 41sbcied2 3440 . . . . 5 (𝑔 = → ([(Vtx‘𝑔) / 𝑣][(Edg‘𝑔) / 𝑒]𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒 ↔ ∀𝑘 ∈ (Vtx‘)∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘)))
4320, 42anbi12d 743 . . . 4 (𝑔 = → ((𝑔 ∈ USGraph ∧ [(Vtx‘𝑔) / 𝑣][(Edg‘𝑔) / 𝑒]𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒) ↔ ( ∈ USGraph ∧ ∀𝑘 ∈ (Vtx‘)∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘))))
4443cbvabv 2734 . . 3 {𝑔 ∣ (𝑔 ∈ USGraph ∧ [(Vtx‘𝑔) / 𝑣][(Edg‘𝑔) / 𝑒]𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒)} = { ∣ ( ∈ USGraph ∧ ∀𝑘 ∈ (Vtx‘)∀𝑙 ∈ ((Vtx‘) ∖ {𝑘})∃!𝑥 ∈ (Vtx‘){{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ (Edg‘))}
4519, 44elab2g 3322 . 2 (𝐺𝑈 → (𝐺 ∈ {𝑔 ∣ (𝑔 ∈ USGraph ∧ [(Vtx‘𝑔) / 𝑣][(Edg‘𝑔) / 𝑒]𝑘𝑣𝑙 ∈ (𝑣 ∖ {𝑘})∃!𝑥𝑣 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝑒)} ↔ (𝐺 ∈ USGraph ∧ ∀𝑘𝑉𝑙 ∈ (𝑉 ∖ {𝑘})∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸)))
462, 45syl5bb 271 1 (𝐺𝑈 → (𝐺 ∈ FriendGraph ↔ (𝐺 ∈ USGraph ∧ ∀𝑘𝑉𝑙 ∈ (𝑉 ∖ {𝑘})∃!𝑥𝑉 {{𝑥, 𝑘}, {𝑥, 𝑙}} ⊆ 𝐸)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383   = wceq 1475  wcel 1977  {cab 2596  wral 2896  ∃!wreu 2898  Vcvv 3173  [wsbc 3402  cdif 3537  wss 3540  {csn 4125  {cpr 4127  cfv 5804  Vtxcvtx 25673  Edgcedga 25792   USGraph cusgr 40379   FriendGraph cfrgr 41428
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-nul 4717
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ral 2901  df-rex 2902  df-reu 2903  df-rab 2905  df-v 3175  df-sbc 3403  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-uni 4373  df-br 4584  df-iota 5768  df-fv 5812  df-frgr 41429
This theorem is referenced by:  frgrusgrfrcond  41431
  Copyright terms: Public domain W3C validator