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

Theorem clwwlknonclwlknonf1o 30363
Description: 𝐹 is a bijection between the two representations of closed walks of a fixed positive length on a fixed vertex. (Contributed by AV, 26-May-2022.) (Proof shortened by AV, 7-Aug-2022.) (Revised by AV, 1-Nov-2022.)
Hypotheses
Ref Expression
clwwlknonclwlknonf1o.v 𝑉 = (Vtx‘𝐺)
clwwlknonclwlknonf1o.w 𝑊 = {𝑤 ∈ (ClWalks‘𝐺) ∣ ((♯‘(1st𝑤)) = 𝑁 ∧ ((2nd𝑤)‘0) = 𝑋)}
clwwlknonclwlknonf1o.f 𝐹 = (𝑐𝑊 ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
Assertion
Ref Expression
clwwlknonclwlknonf1o ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→(𝑋(ClWWalksNOn‘𝐺)𝑁))
Distinct variable groups:   𝐺,𝑐,𝑤   𝑁,𝑐,𝑤   𝑉,𝑐   𝑊,𝑐   𝑋,𝑐,𝑤
Allowed substitution hints:   𝐹(𝑤,𝑐)   𝑉(𝑤)   𝑊(𝑤)

Proof of Theorem clwwlknonclwlknonf1o
Dummy variable 𝑠 is distinct from all other variables.
StepHypRef Expression
1 clwwlknonclwlknonf1o.w . . 3 𝑊 = {𝑤 ∈ (ClWalks‘𝐺) ∣ ((♯‘(1st𝑤)) = 𝑁 ∧ ((2nd𝑤)‘0) = 𝑋)}
2 eqid 2733 . . 3 {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} = {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}
3 clwwlknonclwlknonf1o.f . . 3 𝐹 = (𝑐𝑊 ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
4 eqid 2733 . . 3 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))) = (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
5 eqid 2733 . . . . 5 (1st𝑐) = (1st𝑐)
6 eqid 2733 . . . . 5 (2nd𝑐) = (2nd𝑐)
75, 6, 2, 4clwlknf1oclwwlkn 30085 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑁 ∈ ℕ) → (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))):{𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}–1-1-onto→(𝑁 ClWWalksN 𝐺))
873adant2 1131 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))):{𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}–1-1-onto→(𝑁 ClWWalksN 𝐺))
9 fveq1 6830 . . . . . . 7 (𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐))) → (𝑠‘0) = (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0))
1093ad2ant3 1135 . . . . . 6 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (𝑠‘0) = (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0))
11 2fveq3 6836 . . . . . . . . . . . 12 (𝑤 = 𝑐 → (♯‘(1st𝑤)) = (♯‘(1st𝑐)))
1211eqeq1d 2735 . . . . . . . . . . 11 (𝑤 = 𝑐 → ((♯‘(1st𝑤)) = 𝑁 ↔ (♯‘(1st𝑐)) = 𝑁))
1312elrab 3643 . . . . . . . . . 10 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↔ (𝑐 ∈ (ClWalks‘𝐺) ∧ (♯‘(1st𝑐)) = 𝑁))
14 clwlkwlk 29774 . . . . . . . . . . . 12 (𝑐 ∈ (ClWalks‘𝐺) → 𝑐 ∈ (Walks‘𝐺))
15 wlkcpr 29628 . . . . . . . . . . . . 13 (𝑐 ∈ (Walks‘𝐺) ↔ (1st𝑐)(Walks‘𝐺)(2nd𝑐))
16 eqid 2733 . . . . . . . . . . . . . . . . 17 (Vtx‘𝐺) = (Vtx‘𝐺)
1716wlkpwrd 29617 . . . . . . . . . . . . . . . 16 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
18173ad2ant1 1133 . . . . . . . . . . . . . . 15 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
19 elnnuz 12782 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ ℕ ↔ 𝑁 ∈ (ℤ‘1))
20 eluzfz2 13439 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘1) → 𝑁 ∈ (1...𝑁))
2119, 20sylbi 217 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℕ → 𝑁 ∈ (1...𝑁))
22 fzelp1 13483 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (1...𝑁) → 𝑁 ∈ (1...(𝑁 + 1)))
2321, 22syl 17 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ (1...(𝑁 + 1)))
24233ad2ant3 1135 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝑁 ∈ (1...(𝑁 + 1)))
25243ad2ant3 1135 . . . . . . . . . . . . . . . . 17 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → 𝑁 ∈ (1...(𝑁 + 1)))
26 id 22 . . . . . . . . . . . . . . . . . . 19 ((♯‘(1st𝑐)) = 𝑁 → (♯‘(1st𝑐)) = 𝑁)
27 oveq1 7362 . . . . . . . . . . . . . . . . . . . 20 ((♯‘(1st𝑐)) = 𝑁 → ((♯‘(1st𝑐)) + 1) = (𝑁 + 1))
2827oveq2d 7371 . . . . . . . . . . . . . . . . . . 19 ((♯‘(1st𝑐)) = 𝑁 → (1...((♯‘(1st𝑐)) + 1)) = (1...(𝑁 + 1)))
2926, 28eleq12d 2827 . . . . . . . . . . . . . . . . . 18 ((♯‘(1st𝑐)) = 𝑁 → ((♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)) ↔ 𝑁 ∈ (1...(𝑁 + 1))))
30293ad2ant2 1134 . . . . . . . . . . . . . . . . 17 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)) ↔ 𝑁 ∈ (1...(𝑁 + 1))))
3125, 30mpbird 257 . . . . . . . . . . . . . . . 16 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)))
32 wlklenvp1 29618 . . . . . . . . . . . . . . . . . . 19 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (♯‘(2nd𝑐)) = ((♯‘(1st𝑐)) + 1))
3332oveq2d 7371 . . . . . . . . . . . . . . . . . 18 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (1...(♯‘(2nd𝑐))) = (1...((♯‘(1st𝑐)) + 1)))
3433eleq2d 2819 . . . . . . . . . . . . . . . . 17 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → ((♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))) ↔ (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1))))
35343ad2ant1 1133 . . . . . . . . . . . . . . . 16 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))) ↔ (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1))))
3631, 35mpbird 257 . . . . . . . . . . . . . . 15 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))
3718, 36jca 511 . . . . . . . . . . . . . 14 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))
38373exp 1119 . . . . . . . . . . . . 13 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
3915, 38sylbi 217 . . . . . . . . . . . 12 (𝑐 ∈ (Walks‘𝐺) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
4014, 39syl 17 . . . . . . . . . . 11 (𝑐 ∈ (ClWalks‘𝐺) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
4140imp 406 . . . . . . . . . 10 ((𝑐 ∈ (ClWalks‘𝐺) ∧ (♯‘(1st𝑐)) = 𝑁) → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))))
4213, 41sylbi 217 . . . . . . . . 9 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))))
4342impcom 407 . . . . . . . 8 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))
44 pfxfv0 14606 . . . . . . . 8 (((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))) → (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0) = ((2nd𝑐)‘0))
4543, 44syl 17 . . . . . . 7 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}) → (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0) = ((2nd𝑐)‘0))
46453adant3 1132 . . . . . 6 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0) = ((2nd𝑐)‘0))
4710, 46eqtrd 2768 . . . . 5 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (𝑠‘0) = ((2nd𝑐)‘0))
4847eqeq1d 2735 . . . 4 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
49 nfv 1915 . . . . 5 𝑤((2nd𝑐)‘0) = 𝑋
50 fveq2 6831 . . . . . . 7 (𝑤 = 𝑐 → (2nd𝑤) = (2nd𝑐))
5150fveq1d 6833 . . . . . 6 (𝑤 = 𝑐 → ((2nd𝑤)‘0) = ((2nd𝑐)‘0))
5251eqeq1d 2735 . . . . 5 (𝑤 = 𝑐 → (((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
5349, 52sbiev 2317 . . . 4 ([𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋)
5448, 53bitr4di 289 . . 3 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ [𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋))
551, 2, 3, 4, 8, 54f1ossf1o 7070 . 2 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→{𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋})
56 clwwlknon 30091 . . 3 (𝑋(ClWWalksNOn‘𝐺)𝑁) = {𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋}
57 f1oeq3 6761 . . 3 ((𝑋(ClWWalksNOn‘𝐺)𝑁) = {𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋} → (𝐹:𝑊1-1-onto→(𝑋(ClWWalksNOn‘𝐺)𝑁) ↔ 𝐹:𝑊1-1-onto→{𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋}))
5856, 57ax-mp 5 . 2 (𝐹:𝑊1-1-onto→(𝑋(ClWWalksNOn‘𝐺)𝑁) ↔ 𝐹:𝑊1-1-onto→{𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋})
5955, 58sylibr 234 1 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→(𝑋(ClWWalksNOn‘𝐺)𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086   = wceq 1541  [wsb 2067  wcel 2113  {crab 3396   class class class wbr 5095  cmpt 5176  1-1-ontowf1o 6488  cfv 6489  (class class class)co 7355  1st c1st 7928  2nd c2nd 7929  0cc0 11017  1c1 11018   + caddc 11020  cn 12136  cuz 12742  ...cfz 13414  chash 14244  Word cword 14427   prefix cpfx 14585  Vtxcvtx 28995  USPGraphcuspgr 29147  Walkscwlks 29596  ClWalkscclwlks 29769   ClWWalksN cclwwlkn 30025  ClWWalksNOncclwwlknon 30088
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2115  ax-9 2123  ax-10 2146  ax-11 2162  ax-12 2182  ax-ext 2705  ax-rep 5221  ax-sep 5238  ax-nul 5248  ax-pow 5307  ax-pr 5374  ax-un 7677  ax-cnex 11073  ax-resscn 11074  ax-1cn 11075  ax-icn 11076  ax-addcl 11077  ax-addrcl 11078  ax-mulcl 11079  ax-mulrcl 11080  ax-mulcom 11081  ax-addass 11082  ax-mulass 11083  ax-distr 11084  ax-i2m1 11085  ax-1ne0 11086  ax-1rid 11087  ax-rnegex 11088  ax-rrecex 11089  ax-cnre 11090  ax-pre-lttri 11091  ax-pre-lttrn 11092  ax-pre-ltadd 11093  ax-pre-mulgt0 11094
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-ifp 1063  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2537  df-eu 2566  df-clab 2712  df-cleq 2725  df-clel 2808  df-nfc 2882  df-ne 2930  df-nel 3034  df-ral 3049  df-rex 3058  df-reu 3348  df-rab 3397  df-v 3439  df-sbc 3738  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4283  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4861  df-int 4900  df-iun 4945  df-br 5096  df-opab 5158  df-mpt 5177  df-tr 5203  df-id 5516  df-eprel 5521  df-po 5529  df-so 5530  df-fr 5574  df-we 5576  df-xp 5627  df-rel 5628  df-cnv 5629  df-co 5630  df-dm 5631  df-rn 5632  df-res 5633  df-ima 5634  df-pred 6256  df-ord 6317  df-on 6318  df-lim 6319  df-suc 6320  df-iota 6445  df-fun 6491  df-fn 6492  df-f 6493  df-f1 6494  df-fo 6495  df-f1o 6496  df-fv 6497  df-riota 7312  df-ov 7358  df-oprab 7359  df-mpo 7360  df-om 7806  df-1st 7930  df-2nd 7931  df-frecs 8220  df-wrecs 8251  df-recs 8300  df-rdg 8338  df-1o 8394  df-2o 8395  df-oadd 8398  df-er 8631  df-map 8761  df-pm 8762  df-en 8880  df-dom 8881  df-sdom 8882  df-fin 8883  df-dju 9805  df-card 9843  df-pnf 11159  df-mnf 11160  df-xr 11161  df-ltxr 11162  df-le 11163  df-sub 11357  df-neg 11358  df-nn 12137  df-2 12199  df-n0 12393  df-xnn0 12466  df-z 12480  df-uz 12743  df-rp 12897  df-fz 13415  df-fzo 13562  df-hash 14245  df-word 14428  df-lsw 14477  df-concat 14485  df-s1 14511  df-substr 14556  df-pfx 14586  df-edg 29047  df-uhgr 29057  df-upgr 29081  df-uspgr 29149  df-wlks 29599  df-clwlks 29770  df-clwwlk 29983  df-clwwlkn 30026  df-clwwlknon 30089
This theorem is referenced by:  clwwlknonclwlknonen  30364  dlwwlknondlwlknonf1o  30366
  Copyright terms: Public domain W3C validator