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

Theorem uspgr2wlkeqi 27132
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 27113 . . . . 5 (𝐴 ∈ (Walks‘𝐺) ↔ (1st𝐴)(Walks‘𝐺)(2nd𝐴))
2 wlkcpr 27113 . . . . . 6 (𝐵 ∈ (Walks‘𝐺) ↔ (1st𝐵)(Walks‘𝐺)(2nd𝐵))
3 wlkcl 27100 . . . . . . 7 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (♯‘(1st𝐴)) ∈ ℕ0)
4 fveq2 6499 . . . . . . . . . . . . 13 ((2nd𝐴) = (2nd𝐵) → (♯‘(2nd𝐴)) = (♯‘(2nd𝐵)))
54oveq1d 6991 . . . . . . . . . . . 12 ((2nd𝐴) = (2nd𝐵) → ((♯‘(2nd𝐴)) − 1) = ((♯‘(2nd𝐵)) − 1))
65eqcomd 2785 . . . . . . . . . . 11 ((2nd𝐴) = (2nd𝐵) → ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1))
76adantl 474 . . . . . . . . . 10 ((((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1))
8 wlklenvm1 27106 . . . . . . . . . . . 12 ((1st𝐵)(Walks‘𝐺)(2nd𝐵) → (♯‘(1st𝐵)) = ((♯‘(2nd𝐵)) − 1))
9 wlklenvm1 27106 . . . . . . . . . . . 12 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (♯‘(1st𝐴)) = ((♯‘(2nd𝐴)) − 1))
108, 9eqeqan12rd 2797 . . . . . . . . . . 11 (((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) → ((♯‘(1st𝐵)) = (♯‘(1st𝐴)) ↔ ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1)))
1110adantr 473 . . . . . . . . . 10 ((((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(1st𝐵)) = (♯‘(1st𝐴)) ↔ ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1)))
127, 11mpbird 249 . . . . . . . . 9 ((((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵)) → (♯‘(1st𝐵)) = (♯‘(1st𝐴)))
1312anim2i 607 . . . . . . . 8 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵))) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
1413exp44 430 . . . . . . 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 234 . . . . 5 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (𝐵 ∈ (Walks‘𝐺) → ((2nd𝐴) = (2nd𝐵) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))))
171, 16sylbi 209 . . . 4 (𝐴 ∈ (Walks‘𝐺) → (𝐵 ∈ (Walks‘𝐺) → ((2nd𝐴) = (2nd𝐵) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))))
1817imp31 410 . . 3 (((𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
19183adant1 1110 . 2 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
20 simpl 475 . . . . . . 7 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → 𝐺 ∈ USPGraph)
21 simpl 475 . . . . . . 7 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → (♯‘(1st𝐴)) ∈ ℕ0)
2220, 21anim12i 603 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → (𝐺 ∈ USPGraph ∧ (♯‘(1st𝐴)) ∈ ℕ0))
23 simpl 475 . . . . . . . 8 ((𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) → 𝐴 ∈ (Walks‘𝐺))
2423adantl 474 . . . . . . 7 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → 𝐴 ∈ (Walks‘𝐺))
25 eqidd 2780 . . . . . . 7 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → (♯‘(1st𝐴)) = (♯‘(1st𝐴)))
2624, 25anim12i 603 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → (𝐴 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐴)) = (♯‘(1st𝐴))))
27 simpr 477 . . . . . . . 8 ((𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺)) → 𝐵 ∈ (Walks‘𝐺))
2827adantl 474 . . . . . . 7 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → 𝐵 ∈ (Walks‘𝐺))
29 simpr 477 . . . . . . 7 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → (♯‘(1st𝐵)) = (♯‘(1st𝐴)))
3028, 29anim12i 603 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → (𝐵 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
31 uspgr2wlkeq2 27131 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (♯‘(1st𝐴)) ∈ ℕ0) ∧ (𝐴 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐴)) = (♯‘(1st𝐴))) ∧ (𝐵 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → ((2nd𝐴) = (2nd𝐵) → 𝐴 = 𝐵))
3222, 26, 30, 31syl3anc 1351 . . . . 5 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → ((2nd𝐴) = (2nd𝐵) → 𝐴 = 𝐵))
3332ex 405 . . . 4 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → ((2nd𝐴) = (2nd𝐵) → 𝐴 = 𝐵)))
3433com23 86 . . 3 ((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) → ((2nd𝐴) = (2nd𝐵) → (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → 𝐴 = 𝐵)))
35343impia 1097 . 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 198  wa 387  w3a 1068   = wceq 1507  wcel 2050   class class class wbr 4929  cfv 6188  (class class class)co 6976  1st c1st 7499  2nd c2nd 7500  1c1 10336  cmin 10670  0cn0 11707  chash 13505  USPGraphcuspgr 26636  Walkscwlks 27081
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1758  ax-4 1772  ax-5 1869  ax-6 1928  ax-7 1965  ax-8 2052  ax-9 2059  ax-10 2079  ax-11 2093  ax-12 2106  ax-13 2301  ax-ext 2751  ax-rep 5049  ax-sep 5060  ax-nul 5067  ax-pow 5119  ax-pr 5186  ax-un 7279  ax-cnex 10391  ax-resscn 10392  ax-1cn 10393  ax-icn 10394  ax-addcl 10395  ax-addrcl 10396  ax-mulcl 10397  ax-mulrcl 10398  ax-mulcom 10399  ax-addass 10400  ax-mulass 10401  ax-distr 10402  ax-i2m1 10403  ax-1ne0 10404  ax-1rid 10405  ax-rnegex 10406  ax-rrecex 10407  ax-cnre 10408  ax-pre-lttri 10409  ax-pre-lttrn 10410  ax-pre-ltadd 10411  ax-pre-mulgt0 10412
This theorem depends on definitions:  df-bi 199  df-an 388  df-or 834  df-ifp 1044  df-3or 1069  df-3an 1070  df-tru 1510  df-ex 1743  df-nf 1747  df-sb 2016  df-mo 2547  df-eu 2584  df-clab 2760  df-cleq 2772  df-clel 2847  df-nfc 2919  df-ne 2969  df-nel 3075  df-ral 3094  df-rex 3095  df-reu 3096  df-rmo 3097  df-rab 3098  df-v 3418  df-sbc 3683  df-csb 3788  df-dif 3833  df-un 3835  df-in 3837  df-ss 3844  df-pss 3846  df-nul 4180  df-if 4351  df-pw 4424  df-sn 4442  df-pr 4444  df-tp 4446  df-op 4448  df-uni 4713  df-int 4750  df-iun 4794  df-br 4930  df-opab 4992  df-mpt 5009  df-tr 5031  df-id 5312  df-eprel 5317  df-po 5326  df-so 5327  df-fr 5366  df-we 5368  df-xp 5413  df-rel 5414  df-cnv 5415  df-co 5416  df-dm 5417  df-rn 5418  df-res 5419  df-ima 5420  df-pred 5986  df-ord 6032  df-on 6033  df-lim 6034  df-suc 6035  df-iota 6152  df-fun 6190  df-fn 6191  df-f 6192  df-f1 6193  df-fo 6194  df-f1o 6195  df-fv 6196  df-riota 6937  df-ov 6979  df-oprab 6980  df-mpo 6981  df-om 7397  df-1st 7501  df-2nd 7502  df-wrecs 7750  df-recs 7812  df-rdg 7850  df-1o 7905  df-2o 7906  df-oadd 7909  df-er 8089  df-map 8208  df-pm 8209  df-en 8307  df-dom 8308  df-sdom 8309  df-fin 8310  df-dju 9124  df-card 9162  df-pnf 10476  df-mnf 10477  df-xr 10478  df-ltxr 10479  df-le 10480  df-sub 10672  df-neg 10673  df-nn 11440  df-2 11503  df-n0 11708  df-xnn0 11780  df-z 11794  df-uz 12059  df-fz 12709  df-fzo 12850  df-hash 13506  df-word 13673  df-edg 26536  df-uhgr 26546  df-upgr 26570  df-uspgr 26638  df-wlks 27084
This theorem is referenced by:  wlkswwlksf1o  27365
  Copyright terms: Public domain W3C validator