Users' Mathboxes Mathbox for Alexander van der Vekens < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  upgrimpths Structured version   Visualization version   GIF version

Theorem upgrimpths 48828
Description: Graph isomorphisms between simple pseudographs map paths onto paths. (Contributed by AV, 31-Oct-2025.)
Hypotheses
Ref Expression
upgrimwlk.i 𝐼 = (iEdg‘𝐺)
upgrimwlk.j 𝐽 = (iEdg‘𝐻)
upgrimwlk.g (𝜑𝐺 ∈ USPGraph)
upgrimwlk.h (𝜑𝐻 ∈ USPGraph)
upgrimwlk.n (𝜑𝑁 ∈ (𝐺 GraphIso 𝐻))
upgrimwlk.e 𝐸 = (𝑥 ∈ dom 𝐹 ↦ (𝐽‘(𝑁 “ (𝐼‘(𝐹𝑥)))))
upgrimpths.p (𝜑𝐹(Paths‘𝐺)𝑃)
Assertion
Ref Expression
upgrimpths (𝜑𝐸(Paths‘𝐻)(𝑁𝑃))
Distinct variable groups:   𝑥,𝐹   𝑥,𝐺   𝑥,𝐼   𝑥,𝐽   𝑥,𝑃   𝜑,𝑥   𝑥,𝐸   𝑥,𝑁
Allowed substitution hint:   𝐻(𝑥)

Proof of Theorem upgrimpths
Dummy variable 𝑦 is distinct from all other variables.
StepHypRef Expression
1 upgrimwlk.i . . . 4 𝐼 = (iEdg‘𝐺)
2 upgrimwlk.j . . . 4 𝐽 = (iEdg‘𝐻)
3 upgrimwlk.g . . . 4 (𝜑𝐺 ∈ USPGraph)
4 upgrimwlk.h . . . 4 (𝜑𝐻 ∈ USPGraph)
5 upgrimwlk.n . . . 4 (𝜑𝑁 ∈ (𝐺 GraphIso 𝐻))
6 upgrimwlk.e . . . 4 𝐸 = (𝑥 ∈ dom 𝐹 ↦ (𝐽‘(𝑁 “ (𝐼‘(𝐹𝑥)))))
7 upgrimpths.p . . . . 5 (𝜑𝐹(Paths‘𝐺)𝑃)
8 pthistrl 30190 . . . . 5 (𝐹(Paths‘𝐺)𝑃𝐹(Trails‘𝐺)𝑃)
97, 8syl 18 . . . 4 (𝜑𝐹(Trails‘𝐺)𝑃)
101, 2, 3, 4, 5, 6, 9upgrimtrls 48825 . . 3 (𝜑𝐸(Trails‘𝐻)(𝑁𝑃))
111, 2, 3, 4, 5, 6, 7upgrimpthslem1 48826 . . 3 (𝜑 → Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐹))))
12 pthiswlk 30192 . . . . . . . . . . . 12 (𝐹(Paths‘𝐺)𝑃𝐹(Walks‘𝐺)𝑃)
131wlkf 30077 . . . . . . . . . . . 12 (𝐹(Walks‘𝐺)𝑃𝐹 ∈ Word dom 𝐼)
147, 12, 133syl 19 . . . . . . . . . . 11 (𝜑𝐹 ∈ Word dom 𝐼)
15 eqid 2760 . . . . . . . . . . . . 13 (Vtx‘𝐺) = (Vtx‘𝐺)
1615wlkp 30079 . . . . . . . . . . . 12 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
177, 12, 163syl 19 . . . . . . . . . . 11 (𝜑𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
181, 2, 3, 4, 5, 6, 14, 17upgrimwlklem4 48819 . . . . . . . . . 10 (𝜑 → (𝑁𝑃):(0...(♯‘𝐸))⟶(Vtx‘𝐻))
1918ffnd 6704 . . . . . . . . 9 (𝜑 → (𝑁𝑃) Fn (0...(♯‘𝐸)))
201, 2, 3, 4, 5, 6, 14upgrimwlklem1 48816 . . . . . . . . . . 11 (𝜑 → (♯‘𝐸) = (♯‘𝐹))
21 wlkcl 30078 . . . . . . . . . . . 12 (𝐹(Walks‘𝐺)𝑃 → (♯‘𝐹) ∈ ℕ0)
227, 12, 213syl 19 . . . . . . . . . . 11 (𝜑 → (♯‘𝐹) ∈ ℕ0)
2320, 22eqeltrd 2860 . . . . . . . . . 10 (𝜑 → (♯‘𝐸) ∈ ℕ0)
24 0elfz 13682 . . . . . . . . . 10 ((♯‘𝐸) ∈ ℕ0 → 0 ∈ (0...(♯‘𝐸)))
2523, 24syl 18 . . . . . . . . 9 (𝜑 → 0 ∈ (0...(♯‘𝐸)))
26 nn0fz0 13683 . . . . . . . . . . 11 ((♯‘𝐹) ∈ ℕ0 ↔ (♯‘𝐹) ∈ (0...(♯‘𝐹)))
2722, 26sylib 221 . . . . . . . . . 10 (𝜑 → (♯‘𝐹) ∈ (0...(♯‘𝐹)))
2820oveq2d 7430 . . . . . . . . . 10 (𝜑 → (0...(♯‘𝐸)) = (0...(♯‘𝐹)))
2927, 28eleqtrrd 2863 . . . . . . . . 9 (𝜑 → (♯‘𝐹) ∈ (0...(♯‘𝐸)))
30 fnimapr 6962 . . . . . . . . 9 (((𝑁𝑃) Fn (0...(♯‘𝐸)) ∧ 0 ∈ (0...(♯‘𝐸)) ∧ (♯‘𝐹) ∈ (0...(♯‘𝐸))) → ((𝑁𝑃) “ {0, (♯‘𝐹)}) = {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))})
3119, 25, 29, 30syl3anc 1398 . . . . . . . 8 (𝜑 → ((𝑁𝑃) “ {0, (♯‘𝐹)}) = {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))})
3231eleq2d 2846 . . . . . . 7 (𝜑 → (𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ↔ 𝑥 ∈ {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))}))
33 vex 3454 . . . . . . . 8 𝑥 ∈ V
3433elpr 4609 . . . . . . 7 (𝑥 ∈ {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))} ↔ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹))))
3532, 34bitrdi 290 . . . . . 6 (𝜑 → (𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ↔ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))))
361, 2, 3, 4, 5, 6, 7upgrimpthslem2 48827 . . . . . . . . . . . . . 14 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → (¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0) ∧ ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹))))
3736simpld 500 . . . . . . . . . . . . 13 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0))
38 eqeq2 2772 . . . . . . . . . . . . . 14 (𝑥 = ((𝑁𝑃)‘0) → (((𝑁𝑃)‘𝑦) = 𝑥 ↔ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0)))
3938notbid 321 . . . . . . . . . . . . 13 (𝑥 = ((𝑁𝑃)‘0) → (¬ ((𝑁𝑃)‘𝑦) = 𝑥 ↔ ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0)))
4037, 39syl5ibrcom 250 . . . . . . . . . . . 12 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → (𝑥 = ((𝑁𝑃)‘0) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4136simprd 501 . . . . . . . . . . . . 13 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹)))
42 eqeq2 2772 . . . . . . . . . . . . . 14 (𝑥 = ((𝑁𝑃)‘(♯‘𝐹)) → (((𝑁𝑃)‘𝑦) = 𝑥 ↔ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹))))
4342notbid 321 . . . . . . . . . . . . 13 (𝑥 = ((𝑁𝑃)‘(♯‘𝐹)) → (¬ ((𝑁𝑃)‘𝑦) = 𝑥 ↔ ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹))))
4441, 43syl5ibrcom 250 . . . . . . . . . . . 12 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → (𝑥 = ((𝑁𝑃)‘(♯‘𝐹)) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4540, 44jaod 873 . . . . . . . . . . 11 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → ((𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4645impancom 457 . . . . . . . . . 10 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (𝑦 ∈ (1..^(♯‘𝐹)) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4746imp 412 . . . . . . . . 9 (((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) ∧ 𝑦 ∈ (1..^(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥)
4847nrexdv 3157 . . . . . . . 8 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → ¬ ∃𝑦 ∈ (1..^(♯‘𝐹))((𝑁𝑃)‘𝑦) = 𝑥)
4920eqcomd 2766 . . . . . . . . . . . . . 14 (𝜑 → (♯‘𝐹) = (♯‘𝐸))
5049oveq2d 7430 . . . . . . . . . . . . 13 (𝜑 → (0...(♯‘𝐹)) = (0...(♯‘𝐸)))
5150feq2d 6687 . . . . . . . . . . . 12 (𝜑 → ((𝑁𝑃):(0...(♯‘𝐹))⟶(Vtx‘𝐻) ↔ (𝑁𝑃):(0...(♯‘𝐸))⟶(Vtx‘𝐻)))
5218, 51mpbird 260 . . . . . . . . . . 11 (𝜑 → (𝑁𝑃):(0...(♯‘𝐹))⟶(Vtx‘𝐻))
5352ffnd 6704 . . . . . . . . . 10 (𝜑 → (𝑁𝑃) Fn (0...(♯‘𝐹)))
5453adantr 486 . . . . . . . . 9 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (𝑁𝑃) Fn (0...(♯‘𝐹)))
55 fzo0ss1 13748 . . . . . . . . . . 11 (1..^(♯‘𝐹)) ⊆ (0..^(♯‘𝐹))
56 fzossfz 13737 . . . . . . . . . . 11 (0..^(♯‘𝐹)) ⊆ (0...(♯‘𝐹))
5755, 56sstri 3940 . . . . . . . . . 10 (1..^(♯‘𝐹)) ⊆ (0...(♯‘𝐹))
5857a1i 11 . . . . . . . . 9 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (1..^(♯‘𝐹)) ⊆ (0...(♯‘𝐹)))
5954, 58fvelimabd 6952 . . . . . . . 8 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))) ↔ ∃𝑦 ∈ (1..^(♯‘𝐹))((𝑁𝑃)‘𝑦) = 𝑥))
6048, 59mtbird 328 . . . . . . 7 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))))
6160ex 418 . . . . . 6 (𝜑 → ((𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹))) → ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹)))))
6235, 61sylbid 243 . . . . 5 (𝜑 → (𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) → ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹)))))
6362ralrimiv 3153 . . . 4 (𝜑 → ∀𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))))
64 disj 4403 . . . 4 ((((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))) = ∅ ↔ ∀𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))))
6563, 64sylibr 237 . . 3 (𝜑 → (((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))) = ∅)
6620oveq2d 7430 . . . . . . 7 (𝜑 → (1..^(♯‘𝐸)) = (1..^(♯‘𝐹)))
6766reseq2d 5972 . . . . . 6 (𝜑 → ((𝑁𝑃) ↾ (1..^(♯‘𝐸))) = ((𝑁𝑃) ↾ (1..^(♯‘𝐹))))
6867cnveqd 5855 . . . . 5 (𝜑((𝑁𝑃) ↾ (1..^(♯‘𝐸))) = ((𝑁𝑃) ↾ (1..^(♯‘𝐹))))
6968funeqd 6555 . . . 4 (𝜑 → (Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐸))) ↔ Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐹)))))
70 preq2 4695 . . . . . . . 8 ((♯‘𝐸) = (♯‘𝐹) → {0, (♯‘𝐸)} = {0, (♯‘𝐹)})
7170imaeq2d 6056 . . . . . . 7 ((♯‘𝐸) = (♯‘𝐹) → ((𝑁𝑃) “ {0, (♯‘𝐸)}) = ((𝑁𝑃) “ {0, (♯‘𝐹)}))
72 oveq2 7422 . . . . . . . 8 ((♯‘𝐸) = (♯‘𝐹) → (1..^(♯‘𝐸)) = (1..^(♯‘𝐹)))
7372imaeq2d 6056 . . . . . . 7 ((♯‘𝐸) = (♯‘𝐹) → ((𝑁𝑃) “ (1..^(♯‘𝐸))) = ((𝑁𝑃) “ (1..^(♯‘𝐹))))
7471, 73ineq12d 4167 . . . . . 6 ((♯‘𝐸) = (♯‘𝐹) → (((𝑁𝑃) “ {0, (♯‘𝐸)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐸)))) = (((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))))
7574eqeq1d 2762 . . . . 5 ((♯‘𝐸) = (♯‘𝐹) → ((((𝑁𝑃) “ {0, (♯‘𝐸)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐸)))) = ∅ ↔ (((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))) = ∅))
7620, 75syl 18 . . . 4 (𝜑 → ((((𝑁𝑃) “ {0, (♯‘𝐸)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐸)))) = ∅ ↔ (((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))) = ∅))
7769, 763anbi23d 1467 . . 3 (𝜑 → ((𝐸(Trails‘𝐻)(𝑁𝑃) ∧ Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐸))) ∧ (((𝑁𝑃) “ {0, (♯‘𝐸)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐸)))) = ∅) ↔ (𝐸(Trails‘𝐻)(𝑁𝑃) ∧ Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐹))) ∧ (((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))) = ∅)))
7810, 11, 65, 77mpbir3and 1361 . 2 (𝜑 → (𝐸(Trails‘𝐻)(𝑁𝑃) ∧ Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐸))) ∧ (((𝑁𝑃) “ {0, (♯‘𝐸)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐸)))) = ∅))
79 ispth 30188 . 2 (𝐸(Paths‘𝐻)(𝑁𝑃) ↔ (𝐸(Trails‘𝐻)(𝑁𝑃) ∧ Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐸))) ∧ (((𝑁𝑃) “ {0, (♯‘𝐸)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐸)))) = ∅))
8078, 79sylibr 237 1 (𝜑𝐸(Paths‘𝐻)(𝑁𝑃))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  wo 861  w3a 1103   = wceq 1570  wcel 2145  wral 3076  wrex 3086  cin 3898  wss 3899  c0 4279  {cpr 4586   class class class wbr 5103  cmpt 5186  ccnv 5654  dom cdm 5655  cres 5657  cima 5658  ccom 5659  Fun wfun 6527   Fn wfn 6528  wf 6529  cfv 6533  (class class class)co 7414  0cc0 11127  1c1 11128  0cn0 12531  ...cfz 13564  ..^cfzo 13712  chash 14397  Word cword 14581  Vtxcvtx 29456  iEdgciedg 29457  USPGraphcuspgr 29611  Walkscwlks 30059  Trailsctrls 30155  Pathscpths 30177   GraphIso cgrim 48794
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5232  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7737  ax-cnex 11183  ax-resscn 11184  ax-1cn 11185  ax-icn 11186  ax-addcl 11187  ax-addrcl 11188  ax-mulcl 11189  ax-mulrcl 11190  ax-mulcom 11191  ax-addass 11192  ax-mulass 11193  ax-distr 11194  ax-i2m1 11195  ax-1ne0 11196  ax-1rid 11197  ax-rnegex 11198  ax-rrecex 11199  ax-cnre 11200  ax-pre-lttri 11201  ax-pre-lttrn 11202  ax-pre-ltadd 11203  ax-pre-mulgt0 11204
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-ifp 1079  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6299  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-riota 7371  df-ov 7417  df-oprab 7418  df-mpo 7419  df-om 7864  df-1st 7987  df-2nd 7988  df-frecs 8281  df-wrecs 8312  df-recs 8361  df-rdg 8400  df-1o 8458  df-2o 8459  df-oadd 8462  df-er 8699  df-map 8831  df-pm 8832  df-en 8956  df-dom 8957  df-sdom 8958  df-fin 8959  df-dju 9909  df-card 9947  df-pnf 11272  df-mnf 11273  df-xr 11274  df-ltxr 11275  df-le 11276  df-sub 11470  df-neg 11471  df-nn 12261  df-2 12330  df-n0 12532  df-xnn0 12605  df-z 12619  df-uz 12891  df-fz 13565  df-fzo 13713  df-hash 14398  df-word 14582  df-edg 29508  df-uhgr 29518  df-upgr 29542  df-uspgr 29613  df-wlks 30062  df-trls 30157  df-pths 30181  df-grim 48797
This theorem is used by:  upgrimcycls  48830
  Copyright terms: Public domain W3C validator