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

Theorem wwlksnextbij 27178
Description: There is a bijection between the extensions of a walk (as word) by an edge and the set of vertices being connected to the trailing vertex of the walk. (Contributed by Alexander van der Vekens, 21-Aug-2018.) (Revised by AV, 18-Apr-2021.) (Revised by AV, 27-Oct-2022.)
Hypotheses
Ref Expression
wwlksnextbij.v 𝑉 = (Vtx‘𝐺)
wwlksnextbij.e 𝐸 = (Edg‘𝐺)
Assertion
Ref Expression
wwlksnextbij (𝑊 ∈ (𝑁 WWalksN 𝐺) → ∃𝑓 𝑓:{𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸})
Distinct variable groups:   𝑓,𝐸,𝑛,𝑤   𝑓,𝐺,𝑤   𝑓,𝑁,𝑤   𝑓,𝑉,𝑛,𝑤   𝑓,𝑊,𝑛,𝑤
Allowed substitution hints:   𝐺(𝑛)   𝑁(𝑛)

Proof of Theorem wwlksnextbij
Dummy variables 𝑝 𝑡 𝑥 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ovexd 6913 . . 3 (𝑊 ∈ (𝑁 WWalksN 𝐺) → ((𝑁 + 1) WWalksN 𝐺) ∈ V)
2 rabexg 5007 . . 3 (((𝑁 + 1) WWalksN 𝐺) ∈ V → {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ∈ V)
3 mptexg 6714 . . 3 ({𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ∈ V → (𝑥 ∈ {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)) ∈ V)
41, 2, 33syl 18 . 2 (𝑊 ∈ (𝑁 WWalksN 𝐺) → (𝑥 ∈ {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)) ∈ V)
5 wwlksnextbij.v . . . 4 𝑉 = (Vtx‘𝐺)
6 wwlksnextbij.e . . . 4 𝐸 = (Edg‘𝐺)
7 eqid 2800 . . . 4 {𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)} = {𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}
8 preq2 4459 . . . . . 6 (𝑛 = 𝑝 → {(lastS‘𝑊), 𝑛} = {(lastS‘𝑊), 𝑝})
98eleq1d 2864 . . . . 5 (𝑛 = 𝑝 → ({(lastS‘𝑊), 𝑛} ∈ 𝐸 ↔ {(lastS‘𝑊), 𝑝} ∈ 𝐸))
109cbvrabv 3384 . . . 4 {𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸} = {𝑝𝑉 ∣ {(lastS‘𝑊), 𝑝} ∈ 𝐸}
11 fveqeq2 6421 . . . . . . 7 (𝑡 = 𝑤 → ((♯‘𝑡) = (𝑁 + 2) ↔ (♯‘𝑤) = (𝑁 + 2)))
12 oveq1 6886 . . . . . . . 8 (𝑡 = 𝑤 → (𝑡 prefix (𝑁 + 1)) = (𝑤 prefix (𝑁 + 1)))
1312eqeq1d 2802 . . . . . . 7 (𝑡 = 𝑤 → ((𝑡 prefix (𝑁 + 1)) = 𝑊 ↔ (𝑤 prefix (𝑁 + 1)) = 𝑊))
14 fveq2 6412 . . . . . . . . 9 (𝑡 = 𝑤 → (lastS‘𝑡) = (lastS‘𝑤))
1514preq2d 4465 . . . . . . . 8 (𝑡 = 𝑤 → {(lastS‘𝑊), (lastS‘𝑡)} = {(lastS‘𝑊), (lastS‘𝑤)})
1615eleq1d 2864 . . . . . . 7 (𝑡 = 𝑤 → ({(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸 ↔ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸))
1711, 13, 163anbi123d 1561 . . . . . 6 (𝑡 = 𝑤 → (((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸) ↔ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)))
1817cbvrabv 3384 . . . . 5 {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} = {𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}
1918mpteq1i 4933 . . . 4 (𝑥 ∈ {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)) = (𝑥 ∈ {𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)} ↦ (lastS‘𝑥))
205, 6, 7, 10, 19wwlksnextbij0 27172 . . 3 (𝑊 ∈ (𝑁 WWalksN 𝐺) → (𝑥 ∈ {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)):{𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸})
21 eqid 2800 . . . . . . 7 {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} = {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)}
225, 6, 21wwlksnextwrd 27168 . . . . . 6 (𝑊 ∈ (𝑁 WWalksN 𝐺) → {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} = {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)})
2322eqcomd 2806 . . . . 5 (𝑊 ∈ (𝑁 WWalksN 𝐺) → {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} = {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)})
2423mpteq1d 4932 . . . 4 (𝑊 ∈ (𝑁 WWalksN 𝐺) → (𝑥 ∈ {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)) = (𝑥 ∈ {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)))
255, 6, 7wwlksnextwrd 27168 . . . . 5 (𝑊 ∈ (𝑁 WWalksN 𝐺) → {𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)} = {𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)})
2625eqcomd 2806 . . . 4 (𝑊 ∈ (𝑁 WWalksN 𝐺) → {𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)} = {𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)})
27 eqidd 2801 . . . 4 (𝑊 ∈ (𝑁 WWalksN 𝐺) → {𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸} = {𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸})
2824, 26, 27f1oeq123d 6352 . . 3 (𝑊 ∈ (𝑁 WWalksN 𝐺) → ((𝑥 ∈ {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)):{𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸} ↔ (𝑥 ∈ {𝑡 ∈ Word 𝑉 ∣ ((♯‘𝑡) = (𝑁 + 2) ∧ (𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)):{𝑤 ∈ Word 𝑉 ∣ ((♯‘𝑤) = (𝑁 + 2) ∧ (𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸}))
2920, 28mpbird 249 . 2 (𝑊 ∈ (𝑁 WWalksN 𝐺) → (𝑥 ∈ {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)):{𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸})
30 f1oeq1 6346 . 2 (𝑓 = (𝑥 ∈ {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)) → (𝑓:{𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸} ↔ (𝑥 ∈ {𝑡 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑡 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑡)} ∈ 𝐸)} ↦ (lastS‘𝑥)):{𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸}))
314, 29, 30elabd 3545 1 (𝑊 ∈ (𝑁 WWalksN 𝐺) → ∃𝑓 𝑓:{𝑤 ∈ ((𝑁 + 1) WWalksN 𝐺) ∣ ((𝑤 prefix (𝑁 + 1)) = 𝑊 ∧ {(lastS‘𝑊), (lastS‘𝑤)} ∈ 𝐸)}–1-1-onto→{𝑛𝑉 ∣ {(lastS‘𝑊), 𝑛} ∈ 𝐸})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 385  w3a 1108   = wceq 1653  wex 1875  wcel 2157  {crab 3094  Vcvv 3386  {cpr 4371  cmpt 4923  1-1-ontowf1o 6101  cfv 6102  (class class class)co 6879  1c1 10226   + caddc 10228  2c2 11367  chash 13369  Word cword 13533  lastSclsw 13581   prefix cpfx 13712  Vtxcvtx 26230  Edgcedg 26281   WWalksN cwwlksn 27076
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1891  ax-4 1905  ax-5 2006  ax-6 2072  ax-7 2107  ax-8 2159  ax-9 2166  ax-10 2185  ax-11 2200  ax-12 2213  ax-13 2378  ax-ext 2778  ax-rep 4965  ax-sep 4976  ax-nul 4984  ax-pow 5036  ax-pr 5098  ax-un 7184  ax-cnex 10281  ax-resscn 10282  ax-1cn 10283  ax-icn 10284  ax-addcl 10285  ax-addrcl 10286  ax-mulcl 10287  ax-mulrcl 10288  ax-mulcom 10289  ax-addass 10290  ax-mulass 10291  ax-distr 10292  ax-i2m1 10293  ax-1ne0 10294  ax-1rid 10295  ax-rnegex 10296  ax-rrecex 10297  ax-cnre 10298  ax-pre-lttri 10299  ax-pre-lttrn 10300  ax-pre-ltadd 10301  ax-pre-mulgt0 10302
This theorem depends on definitions:  df-bi 199  df-an 386  df-or 875  df-3or 1109  df-3an 1110  df-tru 1657  df-fal 1667  df-ex 1876  df-nf 1880  df-sb 2065  df-mo 2592  df-eu 2610  df-clab 2787  df-cleq 2793  df-clel 2796  df-nfc 2931  df-ne 2973  df-nel 3076  df-ral 3095  df-rex 3096  df-reu 3097  df-rab 3099  df-v 3388  df-sbc 3635  df-csb 3730  df-dif 3773  df-un 3775  df-in 3777  df-ss 3784  df-pss 3786  df-nul 4117  df-if 4279  df-pw 4352  df-sn 4370  df-pr 4372  df-tp 4374  df-op 4376  df-uni 4630  df-int 4669  df-iun 4713  df-br 4845  df-opab 4907  df-mpt 4924  df-tr 4947  df-id 5221  df-eprel 5226  df-po 5234  df-so 5235  df-fr 5272  df-we 5274  df-xp 5319  df-rel 5320  df-cnv 5321  df-co 5322  df-dm 5323  df-rn 5324  df-res 5325  df-ima 5326  df-pred 5899  df-ord 5945  df-on 5946  df-lim 5947  df-suc 5948  df-iota 6065  df-fun 6104  df-fn 6105  df-f 6106  df-f1 6107  df-fo 6108  df-f1o 6109  df-fv 6110  df-riota 6840  df-ov 6882  df-oprab 6883  df-mpt2 6884  df-om 7301  df-1st 7402  df-2nd 7403  df-wrecs 7646  df-recs 7708  df-rdg 7746  df-1o 7800  df-oadd 7804  df-er 7983  df-map 8098  df-pm 8099  df-en 8197  df-dom 8198  df-sdom 8199  df-fin 8200  df-card 9052  df-pnf 10366  df-mnf 10367  df-xr 10368  df-ltxr 10369  df-le 10370  df-sub 10559  df-neg 10560  df-nn 11314  df-2 11375  df-n0 11580  df-xnn0 11652  df-z 11666  df-uz 11930  df-rp 12074  df-fz 12580  df-fzo 12720  df-hash 13370  df-word 13534  df-lsw 13582  df-concat 13590  df-s1 13615  df-substr 13664  df-pfx 13713  df-wwlks 27080  df-wwlksn 27081
This theorem is referenced by:  wwlksnexthasheq  27180
  Copyright terms: Public domain W3C validator