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

Theorem clwlkclwwlk2OLD 27333
 Description: Obsolete proof of clwlkclwwlk2 27332 as of 12-Oct-2022. (Contributed by Alexander van der Vekens, 22-Jun-2018.) (Revised by AV, 24-Apr-2021.) (Proof shortened by AV, 7-Mar-2022.) (New usage is discouraged.) (Proof modification is discouraged.)
Hypotheses
Ref Expression
clwlkclwwlk.v 𝑉 = (Vtx‘𝐺)
clwlkclwwlk.e 𝐸 = (iEdg‘𝐺)
Assertion
Ref Expression
clwlkclwwlk2OLD ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (∃𝑓 𝑓(ClWalks‘𝐺)(𝑃 ++ ⟨“(𝑃‘0)”⟩) ↔ 𝑃 ∈ (ClWWalks‘𝐺)))
Distinct variable groups:   𝑓,𝐸   𝑃,𝑓   𝑓,𝑉   𝑓,𝐺

Proof of Theorem clwlkclwwlk2OLD
StepHypRef Expression
1 lswccats1fst 13694 . . . 4 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (lastS‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) = ((𝑃 ++ ⟨“(𝑃‘0)”⟩)‘0))
213adant1 1166 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (lastS‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) = ((𝑃 ++ ⟨“(𝑃‘0)”⟩)‘0))
32biantrurd 530 . 2 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩) ∈ (ClWWalks‘𝐺) ↔ ((lastS‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) = ((𝑃 ++ ⟨“(𝑃‘0)”⟩)‘0) ∧ ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩) ∈ (ClWWalks‘𝐺))))
4 wrdlenccats1lenm1 13681 . . . . . . . 8 (𝑃 ∈ Word 𝑉 → ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1) = (♯‘𝑃))
54adantr 474 . . . . . . 7 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1) = (♯‘𝑃))
65opeq2d 4629 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩ = ⟨0, (♯‘𝑃)⟩)
76oveq2d 6920 . . . . 5 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩) = ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, (♯‘𝑃)⟩))
8 simpl 476 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 𝑃 ∈ Word 𝑉)
9 wrdsymb1 13612 . . . . . . 7 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (𝑃‘0) ∈ 𝑉)
109s1cld 13662 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → ⟨“(𝑃‘0)”⟩ ∈ Word 𝑉)
11 eqidd 2825 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (♯‘𝑃) = (♯‘𝑃))
12 swrdccatidOLD 13844 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ ⟨“(𝑃‘0)”⟩ ∈ Word 𝑉 ∧ (♯‘𝑃) = (♯‘𝑃)) → ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, (♯‘𝑃)⟩) = 𝑃)
138, 10, 11, 12syl3anc 1496 . . . . 5 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, (♯‘𝑃)⟩) = 𝑃)
147, 13eqtr2d 2861 . . . 4 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 𝑃 = ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩))
15143adant1 1166 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 𝑃 = ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩))
1615eleq1d 2890 . 2 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (𝑃 ∈ (ClWWalks‘𝐺) ↔ ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩) ∈ (ClWWalks‘𝐺)))
17 simp1 1172 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 𝐺 ∈ USPGraph)
18 simp2 1173 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 𝑃 ∈ Word 𝑉)
19103adant1 1166 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → ⟨“(𝑃‘0)”⟩ ∈ Word 𝑉)
20 ccatcl 13633 . . . 4 ((𝑃 ∈ Word 𝑉 ∧ ⟨“(𝑃‘0)”⟩ ∈ Word 𝑉) → (𝑃 ++ ⟨“(𝑃‘0)”⟩) ∈ Word 𝑉)
2118, 19, 20syl2anc 581 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (𝑃 ++ ⟨“(𝑃‘0)”⟩) ∈ Word 𝑉)
22 lencl 13592 . . . . . . . 8 (𝑃 ∈ Word 𝑉 → (♯‘𝑃) ∈ ℕ0)
23 1e2m1 11484 . . . . . . . . . . 11 1 = (2 − 1)
2423a1i 11 . . . . . . . . . 10 ((♯‘𝑃) ∈ ℕ0 → 1 = (2 − 1))
2524breq1d 4882 . . . . . . . . 9 ((♯‘𝑃) ∈ ℕ0 → (1 ≤ (♯‘𝑃) ↔ (2 − 1) ≤ (♯‘𝑃)))
26 2re 11424 . . . . . . . . . . 11 2 ∈ ℝ
2726a1i 11 . . . . . . . . . 10 ((♯‘𝑃) ∈ ℕ0 → 2 ∈ ℝ)
28 1red 10356 . . . . . . . . . 10 ((♯‘𝑃) ∈ ℕ0 → 1 ∈ ℝ)
29 nn0re 11627 . . . . . . . . . 10 ((♯‘𝑃) ∈ ℕ0 → (♯‘𝑃) ∈ ℝ)
3027, 28, 29lesubaddd 10948 . . . . . . . . 9 ((♯‘𝑃) ∈ ℕ0 → ((2 − 1) ≤ (♯‘𝑃) ↔ 2 ≤ ((♯‘𝑃) + 1)))
3125, 30bitrd 271 . . . . . . . 8 ((♯‘𝑃) ∈ ℕ0 → (1 ≤ (♯‘𝑃) ↔ 2 ≤ ((♯‘𝑃) + 1)))
3222, 31syl 17 . . . . . . 7 (𝑃 ∈ Word 𝑉 → (1 ≤ (♯‘𝑃) ↔ 2 ≤ ((♯‘𝑃) + 1)))
3332biimpa 470 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 2 ≤ ((♯‘𝑃) + 1))
34 s1len 13665 . . . . . . 7 (♯‘⟨“(𝑃‘0)”⟩) = 1
3534oveq2i 6915 . . . . . 6 ((♯‘𝑃) + (♯‘⟨“(𝑃‘0)”⟩)) = ((♯‘𝑃) + 1)
3633, 35syl6breqr 4914 . . . . 5 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 2 ≤ ((♯‘𝑃) + (♯‘⟨“(𝑃‘0)”⟩)))
37363adant1 1166 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 2 ≤ ((♯‘𝑃) + (♯‘⟨“(𝑃‘0)”⟩)))
388, 10jca 509 . . . . . 6 ((𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (𝑃 ∈ Word 𝑉 ∧ ⟨“(𝑃‘0)”⟩ ∈ Word 𝑉))
39383adant1 1166 . . . . 5 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (𝑃 ∈ Word 𝑉 ∧ ⟨“(𝑃‘0)”⟩ ∈ Word 𝑉))
40 ccatlen 13634 . . . . 5 ((𝑃 ∈ Word 𝑉 ∧ ⟨“(𝑃‘0)”⟩ ∈ Word 𝑉) → (♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) = ((♯‘𝑃) + (♯‘⟨“(𝑃‘0)”⟩)))
4139, 40syl 17 . . . 4 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) = ((♯‘𝑃) + (♯‘⟨“(𝑃‘0)”⟩)))
4237, 41breqtrrd 4900 . . 3 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → 2 ≤ (♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)))
43 clwlkclwwlk.v . . . 4 𝑉 = (Vtx‘𝐺)
44 clwlkclwwlk.e . . . 4 𝐸 = (iEdg‘𝐺)
4543, 44clwlkclwwlkOLD 27331 . . 3 ((𝐺 ∈ USPGraph ∧ (𝑃 ++ ⟨“(𝑃‘0)”⟩) ∈ Word 𝑉 ∧ 2 ≤ (♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩))) → (∃𝑓 𝑓(ClWalks‘𝐺)(𝑃 ++ ⟨“(𝑃‘0)”⟩) ↔ ((lastS‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) = ((𝑃 ++ ⟨“(𝑃‘0)”⟩)‘0) ∧ ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩) ∈ (ClWWalks‘𝐺))))
4617, 21, 42, 45syl3anc 1496 . 2 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (∃𝑓 𝑓(ClWalks‘𝐺)(𝑃 ++ ⟨“(𝑃‘0)”⟩) ↔ ((lastS‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) = ((𝑃 ++ ⟨“(𝑃‘0)”⟩)‘0) ∧ ((𝑃 ++ ⟨“(𝑃‘0)”⟩) substr ⟨0, ((♯‘(𝑃 ++ ⟨“(𝑃‘0)”⟩)) − 1)⟩) ∈ (ClWWalks‘𝐺))))
473, 16, 463bitr4rd 304 1 ((𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑃)) → (∃𝑓 𝑓(ClWalks‘𝐺)(𝑃 ++ ⟨“(𝑃‘0)”⟩) ↔ 𝑃 ∈ (ClWWalks‘𝐺)))
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 198   ∧ wa 386   ∧ w3a 1113   = wceq 1658  ∃wex 1880   ∈ wcel 2166  ⟨cop 4402   class class class wbr 4872  ‘cfv 6122  (class class class)co 6904  ℝcr 10250  0cc0 10251  1c1 10252   + caddc 10254   ≤ cle 10391   − cmin 10584  2c2 11405  ℕ0cn0 11617  ♯chash 13409  Word cword 13573  lastSclsw 13621   ++ cconcat 13629  ⟨“cs1 13654   substr csubstr 13699  Vtxcvtx 26293  iEdgciedg 26294  USPGraphcuspgr 26446  ClWalkscclwlks 27071  ClWWalkscclwwlk 27309 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1896  ax-4 1910  ax-5 2011  ax-6 2077  ax-7 2114  ax-8 2168  ax-9 2175  ax-10 2194  ax-11 2209  ax-12 2222  ax-13 2390  ax-ext 2802  ax-rep 4993  ax-sep 5004  ax-nul 5012  ax-pow 5064  ax-pr 5126  ax-un 7208  ax-cnex 10307  ax-resscn 10308  ax-1cn 10309  ax-icn 10310  ax-addcl 10311  ax-addrcl 10312  ax-mulcl 10313  ax-mulrcl 10314  ax-mulcom 10315  ax-addass 10316  ax-mulass 10317  ax-distr 10318  ax-i2m1 10319  ax-1ne0 10320  ax-1rid 10321  ax-rnegex 10322  ax-rrecex 10323  ax-cnre 10324  ax-pre-lttri 10325  ax-pre-lttrn 10326  ax-pre-ltadd 10327  ax-pre-mulgt0 10328 This theorem depends on definitions:  df-bi 199  df-an 387  df-or 881  df-ifp 1092  df-3or 1114  df-3an 1115  df-tru 1662  df-ex 1881  df-nf 1885  df-sb 2070  df-mo 2604  df-eu 2639  df-clab 2811  df-cleq 2817  df-clel 2820  df-nfc 2957  df-ne 2999  df-nel 3102  df-ral 3121  df-rex 3122  df-reu 3123  df-rmo 3124  df-rab 3125  df-v 3415  df-sbc 3662  df-csb 3757  df-dif 3800  df-un 3802  df-in 3804  df-ss 3811  df-pss 3813  df-nul 4144  df-if 4306  df-pw 4379  df-sn 4397  df-pr 4399  df-tp 4401  df-op 4403  df-uni 4658  df-int 4697  df-iun 4741  df-br 4873  df-opab 4935  df-mpt 4952  df-tr 4975  df-id 5249  df-eprel 5254  df-po 5262  df-so 5263  df-fr 5300  df-we 5302  df-xp 5347  df-rel 5348  df-cnv 5349  df-co 5350  df-dm 5351  df-rn 5352  df-res 5353  df-ima 5354  df-pred 5919  df-ord 5965  df-on 5966  df-lim 5967  df-suc 5968  df-iota 6085  df-fun 6124  df-fn 6125  df-f 6126  df-f1 6127  df-fo 6128  df-f1o 6129  df-fv 6130  df-riota 6865  df-ov 6907  df-oprab 6908  df-mpt2 6909  df-om 7326  df-1st 7427  df-2nd 7428  df-wrecs 7671  df-recs 7733  df-rdg 7771  df-1o 7825  df-2o 7826  df-oadd 7829  df-er 8008  df-map 8123  df-pm 8124  df-en 8222  df-dom 8223  df-sdom 8224  df-fin 8225  df-card 9077  df-cda 9304  df-pnf 10392  df-mnf 10393  df-xr 10394  df-ltxr 10395  df-le 10396  df-sub 10586  df-neg 10587  df-nn 11350  df-2 11413  df-n0 11618  df-xnn0 11690  df-z 11704  df-uz 11968  df-rp 12112  df-fz 12619  df-fzo 12760  df-hash 13410  df-word 13574  df-lsw 13622  df-concat 13630  df-s1 13655  df-substr 13700  df-edg 26345  df-uhgr 26355  df-upgr 26379  df-uspgr 26448  df-wlks 26896  df-clwlks 27072  df-clwwlk 27310 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator