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

Theorem clwwlknonclwlknonf1o 30653
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 2769 . . 3 {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} = {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}
3 clwwlknonclwlknonf1o.f . . 3 𝐹 = (𝑐𝑊 ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
4 eqid 2769 . . 3 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))) = (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
5 eqid 2769 . . . . 5 (1st𝑐) = (1st𝑐)
6 eqid 2769 . . . . 5 (2nd𝑐) = (2nd𝑐)
75, 6, 2, 4clwlknf1oclwwlkn 30375 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑁 ∈ ℕ) → (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))):{𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}–1-1-onto→(𝑁 ClWWalksN 𝐺))
873adant2 1147 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))):{𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}–1-1-onto→(𝑁 ClWWalksN 𝐺))
9 fveq1 6881 . . . . . . 7 (𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐))) → (𝑠‘0) = (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0))
1093ad2ant3 1151 . . . . . 6 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (𝑠‘0) = (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0))
11 2fveq3 6887 . . . . . . . . . . . 12 (𝑤 = 𝑐 → (♯‘(1st𝑤)) = (♯‘(1st𝑐)))
1211eqeq1d 2771 . . . . . . . . . . 11 (𝑤 = 𝑐 → ((♯‘(1st𝑤)) = 𝑁 ↔ (♯‘(1st𝑐)) = 𝑁))
1312elrab 3659 . . . . . . . . . 10 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↔ (𝑐 ∈ (ClWalks‘𝐺) ∧ (♯‘(1st𝑐)) = 𝑁))
14 clwlkwlk 30064 . . . . . . . . . . . 12 (𝑐 ∈ (ClWalks‘𝐺) → 𝑐 ∈ (Walks‘𝐺))
15 wlkcpr 29918 . . . . . . . . . . . . 13 (𝑐 ∈ (Walks‘𝐺) ↔ (1st𝑐)(Walks‘𝐺)(2nd𝑐))
16 eqid 2769 . . . . . . . . . . . . . . . . 17 (Vtx‘𝐺) = (Vtx‘𝐺)
1716wlkpwrd 29907 . . . . . . . . . . . . . . . 16 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
18173ad2ant1 1149 . . . . . . . . . . . . . . 15 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
19 elnnuz 12901 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ ℕ ↔ 𝑁 ∈ (ℤ‘1))
20 eluzfz2 13559 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘1) → 𝑁 ∈ (1...𝑁))
2119, 20sylbi 220 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℕ → 𝑁 ∈ (1...𝑁))
22 fzelp1 13603 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (1...𝑁) → 𝑁 ∈ (1...(𝑁 + 1)))
2321, 22syl 18 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ (1...(𝑁 + 1)))
24233ad2ant3 1151 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝑁 ∈ (1...(𝑁 + 1)))
25243ad2ant3 1151 . . . . . . . . . . . . . . . . 17 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → 𝑁 ∈ (1...(𝑁 + 1)))
26 id 23 . . . . . . . . . . . . . . . . . . 19 ((♯‘(1st𝑐)) = 𝑁 → (♯‘(1st𝑐)) = 𝑁)
27 oveq1 7418 . . . . . . . . . . . . . . . . . . . 20 ((♯‘(1st𝑐)) = 𝑁 → ((♯‘(1st𝑐)) + 1) = (𝑁 + 1))
2827oveq2d 7427 . . . . . . . . . . . . . . . . . . 19 ((♯‘(1st𝑐)) = 𝑁 → (1...((♯‘(1st𝑐)) + 1)) = (1...(𝑁 + 1)))
2926, 28eleq12d 2863 . . . . . . . . . . . . . . . . . 18 ((♯‘(1st𝑐)) = 𝑁 → ((♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)) ↔ 𝑁 ∈ (1...(𝑁 + 1))))
30293ad2ant2 1150 . . . . . . . . . . . . . . . . 17 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)) ↔ 𝑁 ∈ (1...(𝑁 + 1))))
3125, 30mpbird 260 . . . . . . . . . . . . . . . 16 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)))
32 wlklenvp1 29908 . . . . . . . . . . . . . . . . . . 19 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (♯‘(2nd𝑐)) = ((♯‘(1st𝑐)) + 1))
3332oveq2d 7427 . . . . . . . . . . . . . . . . . 18 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (1...(♯‘(2nd𝑐))) = (1...((♯‘(1st𝑐)) + 1)))
3433eleq2d 2855 . . . . . . . . . . . . . . . . 17 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → ((♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))) ↔ (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1))))
35343ad2ant1 1149 . . . . . . . . . . . . . . . 16 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))) ↔ (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1))))
3631, 35mpbird 260 . . . . . . . . . . . . . . 15 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))
3718, 36jca 520 . . . . . . . . . . . . . 14 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))
38373exp 1135 . . . . . . . . . . . . 13 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
3915, 38sylbi 220 . . . . . . . . . . . 12 (𝑐 ∈ (Walks‘𝐺) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
4014, 39syl 18 . . . . . . . . . . 11 (𝑐 ∈ (ClWalks‘𝐺) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
4140imp 411 . . . . . . . . . 10 ((𝑐 ∈ (ClWalks‘𝐺) ∧ (♯‘(1st𝑐)) = 𝑁) → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))))
4213, 41sylbi 220 . . . . . . . . 9 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))))
4342impcom 412 . . . . . . . 8 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))
44 pfxfv0 14728 . . . . . . . 8 (((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))) → (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0) = ((2nd𝑐)‘0))
4543, 44syl 18 . . . . . . 7 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}) → (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0) = ((2nd𝑐)‘0))
46453adant3 1148 . . . . . 6 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0) = ((2nd𝑐)‘0))
4710, 46eqtrd 2804 . . . . 5 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (𝑠‘0) = ((2nd𝑐)‘0))
4847eqeq1d 2771 . . . 4 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
49 nfv 1941 . . . . 5 𝑤((2nd𝑐)‘0) = 𝑋
50 fveq2 6882 . . . . . . 7 (𝑤 = 𝑐 → (2nd𝑤) = (2nd𝑐))
5150fveq1d 6884 . . . . . 6 (𝑤 = 𝑐 → ((2nd𝑤)‘0) = ((2nd𝑐)‘0))
5251eqeq1d 2771 . . . . 5 (𝑤 = 𝑐 → (((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
5349, 52sbiev 2353 . . . 4 ([𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋)
5448, 53bitr4di 292 . . 3 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ [𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋))
551, 2, 3, 4, 8, 54f1ossf1o 7125 . 2 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→{𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋})
56 clwwlknon 30381 . . 3 (𝑋(ClWWalksNOn‘𝐺)𝑁) = {𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋}
57 f1oeq3 6811 . . 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 237 1 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→(𝑋(ClWWalksNOn‘𝐺)𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400  w3a 1101   = wceq 1567  [wsb 2097  wcel 2149  {crab 3423   class class class wbr 5113  cmpt 5196  1-1-ontowf1o 6536  cfv 6537  (class class class)co 7411  1st c1st 7983  2nd c2nd 7984  0cc0 11099  1c1 11100   + caddc 11102  cn 12232  cuz 12861  ...cfz 13534  chash 14365  Word cword 14549   prefix cpfx 14707  Vtxcvtx 29286  USPGraphcuspgr 29438  Walkscwlks 29886  ClWalkscclwlks 30059   ClWWalksN cclwwlkn 30315  ClWWalksNOncclwwlknon 30378
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1822  ax-4 1836  ax-5 1937  ax-6 1994  ax-7 2035  ax-8 2151  ax-9 2159  ax-10 2182  ax-11 2198  ax-12 2219  ax-ext 2741  ax-rep 5242  ax-sep 5261  ax-nul 5271  ax-pow 5337  ax-pr 5405  ax-un 7733  ax-cnex 11155  ax-resscn 11156  ax-1cn 11157  ax-icn 11158  ax-addcl 11159  ax-addrcl 11160  ax-mulcl 11161  ax-mulrcl 11162  ax-mulcom 11163  ax-addass 11164  ax-mulass 11165  ax-distr 11166  ax-i2m1 11167  ax-1ne0 11168  ax-1rid 11169  ax-rnegex 11170  ax-rrecex 11171  ax-cnre 11172  ax-pre-lttri 11173  ax-pre-lttrn 11174  ax-pre-ltadd 11175  ax-pre-mulgt0 11176
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-ifp 1077  df-3or 1102  df-3an 1103  df-tru 1570  df-fal 1580  df-ex 1807  df-nf 1811  df-sb 2098  df-mo 2573  df-eu 2603  df-clab 2748  df-cleq 2761  df-clel 2844  df-nfc 2918  df-ne 2965  df-nel 3071  df-ral 3086  df-rex 3096  df-reu 3377  df-rab 3424  df-v 3465  df-sbc 3754  df-csb 3862  df-dif 3916  df-un 3918  df-in 3920  df-ss 3930  df-pss 3933  df-nul 4295  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4877  df-int 4917  df-iun 4962  df-br 5114  df-opab 5178  df-mpt 5197  df-tr 5223  df-id 5557  df-eprel 5562  df-po 5570  df-so 5571  df-fr 5615  df-we 5617  df-xp 5668  df-rel 5669  df-cnv 5670  df-co 5671  df-dm 5672  df-rn 5673  df-res 5674  df-ima 5675  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-riota 7368  df-ov 7414  df-oprab 7415  df-mpo 7416  df-om 7862  df-1st 7985  df-2nd 7986  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-1o 8452  df-2o 8453  df-oadd 8456  df-er 8693  df-map 8825  df-pm 8826  df-en 8943  df-dom 8944  df-sdom 8945  df-fin 8946  df-dju 9886  df-card 9924  df-pnf 11244  df-mnf 11245  df-xr 11246  df-ltxr 11247  df-le 11248  df-sub 11442  df-neg 11443  df-nn 12233  df-2 12302  df-n0 12504  df-xnn0 12577  df-z 12591  df-uz 12862  df-rp 13016  df-fz 13535  df-fzo 13682  df-hash 14366  df-word 14550  df-lsw 14599  df-concat 14607  df-s1 14633  df-substr 14678  df-pfx 14708  df-edg 29338  df-uhgr 29348  df-upgr 29372  df-uspgr 29440  df-wlks 29889  df-clwlks 30060  df-clwwlk 30273  df-clwwlkn 30316  df-clwwlknon 30379
This theorem is referenced by:  clwwlknonclwlknonen  30654  dlwwlknondlwlknonf1o  30656
  Copyright terms: Public domain W3C validator