| Step |
Hyp |
Ref |
Expression |
| 1 |
|
clwlkclwwlk.v |
⊢ 𝑉 = ( Vtx ‘ 𝐺 ) |
| 2 |
|
clwlkclwwlk.e |
⊢ 𝐸 = ( iEdg ‘ 𝐺 ) |
| 3 |
|
simp1 |
⊢ ( ( 𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 𝐺 ∈ USPGraph ) |
| 4 |
|
wrdsymb1 |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( 𝑃 ‘ 0 ) ∈ 𝑉 ) |
| 5 |
4
|
s1cld |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 〈“ ( 𝑃 ‘ 0 ) ”〉 ∈ Word 𝑉 ) |
| 6 |
|
ccatcl |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 〈“ ( 𝑃 ‘ 0 ) ”〉 ∈ Word 𝑉 ) → ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ∈ Word 𝑉 ) |
| 7 |
5 6
|
syldan |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ∈ Word 𝑉 ) |
| 8 |
7
|
3adant1 |
⊢ ( ( 𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ∈ Word 𝑉 ) |
| 9 |
|
lencl |
⊢ ( 𝑃 ∈ Word 𝑉 → ( ♯ ‘ 𝑃 ) ∈ ℕ0 ) |
| 10 |
|
1e2m1 |
⊢ 1 = ( 2 − 1 ) |
| 11 |
10
|
breq1i |
⊢ ( 1 ≤ ( ♯ ‘ 𝑃 ) ↔ ( 2 − 1 ) ≤ ( ♯ ‘ 𝑃 ) ) |
| 12 |
|
2re |
⊢ 2 ∈ ℝ |
| 13 |
12
|
a1i |
⊢ ( ( ♯ ‘ 𝑃 ) ∈ ℕ0 → 2 ∈ ℝ ) |
| 14 |
|
1red |
⊢ ( ( ♯ ‘ 𝑃 ) ∈ ℕ0 → 1 ∈ ℝ ) |
| 15 |
|
nn0re |
⊢ ( ( ♯ ‘ 𝑃 ) ∈ ℕ0 → ( ♯ ‘ 𝑃 ) ∈ ℝ ) |
| 16 |
13 14 15
|
lesubaddd |
⊢ ( ( ♯ ‘ 𝑃 ) ∈ ℕ0 → ( ( 2 − 1 ) ≤ ( ♯ ‘ 𝑃 ) ↔ 2 ≤ ( ( ♯ ‘ 𝑃 ) + 1 ) ) ) |
| 17 |
11 16
|
bitrid |
⊢ ( ( ♯ ‘ 𝑃 ) ∈ ℕ0 → ( 1 ≤ ( ♯ ‘ 𝑃 ) ↔ 2 ≤ ( ( ♯ ‘ 𝑃 ) + 1 ) ) ) |
| 18 |
9 17
|
syl |
⊢ ( 𝑃 ∈ Word 𝑉 → ( 1 ≤ ( ♯ ‘ 𝑃 ) ↔ 2 ≤ ( ( ♯ ‘ 𝑃 ) + 1 ) ) ) |
| 19 |
18
|
biimpa |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 2 ≤ ( ( ♯ ‘ 𝑃 ) + 1 ) ) |
| 20 |
|
s1len |
⊢ ( ♯ ‘ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) = 1 |
| 21 |
20
|
oveq2i |
⊢ ( ( ♯ ‘ 𝑃 ) + ( ♯ ‘ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( ♯ ‘ 𝑃 ) + 1 ) |
| 22 |
19 21
|
breqtrrdi |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 2 ≤ ( ( ♯ ‘ 𝑃 ) + ( ♯ ‘ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) ) |
| 23 |
|
ccatlen |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 〈“ ( 𝑃 ‘ 0 ) ”〉 ∈ Word 𝑉 ) → ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( ♯ ‘ 𝑃 ) + ( ♯ ‘ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) ) |
| 24 |
5 23
|
syldan |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( ♯ ‘ 𝑃 ) + ( ♯ ‘ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) ) |
| 25 |
22 24
|
breqtrrd |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 2 ≤ ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) ) |
| 26 |
25
|
3adant1 |
⊢ ( ( 𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 2 ≤ ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) ) |
| 27 |
1 2
|
clwlkclwwlk |
⊢ ( ( 𝐺 ∈ USPGraph ∧ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ∈ Word 𝑉 ∧ 2 ≤ ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) ) → ( ∃ 𝑓 𝑓 ( ClWalks ‘ 𝐺 ) ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ↔ ( ( lastS ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ‘ 0 ) ∧ ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ∈ ( ClWWalks ‘ 𝐺 ) ) ) ) |
| 28 |
3 8 26 27
|
syl3anc |
⊢ ( ( 𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ∃ 𝑓 𝑓 ( ClWalks ‘ 𝐺 ) ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ↔ ( ( lastS ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ‘ 0 ) ∧ ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ∈ ( ClWWalks ‘ 𝐺 ) ) ) ) |
| 29 |
|
wrdlenccats1lenm1 |
⊢ ( 𝑃 ∈ Word 𝑉 → ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) = ( ♯ ‘ 𝑃 ) ) |
| 30 |
29
|
oveq2d |
⊢ ( 𝑃 ∈ Word 𝑉 → ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ♯ ‘ 𝑃 ) ) ) |
| 31 |
30
|
adantr |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ♯ ‘ 𝑃 ) ) ) |
| 32 |
|
simpl |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 𝑃 ∈ Word 𝑉 ) |
| 33 |
|
eqidd |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ♯ ‘ 𝑃 ) = ( ♯ ‘ 𝑃 ) ) |
| 34 |
|
pfxccatid |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 〈“ ( 𝑃 ‘ 0 ) ”〉 ∈ Word 𝑉 ∧ ( ♯ ‘ 𝑃 ) = ( ♯ ‘ 𝑃 ) ) → ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ♯ ‘ 𝑃 ) ) = 𝑃 ) |
| 35 |
32 5 33 34
|
syl3anc |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ♯ ‘ 𝑃 ) ) = 𝑃 ) |
| 36 |
31 35
|
eqtr2d |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → 𝑃 = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ) |
| 37 |
36
|
eleq1d |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( 𝑃 ∈ ( ClWWalks ‘ 𝐺 ) ↔ ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ∈ ( ClWWalks ‘ 𝐺 ) ) ) |
| 38 |
|
lswccats1fst |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( lastS ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ‘ 0 ) ) |
| 39 |
38
|
biantrurd |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ∈ ( ClWWalks ‘ 𝐺 ) ↔ ( ( lastS ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ‘ 0 ) ∧ ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ∈ ( ClWWalks ‘ 𝐺 ) ) ) ) |
| 40 |
37 39
|
bitr2d |
⊢ ( ( 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ( ( lastS ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ‘ 0 ) ∧ ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ∈ ( ClWWalks ‘ 𝐺 ) ) ↔ 𝑃 ∈ ( ClWWalks ‘ 𝐺 ) ) ) |
| 41 |
40
|
3adant1 |
⊢ ( ( 𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ( ( lastS ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) = ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ‘ 0 ) ∧ ( ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) prefix ( ( ♯ ‘ ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ) − 1 ) ) ∈ ( ClWWalks ‘ 𝐺 ) ) ↔ 𝑃 ∈ ( ClWWalks ‘ 𝐺 ) ) ) |
| 42 |
28 41
|
bitrd |
⊢ ( ( 𝐺 ∈ USPGraph ∧ 𝑃 ∈ Word 𝑉 ∧ 1 ≤ ( ♯ ‘ 𝑃 ) ) → ( ∃ 𝑓 𝑓 ( ClWalks ‘ 𝐺 ) ( 𝑃 ++ 〈“ ( 𝑃 ‘ 0 ) ”〉 ) ↔ 𝑃 ∈ ( ClWWalks ‘ 𝐺 ) ) ) |