Metamath Proof Explorer


Theorem clwlkclwwlk2

Description: A closed walk corresponds to a closed walk as word in a simple pseudograph. (Contributed by Alexander van der Vekens, 22-Jun-2018) (Revised by AV, 24-Apr-2021) (Proof shortened by AV, 2-Nov-2022)

Ref Expression
Hypotheses clwlkclwwlk.v V=VtxG
clwlkclwwlk.e E=iEdgG
Assertion clwlkclwwlk2 GUSHGraphPWordV1PffClWalksGP++⟨“P0”⟩PClWWalksG

Proof

Step Hyp Ref Expression
1 clwlkclwwlk.v V=VtxG
2 clwlkclwwlk.e E=iEdgG
3 simp1 GUSHGraphPWordV1PGUSHGraph
4 wrdsymb1 PWordV1PP0V
5 4 s1cld PWordV1P⟨“P0”⟩WordV
6 ccatcl PWordV⟨“P0”⟩WordVP++⟨“P0”⟩WordV
7 5 6 syldan PWordV1PP++⟨“P0”⟩WordV
8 7 3adant1 GUSHGraphPWordV1PP++⟨“P0”⟩WordV
9 lencl PWordVP0
10 1e2m1 1=21
11 10 breq1i 1P21P
12 2re 2
13 12 a1i P02
14 1red P01
15 nn0re P0P
16 13 14 15 lesubaddd P021P2P+1
17 11 16 bitrid P01P2P+1
18 9 17 syl PWordV1P2P+1
19 18 biimpa PWordV1P2P+1
20 s1len ⟨“P0”⟩=1
21 20 oveq2i P+⟨“P0”⟩=P+1
22 19 21 breqtrrdi PWordV1P2P+⟨“P0”⟩
23 ccatlen PWordV⟨“P0”⟩WordVP++⟨“P0”⟩=P+⟨“P0”⟩
24 5 23 syldan PWordV1PP++⟨“P0”⟩=P+⟨“P0”⟩
25 22 24 breqtrrd PWordV1P2P++⟨“P0”⟩
26 25 3adant1 GUSHGraphPWordV1P2P++⟨“P0”⟩
27 1 2 clwlkclwwlk GUSHGraphP++⟨“P0”⟩WordV2P++⟨“P0”⟩ffClWalksGP++⟨“P0”⟩lastSP++⟨“P0”⟩=P++⟨“P0”⟩0P++⟨“P0”⟩prefixP++⟨“P0”⟩1ClWWalksG
28 3 8 26 27 syl3anc GUSHGraphPWordV1PffClWalksGP++⟨“P0”⟩lastSP++⟨“P0”⟩=P++⟨“P0”⟩0P++⟨“P0”⟩prefixP++⟨“P0”⟩1ClWWalksG
29 wrdlenccats1lenm1 PWordVP++⟨“P0”⟩1=P
30 29 oveq2d PWordVP++⟨“P0”⟩prefixP++⟨“P0”⟩1=P++⟨“P0”⟩prefixP
31 30 adantr PWordV1PP++⟨“P0”⟩prefixP++⟨“P0”⟩1=P++⟨“P0”⟩prefixP
32 simpl PWordV1PPWordV
33 eqidd PWordV1PP=P
34 pfxccatid PWordV⟨“P0”⟩WordVP=PP++⟨“P0”⟩prefixP=P
35 32 5 33 34 syl3anc PWordV1PP++⟨“P0”⟩prefixP=P
36 31 35 eqtr2d PWordV1PP=P++⟨“P0”⟩prefixP++⟨“P0”⟩1
37 36 eleq1d PWordV1PPClWWalksGP++⟨“P0”⟩prefixP++⟨“P0”⟩1ClWWalksG
38 lswccats1fst PWordV1PlastSP++⟨“P0”⟩=P++⟨“P0”⟩0
39 38 biantrurd PWordV1PP++⟨“P0”⟩prefixP++⟨“P0”⟩1ClWWalksGlastSP++⟨“P0”⟩=P++⟨“P0”⟩0P++⟨“P0”⟩prefixP++⟨“P0”⟩1ClWWalksG
40 37 39 bitr2d PWordV1PlastSP++⟨“P0”⟩=P++⟨“P0”⟩0P++⟨“P0”⟩prefixP++⟨“P0”⟩1ClWWalksGPClWWalksG
41 40 3adant1 GUSHGraphPWordV1PlastSP++⟨“P0”⟩=P++⟨“P0”⟩0P++⟨“P0”⟩prefixP++⟨“P0”⟩1ClWWalksGPClWWalksG
42 28 41 bitrd GUSHGraphPWordV1PffClWalksGP++⟨“P0”⟩PClWWalksG