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

Theorem clwlknf1oclwwlknlem1 27852
Description: Lemma 1 for clwlknf1oclwwlkn 27855. (Contributed by AV, 26-May-2022.) (Revised by AV, 1-Nov-2022.)
Assertion
Ref Expression
clwlknf1oclwwlknlem1 ((𝐶 ∈ (ClWalks‘𝐺) ∧ 1 ≤ (♯‘(1st𝐶))) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = (♯‘(1st𝐶)))

Proof of Theorem clwlknf1oclwwlknlem1
StepHypRef Expression
1 clwlkwlk 27548 . . 3 (𝐶 ∈ (ClWalks‘𝐺) → 𝐶 ∈ (Walks‘𝐺))
2 wlkcpr 27402 . . . 4 (𝐶 ∈ (Walks‘𝐺) ↔ (1st𝐶)(Walks‘𝐺)(2nd𝐶))
3 eqid 2819 . . . . . . . 8 (Vtx‘𝐺) = (Vtx‘𝐺)
43wlkpwrd 27391 . . . . . . 7 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → (2nd𝐶) ∈ Word (Vtx‘𝐺))
5 lencl 13875 . . . . . . . . 9 ((2nd𝐶) ∈ Word (Vtx‘𝐺) → (♯‘(2nd𝐶)) ∈ ℕ0)
64, 5syl 17 . . . . . . . 8 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → (♯‘(2nd𝐶)) ∈ ℕ0)
7 wlklenvm1 27395 . . . . . . . . . . 11 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → (♯‘(1st𝐶)) = ((♯‘(2nd𝐶)) − 1))
87breq2d 5069 . . . . . . . . . 10 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → (1 ≤ (♯‘(1st𝐶)) ↔ 1 ≤ ((♯‘(2nd𝐶)) − 1)))
9 1red 10634 . . . . . . . . . . . . 13 ((♯‘(2nd𝐶)) ∈ ℕ0 → 1 ∈ ℝ)
10 nn0re 11898 . . . . . . . . . . . . 13 ((♯‘(2nd𝐶)) ∈ ℕ0 → (♯‘(2nd𝐶)) ∈ ℝ)
119, 9, 10leaddsub2d 11234 . . . . . . . . . . . 12 ((♯‘(2nd𝐶)) ∈ ℕ0 → ((1 + 1) ≤ (♯‘(2nd𝐶)) ↔ 1 ≤ ((♯‘(2nd𝐶)) − 1)))
12 1p1e2 11754 . . . . . . . . . . . . . 14 (1 + 1) = 2
1312breq1i 5064 . . . . . . . . . . . . 13 ((1 + 1) ≤ (♯‘(2nd𝐶)) ↔ 2 ≤ (♯‘(2nd𝐶)))
1413biimpi 218 . . . . . . . . . . . 12 ((1 + 1) ≤ (♯‘(2nd𝐶)) → 2 ≤ (♯‘(2nd𝐶)))
1511, 14syl6bir 256 . . . . . . . . . . 11 ((♯‘(2nd𝐶)) ∈ ℕ0 → (1 ≤ ((♯‘(2nd𝐶)) − 1) → 2 ≤ (♯‘(2nd𝐶))))
164, 5, 153syl 18 . . . . . . . . . 10 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → (1 ≤ ((♯‘(2nd𝐶)) − 1) → 2 ≤ (♯‘(2nd𝐶))))
178, 16sylbid 242 . . . . . . . . 9 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → (1 ≤ (♯‘(1st𝐶)) → 2 ≤ (♯‘(2nd𝐶))))
1817imp 409 . . . . . . . 8 (((1st𝐶)(Walks‘𝐺)(2nd𝐶) ∧ 1 ≤ (♯‘(1st𝐶))) → 2 ≤ (♯‘(2nd𝐶)))
19 ige2m1fz 12989 . . . . . . . 8 (((♯‘(2nd𝐶)) ∈ ℕ0 ∧ 2 ≤ (♯‘(2nd𝐶))) → ((♯‘(2nd𝐶)) − 1) ∈ (0...(♯‘(2nd𝐶))))
206, 18, 19syl2an2r 683 . . . . . . 7 (((1st𝐶)(Walks‘𝐺)(2nd𝐶) ∧ 1 ≤ (♯‘(1st𝐶))) → ((♯‘(2nd𝐶)) − 1) ∈ (0...(♯‘(2nd𝐶))))
21 pfxlen 14037 . . . . . . 7 (((2nd𝐶) ∈ Word (Vtx‘𝐺) ∧ ((♯‘(2nd𝐶)) − 1) ∈ (0...(♯‘(2nd𝐶)))) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = ((♯‘(2nd𝐶)) − 1))
224, 20, 21syl2an2r 683 . . . . . 6 (((1st𝐶)(Walks‘𝐺)(2nd𝐶) ∧ 1 ≤ (♯‘(1st𝐶))) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = ((♯‘(2nd𝐶)) − 1))
237eqcomd 2825 . . . . . . 7 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → ((♯‘(2nd𝐶)) − 1) = (♯‘(1st𝐶)))
2423adantr 483 . . . . . 6 (((1st𝐶)(Walks‘𝐺)(2nd𝐶) ∧ 1 ≤ (♯‘(1st𝐶))) → ((♯‘(2nd𝐶)) − 1) = (♯‘(1st𝐶)))
2522, 24eqtrd 2854 . . . . 5 (((1st𝐶)(Walks‘𝐺)(2nd𝐶) ∧ 1 ≤ (♯‘(1st𝐶))) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = (♯‘(1st𝐶)))
2625ex 415 . . . 4 ((1st𝐶)(Walks‘𝐺)(2nd𝐶) → (1 ≤ (♯‘(1st𝐶)) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = (♯‘(1st𝐶))))
272, 26sylbi 219 . . 3 (𝐶 ∈ (Walks‘𝐺) → (1 ≤ (♯‘(1st𝐶)) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = (♯‘(1st𝐶))))
281, 27syl 17 . 2 (𝐶 ∈ (ClWalks‘𝐺) → (1 ≤ (♯‘(1st𝐶)) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = (♯‘(1st𝐶))))
2928imp 409 1 ((𝐶 ∈ (ClWalks‘𝐺) ∧ 1 ≤ (♯‘(1st𝐶))) → (♯‘((2nd𝐶) prefix ((♯‘(2nd𝐶)) − 1))) = (♯‘(1st𝐶)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 398   = wceq 1531  wcel 2108   class class class wbr 5057  cfv 6348  (class class class)co 7148  1st c1st 7679  2nd c2nd 7680  0cc0 10529  1c1 10530   + caddc 10532  cle 10668  cmin 10862  2c2 11684  0cn0 11889  ...cfz 12884  chash 13682  Word cword 13853   prefix cpfx 14024  Vtxcvtx 26773  Walkscwlks 27370  ClWalkscclwlks 27543
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1790  ax-4 1804  ax-5 1905  ax-6 1964  ax-7 2009  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2154  ax-12 2170  ax-ext 2791  ax-rep 5181  ax-sep 5194  ax-nul 5201  ax-pow 5257  ax-pr 5320  ax-un 7453  ax-cnex 10585  ax-resscn 10586  ax-1cn 10587  ax-icn 10588  ax-addcl 10589  ax-addrcl 10590  ax-mulcl 10591  ax-mulrcl 10592  ax-mulcom 10593  ax-addass 10594  ax-mulass 10595  ax-distr 10596  ax-i2m1 10597  ax-1ne0 10598  ax-1rid 10599  ax-rnegex 10600  ax-rrecex 10601  ax-cnre 10602  ax-pre-lttri 10603  ax-pre-lttrn 10604  ax-pre-ltadd 10605  ax-pre-mulgt0 10606
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-ifp 1058  df-3or 1083  df-3an 1084  df-tru 1534  df-ex 1775  df-nf 1779  df-sb 2064  df-mo 2616  df-eu 2648  df-clab 2798  df-cleq 2812  df-clel 2891  df-nfc 2961  df-ne 3015  df-nel 3122  df-ral 3141  df-rex 3142  df-reu 3143  df-rab 3145  df-v 3495  df-sbc 3771  df-csb 3882  df-dif 3937  df-un 3939  df-in 3941  df-ss 3950  df-pss 3952  df-nul 4290  df-if 4466  df-pw 4539  df-sn 4560  df-pr 4562  df-tp 4564  df-op 4566  df-uni 4831  df-int 4868  df-iun 4912  df-br 5058  df-opab 5120  df-mpt 5138  df-tr 5164  df-id 5453  df-eprel 5458  df-po 5467  df-so 5468  df-fr 5507  df-we 5509  df-xp 5554  df-rel 5555  df-cnv 5556  df-co 5557  df-dm 5558  df-rn 5559  df-res 5560  df-ima 5561  df-pred 6141  df-ord 6187  df-on 6188  df-lim 6189  df-suc 6190  df-iota 6307  df-fun 6350  df-fn 6351  df-f 6352  df-f1 6353  df-fo 6354  df-f1o 6355  df-fv 6356  df-riota 7106  df-ov 7151  df-oprab 7152  df-mpo 7153  df-om 7573  df-1st 7681  df-2nd 7682  df-wrecs 7939  df-recs 8000  df-rdg 8038  df-1o 8094  df-oadd 8098  df-er 8281  df-map 8400  df-en 8502  df-dom 8503  df-sdom 8504  df-fin 8505  df-card 9360  df-pnf 10669  df-mnf 10670  df-xr 10671  df-ltxr 10672  df-le 10673  df-sub 10864  df-neg 10865  df-nn 11631  df-2 11692  df-n0 11890  df-z 11974  df-uz 12236  df-fz 12885  df-fzo 13026  df-hash 13683  df-word 13854  df-substr 13995  df-pfx 14025  df-wlks 27373  df-clwlks 27544
This theorem is referenced by:  clwlknf1oclwwlkn  27855
  Copyright terms: Public domain W3C validator