| Step |
Hyp |
Ref |
Expression |
| 1 |
|
iscycl |
⊢ ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 ↔ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) ) |
| 2 |
|
pthiswlk |
⊢ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 → 𝐹 ( Walks ‘ 𝐺 ) 𝑃 ) |
| 3 |
|
eqid |
⊢ ( Vtx ‘ 𝐺 ) = ( Vtx ‘ 𝐺 ) |
| 4 |
3
|
wlkp |
⊢ ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ) |
| 5 |
|
wlkcl |
⊢ ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( ♯ ‘ 𝐹 ) ∈ ℕ0 ) |
| 6 |
|
elnnnn0c |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ ↔ ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 1 ≤ ( ♯ ‘ 𝐹 ) ) ) |
| 7 |
|
fdm |
⊢ ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → dom 𝑃 = ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 8 |
7
|
3ad2ant1 |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → dom 𝑃 = ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 9 |
8
|
difeq1d |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( ( 0 ... ( ♯ ‘ 𝐹 ) ) ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 10 |
|
nnnn0 |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ♯ ‘ 𝐹 ) ∈ ℕ0 ) |
| 11 |
|
fz0sn0fz1 |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → ( 0 ... ( ♯ ‘ 𝐹 ) ) = ( { 0 } ∪ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 12 |
10 11
|
syl |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( 0 ... ( ♯ ‘ 𝐹 ) ) = ( { 0 } ∪ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 13 |
12
|
difeq1d |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ( 0 ... ( ♯ ‘ 𝐹 ) ) ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( ( { 0 } ∪ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 14 |
|
1e0p1 |
⊢ 1 = ( 0 + 1 ) |
| 15 |
14
|
oveq1i |
⊢ ( 1 ... ( ♯ ‘ 𝐹 ) ) = ( ( 0 + 1 ) ... ( ♯ ‘ 𝐹 ) ) |
| 16 |
15
|
ineq2i |
⊢ ( { 0 } ∩ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( { 0 } ∩ ( ( 0 + 1 ) ... ( ♯ ‘ 𝐹 ) ) ) |
| 17 |
|
elnn0uz |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ↔ ( ♯ ‘ 𝐹 ) ∈ ( ℤ≥ ‘ 0 ) ) |
| 18 |
10 17
|
sylib |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ♯ ‘ 𝐹 ) ∈ ( ℤ≥ ‘ 0 ) ) |
| 19 |
|
fzpreddisj |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ( ℤ≥ ‘ 0 ) → ( { 0 } ∩ ( ( 0 + 1 ) ... ( ♯ ‘ 𝐹 ) ) ) = ∅ ) |
| 20 |
18 19
|
syl |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( { 0 } ∩ ( ( 0 + 1 ) ... ( ♯ ‘ 𝐹 ) ) ) = ∅ ) |
| 21 |
16 20
|
eqtrid |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( { 0 } ∩ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ∅ ) |
| 22 |
|
undif5 |
⊢ ( ( { 0 } ∩ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ∅ → ( ( { 0 } ∪ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = { 0 } ) |
| 23 |
21 22
|
syl |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ( { 0 } ∪ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = { 0 } ) |
| 24 |
13 23
|
eqtrd |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ( 0 ... ( ♯ ‘ 𝐹 ) ) ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = { 0 } ) |
| 25 |
24
|
3ad2ant2 |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( ( 0 ... ( ♯ ‘ 𝐹 ) ) ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = { 0 } ) |
| 26 |
9 25
|
eqtrd |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = { 0 } ) |
| 27 |
26
|
imaeq2d |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( 𝑃 “ { 0 } ) ) |
| 28 |
|
ffn |
⊢ ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → 𝑃 Fn ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 29 |
|
0elfz |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 30 |
10 29
|
syl |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 31 |
28 30
|
anim12i |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ) → ( 𝑃 Fn ( 0 ... ( ♯ ‘ 𝐹 ) ) ∧ 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 32 |
31
|
3adant3 |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 Fn ( 0 ... ( ♯ ‘ 𝐹 ) ) ∧ 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 33 |
|
fnsnfv |
⊢ ( ( 𝑃 Fn ( 0 ... ( ♯ ‘ 𝐹 ) ) ∧ 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) ) → { ( 𝑃 ‘ 0 ) } = ( 𝑃 “ { 0 } ) ) |
| 34 |
32 33
|
syl |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → { ( 𝑃 ‘ 0 ) } = ( 𝑃 “ { 0 } ) ) |
| 35 |
27 34
|
eqtr4d |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = { ( 𝑃 ‘ 0 ) } ) |
| 36 |
|
elfz1end |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ ↔ ( ♯ ‘ 𝐹 ) ∈ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) |
| 37 |
36
|
biimpi |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ♯ ‘ 𝐹 ) ∈ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) |
| 38 |
37
|
3ad2ant2 |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( ♯ ‘ 𝐹 ) ∈ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) |
| 39 |
38
|
fvresd |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ‘ ( ♯ ‘ 𝐹 ) ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) |
| 40 |
|
ffun |
⊢ ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → Fun 𝑃 ) |
| 41 |
40
|
funresd |
⊢ ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → Fun ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 42 |
41
|
3ad2ant1 |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → Fun ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 43 |
|
fz1ssfz0 |
⊢ ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ ( 0 ... ( ♯ ‘ 𝐹 ) ) |
| 44 |
43 7
|
sseqtrrid |
⊢ ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) |
| 45 |
44
|
3ad2ant1 |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) |
| 46 |
|
ssdmres |
⊢ ( ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ↔ dom ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( 1 ... ( ♯ ‘ 𝐹 ) ) ) |
| 47 |
45 46
|
sylib |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → dom ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( 1 ... ( ♯ ‘ 𝐹 ) ) ) |
| 48 |
38 47
|
eleqtrrd |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( ♯ ‘ 𝐹 ) ∈ dom ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 49 |
|
fvelrn |
⊢ ( ( Fun ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ∧ ( ♯ ‘ 𝐹 ) ∈ dom ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) → ( ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ‘ ( ♯ ‘ 𝐹 ) ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 50 |
42 48 49
|
syl2anc |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ‘ ( ♯ ‘ 𝐹 ) ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 51 |
39 50
|
eqeltrrd |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 52 |
|
eleq1 |
⊢ ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( ( 𝑃 ‘ 0 ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ↔ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 53 |
52
|
3ad2ant3 |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( ( 𝑃 ‘ 0 ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ↔ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 54 |
51 53
|
mpbird |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 ‘ 0 ) ∈ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 55 |
54
|
snssd |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → { ( 𝑃 ‘ 0 ) } ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 56 |
35 55
|
eqsstrd |
⊢ ( ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝐹 ) ∈ ℕ ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 57 |
56
|
3exp |
⊢ ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) ) |
| 58 |
57
|
com3l |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ → ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) ) |
| 59 |
6 58
|
sylbir |
⊢ ( ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 1 ≤ ( ♯ ‘ 𝐹 ) ) → ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) ) |
| 60 |
59
|
expcom |
⊢ ( 1 ≤ ( ♯ ‘ 𝐹 ) → ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) ) ) |
| 61 |
60
|
com14 |
⊢ ( 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) → ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( 1 ≤ ( ♯ ‘ 𝐹 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) ) ) |
| 62 |
4 5 61
|
sylc |
⊢ ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( 1 ≤ ( ♯ ‘ 𝐹 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) ) |
| 63 |
2 62
|
syl |
⊢ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 → ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) → ( 1 ≤ ( ♯ ‘ 𝐹 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) ) |
| 64 |
63
|
imp |
⊢ ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) → ( 1 ≤ ( ♯ ‘ 𝐹 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 65 |
1 64
|
sylbi |
⊢ ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 → ( 1 ≤ ( ♯ ‘ 𝐹 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 66 |
65
|
impcom |
⊢ ( ( 1 ≤ ( ♯ ‘ 𝐹 ) ∧ 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 ) → ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 67 |
|
imadifssran |
⊢ ( ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) → ran 𝑃 = ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 68 |
67
|
fveq2d |
⊢ ( ( 𝑃 “ ( dom 𝑃 ∖ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ⊆ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) → ( ♯ ‘ ran 𝑃 ) = ( ♯ ‘ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 69 |
66 68
|
syl |
⊢ ( ( 1 ≤ ( ♯ ‘ 𝐹 ) ∧ 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 ) → ( ♯ ‘ ran 𝑃 ) = ( ♯ ‘ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 70 |
|
cyclispth |
⊢ ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 → 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ) |
| 71 |
|
pthdifv |
⊢ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 → ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) |
| 72 |
40
|
adantl |
⊢ ( ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ) → Fun 𝑃 ) |
| 73 |
|
fzfid |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → ( 0 ... ( ♯ ‘ 𝐹 ) ) ∈ Fin ) |
| 74 |
|
fnfi |
⊢ ( ( 𝑃 Fn ( 0 ... ( ♯ ‘ 𝐹 ) ) ∧ ( 0 ... ( ♯ ‘ 𝐹 ) ) ∈ Fin ) → 𝑃 ∈ Fin ) |
| 75 |
28 73 74
|
syl2anr |
⊢ ( ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ) → 𝑃 ∈ Fin ) |
| 76 |
|
1eluzge0 |
⊢ 1 ∈ ( ℤ≥ ‘ 0 ) |
| 77 |
|
fzss1 |
⊢ ( 1 ∈ ( ℤ≥ ‘ 0 ) → ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 78 |
76 77
|
mp1i |
⊢ ( ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ) → ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 79 |
7
|
adantl |
⊢ ( ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ) → dom 𝑃 = ( 0 ... ( ♯ ‘ 𝐹 ) ) ) |
| 80 |
78 79
|
sseqtrrd |
⊢ ( ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ) → ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) |
| 81 |
72 75 80
|
3jca |
⊢ ( ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ∧ 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) ) → ( Fun 𝑃 ∧ 𝑃 ∈ Fin ∧ ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) ) |
| 82 |
5 4 81
|
syl2anc |
⊢ ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( Fun 𝑃 ∧ 𝑃 ∈ Fin ∧ ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) ) |
| 83 |
2 82
|
syl |
⊢ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 → ( Fun 𝑃 ∧ 𝑃 ∈ Fin ∧ ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) ) |
| 84 |
83
|
adantr |
⊢ ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) → ( Fun 𝑃 ∧ 𝑃 ∈ Fin ∧ ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) ) |
| 85 |
|
hashres |
⊢ ( ( Fun 𝑃 ∧ 𝑃 ∈ Fin ∧ ( 1 ... ( ♯ ‘ 𝐹 ) ) ⊆ dom 𝑃 ) → ( ♯ ‘ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( ♯ ‘ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 86 |
84 85
|
syl |
⊢ ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) → ( ♯ ‘ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( ♯ ‘ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) |
| 87 |
|
ovexd |
⊢ ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) → ( 1 ... ( ♯ ‘ 𝐹 ) ) ∈ V ) |
| 88 |
|
hashf1rn |
⊢ ( ( ( 1 ... ( ♯ ‘ 𝐹 ) ) ∈ V ∧ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) → ( ♯ ‘ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( ♯ ‘ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 89 |
87 88
|
sylancom |
⊢ ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) → ( ♯ ‘ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( ♯ ‘ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) ) |
| 90 |
2 5
|
syl |
⊢ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 → ( ♯ ‘ 𝐹 ) ∈ ℕ0 ) |
| 91 |
|
hashfz1 |
⊢ ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → ( ♯ ‘ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( ♯ ‘ 𝐹 ) ) |
| 92 |
90 91
|
syl |
⊢ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 → ( ♯ ‘ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( ♯ ‘ 𝐹 ) ) |
| 93 |
92
|
adantr |
⊢ ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) → ( ♯ ‘ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) = ( ♯ ‘ 𝐹 ) ) |
| 94 |
86 89 93
|
3eqtr3d |
⊢ ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) : ( 1 ... ( ♯ ‘ 𝐹 ) ) –1-1→ ( Vtx ‘ 𝐺 ) ) → ( ♯ ‘ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( ♯ ‘ 𝐹 ) ) |
| 95 |
70 71 94
|
syl2anc2 |
⊢ ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 → ( ♯ ‘ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( ♯ ‘ 𝐹 ) ) |
| 96 |
95
|
adantl |
⊢ ( ( 1 ≤ ( ♯ ‘ 𝐹 ) ∧ 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 ) → ( ♯ ‘ ran ( 𝑃 ↾ ( 1 ... ( ♯ ‘ 𝐹 ) ) ) ) = ( ♯ ‘ 𝐹 ) ) |
| 97 |
69 96
|
eqtrd |
⊢ ( ( 1 ≤ ( ♯ ‘ 𝐹 ) ∧ 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 ) → ( ♯ ‘ ran 𝑃 ) = ( ♯ ‘ 𝐹 ) ) |