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

Theorem fusgreghash2wspv 30799
Description: According to statement 7 in [Huneke] p. 2: "For each vertex v, there are exactly ( k 2 ) paths with length two having v in the middle, ..." in a finite k-regular graph. For directed simple paths of length 2 represented by length 3 strings, we have again k*(k-1) such paths, see also comment of frgrhash2wsp 30796. (Contributed by Alexander van der Vekens, 10-Mar-2018.) (Revised by AV, 17-May-2021.) (Proof shortened by AV, 12-Feb-2022.)
Hypotheses
Ref Expression
frgrhash2wsp.v 𝑉 = (Vtx‘𝐺)
fusgreg2wsp.m 𝑀 = (𝑎𝑉 ↦ {𝑤 ∈ (2 WSPathsN 𝐺) ∣ (𝑤‘1) = 𝑎})
Assertion
Ref Expression
fusgreghash2wspv (𝐺 ∈ FinUSGraph → ∀𝑣𝑉 (((VtxDeg‘𝐺)‘𝑣) = 𝐾 → (♯‘(𝑀𝑣)) = (𝐾 · (𝐾 − 1))))
Distinct variable groups:   𝐺,𝑎   𝑉,𝑎   𝑤,𝐺,𝑎,𝑣
Allowed substitution hints:   𝐾(𝑤, 𝑣, 𝑎)   𝑀(𝑤, 𝑣, 𝑎)   𝑉(𝑤, 𝑣)

Proof of Theorem fusgreghash2wspv
Dummy variables 𝑐 𝑑 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 frgrhash2wsp.v . . . . . . 7 𝑉 = (Vtx‘𝐺)
2 fusgreg2wsp.m . . . . . . 7 𝑀 = (𝑎𝑉 ↦ {𝑤 ∈ (2 WSPathsN 𝐺) ∣ (𝑤‘1) = 𝑎})
31, 2fusgr2wsp2nb 30798 . . . . . 6 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → (𝑀𝑣) = 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
43fveq2d 6886 . . . . 5 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → (♯‘(𝑀𝑣)) = (♯‘ 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩}))
54adantr 486 . . . 4 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) → (♯‘(𝑀𝑣)) = (♯‘ 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩}))
61eleq2i 2854 . . . . . . 7 (𝑣𝑉𝑣 ∈ (Vtx‘𝐺))
7 nbfiusgrfi 29819 . . . . . . 7 ((𝐺 ∈ FinUSGraph ∧ 𝑣 ∈ (Vtx‘𝐺)) → (𝐺 NeighbVtx 𝑣) ∈ Fin)
86, 7sylan2b 606 . . . . . 6 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → (𝐺 NeighbVtx 𝑣) ∈ Fin)
98adantr 486 . . . . 5 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) → (𝐺 NeighbVtx 𝑣) ∈ Fin)
10 eqid 2762 . . . . 5 ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}) = ((𝐺 NeighbVtx 𝑣) ∖ {𝑐})
11 snfi 9053 . . . . . 6 {⟨“𝑐𝑣𝑑”⟩} ∈ Fin
1211a1i 11 . . . . 5 ((((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) ∧ 𝑐 ∈ (𝐺 NeighbVtx 𝑣) ∧ 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐})) → {⟨“𝑐𝑣𝑑”⟩} ∈ Fin)
131nbgrssvtx 29786 . . . . . . . . . . 11 (𝐺 NeighbVtx 𝑣) ⊆ 𝑉
1413a1i 11 . . . . . . . . . 10 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ 𝑐 ∈ (𝐺 NeighbVtx 𝑣)) → (𝐺 NeighbVtx 𝑣) ⊆ 𝑉)
1514ssdifd 4095 . . . . . . . . 9 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ 𝑐 ∈ (𝐺 NeighbVtx 𝑣)) → ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}) ⊆ (𝑉 ∖ {𝑐}))
16 iunss1 4969 . . . . . . . . 9 (((𝐺 NeighbVtx 𝑣) ∖ {𝑐}) ⊆ (𝑉 ∖ {𝑐}) → 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩} ⊆ 𝑑 ∈ (𝑉 ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
1715, 16syl 18 . . . . . . . 8 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ 𝑐 ∈ (𝐺 NeighbVtx 𝑣)) → 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩} ⊆ 𝑑 ∈ (𝑉 ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
1817ralrimiva 3156 . . . . . . 7 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → ∀𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩} ⊆ 𝑑 ∈ (𝑉 ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
19 simpr 490 . . . . . . . 8 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → 𝑣𝑉)
20 s3iunsndisj 15041 . . . . . . . 8 (𝑣𝑉Disj 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ (𝑉 ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
2119, 20syl 18 . . . . . . 7 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → Disj 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ (𝑉 ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
22 disjss2 5077 . . . . . . 7 (∀𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩} ⊆ 𝑑 ∈ (𝑉 ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩} → (Disj 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ (𝑉 ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩} → Disj 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩}))
2318, 21, 22sylc 66 . . . . . 6 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → Disj 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
2423adantr 486 . . . . 5 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) → Disj 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
2519adantr 486 . . . . . . 7 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) → 𝑣𝑉)
2625anim1ci 628 . . . . . 6 ((((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) ∧ 𝑐 ∈ (𝐺 NeighbVtx 𝑣)) → (𝑐 ∈ (𝐺 NeighbVtx 𝑣) ∧ 𝑣𝑉))
27 s3sndisj 15040 . . . . . 6 ((𝑐 ∈ (𝐺 NeighbVtx 𝑣) ∧ 𝑣𝑉) → Disj 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
2826, 27syl 18 . . . . 5 ((((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) ∧ 𝑐 ∈ (𝐺 NeighbVtx 𝑣)) → Disj 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩})
29 s3cli 14952 . . . . . 6 ⟨“𝑐𝑣𝑑”⟩ ∈ Word V
30 hashsng 14433 . . . . . 6 (⟨“𝑐𝑣𝑑”⟩ ∈ Word V → (♯‘{⟨“𝑐𝑣𝑑”⟩}) = 1)
3129, 30mp1i 14 . . . . 5 ((((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) ∧ 𝑐 ∈ (𝐺 NeighbVtx 𝑣) ∧ 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐})) → (♯‘{⟨“𝑐𝑣𝑑”⟩}) = 1)
329, 10, 12, 24, 28, 31hash2iun1dif1 15911 . . . 4 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) → (♯‘ 𝑐 ∈ (𝐺 NeighbVtx 𝑣) 𝑑 ∈ ((𝐺 NeighbVtx 𝑣) ∖ {𝑐}){⟨“𝑐𝑣𝑑”⟩}) = ((♯‘(𝐺 NeighbVtx 𝑣)) · ((♯‘(𝐺 NeighbVtx 𝑣)) − 1)))
33 fusgrusgr 29766 . . . . . . 7 (𝐺 ∈ FinUSGraph → 𝐺 ∈ USGraph)
341hashnbusgrvd 29972 . . . . . . 7 ((𝐺 ∈ USGraph ∧ 𝑣𝑉) → (♯‘(𝐺 NeighbVtx 𝑣)) = ((VtxDeg‘𝐺)‘𝑣))
3533, 34sylan 592 . . . . . 6 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → (♯‘(𝐺 NeighbVtx 𝑣)) = ((VtxDeg‘𝐺)‘𝑣))
36 id 23 . . . . . . 7 ((♯‘(𝐺 NeighbVtx 𝑣)) = ((VtxDeg‘𝐺)‘𝑣) → (♯‘(𝐺 NeighbVtx 𝑣)) = ((VtxDeg‘𝐺)‘𝑣))
37 oveq1 7423 . . . . . . 7 ((♯‘(𝐺 NeighbVtx 𝑣)) = ((VtxDeg‘𝐺)‘𝑣) → ((♯‘(𝐺 NeighbVtx 𝑣)) − 1) = (((VtxDeg‘𝐺)‘𝑣) − 1))
3836, 37oveq12d 7434 . . . . . 6 ((♯‘(𝐺 NeighbVtx 𝑣)) = ((VtxDeg‘𝐺)‘𝑣) → ((♯‘(𝐺 NeighbVtx 𝑣)) · ((♯‘(𝐺 NeighbVtx 𝑣)) − 1)) = (((VtxDeg‘𝐺)‘𝑣) · (((VtxDeg‘𝐺)‘𝑣) − 1)))
3935, 38syl 18 . . . . 5 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → ((♯‘(𝐺 NeighbVtx 𝑣)) · ((♯‘(𝐺 NeighbVtx 𝑣)) − 1)) = (((VtxDeg‘𝐺)‘𝑣) · (((VtxDeg‘𝐺)‘𝑣) − 1)))
40 id 23 . . . . . 6 (((VtxDeg‘𝐺)‘𝑣) = 𝐾 → ((VtxDeg‘𝐺)‘𝑣) = 𝐾)
41 oveq1 7423 . . . . . 6 (((VtxDeg‘𝐺)‘𝑣) = 𝐾 → (((VtxDeg‘𝐺)‘𝑣) − 1) = (𝐾 − 1))
4240, 41oveq12d 7434 . . . . 5 (((VtxDeg‘𝐺)‘𝑣) = 𝐾 → (((VtxDeg‘𝐺)‘𝑣) · (((VtxDeg‘𝐺)‘𝑣) − 1)) = (𝐾 · (𝐾 − 1)))
4339, 42sylan9eq 2817 . . . 4 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) → ((♯‘(𝐺 NeighbVtx 𝑣)) · ((♯‘(𝐺 NeighbVtx 𝑣)) − 1)) = (𝐾 · (𝐾 − 1)))
445, 32, 433eqtrd 2801 . . 3 (((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) ∧ ((VtxDeg‘𝐺)‘𝑣) = 𝐾) → (♯‘(𝑀𝑣)) = (𝐾 · (𝐾 − 1)))
4544ex 418 . 2 ((𝐺 ∈ FinUSGraph ∧ 𝑣𝑉) → (((VtxDeg‘𝐺)‘𝑣) = 𝐾 → (♯‘(𝑀𝑣)) = (𝐾 · (𝐾 − 1))))
4645ralrimiva 3156 1 (𝐺 ∈ FinUSGraph → ∀𝑣𝑉 (((VtxDeg‘𝐺)‘𝑣) = 𝐾 → (♯‘(𝑀𝑣)) = (𝐾 · (𝐾 − 1))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2145  wral 3078  {crab 3414  Vcvv 3453  cdif 3899  wss 3902  {csn 4587   ciun 4954  Disj wdisj 5074  cmpt 5190  cfv 6537  (class class class)co 7416  Fincfn 8955  1c1 11126   · cmul 11130  cmin 11466  2c2 12320  chash 14394  Word cword 14578  ⟨“cs3 14913  Vtxcvtx 29437  USGraphcusgr 29593  FinUSGraphcfusgr 29760   NeighbVtx cnbgr 29776  VtxDegcvtxdg 29909   WSPathsN cwwspthsn 30280
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-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739  ax-inf2 9623  ax-cnex 11181  ax-resscn 11182  ax-1cn 11183  ax-icn 11184  ax-addcl 11185  ax-addrcl 11186  ax-mulcl 11187  ax-mulrcl 11188  ax-mulcom 11189  ax-addass 11190  ax-mulass 11191  ax-distr 11192  ax-i2m1 11193  ax-1ne0 11194  ax-1rid 11195  ax-rnegex 11196  ax-rrecex 11197  ax-cnre 11198  ax-pre-lttri 11199  ax-pre-lttrn 11200  ax-pre-ltadd 11201  ax-pre-mulgt0 11202  ax-pre-sup 11203
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-ifp 1079  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-tp 4592  df-op 4594  df-uni 4871  df-int 4911  df-iun 4956  df-disj 5075  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-se 5613  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-isom 6546  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-map 8831  df-pm 8832  df-en 8956  df-dom 8957  df-sdom 8958  df-fin 8959  df-sup 9415  df-oi 9485  df-dju 9909  df-card 9947  df-pnf 11270  df-mnf 11271  df-xr 11272  df-ltxr 11273  df-le 11274  df-sub 11468  df-neg 11469  df-div 11897  df-nn 12259  df-2 12328  df-3 12329  df-n0 12530  df-xnn0 12603  df-z 12617  df-uz 12889  df-rp 13043  df-xadd 13164  df-fz 13562  df-fzo 13710  df-seq 14066  df-exp 14126  df-hash 14395  df-word 14579  df-concat 14636  df-s1 14663  df-s2 14919  df-s3 14920  df-cj 15186  df-re 15187  df-im 15188  df-sqrt 15322  df-abs 15323  df-clim 15575  df-sum 15774  df-vtx 29439  df-iedg 29440  df-edg 29489  df-uhgr 29499  df-ushgr 29500  df-upgr 29523  df-umgr 29524  df-uspgr 29594  df-usgr 29595  df-fusgr 29761  df-nbgr 29777  df-vtxdg 29910  df-wlks 30043  df-wlkson 30044  df-trls 30138  df-trlson 30139  df-pths 30162  df-spths 30163  df-pthson 30164  df-spthson 30165  df-wwlks 30282  df-wwlksn 30283  df-wwlksnon 30284  df-wspthsn 30285  df-wspthsnon 30286
This theorem is used by:  fusgreghash2wsp  30802
  Copyright terms: Public domain W3C validator