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

Theorem lfgriswlk 29632
Description: Conditions for a pair of functions to be a walk in a loop-free graph. (Contributed by AV, 28-Jan-2021.)
Hypotheses
Ref Expression
lfgrwlkprop.i 𝐼 = (iEdg‘𝐺)
lfgriswlk.v 𝑉 = (Vtx‘𝐺)
Assertion
Ref Expression
lfgriswlk ((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) → (𝐹(Walks‘𝐺)𝑃 ↔ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))))
Distinct variable groups:   𝑘,𝐹,𝑥   𝑘,𝐺   𝑘,𝐼,𝑥   𝑃,𝑘   𝑘,𝑉,𝑥
Allowed substitution hints:   𝑃(𝑥)   𝐺(𝑥)   𝑊(𝑥,𝑘)

Proof of Theorem lfgriswlk
StepHypRef Expression
1 lfgrwlkprop.i . . . . 5 𝐼 = (iEdg‘𝐺)
21wlkf 29560 . . . 4 (𝐹(Walks‘𝐺)𝑃𝐹 ∈ Word dom 𝐼)
32adantl 481 . . 3 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ 𝐹(Walks‘𝐺)𝑃) → 𝐹 ∈ Word dom 𝐼)
4 lfgriswlk.v . . . . 5 𝑉 = (Vtx‘𝐺)
54wlkp 29562 . . . 4 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶𝑉)
65adantl 481 . . 3 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ 𝐹(Walks‘𝐺)𝑃) → 𝑃:(0...(♯‘𝐹))⟶𝑉)
71lfgrwlkprop 29631 . . . . . . 7 ((𝐹(Walks‘𝐺)𝑃𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) → ∀𝑘 ∈ (0..^(♯‘𝐹))(𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)))
87expcom 413 . . . . . 6 (𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)} → (𝐹(Walks‘𝐺)𝑃 → ∀𝑘 ∈ (0..^(♯‘𝐹))(𝑃𝑘) ≠ (𝑃‘(𝑘 + 1))))
98adantl 481 . . . . 5 ((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) → (𝐹(Walks‘𝐺)𝑃 → ∀𝑘 ∈ (0..^(♯‘𝐹))(𝑃𝑘) ≠ (𝑃‘(𝑘 + 1))))
109imp 406 . . . 4 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ 𝐹(Walks‘𝐺)𝑃) → ∀𝑘 ∈ (0..^(♯‘𝐹))(𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)))
111wlkvtxeledg 29569 . . . . 5 (𝐹(Walks‘𝐺)𝑃 → ∀𝑘 ∈ (0..^(♯‘𝐹)){(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘)))
1211adantl 481 . . . 4 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ 𝐹(Walks‘𝐺)𝑃) → ∀𝑘 ∈ (0..^(♯‘𝐹)){(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘)))
13 r19.26 3089 . . . 4 (∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))) ↔ (∀𝑘 ∈ (0..^(♯‘𝐹))(𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ ∀𝑘 ∈ (0..^(♯‘𝐹)){(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
1410, 12, 13sylanbrc 583 . . 3 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ 𝐹(Walks‘𝐺)𝑃) → ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
153, 6, 143jca 1128 . 2 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ 𝐹(Walks‘𝐺)𝑃) → (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘)))))
16 simpr1 1195 . . 3 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))) → 𝐹 ∈ Word dom 𝐼)
17 simpr2 1196 . . 3 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))) → 𝑃:(0...(♯‘𝐹))⟶𝑉)
18 df-ne 2926 . . . . . . . 8 ((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ↔ ¬ (𝑃𝑘) = (𝑃‘(𝑘 + 1)))
19 ifpfal 1075 . . . . . . . 8 (¬ (𝑃𝑘) = (𝑃‘(𝑘 + 1)) → (if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))) ↔ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
2018, 19sylbi 217 . . . . . . 7 ((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) → (if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))) ↔ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
2120biimpar 477 . . . . . 6 (((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))) → if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
2221ralimi 3066 . . . . 5 (∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))) → ∀𝑘 ∈ (0..^(♯‘𝐹))if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
23223ad2ant3 1135 . . . 4 ((𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘)))) → ∀𝑘 ∈ (0..^(♯‘𝐹))if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
2423adantl 481 . . 3 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))) → ∀𝑘 ∈ (0..^(♯‘𝐹))if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))
254, 1iswlkg 29559 . . . 4 (𝐺𝑊 → (𝐹(Walks‘𝐺)𝑃 ↔ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))))
2625ad2antrr 726 . . 3 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))) → (𝐹(Walks‘𝐺)𝑃 ↔ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))if-((𝑃𝑘) = (𝑃‘(𝑘 + 1)), (𝐼‘(𝐹𝑘)) = {(𝑃𝑘)}, {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))))
2716, 17, 24, 26mpbir3and 1343 . 2 (((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) ∧ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))) → 𝐹(Walks‘𝐺)𝑃)
2815, 27impbida 800 1 ((𝐺𝑊𝐼:dom 𝐼⟶{𝑥 ∈ 𝒫 𝑉 ∣ 2 ≤ (♯‘𝑥)}) → (𝐹(Walks‘𝐺)𝑃 ↔ (𝐹 ∈ Word dom 𝐼𝑃:(0...(♯‘𝐹))⟶𝑉 ∧ ∀𝑘 ∈ (0..^(♯‘𝐹))((𝑃𝑘) ≠ (𝑃‘(𝑘 + 1)) ∧ {(𝑃𝑘), (𝑃‘(𝑘 + 1))} ⊆ (𝐼‘(𝐹𝑘))))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395  if-wif 1062  w3a 1086   = wceq 1540  wcel 2109  wne 2925  wral 3044  {crab 3394  wss 3903  𝒫 cpw 4551  {csn 4577  {cpr 4579   class class class wbr 5092  dom cdm 5619  wf 6478  cfv 6482  (class class class)co 7349  0cc0 11009  1c1 11010   + caddc 11012  cle 11150  2c2 12183  ...cfz 13410  ..^cfzo 13557  chash 14237  Word cword 14420  Vtxcvtx 28941  iEdgciedg 28942  Walkscwlks 29542
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-rep 5218  ax-sep 5235  ax-nul 5245  ax-pow 5304  ax-pr 5371  ax-un 7671  ax-cnex 11065  ax-resscn 11066  ax-1cn 11067  ax-icn 11068  ax-addcl 11069  ax-addrcl 11070  ax-mulcl 11071  ax-mulrcl 11072  ax-mulcom 11073  ax-addass 11074  ax-mulass 11075  ax-distr 11076  ax-i2m1 11077  ax-1ne0 11078  ax-1rid 11079  ax-rnegex 11080  ax-rrecex 11081  ax-cnre 11082  ax-pre-lttri 11083  ax-pre-lttrn 11084  ax-pre-ltadd 11085  ax-pre-mulgt0 11086
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 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-nel 3030  df-ral 3045  df-rex 3054  df-reu 3344  df-rab 3395  df-v 3438  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4859  df-int 4897  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5174  df-tr 5200  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6249  df-ord 6310  df-on 6311  df-lim 6312  df-suc 6313  df-iota 6438  df-fun 6484  df-fn 6485  df-f 6486  df-f1 6487  df-fo 6488  df-f1o 6489  df-fv 6490  df-riota 7306  df-ov 7352  df-oprab 7353  df-mpo 7354  df-om 7800  df-1st 7924  df-2nd 7925  df-frecs 8214  df-wrecs 8245  df-recs 8294  df-rdg 8332  df-1o 8388  df-er 8625  df-map 8755  df-pm 8756  df-en 8873  df-dom 8874  df-sdom 8875  df-fin 8876  df-card 9835  df-pnf 11151  df-mnf 11152  df-xr 11153  df-ltxr 11154  df-le 11155  df-sub 11349  df-neg 11350  df-nn 12129  df-2 12191  df-n0 12385  df-z 12472  df-uz 12736  df-fz 13411  df-fzo 13558  df-hash 14238  df-word 14421  df-wlks 29545
This theorem is referenced by:  lfgrwlknloop  29633
  Copyright terms: Public domain W3C validator