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 35093
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 29671 . . . 4 (𝐹(Paths‘𝐺)𝑃𝐹(Trails‘𝐺)𝑃)
2 pthiswlk 29673 . . . . 5 (𝐹(Paths‘𝐺)𝑃𝐹(Walks‘𝐺)𝑃)
3 eqid 2734 . . . . . . . 8 (Vtx‘𝐺) = (Vtx‘𝐺)
43wlkp 29562 . . . . . . 7 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
54ffund 6720 . . . . . 6 (𝐹(Walks‘𝐺)𝑃 → Fun 𝑃)
6 wlklenvp1 29564 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃 → (♯‘𝑃) = ((♯‘𝐹) + 1))
76adantr 480 . . . . . . . 8 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝑃) = ((♯‘𝐹) + 1))
8 wlkv 29558 . . . . . . . . . . 11 (𝐹(Walks‘𝐺)𝑃 → (𝐺 ∈ V ∧ 𝐹 ∈ V ∧ 𝑃 ∈ V))
98simp2d 1143 . . . . . . . . . 10 (𝐹(Walks‘𝐺)𝑃𝐹 ∈ V)
10 hasheq0 14384 . . . . . . . . . . 11 (𝐹 ∈ V → ((♯‘𝐹) = 0 ↔ 𝐹 = ∅))
1110biimpar 477 . . . . . . . . . 10 ((𝐹 ∈ V ∧ 𝐹 = ∅) → (♯‘𝐹) = 0)
129, 11sylan 580 . . . . . . . . 9 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝐹) = 0)
13 oveq1 7420 . . . . . . . . . 10 ((♯‘𝐹) = 0 → ((♯‘𝐹) + 1) = (0 + 1))
14 0p1e1 12370 . . . . . . . . . 10 (0 + 1) = 1
1513, 14eqtrdi 2785 . . . . . . . . 9 ((♯‘𝐹) = 0 → ((♯‘𝐹) + 1) = 1)
1612, 15syl 17 . . . . . . . 8 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → ((♯‘𝐹) + 1) = 1)
177, 16eqtrd 2769 . . . . . . 7 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝑃) = 1)
188simp3d 1144 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃𝑃 ∈ V)
19 hashen1 14391 . . . . . . . . 9 (𝑃 ∈ V → ((♯‘𝑃) = 1 ↔ 𝑃 ≈ 1o))
2018, 19syl 17 . . . . . . . 8 (𝐹(Walks‘𝐺)𝑃 → ((♯‘𝑃) = 1 ↔ 𝑃 ≈ 1o))
2120biimpa 476 . . . . . . 7 ((𝐹(Walks‘𝐺)𝑃 ∧ (♯‘𝑃) = 1) → 𝑃 ≈ 1o)
2217, 21syldan 591 . . . . . 6 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → 𝑃 ≈ 1o)
23 funen1cnv 35061 . . . . . 6 ((Fun 𝑃𝑃 ≈ 1o) → Fun 𝑃)
245, 22, 23syl2an2r 685 . . . . 5 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → Fun 𝑃)
252, 24sylan 580 . . . 4 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → Fun 𝑃)
26 isspth 29670 . . . . 5 (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
2726biimpri 228 . . . 4 ((𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃) → 𝐹(SPaths‘𝐺)𝑃)
281, 25, 27syl2an2r 685 . . 3 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → 𝐹(SPaths‘𝐺)𝑃)
29 fveq2 6886 . . . . . . 7 (0 = (♯‘𝐹) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
3029eqcoms 2742 . . . . . 6 ((♯‘𝐹) = 0 → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
3112, 30syl 17 . . . . 5 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
322, 31sylan 580 . . . 4 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
33 iscycl 29739 . . . . 5 (𝐹(Cycles‘𝐺)𝑃 ↔ (𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))))
3433biimpri 228 . . . 4 ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → 𝐹(Cycles‘𝐺)𝑃)
3532, 34syldan 591 . . 3 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → 𝐹(Cycles‘𝐺)𝑃)
3628, 35jca 511 . 2 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → (𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃))
37 spthispth 29672 . . . 4 (𝐹(SPaths‘𝐺)𝑃𝐹(Paths‘𝐺)𝑃)
3837adantr 480 . . 3 ((𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃) → 𝐹(Paths‘𝐺)𝑃)
39 notnot 142 . . . . 5 (𝐹(SPaths‘𝐺)𝑃 → ¬ ¬ 𝐹(SPaths‘𝐺)𝑃)
40 cyclnspth 29749 . . . . . . . 8 (𝐹 ≠ ∅ → (𝐹(Cycles‘𝐺)𝑃 → ¬ 𝐹(SPaths‘𝐺)𝑃))
4140com12 32 . . . . . . 7 (𝐹(Cycles‘𝐺)𝑃 → (𝐹 ≠ ∅ → ¬ 𝐹(SPaths‘𝐺)𝑃))
4241con3dimp 408 . . . . . 6 ((𝐹(Cycles‘𝐺)𝑃 ∧ ¬ ¬ 𝐹(SPaths‘𝐺)𝑃) → ¬ 𝐹 ≠ ∅)
43 nne 2935 . . . . . 6 𝐹 ≠ ∅ ↔ 𝐹 = ∅)
4442, 43sylib 218 . . . . 5 ((𝐹(Cycles‘𝐺)𝑃 ∧ ¬ ¬ 𝐹(SPaths‘𝐺)𝑃) → 𝐹 = ∅)
4539, 44sylan2 593 . . . 4 ((𝐹(Cycles‘𝐺)𝑃𝐹(SPaths‘𝐺)𝑃) → 𝐹 = ∅)
4645ancoms 458 . . 3 ((𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃) → 𝐹 = ∅)
4738, 46jca 511 . 2 ((𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃) → (𝐹(Paths‘𝐺)𝑃𝐹 = ∅))
4836, 47impbii 209 1 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) ↔ (𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wb 206  wa 395   = wceq 1539  wcel 2107  wne 2931  Vcvv 3463  c0 4313   class class class wbr 5123  ccnv 5664  Fun wfun 6535  cfv 6541  (class class class)co 7413  1oc1o 8481  cen 8964  0cc0 11137  1c1 11138   + caddc 11140  ...cfz 13529  chash 14351  Vtxcvtx 28941  Walkscwlks 29542  Trailsctrls 29636  Pathscpths 29658  SPathscspths 29659  Cyclesccycls 29733
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-11 2156  ax-12 2176  ax-ext 2706  ax-rep 5259  ax-sep 5276  ax-nul 5286  ax-pow 5345  ax-pr 5412  ax-un 7737  ax-cnex 11193  ax-resscn 11194  ax-1cn 11195  ax-icn 11196  ax-addcl 11197  ax-addrcl 11198  ax-mulcl 11199  ax-mulrcl 11200  ax-mulcom 11201  ax-addass 11202  ax-mulass 11203  ax-distr 11204  ax-i2m1 11205  ax-1ne0 11206  ax-1rid 11207  ax-rnegex 11208  ax-rrecex 11209  ax-cnre 11210  ax-pre-lttri 11211  ax-pre-lttrn 11212  ax-pre-ltadd 11213  ax-pre-mulgt0 11214
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 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2538  df-eu 2567  df-clab 2713  df-cleq 2726  df-clel 2808  df-nfc 2884  df-ne 2932  df-nel 3036  df-ral 3051  df-rex 3060  df-reu 3364  df-rab 3420  df-v 3465  df-sbc 3771  df-csb 3880  df-dif 3934  df-un 3936  df-in 3938  df-ss 3948  df-pss 3951  df-nul 4314  df-if 4506  df-pw 4582  df-sn 4607  df-pr 4609  df-op 4613  df-uni 4888  df-int 4927  df-iun 4973  df-br 5124  df-opab 5186  df-mpt 5206  df-tr 5240  df-id 5558  df-eprel 5564  df-po 5572  df-so 5573  df-fr 5617  df-we 5619  df-xp 5671  df-rel 5672  df-cnv 5673  df-co 5674  df-dm 5675  df-rn 5676  df-res 5677  df-ima 5678  df-pred 6301  df-ord 6366  df-on 6367  df-lim 6368  df-suc 6369  df-iota 6494  df-fun 6543  df-fn 6544  df-f 6545  df-f1 6546  df-fo 6547  df-f1o 6548  df-fv 6549  df-riota 7370  df-ov 7416  df-oprab 7417  df-mpo 7418  df-om 7870  df-1st 7996  df-2nd 7997  df-frecs 8288  df-wrecs 8319  df-recs 8393  df-rdg 8432  df-1o 8488  df-er 8727  df-map 8850  df-en 8968  df-dom 8969  df-sdom 8970  df-fin 8971  df-card 9961  df-pnf 11279  df-mnf 11280  df-xr 11281  df-ltxr 11282  df-le 11283  df-sub 11476  df-neg 11477  df-nn 12249  df-n0 12510  df-z 12597  df-uz 12861  df-fz 13530  df-fzo 13677  df-hash 14352  df-word 14535  df-wlks 29545  df-trls 29638  df-pths 29662  df-spths 29663  df-cycls 29735
This theorem is referenced by:  pthacycspth  35121
  Copyright terms: Public domain W3C validator