Users' Mathboxes Mathbox for BTernaryTau < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  spthcycl Structured version   Visualization version   GIF version

Theorem spthcycl 35364
Description: A walk is a trivial path if and only if it is both a simple path and a cycle. (Contributed by BTernaryTau, 8-Oct-2023.)
Assertion
Ref Expression
spthcycl ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) ↔ (𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃))

Proof of Theorem spthcycl
StepHypRef Expression
1 pthistrl 29816 . . . 4 (𝐹(Paths‘𝐺)𝑃𝐹(Trails‘𝐺)𝑃)
2 pthiswlk 29818 . . . . 5 (𝐹(Paths‘𝐺)𝑃𝐹(Walks‘𝐺)𝑃)
3 eqid 2740 . . . . . . . 8 (Vtx‘𝐺) = (Vtx‘𝐺)
43wlkp 29710 . . . . . . 7 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
54ffund 6666 . . . . . 6 (𝐹(Walks‘𝐺)𝑃 → Fun 𝑃)
6 wlklenvp1 29712 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃 → (♯‘𝑃) = ((♯‘𝐹) + 1))
76adantr 481 . . . . . . . 8 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝑃) = ((♯‘𝐹) + 1))
8 wlkv 29706 . . . . . . . . . . 11 (𝐹(Walks‘𝐺)𝑃 → (𝐺 ∈ V ∧ 𝐹 ∈ V ∧ 𝑃 ∈ V))
98simp2d 1149 . . . . . . . . . 10 (𝐹(Walks‘𝐺)𝑃𝐹 ∈ V)
10 hasheq0 14323 . . . . . . . . . . 11 (𝐹 ∈ V → ((♯‘𝐹) = 0 ↔ 𝐹 = ∅))
1110biimpar 478 . . . . . . . . . 10 ((𝐹 ∈ V ∧ 𝐹 = ∅) → (♯‘𝐹) = 0)
129, 11sylan 586 . . . . . . . . 9 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝐹) = 0)
13 oveq1 7370 . . . . . . . . . 10 ((♯‘𝐹) = 0 → ((♯‘𝐹) + 1) = (0 + 1))
14 0p1e1 12296 . . . . . . . . . 10 (0 + 1) = 1
1513, 14eqtrdi 2791 . . . . . . . . 9 ((♯‘𝐹) = 0 → ((♯‘𝐹) + 1) = 1)
1612, 15syl 17 . . . . . . . 8 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → ((♯‘𝐹) + 1) = 1)
177, 16eqtrd 2775 . . . . . . 7 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝑃) = 1)
188simp3d 1150 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃𝑃 ∈ V)
19 hashen1 14330 . . . . . . . . 9 (𝑃 ∈ V → ((♯‘𝑃) = 1 ↔ 𝑃 ≈ 1o))
2018, 19syl 17 . . . . . . . 8 (𝐹(Walks‘𝐺)𝑃 → ((♯‘𝑃) = 1 ↔ 𝑃 ≈ 1o))
2120biimpa 477 . . . . . . 7 ((𝐹(Walks‘𝐺)𝑃 ∧ (♯‘𝑃) = 1) → 𝑃 ≈ 1o)
2217, 21syldan 597 . . . . . 6 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → 𝑃 ≈ 1o)
23 funen1cnv 35276 . . . . . 6 ((Fun 𝑃𝑃 ≈ 1o) → Fun 𝑃)
245, 22, 23syl2an2r 691 . . . . 5 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → Fun 𝑃)
252, 24sylan 586 . . . 4 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → Fun 𝑃)
26 isspth 29815 . . . . 5 (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
2726biimpri 229 . . . 4 ((𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃) → 𝐹(SPaths‘𝐺)𝑃)
281, 25, 27syl2an2r 691 . . 3 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → 𝐹(SPaths‘𝐺)𝑃)
29 fveq2 6834 . . . . . . 7 (0 = (♯‘𝐹) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
3029eqcoms 2748 . . . . . 6 ((♯‘𝐹) = 0 → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
3112, 30syl 17 . . . . 5 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
322, 31sylan 586 . . . 4 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
33 iscycl 29884 . . . . 5 (𝐹(Cycles‘𝐺)𝑃 ↔ (𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))))
3433biimpri 229 . . . 4 ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → 𝐹(Cycles‘𝐺)𝑃)
3532, 34syldan 597 . . 3 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → 𝐹(Cycles‘𝐺)𝑃)
3628, 35jca 516 . 2 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → (𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃))
37 spthispth 29817 . . . 4 (𝐹(SPaths‘𝐺)𝑃𝐹(Paths‘𝐺)𝑃)
3837adantr 481 . . 3 ((𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃) → 𝐹(Paths‘𝐺)𝑃)
39 notnot 142 . . . . 5 (𝐹(SPaths‘𝐺)𝑃 → ¬ ¬ 𝐹(SPaths‘𝐺)𝑃)
40 cyclnspth 29894 . . . . . . . 8 (𝐹 ≠ ∅ → (𝐹(Cycles‘𝐺)𝑃 → ¬ 𝐹(SPaths‘𝐺)𝑃))
4140com12 32 . . . . . . 7 (𝐹(Cycles‘𝐺)𝑃 → (𝐹 ≠ ∅ → ¬ 𝐹(SPaths‘𝐺)𝑃))
4241con3dimp 409 . . . . . 6 ((𝐹(Cycles‘𝐺)𝑃 ∧ ¬ ¬ 𝐹(SPaths‘𝐺)𝑃) → ¬ 𝐹 ≠ ∅)
43 nne 2939 . . . . . 6 𝐹 ≠ ∅ ↔ 𝐹 = ∅)
4442, 43sylib 219 . . . . 5 ((𝐹(Cycles‘𝐺)𝑃 ∧ ¬ ¬ 𝐹(SPaths‘𝐺)𝑃) → 𝐹 = ∅)
4539, 44sylan2 599 . . . 4 ((𝐹(Cycles‘𝐺)𝑃𝐹(SPaths‘𝐺)𝑃) → 𝐹 = ∅)
4645ancoms 459 . . 3 ((𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃) → 𝐹 = ∅)
4738, 46jca 516 . 2 ((𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃) → (𝐹(Paths‘𝐺)𝑃𝐹 = ∅))
4836, 47impbii 210 1 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) ↔ (𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wb 207  wa 396   = wceq 1547  wcel 2119  wne 2935  Vcvv 3432  c0 4268   class class class wbr 5079  ccnv 5624  Fun wfun 6486  cfv 6492  (class class class)co 7363  1oc1o 8395  cen 8887  0cc0 11036  1c1 11037   + caddc 11039  ...cfz 13459  chash 14290  Vtxcvtx 29090  Walkscwlks 29690  Trailsctrls 29782  Pathscpths 29803  SPathscspths 29804  Cyclesccycls 29878
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-10 2152  ax-11 2168  ax-12 2189  ax-ext 2712  ax-rep 5206  ax-sep 5225  ax-nul 5235  ax-pow 5301  ax-pr 5369  ax-un 7685  ax-cnex 11092  ax-resscn 11093  ax-1cn 11094  ax-icn 11095  ax-addcl 11096  ax-addrcl 11097  ax-mulcl 11098  ax-mulrcl 11099  ax-mulcom 11100  ax-addass 11101  ax-mulass 11102  ax-distr 11103  ax-i2m1 11104  ax-1ne0 11105  ax-1rid 11106  ax-rnegex 11107  ax-rrecex 11108  ax-cnre 11109  ax-pre-lttri 11110  ax-pre-lttrn 11111  ax-pre-ltadd 11112  ax-pre-mulgt0 11113
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-ifp 1069  df-3or 1093  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-nf 1791  df-sb 2074  df-mo 2543  df-eu 2573  df-clab 2719  df-cleq 2732  df-clel 2815  df-nfc 2889  df-ne 2936  df-nel 3040  df-ral 3055  df-rex 3065  df-reu 3346  df-rab 3393  df-v 3434  df-sbc 3731  df-csb 3839  df-dif 3893  df-un 3895  df-in 3897  df-ss 3907  df-pss 3910  df-nul 4269  df-if 4462  df-pw 4538  df-sn 4563  df-pr 4565  df-op 4569  df-uni 4846  df-int 4885  df-iun 4930  df-br 5080  df-opab 5142  df-mpt 5161  df-tr 5187  df-id 5520  df-eprel 5525  df-po 5533  df-so 5534  df-fr 5578  df-we 5580  df-xp 5631  df-rel 5632  df-cnv 5633  df-co 5634  df-dm 5635  df-rn 5636  df-res 5637  df-ima 5638  df-pred 6259  df-ord 6320  df-on 6321  df-lim 6322  df-suc 6323  df-iota 6448  df-fun 6494  df-fn 6495  df-f 6496  df-f1 6497  df-fo 6498  df-f1o 6499  df-fv 6500  df-riota 7320  df-ov 7366  df-oprab 7367  df-mpo 7368  df-om 7814  df-1st 7938  df-2nd 7939  df-frecs 8228  df-wrecs 8259  df-recs 8308  df-rdg 8346  df-1o 8402  df-er 8640  df-map 8772  df-en 8891  df-dom 8892  df-sdom 8893  df-fin 8894  df-card 9861  df-pnf 11179  df-mnf 11180  df-xr 11181  df-ltxr 11182  df-le 11183  df-sub 11377  df-neg 11378  df-nn 12173  df-n0 12436  df-z 12523  df-uz 12787  df-fz 13460  df-fzo 13607  df-hash 14291  df-word 14474  df-wlks 29693  df-trls 29784  df-pths 29807  df-spths 29808  df-cycls 29880
This theorem is referenced by:  pthacycspth  35392
  Copyright terms: Public domain W3C validator