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

Theorem clwwlknonclwlknonf1o 30521
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 2761 . . 3 {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} = {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}
3 clwwlknonclwlknonf1o.f . . 3 𝐹 = (𝑐𝑊 ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
4 eqid 2761 . . 3 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))) = (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
5 eqid 2761 . . . . 5 (1st𝑐) = (1st𝑐)
6 eqid 2761 . . . . 5 (2nd𝑐) = (2nd𝑐)
75, 6, 2, 4clwlknf1oclwwlkn 30243 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑁 ∈ ℕ) → (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))):{𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}–1-1-onto→(𝑁 ClWWalksN 𝐺))
873adant2 1143 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))):{𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}–1-1-onto→(𝑁 ClWWalksN 𝐺))
9 fveq1 6861 . . . . . . 7 (𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐))) → (𝑠‘0) = (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0))
1093ad2ant3 1147 . . . . . 6 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (𝑠‘0) = (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0))
11 2fveq3 6867 . . . . . . . . . . . 12 (𝑤 = 𝑐 → (♯‘(1st𝑤)) = (♯‘(1st𝑐)))
1211eqeq1d 2763 . . . . . . . . . . 11 (𝑤 = 𝑐 → ((♯‘(1st𝑤)) = 𝑁 ↔ (♯‘(1st𝑐)) = 𝑁))
1312elrab 3649 . . . . . . . . . 10 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↔ (𝑐 ∈ (ClWalks‘𝐺) ∧ (♯‘(1st𝑐)) = 𝑁))
14 clwlkwlk 29932 . . . . . . . . . . . 12 (𝑐 ∈ (ClWalks‘𝐺) → 𝑐 ∈ (Walks‘𝐺))
15 wlkcpr 29786 . . . . . . . . . . . . 13 (𝑐 ∈ (Walks‘𝐺) ↔ (1st𝑐)(Walks‘𝐺)(2nd𝑐))
16 eqid 2761 . . . . . . . . . . . . . . . . 17 (Vtx‘𝐺) = (Vtx‘𝐺)
1716wlkpwrd 29775 . . . . . . . . . . . . . . . 16 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
18173ad2ant1 1145 . . . . . . . . . . . . . . 15 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
19 elnnuz 12873 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ ℕ ↔ 𝑁 ∈ (ℤ‘1))
20 eluzfz2 13531 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘1) → 𝑁 ∈ (1...𝑁))
2119, 20sylbi 219 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℕ → 𝑁 ∈ (1...𝑁))
22 fzelp1 13575 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ (1...𝑁) → 𝑁 ∈ (1...(𝑁 + 1)))
2321, 22syl 17 . . . . . . . . . . . . . . . . . . 19 (𝑁 ∈ ℕ → 𝑁 ∈ (1...(𝑁 + 1)))
24233ad2ant3 1147 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝑁 ∈ (1...(𝑁 + 1)))
25243ad2ant3 1147 . . . . . . . . . . . . . . . . 17 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → 𝑁 ∈ (1...(𝑁 + 1)))
26 id 22 . . . . . . . . . . . . . . . . . . 19 ((♯‘(1st𝑐)) = 𝑁 → (♯‘(1st𝑐)) = 𝑁)
27 oveq1 7398 . . . . . . . . . . . . . . . . . . . 20 ((♯‘(1st𝑐)) = 𝑁 → ((♯‘(1st𝑐)) + 1) = (𝑁 + 1))
2827oveq2d 7407 . . . . . . . . . . . . . . . . . . 19 ((♯‘(1st𝑐)) = 𝑁 → (1...((♯‘(1st𝑐)) + 1)) = (1...(𝑁 + 1)))
2926, 28eleq12d 2855 . . . . . . . . . . . . . . . . . 18 ((♯‘(1st𝑐)) = 𝑁 → ((♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)) ↔ 𝑁 ∈ (1...(𝑁 + 1))))
30293ad2ant2 1146 . . . . . . . . . . . . . . . . 17 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)) ↔ 𝑁 ∈ (1...(𝑁 + 1))))
3125, 30mpbird 259 . . . . . . . . . . . . . . . 16 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1)))
32 wlklenvp1 29776 . . . . . . . . . . . . . . . . . . 19 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (♯‘(2nd𝑐)) = ((♯‘(1st𝑐)) + 1))
3332oveq2d 7407 . . . . . . . . . . . . . . . . . 18 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (1...(♯‘(2nd𝑐))) = (1...((♯‘(1st𝑐)) + 1)))
3433eleq2d 2847 . . . . . . . . . . . . . . . . 17 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → ((♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))) ↔ (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1))))
35343ad2ant1 1145 . . . . . . . . . . . . . . . 16 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))) ↔ (♯‘(1st𝑐)) ∈ (1...((♯‘(1st𝑐)) + 1))))
3631, 35mpbird 259 . . . . . . . . . . . . . . 15 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))
3718, 36jca 519 . . . . . . . . . . . . . 14 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))
38373exp 1131 . . . . . . . . . . . . 13 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
3915, 38sylbi 219 . . . . . . . . . . . 12 (𝑐 ∈ (Walks‘𝐺) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
4014, 39syl 17 . . . . . . . . . . 11 (𝑐 ∈ (ClWalks‘𝐺) → ((♯‘(1st𝑐)) = 𝑁 → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))))
4140imp 410 . . . . . . . . . 10 ((𝑐 ∈ (ClWalks‘𝐺) ∧ (♯‘(1st𝑐)) = 𝑁) → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))))
4213, 41sylbi 219 . . . . . . . . 9 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} → ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐))))))
4342impcom 411 . . . . . . . 8 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}) → ((2nd𝑐) ∈ Word (Vtx‘𝐺) ∧ (♯‘(1st𝑐)) ∈ (1...(♯‘(2nd𝑐)))))
44 pfxfv0 14699 . . . . . . . 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 1144 . . . . . 6 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (((2nd𝑐) prefix (♯‘(1st𝑐)))‘0) = ((2nd𝑐)‘0))
4710, 46eqtrd 2796 . . . . 5 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (𝑠‘0) = ((2nd𝑐)‘0))
4847eqeq1d 2763 . . . 4 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
49 nfv 1933 . . . . 5 𝑤((2nd𝑐)‘0) = 𝑋
50 fveq2 6862 . . . . . . 7 (𝑤 = 𝑐 → (2nd𝑤) = (2nd𝑐))
5150fveq1d 6864 . . . . . 6 (𝑤 = 𝑐 → ((2nd𝑤)‘0) = ((2nd𝑐)‘0))
5251eqeq1d 2763 . . . . 5 (𝑤 = 𝑐 → (((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
5349, 52sbiev 2345 . . . 4 ([𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋)
5448, 53bitr4di 291 . . 3 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ [𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋))
551, 2, 3, 4, 8, 54f1ossf1o 7105 . 2 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→{𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋})
56 clwwlknon 30249 . . 3 (𝑋(ClWWalksNOn‘𝐺)𝑁) = {𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋}
57 f1oeq3 6791 . . 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 236 1 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→(𝑋(ClWWalksNOn‘𝐺)𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 399  w3a 1097   = wceq 1559  [wsb 2089  wcel 2141  {crab 3413   class class class wbr 5097  cmpt 5178  1-1-ontowf1o 6515  cfv 6516  (class class class)co 7391  1st c1st 7963  2nd c2nd 7964  0cc0 11067  1c1 11068   + caddc 11070  cn 12204  cuz 12833  ...cfz 13506  chash 14337  Word cword 14520   prefix cpfx 14678  Vtxcvtx 29154  USPGraphcuspgr 29306  Walkscwlks 29754  ClWalkscclwlks 29927   ClWWalksN cclwwlkn 30183  ClWWalksNOncclwwlknon 30246
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1814  ax-4 1828  ax-5 1929  ax-6 1986  ax-7 2027  ax-8 2143  ax-9 2151  ax-10 2174  ax-11 2190  ax-12 2211  ax-ext 2733  ax-rep 5224  ax-sep 5243  ax-nul 5253  ax-pow 5319  ax-pr 5387  ax-un 7713  ax-cnex 11123  ax-resscn 11124  ax-1cn 11125  ax-icn 11126  ax-addcl 11127  ax-addrcl 11128  ax-mulcl 11129  ax-mulrcl 11130  ax-mulcom 11131  ax-addass 11132  ax-mulass 11133  ax-distr 11134  ax-i2m1 11135  ax-1ne0 11136  ax-1rid 11137  ax-rnegex 11138  ax-rrecex 11139  ax-cnre 11140  ax-pre-lttri 11141  ax-pre-lttrn 11142  ax-pre-ltadd 11143  ax-pre-mulgt0 11144
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-ifp 1074  df-3or 1098  df-3an 1099  df-tru 1562  df-fal 1572  df-ex 1799  df-nf 1803  df-sb 2090  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3061  df-ral 3076  df-rex 3086  df-reu 3367  df-rab 3414  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 4284  df-if 4478  df-pw 4554  df-sn 4580  df-pr 4582  df-op 4586  df-uni 4863  df-int 4903  df-iun 4948  df-br 5098  df-opab 5160  df-mpt 5179  df-tr 5205  df-id 5538  df-eprel 5543  df-po 5551  df-so 5552  df-fr 5596  df-we 5598  df-xp 5649  df-rel 5650  df-cnv 5651  df-co 5652  df-dm 5653  df-rn 5654  df-res 5655  df-ima 5656  df-pred 6283  df-ord 6344  df-on 6345  df-lim 6346  df-suc 6347  df-iota 6472  df-fun 6518  df-fn 6519  df-f 6520  df-f1 6521  df-fo 6522  df-f1o 6523  df-fv 6524  df-riota 7348  df-ov 7394  df-oprab 7395  df-mpo 7396  df-om 7842  df-1st 7965  df-2nd 7966  df-frecs 8256  df-wrecs 8287  df-recs 8336  df-rdg 8375  df-1o 8431  df-2o 8432  df-oadd 8435  df-er 8672  df-map 8804  df-pm 8805  df-en 8922  df-dom 8923  df-sdom 8924  df-fin 8925  df-dju 9853  df-card 9891  df-pnf 11212  df-mnf 11213  df-xr 11214  df-ltxr 11215  df-le 11216  df-sub 11410  df-neg 11411  df-nn 12205  df-2 12274  df-n0 12476  df-xnn0 12549  df-z 12563  df-uz 12834  df-rp 12988  df-fz 13507  df-fzo 13654  df-hash 14338  df-word 14521  df-lsw 14570  df-concat 14578  df-s1 14604  df-substr 14649  df-pfx 14679  df-edg 29206  df-uhgr 29216  df-upgr 29240  df-uspgr 29308  df-wlks 29757  df-clwlks 29928  df-clwwlk 30141  df-clwwlkn 30184  df-clwwlknon 30247
This theorem is referenced by:  clwwlknonclwlknonen  30522  dlwwlknondlwlknonf1o  30524
  Copyright terms: Public domain W3C validator