MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  pthdepisspth Structured version   Visualization version   GIF version

Theorem pthdepisspth 29757
Description: A path with different start and end points is a simple path (in an undirected graph). (Contributed by Alexander van der Vekens, 31-Oct-2017.) (Revised by AV, 12-Jan-2021.) (Proof shortened by AV, 30-Oct-2021.)
Assertion
Ref Expression
pthdepisspth ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → 𝐹(SPaths‘𝐺)𝑃)

Proof of Theorem pthdepisspth
StepHypRef Expression
1 ispth 29743 . . . 4 (𝐹(Paths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅))
2 simplll 774 . . . . . 6 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → 𝐹(Trails‘𝐺)𝑃)
3 trliswlk 29718 . . . . . . . . 9 (𝐹(Trails‘𝐺)𝑃𝐹(Walks‘𝐺)𝑃)
4 wlkcl 29638 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃 → (♯‘𝐹) ∈ ℕ0)
53, 4syl 17 . . . . . . . 8 (𝐹(Trails‘𝐺)𝑃 → (♯‘𝐹) ∈ ℕ0)
65ad3antrrr 730 . . . . . . 7 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (♯‘𝐹) ∈ ℕ0)
7 eqid 2734 . . . . . . . . . . 11 (Vtx‘𝐺) = (Vtx‘𝐺)
87wlkp 29639 . . . . . . . . . 10 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
93, 8syl 17 . . . . . . . . 9 (𝐹(Trails‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
109ad3antrrr 730 . . . . . . . 8 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → 𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
11 simpllr 775 . . . . . . . 8 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → Fun (𝑃 ↾ (1..^(♯‘𝐹))))
12 simpr 484 . . . . . . . 8 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝑃‘0) ≠ (𝑃‘(♯‘𝐹)))
1310, 11, 123jca 1128 . . . . . . 7 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹))) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))))
14 simplr 768 . . . . . . 7 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅)
15 injresinj 13705 . . . . . . 7 ((♯‘𝐹) ∈ ℕ0 → ((𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹))) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅ → Fun 𝑃)))
166, 13, 14, 15syl3c 66 . . . . . 6 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → Fun 𝑃)
172, 16jca 511 . . . . 5 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
1817ex3 1347 . . . 4 ((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) → ((𝑃‘0) ≠ (𝑃‘(♯‘𝐹)) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃)))
191, 18sylbi 217 . . 3 (𝐹(Paths‘𝐺)𝑃 → ((𝑃‘0) ≠ (𝑃‘(♯‘𝐹)) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃)))
2019imp 406 . 2 ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
21 isspth 29744 . 2 (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
2220, 21sylibr 234 1 ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → 𝐹(SPaths‘𝐺)𝑃)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  w3a 1086   = wceq 1541  wcel 2113  wne 2930  cin 3898  c0 4283  {cpr 4580   class class class wbr 5096  ccnv 5621  cres 5624  cima 5625  Fun wfun 6484  wf 6486  cfv 6490  (class class class)co 7356  0cc0 11024  1c1 11025  0cn0 12399  ...cfz 13421  ..^cfzo 13568  chash 14251  Vtxcvtx 29018  Walkscwlks 29619  Trailsctrls 29711  Pathscpths 29732  SPathscspths 29733
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2115  ax-9 2123  ax-10 2146  ax-11 2162  ax-12 2182  ax-ext 2706  ax-rep 5222  ax-sep 5239  ax-nul 5249  ax-pow 5308  ax-pr 5375  ax-un 7678  ax-cnex 11080  ax-resscn 11081  ax-1cn 11082  ax-icn 11083  ax-addcl 11084  ax-addrcl 11085  ax-mulcl 11086  ax-mulrcl 11087  ax-mulcom 11088  ax-addass 11089  ax-mulass 11090  ax-distr 11091  ax-i2m1 11092  ax-1ne0 11093  ax-1rid 11094  ax-rnegex 11095  ax-rrecex 11096  ax-cnre 11097  ax-pre-lttri 11098  ax-pre-lttrn 11099  ax-pre-ltadd 11100  ax-pre-mulgt0 11101
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-ifp 1063  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2537  df-eu 2567  df-clab 2713  df-cleq 2726  df-clel 2809  df-nfc 2883  df-ne 2931  df-nel 3035  df-ral 3050  df-rex 3059  df-reu 3349  df-rab 3398  df-v 3440  df-sbc 3739  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4284  df-if 4478  df-pw 4554  df-sn 4579  df-pr 4581  df-op 4585  df-uni 4862  df-int 4901  df-iun 4946  df-br 5097  df-opab 5159  df-mpt 5178  df-tr 5204  df-id 5517  df-eprel 5522  df-po 5530  df-so 5531  df-fr 5575  df-we 5577  df-xp 5628  df-rel 5629  df-cnv 5630  df-co 5631  df-dm 5632  df-rn 5633  df-res 5634  df-ima 5635  df-pred 6257  df-ord 6318  df-on 6319  df-lim 6320  df-suc 6321  df-iota 6446  df-fun 6492  df-fn 6493  df-f 6494  df-f1 6495  df-fo 6496  df-f1o 6497  df-fv 6498  df-riota 7313  df-ov 7359  df-oprab 7360  df-mpo 7361  df-om 7807  df-1st 7931  df-2nd 7932  df-frecs 8221  df-wrecs 8252  df-recs 8301  df-rdg 8339  df-1o 8395  df-er 8633  df-map 8763  df-en 8882  df-dom 8883  df-sdom 8884  df-fin 8885  df-card 9849  df-pnf 11166  df-mnf 11167  df-xr 11168  df-ltxr 11169  df-le 11170  df-sub 11364  df-neg 11365  df-nn 12144  df-n0 12400  df-z 12487  df-uz 12750  df-fz 13422  df-fzo 13569  df-hash 14252  df-word 14435  df-wlks 29622  df-trls 29713  df-pths 29736  df-spths 29737
This theorem is referenced by:  pthisspthorcycl  29824
  Copyright terms: Public domain W3C validator