Proof of Theorem spthonepeq
| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | eqid 2737 | . . 3
⊢
(Vtx‘𝐺) =
(Vtx‘𝐺) | 
| 2 | 1 | spthonprop 29765 | . 2
⊢ (𝐹(𝐴(SPathsOn‘𝐺)𝐵)𝑃 → ((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃))) | 
| 3 | 1 | istrlson 29725 | . . . . . 6
⊢ (((𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ↔ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃))) | 
| 4 | 3 | 3adantl1 1167 | . . . . 5
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ↔ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃))) | 
| 5 |  | isspth 29742 | . . . . . 6
⊢ (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃)) | 
| 6 | 5 | a1i 11 | . . . . 5
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃))) | 
| 7 | 4, 6 | anbi12d 632 | . . . 4
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → ((𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃) ↔ ((𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃) ∧ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃)))) | 
| 8 | 1 | wlkonprop 29676 | . . . . . . . 8
⊢ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 → ((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵))) | 
| 9 |  | wlkcl 29633 | . . . . . . . . . . . . 13
⊢ (𝐹(Walks‘𝐺)𝑃 → (♯‘𝐹) ∈
ℕ0) | 
| 10 | 1 | wlkp 29634 | . . . . . . . . . . . . 13
⊢ (𝐹(Walks‘𝐺)𝑃 → 𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺)) | 
| 11 |  | df-f1 6566 | . . . . . . . . . . . . . . . 16
⊢ (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) ↔ (𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) ∧ Fun ◡𝑃)) | 
| 12 |  | eqeq2 2749 | . . . . . . . . . . . . . . . . . 18
⊢ (𝐴 = 𝐵 → ((𝑃‘0) = 𝐴 ↔ (𝑃‘0) = 𝐵)) | 
| 13 |  | eqtr3 2763 | . . . . . . . . . . . . . . . . . . . 20
⊢ (((𝑃‘(♯‘𝐹)) = 𝐵 ∧ (𝑃‘0) = 𝐵) → (𝑃‘(♯‘𝐹)) = (𝑃‘0)) | 
| 14 |  | elnn0uz 12923 | . . . . . . . . . . . . . . . . . . . . . . . . 25
⊢
((♯‘𝐹)
∈ ℕ0 ↔ (♯‘𝐹) ∈
(ℤ≥‘0)) | 
| 15 |  | eluzfz2 13572 | . . . . . . . . . . . . . . . . . . . . . . . . 25
⊢
((♯‘𝐹)
∈ (ℤ≥‘0) → (♯‘𝐹) ∈ (0...(♯‘𝐹))) | 
| 16 | 14, 15 | sylbi 217 | . . . . . . . . . . . . . . . . . . . . . . . 24
⊢
((♯‘𝐹)
∈ ℕ0 → (♯‘𝐹) ∈ (0...(♯‘𝐹))) | 
| 17 |  | 0elfz 13664 | . . . . . . . . . . . . . . . . . . . . . . . 24
⊢
((♯‘𝐹)
∈ ℕ0 → 0 ∈ (0...(♯‘𝐹))) | 
| 18 | 16, 17 | jca 511 | . . . . . . . . . . . . . . . . . . . . . . 23
⊢
((♯‘𝐹)
∈ ℕ0 → ((♯‘𝐹) ∈ (0...(♯‘𝐹)) ∧ 0 ∈
(0...(♯‘𝐹)))) | 
| 19 |  | f1veqaeq 7277 | . . . . . . . . . . . . . . . . . . . . . . 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 412 | . . . . . . . . . . . . . . . . . . . . 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 413 | . . . . . . . . . . . . . . . . . 18
⊢ ((𝑃‘0) = 𝐵 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → (♯‘𝐹) = 0)))) | 
| 25 | 12, 24 | biimtrdi 253 | . . . . . . . . . . . . . . . . 17
⊢ (𝐴 = 𝐵 → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → (♯‘𝐹) = 0))))) | 
| 26 | 25 | com15 101 | . . . . . . . . . . . . . . . 16
⊢ (𝑃:(0...(♯‘𝐹))–1-1→(Vtx‘𝐺) → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝐴 = 𝐵 → (♯‘𝐹) = 0))))) | 
| 27 | 11, 26 | sylbir 235 | . . . . . . . . . . . . . . 15
⊢ ((𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) ∧ Fun ◡𝑃) → ((𝑃‘0) = 𝐴 → ((𝑃‘(♯‘𝐹)) = 𝐵 → ((♯‘𝐹) ∈ ℕ0 → (𝐴 = 𝐵 → (♯‘𝐹) = 0))))) | 
| 28 | 27 | expcom 413 | . . . . . . . . . . . . . 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 1348 | . . . . . . . . . . 11
⊢ (((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ∧ Fun ◡𝑃) → (𝐴 = 𝐵 → (♯‘𝐹) = 0)) | 
| 32 |  | fveqeq2 6915 | . . . . . . . . . . . . . . . 16
⊢
((♯‘𝐹) =
0 → ((𝑃‘(♯‘𝐹)) = 𝐵 ↔ (𝑃‘0) = 𝐵)) | 
| 33 | 32 | anbi2d 630 | . . . . . . . . . . . . . . 15
⊢
((♯‘𝐹) =
0 → (((𝑃‘0) =
𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ↔ ((𝑃‘0) = 𝐴 ∧ (𝑃‘0) = 𝐵))) | 
| 34 |  | eqtr2 2761 | . . . . . . . . . . . . . . 15
⊢ (((𝑃‘0) = 𝐴 ∧ (𝑃‘0) = 𝐵) → 𝐴 = 𝐵) | 
| 35 | 33, 34 | biimtrdi 253 | . . . . . . . . . . . . . 14
⊢
((♯‘𝐹) =
0 → (((𝑃‘0) =
𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → 𝐴 = 𝐵)) | 
| 36 | 35 | com12 32 | . . . . . . . . . . . . 13
⊢ (((𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → ((♯‘𝐹) = 0 → 𝐴 = 𝐵)) | 
| 37 | 36 | 3adant1 1131 | . . . . . . . . . . . 12
⊢ ((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → ((♯‘𝐹) = 0 → 𝐴 = 𝐵)) | 
| 38 | 37 | adantr 480 | . . . . . . . . . . 11
⊢ (((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ∧ Fun ◡𝑃) → ((♯‘𝐹) = 0 → 𝐴 = 𝐵)) | 
| 39 | 31, 38 | impbid 212 | . . . . . . . . . 10
⊢ (((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) ∧ Fun ◡𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) | 
| 40 | 39 | ex 412 | . . . . . . . . 9
⊢ ((𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵) → (Fun ◡𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) | 
| 41 | 40 | 3ad2ant3 1136 | . . . . . . . 8
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(Walks‘𝐺)𝑃 ∧ (𝑃‘0) = 𝐴 ∧ (𝑃‘(♯‘𝐹)) = 𝐵)) → (Fun ◡𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) | 
| 42 | 8, 41 | syl 17 | . . . . . . 7
⊢ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 → (Fun ◡𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) | 
| 43 | 42 | adantld 490 | . . . . . 6
⊢ (𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 → ((𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) | 
| 44 | 43 | adantr 480 | . . . . 5
⊢ ((𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃) → ((𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) | 
| 45 | 44 | imp 406 | . . . 4
⊢ (((𝐹(𝐴(WalksOn‘𝐺)𝐵)𝑃 ∧ 𝐹(Trails‘𝐺)𝑃) ∧ (𝐹(Trails‘𝐺)𝑃 ∧ Fun ◡𝑃)) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) | 
| 46 | 7, 45 | biimtrdi 253 | . . 3
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V)) → ((𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0))) | 
| 47 | 46 | 3impia 1118 | . 2
⊢ (((𝐺 ∈ V ∧ 𝐴 ∈ (Vtx‘𝐺) ∧ 𝐵 ∈ (Vtx‘𝐺)) ∧ (𝐹 ∈ V ∧ 𝑃 ∈ V) ∧ (𝐹(𝐴(TrailsOn‘𝐺)𝐵)𝑃 ∧ 𝐹(SPaths‘𝐺)𝑃)) → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) | 
| 48 | 2, 47 | syl 17 | 1
⊢ (𝐹(𝐴(SPathsOn‘𝐺)𝐵)𝑃 → (𝐴 = 𝐵 ↔ (♯‘𝐹) = 0)) |