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 35099
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 29763 . . . 4 (𝐹(Paths‘𝐺)𝑃𝐹(Trails‘𝐺)𝑃)
2 pthiswlk 29765 . . . . 5 (𝐹(Paths‘𝐺)𝑃𝐹(Walks‘𝐺)𝑃)
3 eqid 2740 . . . . . . . 8 (Vtx‘𝐺) = (Vtx‘𝐺)
43wlkp 29654 . . . . . . 7 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
54ffund 6753 . . . . . 6 (𝐹(Walks‘𝐺)𝑃 → Fun 𝑃)
6 wlklenvp1 29656 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃 → (♯‘𝑃) = ((♯‘𝐹) + 1))
76adantr 480 . . . . . . . 8 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝑃) = ((♯‘𝐹) + 1))
8 wlkv 29650 . . . . . . . . . . 11 (𝐹(Walks‘𝐺)𝑃 → (𝐺 ∈ V ∧ 𝐹 ∈ V ∧ 𝑃 ∈ V))
98simp2d 1143 . . . . . . . . . 10 (𝐹(Walks‘𝐺)𝑃𝐹 ∈ V)
10 hasheq0 14414 . . . . . . . . . . 11 (𝐹 ∈ V → ((♯‘𝐹) = 0 ↔ 𝐹 = ∅))
1110biimpar 477 . . . . . . . . . 10 ((𝐹 ∈ V ∧ 𝐹 = ∅) → (♯‘𝐹) = 0)
129, 11sylan 579 . . . . . . . . 9 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝐹) = 0)
13 oveq1 7457 . . . . . . . . . 10 ((♯‘𝐹) = 0 → ((♯‘𝐹) + 1) = (0 + 1))
14 0p1e1 12417 . . . . . . . . . 10 (0 + 1) = 1
1513, 14eqtrdi 2796 . . . . . . . . 9 ((♯‘𝐹) = 0 → ((♯‘𝐹) + 1) = 1)
1612, 15syl 17 . . . . . . . 8 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → ((♯‘𝐹) + 1) = 1)
177, 16eqtrd 2780 . . . . . . 7 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (♯‘𝑃) = 1)
188simp3d 1144 . . . . . . . . 9 (𝐹(Walks‘𝐺)𝑃𝑃 ∈ V)
19 hashen1 14421 . . . . . . . . 9 (𝑃 ∈ V → ((♯‘𝑃) = 1 ↔ 𝑃 ≈ 1o))
2018, 19syl 17 . . . . . . . 8 (𝐹(Walks‘𝐺)𝑃 → ((♯‘𝑃) = 1 ↔ 𝑃 ≈ 1o))
2120biimpa 476 . . . . . . 7 ((𝐹(Walks‘𝐺)𝑃 ∧ (♯‘𝑃) = 1) → 𝑃 ≈ 1o)
2217, 21syldan 590 . . . . . 6 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → 𝑃 ≈ 1o)
23 funen1cnv 35066 . . . . . 6 ((Fun 𝑃𝑃 ≈ 1o) → Fun 𝑃)
245, 22, 23syl2an2r 684 . . . . 5 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → Fun 𝑃)
252, 24sylan 579 . . . 4 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → Fun 𝑃)
26 isspth 29762 . . . . 5 (𝐹(SPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃))
2726biimpri 228 . . . 4 ((𝐹(Trails‘𝐺)𝑃 ∧ Fun 𝑃) → 𝐹(SPaths‘𝐺)𝑃)
281, 25, 27syl2an2r 684 . . 3 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → 𝐹(SPaths‘𝐺)𝑃)
29 fveq2 6922 . . . . . . 7 (0 = (♯‘𝐹) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
3029eqcoms 2748 . . . . . 6 ((♯‘𝐹) = 0 → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
3112, 30syl 17 . . . . 5 ((𝐹(Walks‘𝐺)𝑃𝐹 = ∅) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
322, 31sylan 579 . . . 4 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
33 iscycl 29829 . . . . 5 (𝐹(Cycles‘𝐺)𝑃 ↔ (𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))))
3433biimpri 228 . . . 4 ((𝐹(Paths‘𝐺)𝑃 ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → 𝐹(Cycles‘𝐺)𝑃)
3532, 34syldan 590 . . 3 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → 𝐹(Cycles‘𝐺)𝑃)
3628, 35jca 511 . 2 ((𝐹(Paths‘𝐺)𝑃𝐹 = ∅) → (𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃))
37 spthispth 29764 . . . 4 (𝐹(SPaths‘𝐺)𝑃𝐹(Paths‘𝐺)𝑃)
3837adantr 480 . . 3 ((𝐹(SPaths‘𝐺)𝑃𝐹(Cycles‘𝐺)𝑃) → 𝐹(Paths‘𝐺)𝑃)
39 notnot 142 . . . . 5 (𝐹(SPaths‘𝐺)𝑃 → ¬ ¬ 𝐹(SPaths‘𝐺)𝑃)
40 cyclnspth 29838 . . . . . . . 8 (𝐹 ≠ ∅ → (𝐹(Cycles‘𝐺)𝑃 → ¬ 𝐹(SPaths‘𝐺)𝑃))
4140com12 32 . . . . . . 7 (𝐹(Cycles‘𝐺)𝑃 → (𝐹 ≠ ∅ → ¬ 𝐹(SPaths‘𝐺)𝑃))
4241con3dimp 408 . . . . . 6 ((𝐹(Cycles‘𝐺)𝑃 ∧ ¬ ¬ 𝐹(SPaths‘𝐺)𝑃) → ¬ 𝐹 ≠ ∅)
43 nne 2950 . . . . . 6 𝐹 ≠ ∅ ↔ 𝐹 = ∅)
4442, 43sylib 218 . . . . 5 ((𝐹(Cycles‘𝐺)𝑃 ∧ ¬ ¬ 𝐹(SPaths‘𝐺)𝑃) → 𝐹 = ∅)
4539, 44sylan2 592 . . . 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 1537  wcel 2108  wne 2946  Vcvv 3488  c0 4352   class class class wbr 5166  ccnv 5699  Fun wfun 6569  cfv 6575  (class class class)co 7450  1oc1o 8517  cen 9002  0cc0 11186  1c1 11187   + caddc 11189  ...cfz 13569  chash 14381  Vtxcvtx 29033  Walkscwlks 29634  Trailsctrls 29728  Pathscpths 29750  SPathscspths 29751  Cyclesccycls 29823
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1793  ax-4 1807  ax-5 1909  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2158  ax-12 2178  ax-ext 2711  ax-rep 5303  ax-sep 5317  ax-nul 5324  ax-pow 5383  ax-pr 5447  ax-un 7772  ax-cnex 11242  ax-resscn 11243  ax-1cn 11244  ax-icn 11245  ax-addcl 11246  ax-addrcl 11247  ax-mulcl 11248  ax-mulrcl 11249  ax-mulcom 11250  ax-addass 11251  ax-mulass 11252  ax-distr 11253  ax-i2m1 11254  ax-1ne0 11255  ax-1rid 11256  ax-rnegex 11257  ax-rrecex 11258  ax-cnre 11259  ax-pre-lttri 11260  ax-pre-lttrn 11261  ax-pre-ltadd 11262  ax-pre-mulgt0 11263
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 847  df-ifp 1064  df-3or 1088  df-3an 1089  df-tru 1540  df-fal 1550  df-ex 1778  df-nf 1782  df-sb 2065  df-mo 2543  df-eu 2572  df-clab 2718  df-cleq 2732  df-clel 2819  df-nfc 2895  df-ne 2947  df-nel 3053  df-ral 3068  df-rex 3077  df-reu 3389  df-rab 3444  df-v 3490  df-sbc 3805  df-csb 3922  df-dif 3979  df-un 3981  df-in 3983  df-ss 3993  df-pss 3996  df-nul 4353  df-if 4549  df-pw 4624  df-sn 4649  df-pr 4651  df-op 4655  df-uni 4932  df-int 4971  df-iun 5017  df-br 5167  df-opab 5229  df-mpt 5250  df-tr 5284  df-id 5593  df-eprel 5599  df-po 5607  df-so 5608  df-fr 5652  df-we 5654  df-xp 5706  df-rel 5707  df-cnv 5708  df-co 5709  df-dm 5710  df-rn 5711  df-res 5712  df-ima 5713  df-pred 6334  df-ord 6400  df-on 6401  df-lim 6402  df-suc 6403  df-iota 6527  df-fun 6577  df-fn 6578  df-f 6579  df-f1 6580  df-fo 6581  df-f1o 6582  df-fv 6583  df-riota 7406  df-ov 7453  df-oprab 7454  df-mpo 7455  df-om 7906  df-1st 8032  df-2nd 8033  df-frecs 8324  df-wrecs 8355  df-recs 8429  df-rdg 8468  df-1o 8524  df-er 8765  df-map 8888  df-en 9006  df-dom 9007  df-sdom 9008  df-fin 9009  df-card 10010  df-pnf 11328  df-mnf 11329  df-xr 11330  df-ltxr 11331  df-le 11332  df-sub 11524  df-neg 11525  df-nn 12296  df-n0 12556  df-z 12642  df-uz 12906  df-fz 13570  df-fzo 13714  df-hash 14382  df-word 14565  df-wlks 29637  df-trls 29730  df-pths 29754  df-spths 29755  df-cycls 29825
This theorem is referenced by:  pthacycspth  35127
  Copyright terms: Public domain W3C validator