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

Theorem pthdepisspth 27510
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 27498 . . . 4 (𝐹(Paths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅))
2 simplll 773 . . . . . 6 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → 𝐹(Trails‘𝐺)𝑃)
3 trliswlk 27473 . . . . . . . . 9 (𝐹(Trails‘𝐺)𝑃𝐹(Walks‘𝐺)𝑃)
4 wlkcl 27391 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃 → (♯‘𝐹) ∈ ℕ0)
53, 4syl 17 . . . . . . . 8 (𝐹(Trails‘𝐺)𝑃 → (♯‘𝐹) ∈ ℕ0)
65ad3antrrr 728 . . . . . . 7 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (♯‘𝐹) ∈ ℕ0)
7 eqid 2821 . . . . . . . . . . 11 (Vtx‘𝐺) = (Vtx‘𝐺)
87wlkp 27392 . . . . . . . . . 10 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
93, 8syl 17 . . . . . . . . 9 (𝐹(Trails‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
109ad3antrrr 728 . . . . . . . 8 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → 𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
11 simpllr 774 . . . . . . . 8 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → Fun (𝑃 ↾ (1..^(♯‘𝐹))))
12 simpr 487 . . . . . . . 8 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝑃‘0) ≠ (𝑃‘(♯‘𝐹)))
1310, 11, 123jca 1124 . . . . . . 7 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺) ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹))) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))))
14 simplr 767 . . . . . . 7 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅)
15 injresinj 13152 . . . . . . 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 514 . . . . 5 ((((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹)))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
1817ex3 1342 . . . 4 ((𝐹(Trails‘𝐺)𝑃 ∧ Fun (𝑃 ↾ (1..^(♯‘𝐹))) ∧ ((𝑃 “ {0, (♯‘𝐹)}) ∩ (𝑃 “ (1..^(♯‘𝐹)))) = ∅) → ((𝑃‘0) ≠ (𝑃‘(♯‘𝐹)) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃)))
191, 18sylbi 219 . . 3 (𝐹(Paths‘𝐺)𝑃 → ((𝑃‘0) ≠ (𝑃‘(♯‘𝐹)) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃)))
2019imp 409 . 2 ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
21 isspth 27499 . 2 (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
2220, 21sylibr 236 1 ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) → 𝐹(SPaths‘𝐺)𝑃)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 398  w3a 1083   = wceq 1533  wcel 2110  wne 3016  cin 3934  c0 4290  {cpr 4562   class class class wbr 5058  ccnv 5548  cres 5551  cima 5552  Fun wfun 6343  wf 6345  cfv 6349  (class class class)co 7150  0cc0 10531  1c1 10532  0cn0 11891  ...cfz 12886  ..^cfzo 13027  chash 13684  Vtxcvtx 26775  Walkscwlks 27372  Trailsctrls 27466  Pathscpths 27487  SPathscspths 27488
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1907  ax-6 1966  ax-7 2011  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2157  ax-12 2173  ax-ext 2793  ax-rep 5182  ax-sep 5195  ax-nul 5202  ax-pow 5258  ax-pr 5321  ax-un 7455  ax-cnex 10587  ax-resscn 10588  ax-1cn 10589  ax-icn 10590  ax-addcl 10591  ax-addrcl 10592  ax-mulcl 10593  ax-mulrcl 10594  ax-mulcom 10595  ax-addass 10596  ax-mulass 10597  ax-distr 10598  ax-i2m1 10599  ax-1ne0 10600  ax-1rid 10601  ax-rnegex 10602  ax-rrecex 10603  ax-cnre 10604  ax-pre-lttri 10605  ax-pre-lttrn 10606  ax-pre-ltadd 10607  ax-pre-mulgt0 10608
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-ifp 1058  df-3or 1084  df-3an 1085  df-tru 1536  df-ex 1777  df-nf 1781  df-sb 2066  df-mo 2618  df-eu 2650  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-nel 3124  df-ral 3143  df-rex 3144  df-reu 3145  df-rab 3147  df-v 3496  df-sbc 3772  df-csb 3883  df-dif 3938  df-un 3940  df-in 3942  df-ss 3951  df-pss 3953  df-nul 4291  df-if 4467  df-pw 4540  df-sn 4561  df-pr 4563  df-tp 4565  df-op 4567  df-uni 4832  df-int 4869  df-iun 4913  df-br 5059  df-opab 5121  df-mpt 5139  df-tr 5165  df-id 5454  df-eprel 5459  df-po 5468  df-so 5469  df-fr 5508  df-we 5510  df-xp 5555  df-rel 5556  df-cnv 5557  df-co 5558  df-dm 5559  df-rn 5560  df-res 5561  df-ima 5562  df-pred 6142  df-ord 6188  df-on 6189  df-lim 6190  df-suc 6191  df-iota 6308  df-fun 6351  df-fn 6352  df-f 6353  df-f1 6354  df-fo 6355  df-f1o 6356  df-fv 6357  df-riota 7108  df-ov 7153  df-oprab 7154  df-mpo 7155  df-om 7575  df-1st 7683  df-2nd 7684  df-wrecs 7941  df-recs 8002  df-rdg 8040  df-1o 8096  df-oadd 8100  df-er 8283  df-map 8402  df-en 8504  df-dom 8505  df-sdom 8506  df-fin 8507  df-card 9362  df-pnf 10671  df-mnf 10672  df-xr 10673  df-ltxr 10674  df-le 10675  df-sub 10866  df-neg 10867  df-nn 11633  df-n0 11892  df-z 11976  df-uz 12238  df-fz 12887  df-fzo 13028  df-hash 13685  df-word 13856  df-wlks 27375  df-trls 27468  df-pths 27491  df-spths 27492
This theorem is referenced by:  pthisspthorcycl  32370
  Copyright terms: Public domain W3C validator