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

Theorem friendship 28172
Description: The friendship theorem: In every finite (nonempty) friendship graph there is a vertex which is adjacent to all other vertices. This is Metamath 100 proof #83. (Contributed by Alexander van der Vekens, 9-Oct-2018.)
Hypothesis
Ref Expression
friendship.v 𝑉 = (Vtx‘𝐺)
Assertion
Ref Expression
friendship ((𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺))
Distinct variable groups:   𝑣,𝐺,𝑤   𝑣,𝑉,𝑤

Proof of Theorem friendship
Dummy variables 𝑎 𝑏 𝑐 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 simpr1 1190 . . . 4 ((3 < (♯‘𝑉) ∧ (𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin)) → 𝐺 ∈ FriendGraph )
2 simpr3 1192 . . . 4 ((3 < (♯‘𝑉) ∧ (𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin)) → 𝑉 ∈ Fin)
3 simpl 485 . . . 4 ((3 < (♯‘𝑉) ∧ (𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin)) → 3 < (♯‘𝑉))
4 friendship.v . . . . 5 𝑉 = (Vtx‘𝐺)
54friendshipgt3 28171 . . . 4 ((𝐺 ∈ FriendGraph ∧ 𝑉 ∈ Fin ∧ 3 < (♯‘𝑉)) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺))
61, 2, 3, 5syl3anc 1367 . . 3 ((3 < (♯‘𝑉) ∧ (𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin)) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺))
76ex 415 . 2 (3 < (♯‘𝑉) → ((𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
8 hashcl 13711 . . . . . . . . 9 (𝑉 ∈ Fin → (♯‘𝑉) ∈ ℕ0)
9 simplr 767 . . . . . . . . . . 11 ((((♯‘𝑉) ∈ ℕ0𝑉 ∈ Fin) ∧ (¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅)) → 𝑉 ∈ Fin)
10 hashge1 13744 . . . . . . . . . . . 12 ((𝑉 ∈ Fin ∧ 𝑉 ≠ ∅) → 1 ≤ (♯‘𝑉))
1110ad2ant2l 744 . . . . . . . . . . 11 ((((♯‘𝑉) ∈ ℕ0𝑉 ∈ Fin) ∧ (¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅)) → 1 ≤ (♯‘𝑉))
12 nn0re 11900 . . . . . . . . . . . . . . . . 17 ((♯‘𝑉) ∈ ℕ0 → (♯‘𝑉) ∈ ℝ)
13 3re 11711 . . . . . . . . . . . . . . . . 17 3 ∈ ℝ
14 lenlt 10713 . . . . . . . . . . . . . . . . 17 (((♯‘𝑉) ∈ ℝ ∧ 3 ∈ ℝ) → ((♯‘𝑉) ≤ 3 ↔ ¬ 3 < (♯‘𝑉)))
1512, 13, 14sylancl 588 . . . . . . . . . . . . . . . 16 ((♯‘𝑉) ∈ ℕ0 → ((♯‘𝑉) ≤ 3 ↔ ¬ 3 < (♯‘𝑉)))
1615biimprd 250 . . . . . . . . . . . . . . 15 ((♯‘𝑉) ∈ ℕ0 → (¬ 3 < (♯‘𝑉) → (♯‘𝑉) ≤ 3))
1716adantr 483 . . . . . . . . . . . . . 14 (((♯‘𝑉) ∈ ℕ0𝑉 ∈ Fin) → (¬ 3 < (♯‘𝑉) → (♯‘𝑉) ≤ 3))
1817com12 32 . . . . . . . . . . . . 13 (¬ 3 < (♯‘𝑉) → (((♯‘𝑉) ∈ ℕ0𝑉 ∈ Fin) → (♯‘𝑉) ≤ 3))
1918adantr 483 . . . . . . . . . . . 12 ((¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅) → (((♯‘𝑉) ∈ ℕ0𝑉 ∈ Fin) → (♯‘𝑉) ≤ 3))
2019impcom 410 . . . . . . . . . . 11 ((((♯‘𝑉) ∈ ℕ0𝑉 ∈ Fin) ∧ (¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅)) → (♯‘𝑉) ≤ 3)
219, 11, 203jca 1124 . . . . . . . . . 10 ((((♯‘𝑉) ∈ ℕ0𝑉 ∈ Fin) ∧ (¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅)) → (𝑉 ∈ Fin ∧ 1 ≤ (♯‘𝑉) ∧ (♯‘𝑉) ≤ 3))
2221exp31 422 . . . . . . . . 9 ((♯‘𝑉) ∈ ℕ0 → (𝑉 ∈ Fin → ((¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅) → (𝑉 ∈ Fin ∧ 1 ≤ (♯‘𝑉) ∧ (♯‘𝑉) ≤ 3))))
238, 22mpcom 38 . . . . . . . 8 (𝑉 ∈ Fin → ((¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅) → (𝑉 ∈ Fin ∧ 1 ≤ (♯‘𝑉) ∧ (♯‘𝑉) ≤ 3)))
2423impcom 410 . . . . . . 7 (((¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅) ∧ 𝑉 ∈ Fin) → (𝑉 ∈ Fin ∧ 1 ≤ (♯‘𝑉) ∧ (♯‘𝑉) ≤ 3))
25 hash1to3 13843 . . . . . . 7 ((𝑉 ∈ Fin ∧ 1 ≤ (♯‘𝑉) ∧ (♯‘𝑉) ≤ 3) → ∃𝑎𝑏𝑐(𝑉 = {𝑎} ∨ 𝑉 = {𝑎, 𝑏} ∨ 𝑉 = {𝑎, 𝑏, 𝑐}))
26 vex 3497 . . . . . . . . . 10 𝑎 ∈ V
27 eqid 2821 . . . . . . . . . . 11 (Edg‘𝐺) = (Edg‘𝐺)
284, 271to3vfriendship 28054 . . . . . . . . . 10 ((𝑎 ∈ V ∧ (𝑉 = {𝑎} ∨ 𝑉 = {𝑎, 𝑏} ∨ 𝑉 = {𝑎, 𝑏, 𝑐})) → (𝐺 ∈ FriendGraph → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
2926, 28mpan 688 . . . . . . . . 9 ((𝑉 = {𝑎} ∨ 𝑉 = {𝑎, 𝑏} ∨ 𝑉 = {𝑎, 𝑏, 𝑐}) → (𝐺 ∈ FriendGraph → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
3029exlimiv 1927 . . . . . . . 8 (∃𝑐(𝑉 = {𝑎} ∨ 𝑉 = {𝑎, 𝑏} ∨ 𝑉 = {𝑎, 𝑏, 𝑐}) → (𝐺 ∈ FriendGraph → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
3130exlimivv 1929 . . . . . . 7 (∃𝑎𝑏𝑐(𝑉 = {𝑎} ∨ 𝑉 = {𝑎, 𝑏} ∨ 𝑉 = {𝑎, 𝑏, 𝑐}) → (𝐺 ∈ FriendGraph → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
3224, 25, 313syl 18 . . . . . 6 (((¬ 3 < (♯‘𝑉) ∧ 𝑉 ≠ ∅) ∧ 𝑉 ∈ Fin) → (𝐺 ∈ FriendGraph → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
3332exp31 422 . . . . 5 (¬ 3 < (♯‘𝑉) → (𝑉 ≠ ∅ → (𝑉 ∈ Fin → (𝐺 ∈ FriendGraph → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))))
3433com14 96 . . . 4 (𝐺 ∈ FriendGraph → (𝑉 ≠ ∅ → (𝑉 ∈ Fin → (¬ 3 < (♯‘𝑉) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))))
35343imp 1107 . . 3 ((𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin) → (¬ 3 < (♯‘𝑉) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
3635com12 32 . 2 (¬ 3 < (♯‘𝑉) → ((𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺)))
377, 36pm2.61i 184 1 ((𝐺 ∈ FriendGraph ∧ 𝑉 ≠ ∅ ∧ 𝑉 ∈ Fin) → ∃𝑣𝑉𝑤 ∈ (𝑉 ∖ {𝑣}){𝑣, 𝑤} ∈ (Edg‘𝐺))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 208  wa 398  w3o 1082  w3a 1083   = wceq 1533  wex 1776  wcel 2110  wne 3016  wral 3138  wrex 3139  Vcvv 3494  cdif 3932  c0 4290  {csn 4560  {cpr 4562  {ctp 4564   class class class wbr 5058  cfv 6349  Fincfn 8503  cr 10530  1c1 10532   < clt 10669  cle 10670  3c3 11687  0cn0 11891  chash 13684  Vtxcvtx 26775  Edgcedg 26826   FriendGraph cfrgr 28031
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1907  ax-6 1966  ax-7 2011  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2157  ax-12 2173  ax-ext 2793  ax-rep 5182  ax-sep 5195  ax-nul 5202  ax-pow 5258  ax-pr 5321  ax-un 7455  ax-inf2 9098  ax-ac2 9879  ax-cnex 10587  ax-resscn 10588  ax-1cn 10589  ax-icn 10590  ax-addcl 10591  ax-addrcl 10592  ax-mulcl 10593  ax-mulrcl 10594  ax-mulcom 10595  ax-addass 10596  ax-mulass 10597  ax-distr 10598  ax-i2m1 10599  ax-1ne0 10600  ax-1rid 10601  ax-rnegex 10602  ax-rrecex 10603  ax-cnre 10604  ax-pre-lttri 10605  ax-pre-lttrn 10606  ax-pre-ltadd 10607  ax-pre-mulgt0 10608  ax-pre-sup 10609
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-ifp 1058  df-3or 1084  df-3an 1085  df-tru 1536  df-fal 1546  df-ex 1777  df-nf 1781  df-sb 2066  df-mo 2618  df-eu 2650  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-nel 3124  df-ral 3143  df-rex 3144  df-reu 3145  df-rmo 3146  df-rab 3147  df-v 3496  df-sbc 3772  df-csb 3883  df-dif 3938  df-un 3940  df-in 3942  df-ss 3951  df-pss 3953  df-nul 4291  df-if 4467  df-pw 4540  df-sn 4561  df-pr 4563  df-tp 4565  df-op 4567  df-uni 4832  df-int 4869  df-iun 4913  df-disj 5024  df-br 5059  df-opab 5121  df-mpt 5139  df-tr 5165  df-id 5454  df-eprel 5459  df-po 5468  df-so 5469  df-fr 5508  df-se 5509  df-we 5510  df-xp 5555  df-rel 5556  df-cnv 5557  df-co 5558  df-dm 5559  df-rn 5560  df-res 5561  df-ima 5562  df-pred 6142  df-ord 6188  df-on 6189  df-lim 6190  df-suc 6191  df-iota 6308  df-fun 6351  df-fn 6352  df-f 6353  df-f1 6354  df-fo 6355  df-f1o 6356  df-fv 6357  df-isom 6358  df-riota 7108  df-ov 7153  df-oprab 7154  df-mpo 7155  df-om 7575  df-1st 7683  df-2nd 7684  df-wrecs 7941  df-recs 8002  df-rdg 8040  df-1o 8096  df-2o 8097  df-3o 8098  df-oadd 8100  df-er 8283  df-ec 8285  df-qs 8289  df-map 8402  df-pm 8403  df-en 8504  df-dom 8505  df-sdom 8506  df-fin 8507  df-sup 8900  df-inf 8901  df-oi 8968  df-dju 9324  df-card 9362  df-ac 9536  df-pnf 10671  df-mnf 10672  df-xr 10673  df-ltxr 10674  df-le 10675  df-sub 10866  df-neg 10867  df-div 11292  df-nn 11633  df-2 11694  df-3 11695  df-n0 11892  df-xnn0 11962  df-z 11976  df-uz 12238  df-rp 12384  df-xadd 12502  df-ico 12738  df-fz 12887  df-fzo 13028  df-fl 13156  df-mod 13232  df-seq 13364  df-exp 13424  df-hash 13685  df-word 13856  df-lsw 13909  df-concat 13917  df-s1 13944  df-substr 13997  df-pfx 14027  df-reps 14125  df-csh 14145  df-s2 14204  df-s3 14205  df-cj 14452  df-re 14453  df-im 14454  df-sqrt 14588  df-abs 14589  df-clim 14839  df-sum 15037  df-dvds 15602  df-gcd 15838  df-prm 16010  df-phi 16097  df-vtx 26777  df-iedg 26778  df-edg 26827  df-uhgr 26837  df-ushgr 26838  df-upgr 26861  df-umgr 26862  df-uspgr 26929  df-usgr 26930  df-fusgr 27093  df-nbgr 27109  df-vtxdg 27242  df-rgr 27333  df-rusgr 27334  df-wlks 27375  df-wlkson 27376  df-trls 27468  df-trlson 27469  df-pths 27491  df-spths 27492  df-pthson 27493  df-spthson 27494  df-wwlks 27602  df-wwlksn 27603  df-wwlksnon 27604  df-wspthsn 27605  df-wspthsnon 27606  df-clwwlk 27754  df-clwwlkn 27797  df-clwwlknon 27861  df-conngr 27960  df-frgr 28032
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator