Metamath Proof Explorer


Theorem upgrimpths

Description: Graph isomorphisms between simple pseudographs map paths onto paths. (Contributed by AV, 31-Oct-2025)

Ref Expression
Hypotheses upgrimwlk.i ⊢ I = iEdg ⁡ G
upgrimwlk.j ⊢ J = iEdg ⁡ H
upgrimwlk.g ⊢ φ → G ∈ USHGraph
upgrimwlk.h ⊢ φ → H ∈ USHGraph
upgrimwlk.n ⊢ φ → N ∈ G GraphIso H
upgrimwlk.e ⊢ E = x ∈ dom ⁡ F ⟼ J -1 ⁡ N I ⁡ F ⁡ x
upgrimpths.p ⊢ φ → F Paths ⁡ G P
Assertion upgrimpths ⊢ φ → E Paths ⁡ H N ∘ P

Proof

Step Hyp Ref Expression
1 upgrimwlk.i ⊢ I = iEdg ⁡ G
2 upgrimwlk.j ⊢ J = iEdg ⁡ H
3 upgrimwlk.g ⊢ φ → G ∈ USHGraph
4 upgrimwlk.h ⊢ φ → H ∈ USHGraph
5 upgrimwlk.n ⊢ φ → N ∈ G GraphIso H
6 upgrimwlk.e ⊢ E = x ∈ dom ⁡ F ⟼ J -1 ⁡ N I ⁡ F ⁡ x
7 upgrimpths.p ⊢ φ → F Paths ⁡ G P
8 pthistrl ⊢ F Paths ⁡ G P → F Trails ⁡ G P
9 7 8 syl ⊢ φ → F Trails ⁡ G P
10 1 2 3 4 5 6 9 upgrimtrls ⊢ φ → E Trails ⁡ H N ∘ P
11 1 2 3 4 5 6 7 upgrimpthslem1 ⊢ φ → Fun ⁡ N ∘ P ↾ 1 ..^ F -1
12 pthiswlk ⊢ F Paths ⁡ G P → F Walks ⁡ G P
13 1 wlkf ⊢ F Walks ⁡ G P → F ∈ Word dom ⁡ I
14 7 12 13 3syl ⊢ φ → F ∈ Word dom ⁡ I
15 eqid ⊢ Vtx ⁡ G = Vtx ⁡ G
16 15 wlkp ⊢ F Walks ⁡ G P → P : 0 … F ⟶ Vtx ⁡ G
17 7 12 16 3syl ⊢ φ → P : 0 … F ⟶ Vtx ⁡ G
18 1 2 3 4 5 6 14 17 upgrimwlklem4 ⊢ φ → N ∘ P : 0 … E ⟶ Vtx ⁡ H
19 18 ffnd ⊢ φ → N ∘ P Fn 0 … E
20 1 2 3 4 5 6 14 upgrimwlklem1 ⊢ φ → E = F
21 wlkcl ⊢ F Walks ⁡ G P → F ∈ ℕ 0
22 7 12 21 3syl ⊢ φ → F ∈ ℕ 0
23 20 22 eqeltrd ⊢ φ → E ∈ ℕ 0
24 0elfz ⊢ E ∈ ℕ 0 → 0 ∈ 0 … E
25 23 24 syl ⊢ φ → 0 ∈ 0 … E
26 nn0fz0 ⊢ F ∈ ℕ 0 ↔ F ∈ 0 … F
27 22 26 sylib ⊢ φ → F ∈ 0 … F
28 20 oveq2d ⊢ φ → 0 … E = 0 … F
29 27 28 eleqtrrd ⊢ φ → F ∈ 0 … E
30 fnimapr ⊢ N ∘ P Fn 0 … E ∧ 0 ∈ 0 … E ∧ F ∈ 0 … E → N ∘ P 0 F = N ∘ P ⁡ 0 N ∘ P ⁡ F
31 19 25 29 30 syl3anc ⊢ φ → N ∘ P 0 F = N ∘ P ⁡ 0 N ∘ P ⁡ F
32 31 eleq2d ⊢ φ → x ∈ N ∘ P 0 F ↔ x ∈ N ∘ P ⁡ 0 N ∘ P ⁡ F
33 vex ⊢ x ∈ V
34 33 elpr ⊢ x ∈ N ∘ P ⁡ 0 N ∘ P ⁡ F ↔ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F
35 32 34 bitrdi ⊢ φ → x ∈ N ∘ P 0 F ↔ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F
36 1 2 3 4 5 6 7 upgrimpthslem2 ⊢ φ ∧ y ∈ 1 ..^ F → ¬ N ∘ P ⁡ y = N ∘ P ⁡ 0 ∧ ¬ N ∘ P ⁡ y = N ∘ P ⁡ F
37 36 simpld ⊢ φ ∧ y ∈ 1 ..^ F → ¬ N ∘ P ⁡ y = N ∘ P ⁡ 0
38 eqeq2 ⊢ x = N ∘ P ⁡ 0 → N ∘ P ⁡ y = x ↔ N ∘ P ⁡ y = N ∘ P ⁡ 0
39 38 notbid ⊢ x = N ∘ P ⁡ 0 → ¬ N ∘ P ⁡ y = x ↔ ¬ N ∘ P ⁡ y = N ∘ P ⁡ 0
40 37 39 syl5ibrcom ⊢ φ ∧ y ∈ 1 ..^ F → x = N ∘ P ⁡ 0 → ¬ N ∘ P ⁡ y = x
41 36 simprd ⊢ φ ∧ y ∈ 1 ..^ F → ¬ N ∘ P ⁡ y = N ∘ P ⁡ F
42 eqeq2 ⊢ x = N ∘ P ⁡ F → N ∘ P ⁡ y = x ↔ N ∘ P ⁡ y = N ∘ P ⁡ F
43 42 notbid ⊢ x = N ∘ P ⁡ F → ¬ N ∘ P ⁡ y = x ↔ ¬ N ∘ P ⁡ y = N ∘ P ⁡ F
44 41 43 syl5ibrcom ⊢ φ ∧ y ∈ 1 ..^ F → x = N ∘ P ⁡ F → ¬ N ∘ P ⁡ y = x
45 40 44 jaod ⊢ φ ∧ y ∈ 1 ..^ F → x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → ¬ N ∘ P ⁡ y = x
46 45 impancom ⊢ φ ∧ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → y ∈ 1 ..^ F → ¬ N ∘ P ⁡ y = x
47 46 imp ⊢ φ ∧ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F ∧ y ∈ 1 ..^ F → ¬ N ∘ P ⁡ y = x
48 47 nrexdv ⊢ φ ∧ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → ¬ ∃ y ∈ 1 ..^ F N ∘ P ⁡ y = x
49 20 eqcomd ⊢ φ → F = E
50 49 oveq2d ⊢ φ → 0 … F = 0 … E
51 50 feq2d ⊢ φ → N ∘ P : 0 … F ⟶ Vtx ⁡ H ↔ N ∘ P : 0 … E ⟶ Vtx ⁡ H
52 18 51 mpbird ⊢ φ → N ∘ P : 0 … F ⟶ Vtx ⁡ H
53 52 ffnd ⊢ φ → N ∘ P Fn 0 … F
54 53 adantr ⊢ φ ∧ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → N ∘ P Fn 0 … F
55 fzo0ss1 ⊢ 1 ..^ F ⊆ 0 ..^ F
56 fzossfz ⊢ 0 ..^ F ⊆ 0 … F
57 55 56 sstri ⊢ 1 ..^ F ⊆ 0 … F
58 57 a1i ⊢ φ ∧ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → 1 ..^ F ⊆ 0 … F
59 54 58 fvelimabd ⊢ φ ∧ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → x ∈ N ∘ P 1 ..^ F ↔ ∃ y ∈ 1 ..^ F N ∘ P ⁡ y = x
60 48 59 mtbird ⊢ φ ∧ x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → ¬ x ∈ N ∘ P 1 ..^ F
61 60 ex ⊢ φ → x = N ∘ P ⁡ 0 ∨ x = N ∘ P ⁡ F → ¬ x ∈ N ∘ P 1 ..^ F
62 35 61 sylbid ⊢ φ → x ∈ N ∘ P 0 F → ¬ x ∈ N ∘ P 1 ..^ F
63 62 ralrimiv ⊢ φ → ∀ x ∈ N ∘ P 0 F ¬ x ∈ N ∘ P 1 ..^ F
64 disj ⊢ N ∘ P 0 F ∩ N ∘ P 1 ..^ F = ∅ ↔ ∀ x ∈ N ∘ P 0 F ¬ x ∈ N ∘ P 1 ..^ F
65 63 64 sylibr ⊢ φ → N ∘ P 0 F ∩ N ∘ P 1 ..^ F = ∅
66 20 oveq2d ⊢ φ → 1 ..^ E = 1 ..^ F
67 66 reseq2d ⊢ φ → N ∘ P ↾ 1 ..^ E = N ∘ P ↾ 1 ..^ F
68 67 cnveqd ⊢ φ → N ∘ P ↾ 1 ..^ E -1 = N ∘ P ↾ 1 ..^ F -1
69 68 funeqd ⊢ φ → Fun ⁡ N ∘ P ↾ 1 ..^ E -1 ↔ Fun ⁡ N ∘ P ↾ 1 ..^ F -1
70 preq2 ⊢ E = F → 0 E = 0 F
71 70 imaeq2d ⊢ E = F → N ∘ P 0 E = N ∘ P 0 F
72 oveq2 ⊢ E = F → 1 ..^ E = 1 ..^ F
73 72 imaeq2d ⊢ E = F → N ∘ P 1 ..^ E = N ∘ P 1 ..^ F
74 71 73 ineq12d ⊢ E = F → N ∘ P 0 E ∩ N ∘ P 1 ..^ E = N ∘ P 0 F ∩ N ∘ P 1 ..^ F
75 74 eqeq1d ⊢ E = F → N ∘ P 0 E ∩ N ∘ P 1 ..^ E = ∅ ↔ N ∘ P 0 F ∩ N ∘ P 1 ..^ F = ∅
76 20 75 syl ⊢ φ → N ∘ P 0 E ∩ N ∘ P 1 ..^ E = ∅ ↔ N ∘ P 0 F ∩ N ∘ P 1 ..^ F = ∅
77 69 76 3anbi23d ⊢ φ → E Trails ⁡ H N ∘ P ∧ Fun ⁡ N ∘ P ↾ 1 ..^ E -1 ∧ N ∘ P 0 E ∩ N ∘ P 1 ..^ E = ∅ ↔ E Trails ⁡ H N ∘ P ∧ Fun ⁡ N ∘ P ↾ 1 ..^ F -1 ∧ N ∘ P 0 F ∩ N ∘ P 1 ..^ F = ∅
78 10 11 65 77 mpbir3and ⊢ φ → E Trails ⁡ H N ∘ P ∧ Fun ⁡ N ∘ P ↾ 1 ..^ E -1 ∧ N ∘ P 0 E ∩ N ∘ P 1 ..^ E = ∅
79 ispth ⊢ E Paths ⁡ H N ∘ P ↔ E Trails ⁡ H N ∘ P ∧ Fun ⁡ N ∘ P ↾ 1 ..^ E -1 ∧ N ∘ P 0 E ∩ N ∘ P 1 ..^ E = ∅
80 78 79 sylibr ⊢ φ → E Paths ⁡ H N ∘ P