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

Theorem uspgr2wlkeqi 27707
Description: Conditions for two walks within the same simple pseudograph to be identical. It is sufficient that the vertices (in the same order) are identical. (Contributed by AV, 6-May-2021.)
Assertion
Ref Expression
uspgr2wlkeqi ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) ∧ (2nd𝐴) = (2nd𝐵)) → 𝐴 = 𝐵)

Proof of Theorem uspgr2wlkeqi
StepHypRef Expression
1 wlkcpr 27688 . . . . 5 (𝐴 ∈ (Walks‘𝐺) ↔ (1st𝐴)(Walks‘𝐺)(2nd𝐴))
2 wlkcpr 27688 . . . . . 6 (𝐵 ∈ (Walks‘𝐺) ↔ (1st𝐵)(Walks‘𝐺)(2nd𝐵))
3 wlkcl 27675 . . . . . . 7 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (♯‘(1st𝐴)) ∈ ℕ0)
4 fveq2 6706 . . . . . . . . . . . . 13 ((2nd𝐴) = (2nd𝐵) → (♯‘(2nd𝐴)) = (♯‘(2nd𝐵)))
54oveq1d 7217 . . . . . . . . . . . 12 ((2nd𝐴) = (2nd𝐵) → ((♯‘(2nd𝐴)) − 1) = ((♯‘(2nd𝐵)) − 1))
65eqcomd 2740 . . . . . . . . . . 11 ((2nd𝐴) = (2nd𝐵) → ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1))
76adantl 485 . . . . . . . . . 10 ((((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1))
8 wlklenvm1 27681 . . . . . . . . . . . 12 ((1st𝐵)(Walks‘𝐺)(2nd𝐵) → (♯‘(1st𝐵)) = ((♯‘(2nd𝐵)) − 1))
9 wlklenvm1 27681 . . . . . . . . . . . 12 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (♯‘(1st𝐴)) = ((♯‘(2nd𝐴)) − 1))
108, 9eqeqan12rd 2749 . . . . . . . . . . 11 (((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) → ((♯‘(1st𝐵)) = (♯‘(1st𝐴)) ↔ ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1)))
1110adantr 484 . . . . . . . . . 10 ((((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(1st𝐵)) = (♯‘(1st𝐴)) ↔ ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1)))
127, 11mpbird 260 . . . . . . . . 9 ((((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵)) → (♯‘(1st𝐵)) = (♯‘(1st𝐴)))
1312anim2i 620 . . . . . . . 8 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵))) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
1413exp44 441 . . . . . . 7 ((♯‘(1st𝐴)) ∈ ℕ0 → ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → ((1st𝐵)(Walks‘𝐺)(2nd𝐵) → ((2nd𝐴) = (2nd𝐵) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))))))
153, 14mpcom 38 . . . . . 6 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → ((1st𝐵)(Walks‘𝐺)(2nd𝐵) → ((2nd𝐴) = (2nd𝐵) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))))
162, 15syl5bi 245 . . . . 5 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (𝐵 ∈ (Walks‘𝐺) → ((2nd𝐴) = (2nd𝐵) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))))
171, 16sylbi 220 . . . 4 (𝐴 ∈ (Walks‘𝐺) → (𝐵 ∈ (Walks‘𝐺) → ((2nd𝐴) = (2nd𝐵) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))))
1817imp31 421 . . 3 (((𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
19183adant1 1132 . 2 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
20 simpl 486 . . . . . . 7 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → 𝐺 ∈ USPGraph)
21 simpl 486 . . . . . . 7 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → (♯‘(1st𝐴)) ∈ ℕ0)
2220, 21anim12i 616 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → (𝐺 ∈ USPGraph ∧ (♯‘(1st𝐴)) ∈ ℕ0))
23 simpl 486 . . . . . . . 8 ((𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) → 𝐴 ∈ (Walks‘𝐺))
2423adantl 485 . . . . . . 7 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → 𝐴 ∈ (Walks‘𝐺))
25 eqidd 2735 . . . . . . 7 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → (♯‘(1st𝐴)) = (♯‘(1st𝐴)))
2624, 25anim12i 616 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → (𝐴 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐴)) = (♯‘(1st𝐴))))
27 simpr 488 . . . . . . . 8 ((𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) → 𝐵 ∈ (Walks‘𝐺))
2827adantl 485 . . . . . . 7 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → 𝐵 ∈ (Walks‘𝐺))
29 simpr 488 . . . . . . 7 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → (♯‘(1st𝐵)) = (♯‘(1st𝐴)))
3028, 29anim12i 616 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → (𝐵 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
31 uspgr2wlkeq2 27706 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (♯‘(1st𝐴)) ∈ ℕ0) ∧ (𝐴 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐴)) = (♯‘(1st𝐴))) ∧ (𝐵 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → ((2nd𝐴) = (2nd𝐵) → 𝐴 = 𝐵))
3222, 26, 30, 31syl3anc 1373 . . . . 5 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → ((2nd𝐴) = (2nd𝐵) → 𝐴 = 𝐵))
3332ex 416 . . . 4 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → ((2nd𝐴) = (2nd𝐵) → 𝐴 = 𝐵)))
3433com23 86 . . 3 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → ((2nd𝐴) = (2nd𝐵) → (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → 𝐴 = 𝐵)))
35343impia 1119 . 2 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) ∧ (2nd𝐴) = (2nd𝐵)) → (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → 𝐴 = 𝐵))
3619, 35mpd 15 1 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) ∧ (2nd𝐴) = (2nd𝐵)) → 𝐴 = 𝐵)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399  w3a 1089   = wceq 1543  wcel 2110   class class class wbr 5043  cfv 6369  (class class class)co 7202  1st c1st 7748  2nd c2nd 7749  1c1 10713  cmin 11045  0cn0 12073  chash 13879  USPGraphcuspgr 27211  Walkscwlks 27656
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1817  ax-5 1918  ax-6 1976  ax-7 2016  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2158  ax-12 2175  ax-ext 2706  ax-rep 5168  ax-sep 5181  ax-nul 5188  ax-pow 5247  ax-pr 5311  ax-un 7512  ax-cnex 10768  ax-resscn 10769  ax-1cn 10770  ax-icn 10771  ax-addcl 10772  ax-addrcl 10773  ax-mulcl 10774  ax-mulrcl 10775  ax-mulcom 10776  ax-addass 10777  ax-mulass 10778  ax-distr 10779  ax-i2m1 10780  ax-1ne0 10781  ax-1rid 10782  ax-rnegex 10783  ax-rrecex 10784  ax-cnre 10785  ax-pre-lttri 10786  ax-pre-lttrn 10787  ax-pre-ltadd 10788  ax-pre-mulgt0 10789
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 848  df-ifp 1064  df-3or 1090  df-3an 1091  df-tru 1546  df-fal 1556  df-ex 1788  df-nf 1792  df-sb 2071  df-mo 2537  df-eu 2566  df-clab 2713  df-cleq 2726  df-clel 2812  df-nfc 2882  df-ne 2936  df-nel 3040  df-ral 3059  df-rex 3060  df-reu 3061  df-rab 3063  df-v 3403  df-sbc 3688  df-csb 3803  df-dif 3860  df-un 3862  df-in 3864  df-ss 3874  df-pss 3876  df-nul 4228  df-if 4430  df-pw 4505  df-sn 4532  df-pr 4534  df-tp 4536  df-op 4538  df-uni 4810  df-int 4850  df-iun 4896  df-br 5044  df-opab 5106  df-mpt 5125  df-tr 5151  df-id 5444  df-eprel 5449  df-po 5457  df-so 5458  df-fr 5498  df-we 5500  df-xp 5546  df-rel 5547  df-cnv 5548  df-co 5549  df-dm 5550  df-rn 5551  df-res 5552  df-ima 5553  df-pred 6149  df-ord 6205  df-on 6206  df-lim 6207  df-suc 6208  df-iota 6327  df-fun 6371  df-fn 6372  df-f 6373  df-f1 6374  df-fo 6375  df-f1o 6376  df-fv 6377  df-riota 7159  df-ov 7205  df-oprab 7206  df-mpo 7207  df-om 7634  df-1st 7750  df-2nd 7751  df-wrecs 8036  df-recs 8097  df-rdg 8135  df-1o 8191  df-2o 8192  df-oadd 8195  df-er 8380  df-map 8499  df-pm 8500  df-en 8616  df-dom 8617  df-sdom 8618  df-fin 8619  df-dju 9500  df-card 9538  df-pnf 10852  df-mnf 10853  df-xr 10854  df-ltxr 10855  df-le 10856  df-sub 11047  df-neg 11048  df-nn 11814  df-2 11876  df-n0 12074  df-xnn0 12146  df-z 12160  df-uz 12422  df-fz 13079  df-fzo 13222  df-hash 13880  df-word 14053  df-edg 27111  df-uhgr 27121  df-upgr 27145  df-uspgr 27213  df-wlks 27659
This theorem is referenced by:  wlkswwlksf1o  27935
  Copyright terms: Public domain W3C validator