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

Theorem clwwlknonclwlknonf1o 30306
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 2729 . . 3 {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} = {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁}
3 clwwlknonclwlknonf1o.f . . 3 𝐹 = (𝑐𝑊 ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
4 eqid 2729 . . 3 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐)))) = (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↦ ((2nd𝑐) prefix (♯‘(1st𝑐))))
5 eqid 2729 . . . . 5 (1st𝑐) = (1st𝑐)
6 eqid 2729 . . . . 5 (2nd𝑐) = (2nd𝑐)
75, 6, 2, 4clwlknf1oclwwlkn 30028 . . . 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 6821 . . . . . . 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 6827 . . . . . . . . . . . 12 (𝑤 = 𝑐 → (♯‘(1st𝑤)) = (♯‘(1st𝑐)))
1211eqeq1d 2731 . . . . . . . . . . 11 (𝑤 = 𝑐 → ((♯‘(1st𝑤)) = 𝑁 ↔ (♯‘(1st𝑐)) = 𝑁))
1312elrab 3648 . . . . . . . . . 10 (𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ↔ (𝑐 ∈ (ClWalks‘𝐺) ∧ (♯‘(1st𝑐)) = 𝑁))
14 clwlkwlk 29720 . . . . . . . . . . . 12 (𝑐 ∈ (ClWalks‘𝐺) → 𝑐 ∈ (Walks‘𝐺))
15 wlkcpr 29574 . . . . . . . . . . . . 13 (𝑐 ∈ (Walks‘𝐺) ↔ (1st𝑐)(Walks‘𝐺)(2nd𝑐))
16 eqid 2729 . . . . . . . . . . . . . . . . 17 (Vtx‘𝐺) = (Vtx‘𝐺)
1716wlkpwrd 29563 . . . . . . . . . . . . . . . 16 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
18173ad2ant1 1133 . . . . . . . . . . . . . . 15 (((1st𝑐)(Walks‘𝐺)(2nd𝑐) ∧ (♯‘(1st𝑐)) = 𝑁 ∧ (𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ)) → (2nd𝑐) ∈ Word (Vtx‘𝐺))
19 elnnuz 12779 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ ℕ ↔ 𝑁 ∈ (ℤ‘1))
20 eluzfz2 13435 . . . . . . . . . . . . . . . . . . . . 21 (𝑁 ∈ (ℤ‘1) → 𝑁 ∈ (1...𝑁))
2119, 20sylbi 217 . . . . . . . . . . . . . . . . . . . 20 (𝑁 ∈ ℕ → 𝑁 ∈ (1...𝑁))
22 fzelp1 13479 . . . . . . . . . . . . . . . . . . . 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 7356 . . . . . . . . . . . . . . . . . . . 20 ((♯‘(1st𝑐)) = 𝑁 → ((♯‘(1st𝑐)) + 1) = (𝑁 + 1))
2827oveq2d 7365 . . . . . . . . . . . . . . . . . . 19 ((♯‘(1st𝑐)) = 𝑁 → (1...((♯‘(1st𝑐)) + 1)) = (1...(𝑁 + 1)))
2926, 28eleq12d 2822 . . . . . . . . . . . . . . . . . 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 29564 . . . . . . . . . . . . . . . . . . 19 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (♯‘(2nd𝑐)) = ((♯‘(1st𝑐)) + 1))
3332oveq2d 7365 . . . . . . . . . . . . . . . . . 18 ((1st𝑐)(Walks‘𝐺)(2nd𝑐) → (1...(♯‘(2nd𝑐))) = (1...((♯‘(1st𝑐)) + 1)))
3433eleq2d 2814 . . . . . . . . . . . . . . . . 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 14598 . . . . . . . 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 2764 . . . . 5 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → (𝑠‘0) = ((2nd𝑐)‘0))
4847eqeq1d 2731 . . . 4 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
49 nfv 1914 . . . . 5 𝑤((2nd𝑐)‘0) = 𝑋
50 fveq2 6822 . . . . . . 7 (𝑤 = 𝑐 → (2nd𝑤) = (2nd𝑐))
5150fveq1d 6824 . . . . . 6 (𝑤 = 𝑐 → ((2nd𝑤)‘0) = ((2nd𝑐)‘0))
5251eqeq1d 2731 . . . . 5 (𝑤 = 𝑐 → (((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋))
5349, 52sbiev 2313 . . . 4 ([𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋 ↔ ((2nd𝑐)‘0) = 𝑋)
5448, 53bitr4di 289 . . 3 (((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) ∧ 𝑐 ∈ {𝑤 ∈ (ClWalks‘𝐺) ∣ (♯‘(1st𝑤)) = 𝑁} ∧ 𝑠 = ((2nd𝑐) prefix (♯‘(1st𝑐)))) → ((𝑠‘0) = 𝑋 ↔ [𝑐 / 𝑤]((2nd𝑤)‘0) = 𝑋))
551, 2, 3, 4, 8, 54f1ossf1o 7062 . 2 ((𝐺 ∈ USPGraph ∧ 𝑋𝑉𝑁 ∈ ℕ) → 𝐹:𝑊1-1-onto→{𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋})
56 clwwlknon 30034 . . 3 (𝑋(ClWWalksNOn‘𝐺)𝑁) = {𝑠 ∈ (𝑁 ClWWalksN 𝐺) ∣ (𝑠‘0) = 𝑋}
57 f1oeq3 6754 . . 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 1540  [wsb 2065  wcel 2109  {crab 3394   class class class wbr 5092  cmpt 5173  1-1-ontowf1o 6481  cfv 6482  (class class class)co 7349  1st c1st 7922  2nd c2nd 7923  0cc0 11009  1c1 11010   + caddc 11012  cn 12128  cuz 12735  ...cfz 13410  chash 14237  Word cword 14420   prefix cpfx 14577  Vtxcvtx 28941  USPGraphcuspgr 29093  Walkscwlks 29542  ClWalkscclwlks 29715   ClWWalksN cclwwlkn 29968  ClWWalksNOncclwwlknon 30031
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5218  ax-sep 5235  ax-nul 5245  ax-pow 5304  ax-pr 5371  ax-un 7671  ax-cnex 11065  ax-resscn 11066  ax-1cn 11067  ax-icn 11068  ax-addcl 11069  ax-addrcl 11070  ax-mulcl 11071  ax-mulrcl 11072  ax-mulcom 11073  ax-addass 11074  ax-mulass 11075  ax-distr 11076  ax-i2m1 11077  ax-1ne0 11078  ax-1rid 11079  ax-rnegex 11080  ax-rrecex 11081  ax-cnre 11082  ax-pre-lttri 11083  ax-pre-lttrn 11084  ax-pre-ltadd 11085  ax-pre-mulgt0 11086
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 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-reu 3344  df-rab 3395  df-v 3438  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4859  df-int 4897  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5174  df-tr 5200  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6249  df-ord 6310  df-on 6311  df-lim 6312  df-suc 6313  df-iota 6438  df-fun 6484  df-fn 6485  df-f 6486  df-f1 6487  df-fo 6488  df-f1o 6489  df-fv 6490  df-riota 7306  df-ov 7352  df-oprab 7353  df-mpo 7354  df-om 7800  df-1st 7924  df-2nd 7925  df-frecs 8214  df-wrecs 8245  df-recs 8294  df-rdg 8332  df-1o 8388  df-2o 8389  df-oadd 8392  df-er 8625  df-map 8755  df-pm 8756  df-en 8873  df-dom 8874  df-sdom 8875  df-fin 8876  df-dju 9797  df-card 9835  df-pnf 11151  df-mnf 11152  df-xr 11153  df-ltxr 11154  df-le 11155  df-sub 11349  df-neg 11350  df-nn 12129  df-2 12191  df-n0 12385  df-xnn0 12458  df-z 12472  df-uz 12736  df-rp 12894  df-fz 13411  df-fzo 13558  df-hash 14238  df-word 14421  df-lsw 14470  df-concat 14478  df-s1 14503  df-substr 14548  df-pfx 14578  df-edg 28993  df-uhgr 29003  df-upgr 29027  df-uspgr 29095  df-wlks 29545  df-clwlks 29716  df-clwwlk 29926  df-clwwlkn 29969  df-clwwlknon 30032
This theorem is referenced by:  clwwlknonclwlknonen  30307  dlwwlknondlwlknonf1o  30309
  Copyright terms: Public domain W3C validator