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 48702
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 30081 . . . . 5 (𝐹(Paths‘𝐺)𝑃𝐹(Trails‘𝐺)𝑃)
97, 8syl 18 . . . 4 (𝜑𝐹(Trails‘𝐺)𝑃)
101, 2, 3, 4, 5, 6, 9upgrimtrls 48699 . . 3 (𝜑𝐸(Trails‘𝐻)(𝑁𝑃))
111, 2, 3, 4, 5, 6, 7upgrimpthslem1 48700 . . 3 (𝜑 → Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐹))))
12 pthiswlk 30083 . . . . . . . . . . . 12 (𝐹(Paths‘𝐺)𝑃𝐹(Walks‘𝐺)𝑃)
131wlkf 29973 . . . . . . . . . . . 12 (𝐹(Walks‘𝐺)𝑃𝐹 ∈ Word dom 𝐼)
147, 12, 133syl 19 . . . . . . . . . . 11 (𝜑𝐹 ∈ Word dom 𝐼)
15 eqid 2763 . . . . . . . . . . . . 13 (Vtx‘𝐺) = (Vtx‘𝐺)
1615wlkp 29975 . . . . . . . . . . . 12 (𝐹(Walks‘𝐺)𝑃𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
177, 12, 163syl 19 . . . . . . . . . . 11 (𝜑𝑃:(0...(♯‘𝐹))⟶(Vtx‘𝐺))
181, 2, 3, 4, 5, 6, 14, 17upgrimwlklem4 48693 . . . . . . . . . 10 (𝜑 → (𝑁𝑃):(0...(♯‘𝐸))⟶(Vtx‘𝐻))
1918ffnd 6706 . . . . . . . . 9 (𝜑 → (𝑁𝑃) Fn (0...(♯‘𝐸)))
201, 2, 3, 4, 5, 6, 14upgrimwlklem1 48690 . . . . . . . . . . 11 (𝜑 → (♯‘𝐸) = (♯‘𝐹))
21 wlkcl 29974 . . . . . . . . . . . 12 (𝐹(Walks‘𝐺)𝑃 → (♯‘𝐹) ∈ ℕ0)
227, 12, 213syl 19 . . . . . . . . . . 11 (𝜑 → (♯‘𝐹) ∈ ℕ0)
2320, 22eqeltrd 2863 . . . . . . . . . 10 (𝜑 → (♯‘𝐸) ∈ ℕ0)
24 0elfz 13657 . . . . . . . . . 10 ((♯‘𝐸) ∈ ℕ0 → 0 ∈ (0...(♯‘𝐸)))
2523, 24syl 18 . . . . . . . . 9 (𝜑 → 0 ∈ (0...(♯‘𝐸)))
26 nn0fz0 13658 . . . . . . . . . . 11 ((♯‘𝐹) ∈ ℕ0 ↔ (♯‘𝐹) ∈ (0...(♯‘𝐹)))
2722, 26sylib 221 . . . . . . . . . 10 (𝜑 → (♯‘𝐹) ∈ (0...(♯‘𝐹)))
2820oveq2d 7426 . . . . . . . . . 10 (𝜑 → (0...(♯‘𝐸)) = (0...(♯‘𝐹)))
2927, 28eleqtrrd 2866 . . . . . . . . 9 (𝜑 → (♯‘𝐹) ∈ (0...(♯‘𝐸)))
30 fnimapr 6964 . . . . . . . . 9 (((𝑁𝑃) Fn (0...(♯‘𝐸)) ∧ 0 ∈ (0...(♯‘𝐸)) ∧ (♯‘𝐹) ∈ (0...(♯‘𝐸))) → ((𝑁𝑃) “ {0, (♯‘𝐹)}) = {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))})
3119, 25, 29, 30syl3anc 1398 . . . . . . . 8 (𝜑 → ((𝑁𝑃) “ {0, (♯‘𝐹)}) = {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))})
3231eleq2d 2849 . . . . . . 7 (𝜑 → (𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ↔ 𝑥 ∈ {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))}))
33 vex 3459 . . . . . . . 8 𝑥 ∈ V
3433elpr 4614 . . . . . . 7 (𝑥 ∈ {((𝑁𝑃)‘0), ((𝑁𝑃)‘(♯‘𝐹))} ↔ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹))))
3532, 34bitrdi 290 . . . . . 6 (𝜑 → (𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ↔ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))))
361, 2, 3, 4, 5, 6, 7upgrimpthslem2 48701 . . . . . . . . . . . . . 14 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → (¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0) ∧ ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹))))
3736simpld 499 . . . . . . . . . . . . 13 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0))
38 eqeq2 2775 . . . . . . . . . . . . . 14 (𝑥 = ((𝑁𝑃)‘0) → (((𝑁𝑃)‘𝑦) = 𝑥 ↔ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0)))
3938notbid 321 . . . . . . . . . . . . 13 (𝑥 = ((𝑁𝑃)‘0) → (¬ ((𝑁𝑃)‘𝑦) = 𝑥 ↔ ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘0)))
4037, 39syl5ibrcom 250 . . . . . . . . . . . 12 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → (𝑥 = ((𝑁𝑃)‘0) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4136simprd 500 . . . . . . . . . . . . 13 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹)))
42 eqeq2 2775 . . . . . . . . . . . . . 14 (𝑥 = ((𝑁𝑃)‘(♯‘𝐹)) → (((𝑁𝑃)‘𝑦) = 𝑥 ↔ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹))))
4342notbid 321 . . . . . . . . . . . . 13 (𝑥 = ((𝑁𝑃)‘(♯‘𝐹)) → (¬ ((𝑁𝑃)‘𝑦) = 𝑥 ↔ ¬ ((𝑁𝑃)‘𝑦) = ((𝑁𝑃)‘(♯‘𝐹))))
4441, 43syl5ibrcom 250 . . . . . . . . . . . 12 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → (𝑥 = ((𝑁𝑃)‘(♯‘𝐹)) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4540, 44jaod 872 . . . . . . . . . . 11 ((𝜑𝑦 ∈ (1..^(♯‘𝐹))) → ((𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4645impancom 456 . . . . . . . . . 10 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (𝑦 ∈ (1..^(♯‘𝐹)) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥))
4746imp 411 . . . . . . . . 9 (((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) ∧ 𝑦 ∈ (1..^(♯‘𝐹))) → ¬ ((𝑁𝑃)‘𝑦) = 𝑥)
4847nrexdv 3160 . . . . . . . 8 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → ¬ ∃𝑦 ∈ (1..^(♯‘𝐹))((𝑁𝑃)‘𝑦) = 𝑥)
4920eqcomd 2769 . . . . . . . . . . . . . 14 (𝜑 → (♯‘𝐹) = (♯‘𝐸))
5049oveq2d 7426 . . . . . . . . . . . . 13 (𝜑 → (0...(♯‘𝐹)) = (0...(♯‘𝐸)))
5150feq2d 6689 . . . . . . . . . . . 12 (𝜑 → ((𝑁𝑃):(0...(♯‘𝐹))⟶(Vtx‘𝐻) ↔ (𝑁𝑃):(0...(♯‘𝐸))⟶(Vtx‘𝐻)))
5218, 51mpbird 260 . . . . . . . . . . 11 (𝜑 → (𝑁𝑃):(0...(♯‘𝐹))⟶(Vtx‘𝐻))
5352ffnd 6706 . . . . . . . . . 10 (𝜑 → (𝑁𝑃) Fn (0...(♯‘𝐹)))
5453adantr 485 . . . . . . . . 9 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (𝑁𝑃) Fn (0...(♯‘𝐹)))
55 fzo0ss1 13723 . . . . . . . . . . 11 (1..^(♯‘𝐹)) ⊆ (0..^(♯‘𝐹))
56 fzossfz 13712 . . . . . . . . . . 11 (0..^(♯‘𝐹)) ⊆ (0...(♯‘𝐹))
5755, 56sstri 3946 . . . . . . . . . 10 (1..^(♯‘𝐹)) ⊆ (0...(♯‘𝐹))
5857a1i 11 . . . . . . . . 9 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (1..^(♯‘𝐹)) ⊆ (0...(♯‘𝐹)))
5954, 58fvelimabd 6954 . . . . . . . 8 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → (𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))) ↔ ∃𝑦 ∈ (1..^(♯‘𝐹))((𝑁𝑃)‘𝑦) = 𝑥))
6048, 59mtbird 328 . . . . . . 7 ((𝜑 ∧ (𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹)))) → ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))))
6160ex 417 . . . . . 6 (𝜑 → ((𝑥 = ((𝑁𝑃)‘0) ∨ 𝑥 = ((𝑁𝑃)‘(♯‘𝐹))) → ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹)))))
6235, 61sylbid 243 . . . . 5 (𝜑 → (𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) → ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹)))))
6362ralrimiv 3156 . . . 4 (𝜑 → ∀𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))))
64 disj 4410 . . . 4 ((((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))) = ∅ ↔ ∀𝑥 ∈ ((𝑁𝑃) “ {0, (♯‘𝐹)}) ¬ 𝑥 ∈ ((𝑁𝑃) “ (1..^(♯‘𝐹))))
6563, 64sylibr 237 . . 3 (𝜑 → (((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))) = ∅)
6620oveq2d 7426 . . . . . . 7 (𝜑 → (1..^(♯‘𝐸)) = (1..^(♯‘𝐹)))
6766reseq2d 5978 . . . . . 6 (𝜑 → ((𝑁𝑃) ↾ (1..^(♯‘𝐸))) = ((𝑁𝑃) ↾ (1..^(♯‘𝐹))))
6867cnveqd 5861 . . . . 5 (𝜑((𝑁𝑃) ↾ (1..^(♯‘𝐸))) = ((𝑁𝑃) ↾ (1..^(♯‘𝐹))))
6968funeqd 6558 . . . 4 (𝜑 → (Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐸))) ↔ Fun ((𝑁𝑃) ↾ (1..^(♯‘𝐹)))))
70 preq2 4700 . . . . . . . 8 ((♯‘𝐸) = (♯‘𝐹) → {0, (♯‘𝐸)} = {0, (♯‘𝐹)})
7170imaeq2d 6062 . . . . . . 7 ((♯‘𝐸) = (♯‘𝐹) → ((𝑁𝑃) “ {0, (♯‘𝐸)}) = ((𝑁𝑃) “ {0, (♯‘𝐹)}))
72 oveq2 7418 . . . . . . . 8 ((♯‘𝐸) = (♯‘𝐹) → (1..^(♯‘𝐸)) = (1..^(♯‘𝐹)))
7372imaeq2d 6062 . . . . . . 7 ((♯‘𝐸) = (♯‘𝐹) → ((𝑁𝑃) “ (1..^(♯‘𝐸))) = ((𝑁𝑃) “ (1..^(♯‘𝐹))))
7471, 73ineq12d 4174 . . . . . 6 ((♯‘𝐸) = (♯‘𝐹) → (((𝑁𝑃) “ {0, (♯‘𝐸)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐸)))) = (((𝑁𝑃) “ {0, (♯‘𝐹)}) ∩ ((𝑁𝑃) “ (1..^(♯‘𝐹)))))
7574eqeq1d 2765 . . . . 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 30079 . 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 400  wo 860  w3a 1103   = wceq 1570  wcel 2143  wral 3079  wrex 3089  cin 3904  wss 3905  c0 4286  {cpr 4591   class class class wbr 5109  cmpt 5192  ccnv 5660  dom cdm 5661  cres 5663  cima 5664  ccom 5665  Fun wfun 6530   Fn wfn 6531  wf 6532  cfv 6536  (class class class)co 7410  0cc0 11104  1c1 11105  0cn0 12508  ...cfz 13539  ..^cfzo 13687  chash 14371  Word cword 14555  Vtxcvtx 29355  iEdgciedg 29356  USPGraphcuspgr 29507  Walkscwlks 29955  Trailsctrls 30047  Pathscpths 30068   GraphIso cgrim 48668
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-11 2192  ax-12 2213  ax-ext 2735  ax-rep 5238  ax-sep 5257  ax-nul 5269  ax-pow 5336  ax-pr 5404  ax-un 7732  ax-cnex 11160  ax-resscn 11161  ax-1cn 11162  ax-icn 11163  ax-addcl 11164  ax-addrcl 11165  ax-mulcl 11166  ax-mulrcl 11167  ax-mulcom 11168  ax-addass 11169  ax-mulass 11170  ax-distr 11171  ax-i2m1 11172  ax-1ne0 11173  ax-1rid 11174  ax-rnegex 11175  ax-rrecex 11176  ax-cnre 11177  ax-pre-lttri 11178  ax-pre-lttrn 11179  ax-pre-ltadd 11180  ax-pre-mulgt0 11181
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-ifp 1079  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-nel 3065  df-ral 3080  df-rex 3090  df-reu 3370  df-rab 3417  df-v 3457  df-sbc 3745  df-csb 3854  df-dif 3908  df-un 3910  df-in 3912  df-ss 3922  df-pss 3925  df-nul 4287  df-if 4488  df-pw 4564  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4873  df-int 4913  df-iun 4958  df-br 5110  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5556  df-eprel 5561  df-po 5569  df-so 5570  df-fr 5614  df-we 5616  df-xp 5667  df-rel 5668  df-cnv 5669  df-co 5670  df-dm 5671  df-rn 5672  df-res 5673  df-ima 5674  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-riota 7367  df-ov 7413  df-oprab 7414  df-mpo 7415  df-om 7859  df-1st 7982  df-2nd 7983  df-frecs 8274  df-wrecs 8305  df-recs 8354  df-rdg 8393  df-1o 8449  df-2o 8450  df-oadd 8453  df-er 8690  df-map 8822  df-pm 8823  df-en 8940  df-dom 8941  df-sdom 8942  df-fin 8943  df-dju 9892  df-card 9930  df-pnf 11249  df-mnf 11250  df-xr 11251  df-ltxr 11252  df-le 11253  df-sub 11447  df-neg 11448  df-nn 12238  df-2 12307  df-n0 12509  df-xnn0 12582  df-z 12596  df-uz 12867  df-fz 13540  df-fzo 13688  df-hash 14372  df-word 14556  df-edg 29407  df-uhgr 29417  df-upgr 29441  df-uspgr 29509  df-wlks 29958  df-trls 30049  df-pths 30072  df-grim 48671
This theorem is used by:  upgrimcycls  48704
  Copyright terms: Public domain W3C validator