Metamath Proof Explorer


Theorem upgrimpthslem2

Description: Lemma 2 for upgrimpths . (Contributed by AV, 31-Oct-2025)

Ref Expression
Hypotheses upgrimwlk.i 𝐼 = ( iEdg ‘ 𝐺 )
upgrimwlk.j 𝐽 = ( iEdg ‘ 𝐻 )
upgrimwlk.g ( 𝜑𝐺 ∈ USPGraph )
upgrimwlk.h ( 𝜑𝐻 ∈ USPGraph )
upgrimwlk.n ( 𝜑𝑁 ∈ ( 𝐺 GraphIso 𝐻 ) )
upgrimwlk.e 𝐸 = ( 𝑥 ∈ dom 𝐹 ↦ ( 𝐽 ‘ ( 𝑁 “ ( 𝐼 ‘ ( 𝐹𝑥 ) ) ) ) )
upgrimpths.p ( 𝜑𝐹 ( Paths ‘ 𝐺 ) 𝑃 )
Assertion upgrimpthslem2 ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ 0 ) ∧ ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ) )

Proof

Step Hyp Ref Expression
1 upgrimwlk.i 𝐼 = ( iEdg ‘ 𝐺 )
2 upgrimwlk.j 𝐽 = ( iEdg ‘ 𝐻 )
3 upgrimwlk.g ( 𝜑𝐺 ∈ USPGraph )
4 upgrimwlk.h ( 𝜑𝐻 ∈ USPGraph )
5 upgrimwlk.n ( 𝜑𝑁 ∈ ( 𝐺 GraphIso 𝐻 ) )
6 upgrimwlk.e 𝐸 = ( 𝑥 ∈ dom 𝐹 ↦ ( 𝐽 ‘ ( 𝑁 “ ( 𝐼 ‘ ( 𝐹𝑥 ) ) ) ) )
7 upgrimpths.p ( 𝜑𝐹 ( Paths ‘ 𝐺 ) 𝑃 )
8 eqid ( Vtx ‘ 𝐺 ) = ( Vtx ‘ 𝐺 )
9 eqid ( Vtx ‘ 𝐻 ) = ( Vtx ‘ 𝐻 )
10 8 9 grimf1o ( 𝑁 ∈ ( 𝐺 GraphIso 𝐻 ) → 𝑁 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) )
11 f1of1 ( 𝑁 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) → 𝑁 : ( Vtx ‘ 𝐺 ) –1-1→ ( Vtx ‘ 𝐻 ) )
12 5 10 11 3syl ( 𝜑𝑁 : ( Vtx ‘ 𝐺 ) –1-1→ ( Vtx ‘ 𝐻 ) )
13 12 adantr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑁 : ( Vtx ‘ 𝐺 ) –1-1→ ( Vtx ‘ 𝐻 ) )
14 pthiswlk ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃𝐹 ( Walks ‘ 𝐺 ) 𝑃 )
15 8 wlkp ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) )
16 15 adantr ( ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) )
17 fzo0ss1 ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ⊆ ( 0 ..^ ( ♯ ‘ 𝐹 ) )
18 fzossfz ( 0 ..^ ( ♯ ‘ 𝐹 ) ) ⊆ ( 0 ... ( ♯ ‘ 𝐹 ) )
19 17 18 sstri ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ⊆ ( 0 ... ( ♯ ‘ 𝐹 ) )
20 19 sseli ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → 𝑋 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
21 20 adantl ( ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑋 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
22 16 21 ffvelcdmd ( ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃𝑋 ) ∈ ( Vtx ‘ 𝐺 ) )
23 22 ex ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → ( 𝑃𝑋 ) ∈ ( Vtx ‘ 𝐺 ) ) )
24 7 14 23 3syl ( 𝜑 → ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → ( 𝑃𝑋 ) ∈ ( Vtx ‘ 𝐺 ) ) )
25 24 imp ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃𝑋 ) ∈ ( Vtx ‘ 𝐺 ) )
26 wlkcl ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( ♯ ‘ 𝐹 ) ∈ ℕ0 )
27 0elfz ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
28 26 27 syl ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
29 15 28 ffvelcdmd ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( 𝑃 ‘ 0 ) ∈ ( Vtx ‘ 𝐺 ) )
30 7 14 29 3syl ( 𝜑 → ( 𝑃 ‘ 0 ) ∈ ( Vtx ‘ 𝐺 ) )
31 30 adantr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 ‘ 0 ) ∈ ( Vtx ‘ 𝐺 ) )
32 7 adantr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝐹 ( Paths ‘ 𝐺 ) 𝑃 )
33 simpr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) )
34 7 14 26 3syl ( 𝜑 → ( ♯ ‘ 𝐹 ) ∈ ℕ0 )
35 34 27 syl ( 𝜑 → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
36 35 adantr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
37 elfzole1 ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → 1 ≤ 𝑋 )
38 elfzoelz ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → 𝑋 ∈ ℤ )
39 zgt0ge1 ( 𝑋 ∈ ℤ → ( 0 < 𝑋 ↔ 1 ≤ 𝑋 ) )
40 38 39 syl ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → ( 0 < 𝑋 ↔ 1 ≤ 𝑋 ) )
41 simpr ( ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ∧ 0 < 𝑋 ) → 0 < 𝑋 )
42 41 gt0ne0d ( ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ∧ 0 < 𝑋 ) → 𝑋 ≠ 0 )
43 42 ex ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → ( 0 < 𝑋𝑋 ≠ 0 ) )
44 40 43 sylbird ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → ( 1 ≤ 𝑋𝑋 ≠ 0 ) )
45 37 44 mpd ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → 𝑋 ≠ 0 )
46 45 adantl ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑋 ≠ 0 )
47 pthdivtx ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ∧ 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) ∧ 𝑋 ≠ 0 ) ) → ( 𝑃𝑋 ) ≠ ( 𝑃 ‘ 0 ) )
48 32 33 36 46 47 syl13anc ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃𝑋 ) ≠ ( 𝑃 ‘ 0 ) )
49 dff14i ( ( 𝑁 : ( Vtx ‘ 𝐺 ) –1-1→ ( Vtx ‘ 𝐻 ) ∧ ( ( 𝑃𝑋 ) ∈ ( Vtx ‘ 𝐺 ) ∧ ( 𝑃 ‘ 0 ) ∈ ( Vtx ‘ 𝐺 ) ∧ ( 𝑃𝑋 ) ≠ ( 𝑃 ‘ 0 ) ) ) → ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ 0 ) ) )
50 13 25 31 48 49 syl13anc ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ 0 ) ) )
51 nn0fz0 ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ↔ ( ♯ ‘ 𝐹 ) ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
52 26 51 sylib ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( ♯ ‘ 𝐹 ) ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
53 15 52 ffvelcdmd ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ∈ ( Vtx ‘ 𝐺 ) )
54 7 14 53 3syl ( 𝜑 → ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ∈ ( Vtx ‘ 𝐺 ) )
55 54 adantr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ∈ ( Vtx ‘ 𝐺 ) )
56 34 51 sylib ( 𝜑 → ( ♯ ‘ 𝐹 ) ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
57 56 adantr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ♯ ‘ 𝐹 ) ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
58 38 zred ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → 𝑋 ∈ ℝ )
59 elfzolt2 ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → 𝑋 < ( ♯ ‘ 𝐹 ) )
60 58 59 ltned ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) → 𝑋 ≠ ( ♯ ‘ 𝐹 ) )
61 60 adantl ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑋 ≠ ( ♯ ‘ 𝐹 ) )
62 pthdivtx ( ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ∧ ( ♯ ‘ 𝐹 ) ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) ∧ 𝑋 ≠ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃𝑋 ) ≠ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
63 32 33 57 61 62 syl13anc ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑃𝑋 ) ≠ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
64 dff14i ( ( 𝑁 : ( Vtx ‘ 𝐺 ) –1-1→ ( Vtx ‘ 𝐻 ) ∧ ( ( 𝑃𝑋 ) ∈ ( Vtx ‘ 𝐺 ) ∧ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ∈ ( Vtx ‘ 𝐺 ) ∧ ( 𝑃𝑋 ) ≠ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) ) → ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
65 13 25 55 63 64 syl13anc ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
66 7 14 15 3syl ( 𝜑𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) )
67 66 adantr ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) )
68 20 adantl ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → 𝑋 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
69 67 68 fvco3d ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( 𝑁 ‘ ( 𝑃𝑋 ) ) )
70 67 36 fvco3d ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ( 𝑁𝑃 ) ‘ 0 ) = ( 𝑁 ‘ ( 𝑃 ‘ 0 ) ) )
71 69 70 neeq12d ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ 0 ) ↔ ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ 0 ) ) ) )
72 67 57 fvco3d ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) = ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
73 69 72 neeq12d ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ↔ ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) ) )
74 71 73 anbi12d ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ( ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ 0 ) ∧ ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ) ↔ ( ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ 0 ) ) ∧ ( 𝑁 ‘ ( 𝑃𝑋 ) ) ≠ ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) ) ) )
75 50 65 74 mpbir2and ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ 0 ) ∧ ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ) )
76 df-ne ( ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ 0 ) ↔ ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ 0 ) )
77 df-ne ( ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ↔ ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) )
78 76 77 anbi12i ( ( ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ 0 ) ∧ ( ( 𝑁𝑃 ) ‘ 𝑋 ) ≠ ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ) ↔ ( ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ 0 ) ∧ ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ) )
79 75 78 sylib ( ( 𝜑𝑋 ∈ ( 1 ..^ ( ♯ ‘ 𝐹 ) ) ) → ( ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ 0 ) ∧ ¬ ( ( 𝑁𝑃 ) ‘ 𝑋 ) = ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) ) )