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

Theorem uspgr2wlkeqi 27440
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 27421 . . . . 5 (𝐴 ∈ (Walks‘𝐺) ↔ (1st𝐴)(Walks‘𝐺)(2nd𝐴))
2 wlkcpr 27421 . . . . . 6 (𝐵 ∈ (Walks‘𝐺) ↔ (1st𝐵)(Walks‘𝐺)(2nd𝐵))
3 wlkcl 27408 . . . . . . 7 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (♯‘(1st𝐴)) ∈ ℕ0)
4 fveq2 6649 . . . . . . . . . . . . 13 ((2nd𝐴) = (2nd𝐵) → (♯‘(2nd𝐴)) = (♯‘(2nd𝐵)))
54oveq1d 7154 . . . . . . . . . . . 12 ((2nd𝐴) = (2nd𝐵) → ((♯‘(2nd𝐴)) − 1) = ((♯‘(2nd𝐵)) − 1))
65eqcomd 2807 . . . . . . . . . . 11 ((2nd𝐴) = (2nd𝐵) → ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1))
76adantl 485 . . . . . . . . . 10 ((((1st𝐴)(Walks‘𝐺)(2nd𝐴) ∧ (1st𝐵)(Walks‘𝐺)(2nd𝐵)) ∧ (2nd𝐴) = (2nd𝐵)) → ((♯‘(2nd𝐵)) − 1) = ((♯‘(2nd𝐴)) − 1))
8 wlklenvm1 27414 . . . . . . . . . . . 12 ((1st𝐵)(Walks‘𝐺)(2nd𝐵) → (♯‘(1st𝐵)) = ((♯‘(2nd𝐵)) − 1))
9 wlklenvm1 27414 . . . . . . . . . . . 12 ((1st𝐴)(Walks‘𝐺)(2nd𝐴) → (♯‘(1st𝐴)) = ((♯‘(2nd𝐴)) − 1))
108, 9eqeqan12rd 2820 . . . . . . . . . . 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 619 . . . . . . . 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 1127 . 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 615 . . . . . 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 2802 . . . . . . 7 (((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))) → (♯‘(1st𝐴)) = (♯‘(1st𝐴)))
2624, 25anim12i 615 . . . . . 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 615 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (𝐴 ∈ (Walks‘𝐺) ∧ 𝐵 ∈ (Walks‘𝐺))) ∧ ((♯‘(1st𝐴)) ∈ ℕ0 ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → (𝐵 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴))))
31 uspgr2wlkeq2 27439 . . . . . 6 (((𝐺 ∈ USPGraph ∧ (♯‘(1st𝐴)) ∈ ℕ0) ∧ (𝐴 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐴)) = (♯‘(1st𝐴))) ∧ (𝐵 ∈ (Walks‘𝐺) ∧ (♯‘(1st𝐵)) = (♯‘(1st𝐴)))) → ((2nd𝐴) = (2nd𝐵) → 𝐴 = 𝐵))
3222, 26, 30, 31syl3anc 1368 . . . . 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 1114 . 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 1084   = wceq 1538  wcel 2112   class class class wbr 5033  cfv 6328  (class class class)co 7139  1st c1st 7673  2nd c2nd 7674  1c1 10531  cmin 10863  0cn0 11889  chash 13690  USPGraphcuspgr 26944  Walkscwlks 27389
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2773  ax-rep 5157  ax-sep 5170  ax-nul 5177  ax-pow 5234  ax-pr 5298  ax-un 7445  ax-cnex 10586  ax-resscn 10587  ax-1cn 10588  ax-icn 10589  ax-addcl 10590  ax-addrcl 10591  ax-mulcl 10592  ax-mulrcl 10593  ax-mulcom 10594  ax-addass 10595  ax-mulass 10596  ax-distr 10597  ax-i2m1 10598  ax-1ne0 10599  ax-1rid 10600  ax-rnegex 10601  ax-rrecex 10602  ax-cnre 10603  ax-pre-lttri 10604  ax-pre-lttrn 10605  ax-pre-ltadd 10606  ax-pre-mulgt0 10607
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-ifp 1059  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2601  df-eu 2632  df-clab 2780  df-cleq 2794  df-clel 2873  df-nfc 2941  df-ne 2991  df-nel 3095  df-ral 3114  df-rex 3115  df-reu 3116  df-rab 3118  df-v 3446  df-sbc 3724  df-csb 3832  df-dif 3887  df-un 3889  df-in 3891  df-ss 3901  df-pss 3903  df-nul 4247  df-if 4429  df-pw 4502  df-sn 4529  df-pr 4531  df-tp 4533  df-op 4535  df-uni 4804  df-int 4842  df-iun 4886  df-br 5034  df-opab 5096  df-mpt 5114  df-tr 5140  df-id 5428  df-eprel 5433  df-po 5442  df-so 5443  df-fr 5482  df-we 5484  df-xp 5529  df-rel 5530  df-cnv 5531  df-co 5532  df-dm 5533  df-rn 5534  df-res 5535  df-ima 5536  df-pred 6120  df-ord 6166  df-on 6167  df-lim 6168  df-suc 6169  df-iota 6287  df-fun 6330  df-fn 6331  df-f 6332  df-f1 6333  df-fo 6334  df-f1o 6335  df-fv 6336  df-riota 7097  df-ov 7142  df-oprab 7143  df-mpo 7144  df-om 7565  df-1st 7675  df-2nd 7676  df-wrecs 7934  df-recs 7995  df-rdg 8033  df-1o 8089  df-2o 8090  df-oadd 8093  df-er 8276  df-map 8395  df-pm 8396  df-en 8497  df-dom 8498  df-sdom 8499  df-fin 8500  df-dju 9318  df-card 9356  df-pnf 10670  df-mnf 10671  df-xr 10672  df-ltxr 10673  df-le 10674  df-sub 10865  df-neg 10866  df-nn 11630  df-2 11692  df-n0 11890  df-xnn0 11960  df-z 11974  df-uz 12236  df-fz 12890  df-fzo 13033  df-hash 13691  df-word 13862  df-edg 26844  df-uhgr 26854  df-upgr 26878  df-uspgr 26946  df-wlks 27392
This theorem is referenced by:  wlkswwlksf1o  27668
  Copyright terms: Public domain W3C validator