Metamath Proof Explorer


Theorem upgrimcycls

Description: Graph isomorphisms between simple pseudographs map cycles onto cycles. (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 𝐹 ↦ ( 𝐽 ‘ ( 𝑁 “ ( 𝐼 ‘ ( 𝐹𝑥 ) ) ) ) )
upgrimcycls.c ( 𝜑𝐹 ( Cycles ‘ 𝐺 ) 𝑃 )
Assertion upgrimcycls ( 𝜑𝐸 ( Cycles ‘ 𝐻 ) ( 𝑁𝑃 ) )

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 upgrimcycls.c ( 𝜑𝐹 ( Cycles ‘ 𝐺 ) 𝑃 )
8 cyclispth ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃𝐹 ( Paths ‘ 𝐺 ) 𝑃 )
9 7 8 syl ( 𝜑𝐹 ( Paths ‘ 𝐺 ) 𝑃 )
10 1 2 3 4 5 6 9 upgrimpths ( 𝜑𝐸 ( Paths ‘ 𝐻 ) ( 𝑁𝑃 ) )
11 iscycl ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 ↔ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
12 11 simprbi ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 → ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
13 7 12 syl ( 𝜑 → ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
14 13 fveq2d ( 𝜑 → ( 𝑁 ‘ ( 𝑃 ‘ 0 ) ) = ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
15 cycliswlk ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃𝐹 ( Walks ‘ 𝐺 ) 𝑃 )
16 eqid ( Vtx ‘ 𝐺 ) = ( Vtx ‘ 𝐺 )
17 16 wlkp ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) )
18 7 15 17 3syl ( 𝜑𝑃 : ( 0 ... ( ♯ ‘ 𝐹 ) ) ⟶ ( Vtx ‘ 𝐺 ) )
19 wlkcl ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃 → ( ♯ ‘ 𝐹 ) ∈ ℕ0 )
20 7 15 19 3syl ( 𝜑 → ( ♯ ‘ 𝐹 ) ∈ ℕ0 )
21 0elfz ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
22 20 21 syl ( 𝜑 → 0 ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
23 18 22 fvco3d ( 𝜑 → ( ( 𝑁𝑃 ) ‘ 0 ) = ( 𝑁 ‘ ( 𝑃 ‘ 0 ) ) )
24 1 wlkf ( 𝐹 ( Walks ‘ 𝐺 ) 𝑃𝐹 ∈ Word dom 𝐼 )
25 7 15 24 3syl ( 𝜑𝐹 ∈ Word dom 𝐼 )
26 1 2 3 4 5 6 25 upgrimwlklem1 ( 𝜑 → ( ♯ ‘ 𝐸 ) = ( ♯ ‘ 𝐹 ) )
27 26 fveq2d ( 𝜑 → ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐸 ) ) = ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) )
28 nn0fz0 ( ( ♯ ‘ 𝐹 ) ∈ ℕ0 ↔ ( ♯ ‘ 𝐹 ) ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
29 20 28 sylib ( 𝜑 → ( ♯ ‘ 𝐹 ) ∈ ( 0 ... ( ♯ ‘ 𝐹 ) ) )
30 18 29 fvco3d ( 𝜑 → ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐹 ) ) = ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
31 27 30 eqtrd ( 𝜑 → ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐸 ) ) = ( 𝑁 ‘ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
32 14 23 31 3eqtr4d ( 𝜑 → ( ( 𝑁𝑃 ) ‘ 0 ) = ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐸 ) ) )
33 iscycl ( 𝐸 ( Cycles ‘ 𝐻 ) ( 𝑁𝑃 ) ↔ ( 𝐸 ( Paths ‘ 𝐻 ) ( 𝑁𝑃 ) ∧ ( ( 𝑁𝑃 ) ‘ 0 ) = ( ( 𝑁𝑃 ) ‘ ( ♯ ‘ 𝐸 ) ) ) )
34 10 32 33 sylanbrc ( 𝜑𝐸 ( Cycles ‘ 𝐻 ) ( 𝑁𝑃 ) )