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