Proof of Theorem spthonepeq
Step | Hyp | Ref
| Expression |
1 | | eqid 2738 |
. . 3
⊢
(Vtx‘𝐺) =
(Vtx‘𝐺) |
2 | 1 | spthonprop 28113 |
. 2
⊢ (𝐹(𝐴(SPathsOn‘𝐺)𝐵)𝑃 → ((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃))) |
3 | 1 | istrlson 28075 |
. . . . . 6
⊢ (((𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ↔ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃))) |
4 | 3 | 3adantl1 1165 |
. . . . 5
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ↔ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃))) |
5 | | isspth 28092 |
. . . . . 6
⊢ (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃)) |
6 | 5 | a1i 11 |
. . . . 5
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃))) |
7 | 4, 6 | anbi12d 631 |
. . . 4
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → ((𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃) ↔ ((𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃) ∧ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃)))) |
8 | 1 | wlkonprop 28026 |
. . . . . . . 8
⊢ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 → ((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵))) |
9 | | wlkcl 27982 |
. . . . . . . . . . . . 13
⊢ (𝐹(Walks‘𝐺)𝑃 → (♯‘𝐹) ∈
ℕ0) |
10 | 1 | wlkp 27983 |
. . . . . . . . . . . . 13
⊢ (𝐹(Walks‘𝐺)𝑃 → 𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺)) |
11 | | df-f1 6438 |
. . . . . . . . . . . . . . . 16
⊢ (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) ↔ (𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) ∧ Fun ◡𝑃)) |
12 | | eqeq2 2750 |
. . . . . . . . . . . . . . . . . 18
⊢ (𝐴 = 𝐵 → ((𝑃‘0) = 𝐴 ↔ (𝑃‘0) = 𝐵)) |
13 | | eqtr3 2764 |
. . . . . . . . . . . . . . . . . . . 20
⊢ (((𝑃‘(♯‘𝐹)) = 𝐵 ∧ (𝑃‘0) = 𝐵) → (𝑃‘(♯‘𝐹)) = (𝑃‘0)) |
14 | | elnn0uz 12623 |
. . . . . . . . . . . . . . . . . . . . . . . . 25
⊢
((♯‘𝐹)
∈ ℕ0 ↔ (♯‘𝐹) ∈
(ℤ≥‘0)) |
15 | | eluzfz2 13264 |
. . . . . . . . . . . . . . . . . . . . . . . . 25
⊢
((♯‘𝐹)
∈ (ℤ≥‘0) → (♯‘𝐹) ∈ (0...(♯‘𝐹))) |
16 | 14, 15 | sylbi 216 |
. . . . . . . . . . . . . . . . . . . . . . . 24
⊢
((♯‘𝐹)
∈ ℕ0 → (♯‘𝐹) ∈ (0...(♯‘𝐹))) |
17 | | 0elfz 13353 |
. . . . . . . . . . . . . . . . . . . . . . . 24
⊢
((♯‘𝐹)
∈ ℕ0 → 0 ∈ (0...(♯‘𝐹))) |
18 | 16, 17 | jca 512 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢
((♯‘𝐹)
∈ ℕ0 → ((♯‘𝐹) ∈ (0...(♯‘𝐹)) ∧ 0 ∈
(0...(♯‘𝐹)))) |
19 | | f1veqaeq 7130 |
. . . . . . . . . . . . . . . . . . . . . . 23
⊢ ((𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) ∧ ((♯‘𝐹) ∈ (0...(♯‘𝐹)) ∧ 0 ∈
(0...(♯‘𝐹))))
→ ((𝑃‘(♯‘𝐹)) = (𝑃‘0) → (♯‘𝐹) = 0)) |
20 | 18, 19 | sylan2 593 |
. . . . . . . . . . . . . . . . . . . . . 22
⊢ ((𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) ∧ (♯‘𝐹) ∈ ℕ0) → ((𝑃‘(♯‘𝐹)) = (𝑃‘0) → (♯‘𝐹) = 0)) |
21 | 20 | ex 413 |
. . . . . . . . . . . . . . . . . . . . 21
⊢ (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → ((♯‘𝐹) ∈ ℕ0 → ((𝑃‘(♯‘𝐹)) = (𝑃‘0) → (♯‘𝐹) = 0))) |
22 | 21 | com13 88 |
. . . . . . . . . . . . . . . . . . . 20
⊢ ((𝑃‘(♯‘𝐹)) = (𝑃‘0) → ((♯‘𝐹) ∈ ℕ0
→ (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → (♯‘𝐹) = 0))) |
23 | 13, 22 | syl 17 |
. . . . . . . . . . . . . . . . . . 19
⊢ (((𝑃‘(♯‘𝐹)) = 𝐵 ∧ (𝑃‘0) = 𝐵) → ((♯‘𝐹) ∈ ℕ0 → (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → (♯‘𝐹) = 0))) |
24 | 23 | expcom 414 |
. . . . . . . . . . . . . . . . . 18
⊢ ((𝑃‘0) = 𝐵 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → (♯‘𝐹) = 0)))) |
25 | 12, 24 | syl6bi 252 |
. . . . . . . . . . . . . . . . 17
⊢ (𝐴 = 𝐵 → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → (♯‘𝐹) = 0))))) |
26 | 25 | com15 101 |
. . . . . . . . . . . . . . . 16
⊢ (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝐴 = 𝐵 → (♯‘𝐹) = 0))))) |
27 | 11, 26 | sylbir 234 |
. . . . . . . . . . . . . . 15
⊢ ((𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) ∧ Fun ◡𝑃) → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝐴 = 𝐵 → (♯‘𝐹) = 0))))) |
28 | 27 | expcom 414 |
. . . . . . . . . . . . . 14
⊢ (Fun
◡𝑃 → (𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝐴 = 𝐵 → (♯‘𝐹) = 0)))))) |
29 | 28 | com15 101 |
. . . . . . . . . . . . 13
⊢
((♯‘𝐹)
∈ ℕ0 → (𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → (Fun ◡𝑃 → (𝐴 = 𝐵 → (♯‘𝐹) = 0)))))) |
30 | 9, 10, 29 | sylc 65 |
. . . . . . . . . . . 12
⊢ (𝐹(Walks‘𝐺)𝑃 → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → (Fun ◡𝑃 → (𝐴 = 𝐵 → (♯‘𝐹) = 0))))) |
31 | 30 | 3imp1 1346 |
. . . . . . . . . . 11
⊢ (((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ∧ Fun ◡𝑃) → (𝐴 = 𝐵 → (♯‘𝐹) = 0)) |
32 | | fveqeq2 6783 |
. . . . . . . . . . . . . . . 16
⊢
((♯‘𝐹) =
0 → ((𝑃‘(♯‘𝐹)) = 𝐵 ↔ (𝑃‘0) = 𝐵)) |
33 | 32 | anbi2d 629 |
. . . . . . . . . . . . . . 15
⊢
((♯‘𝐹) =
0 → (((𝑃‘0) =
𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ↔ ((𝑃‘0) = 𝐴 ∧ (𝑃‘0) = 𝐵))) |
34 | | eqtr2 2762 |
. . . . . . . . . . . . . . 15
⊢ (((𝑃‘0) = 𝐴 ∧ (𝑃‘0) = 𝐵) → 𝐴 = 𝐵) |
35 | 33, 34 | syl6bi 252 |
. . . . . . . . . . . . . 14
⊢
((♯‘𝐹) =
0 → (((𝑃‘0) =
𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → 𝐴 = 𝐵)) |
36 | 35 | com12 32 |
. . . . . . . . . . . . 13
⊢ (((𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → ((♯‘𝐹) = 0 → 𝐴 = 𝐵)) |
37 | 36 | 3adant1 1129 |
. . . . . . . . . . . 12
⊢ ((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → ((♯‘𝐹) = 0 → 𝐴 = 𝐵)) |
38 | 37 | adantr 481 |
. . . . . . . . . . 11
⊢ (((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ∧ Fun ◡𝑃) → ((♯‘𝐹) = 0 → 𝐴 = 𝐵)) |
39 | 31, 38 | impbid 211 |
. . . . . . . . . 10
⊢ (((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ∧ Fun ◡𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) |
40 | 39 | ex 413 |
. . . . . . . . 9
⊢ ((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → (Fun ◡𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) |
41 | 40 | 3ad2ant3 1134 |
. . . . . . . 8
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵)) → (Fun ◡𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) |
42 | 8, 41 | syl 17 |
. . . . . . 7
⊢ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 → (Fun ◡𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) |
43 | 42 | adantld 491 |
. . . . . 6
⊢ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 → ((𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) |
44 | 43 | adantr 481 |
. . . . 5
⊢ ((𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃) → ((𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) |
45 | 44 | imp 407 |
. . . 4
⊢ (((𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃) ∧ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃)) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) |
46 | 7, 45 | syl6bi 252 |
. . 3
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → ((𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) |
47 | 46 | 3impia 1116 |
. 2
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃)) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) |
48 | 2, 47 | syl 17 |
1
⊢ (𝐹(𝐴(SPathsOn‘𝐺)𝐵)𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) |