This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: An isomorphism of graphs is a bijection between their vertices that preserves adjacency. (Contributed by AV, 19-Apr-2025)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | isgrim.v | ⊢ 𝑉 = ( Vtx ‘ 𝐺 ) | |
| isgrim.w | ⊢ 𝑊 = ( Vtx ‘ 𝐻 ) | ||
| isgrim.e | ⊢ 𝐸 = ( iEdg ‘ 𝐺 ) | ||
| isgrim.d | ⊢ 𝐷 = ( iEdg ‘ 𝐻 ) | ||
| Assertion | isgrim | ⊢ ( ( 𝐺 ∈ 𝑋 ∧ 𝐻 ∈ 𝑌 ∧ 𝐹 ∈ 𝑍 ) → ( 𝐹 ∈ ( 𝐺 GraphIso 𝐻 ) ↔ ( 𝐹 : 𝑉 –1-1-onto→ 𝑊 ∧ ∃ 𝑗 ( 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ∧ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | isgrim.v | ⊢ 𝑉 = ( Vtx ‘ 𝐺 ) | |
| 2 | isgrim.w | ⊢ 𝑊 = ( Vtx ‘ 𝐻 ) | |
| 3 | isgrim.e | ⊢ 𝐸 = ( iEdg ‘ 𝐺 ) | |
| 4 | isgrim.d | ⊢ 𝐷 = ( iEdg ‘ 𝐻 ) | |
| 5 | df-grim | ⊢ GraphIso = ( 𝑔 ∈ V , ℎ ∈ V ↦ { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝑔 ) –1-1-onto→ ( Vtx ‘ ℎ ) ∧ ∃ 𝑗 [ ( iEdg ‘ 𝑔 ) / 𝑒 ] [ ( iEdg ‘ ℎ ) / 𝑑 ] ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ) } ) | |
| 6 | elex | ⊢ ( 𝐺 ∈ 𝑋 → 𝐺 ∈ V ) | |
| 7 | 6 | 3ad2ant1 | ⊢ ( ( 𝐺 ∈ 𝑋 ∧ 𝐻 ∈ 𝑌 ∧ 𝐹 ∈ 𝑍 ) → 𝐺 ∈ V ) |
| 8 | elex | ⊢ ( 𝐻 ∈ 𝑌 → 𝐻 ∈ V ) | |
| 9 | 8 | 3ad2ant2 | ⊢ ( ( 𝐺 ∈ 𝑋 ∧ 𝐻 ∈ 𝑌 ∧ 𝐹 ∈ 𝑍 ) → 𝐻 ∈ V ) |
| 10 | f1of | ⊢ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) → 𝑓 : ( Vtx ‘ 𝐺 ) ⟶ ( Vtx ‘ 𝐻 ) ) | |
| 11 | fvex | ⊢ ( Vtx ‘ 𝐻 ) ∈ V | |
| 12 | fvex | ⊢ ( Vtx ‘ 𝐺 ) ∈ V | |
| 13 | 11 12 | elmap | ⊢ ( 𝑓 ∈ ( ( Vtx ‘ 𝐻 ) ↑m ( Vtx ‘ 𝐺 ) ) ↔ 𝑓 : ( Vtx ‘ 𝐺 ) ⟶ ( Vtx ‘ 𝐻 ) ) |
| 14 | 10 13 | sylibr | ⊢ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) → 𝑓 ∈ ( ( Vtx ‘ 𝐻 ) ↑m ( Vtx ‘ 𝐺 ) ) ) |
| 15 | 14 | adantr | ⊢ ( ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) → 𝑓 ∈ ( ( Vtx ‘ 𝐻 ) ↑m ( Vtx ‘ 𝐺 ) ) ) |
| 16 | ovex | ⊢ ( ( Vtx ‘ 𝐻 ) ↑m ( Vtx ‘ 𝐺 ) ) ∈ V | |
| 17 | 15 16 | abex | ⊢ { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) } ∈ V |
| 18 | 17 | a1i | ⊢ ( ( 𝐺 ∈ 𝑋 ∧ 𝐻 ∈ 𝑌 ∧ 𝐹 ∈ 𝑍 ) → { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) } ∈ V ) |
| 19 | eqidd | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → 𝑓 = 𝑓 ) | |
| 20 | fveq2 | ⊢ ( 𝑔 = 𝐺 → ( Vtx ‘ 𝑔 ) = ( Vtx ‘ 𝐺 ) ) | |
| 21 | 20 | adantr | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( Vtx ‘ 𝑔 ) = ( Vtx ‘ 𝐺 ) ) |
| 22 | fveq2 | ⊢ ( ℎ = 𝐻 → ( Vtx ‘ ℎ ) = ( Vtx ‘ 𝐻 ) ) | |
| 23 | 22 | adantl | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( Vtx ‘ ℎ ) = ( Vtx ‘ 𝐻 ) ) |
| 24 | 19 21 23 | f1oeq123d | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( 𝑓 : ( Vtx ‘ 𝑔 ) –1-1-onto→ ( Vtx ‘ ℎ ) ↔ 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ) ) |
| 25 | fvexd | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( iEdg ‘ 𝑔 ) ∈ V ) | |
| 26 | fveq2 | ⊢ ( 𝑔 = 𝐺 → ( iEdg ‘ 𝑔 ) = ( iEdg ‘ 𝐺 ) ) | |
| 27 | 26 | adantr | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( iEdg ‘ 𝑔 ) = ( iEdg ‘ 𝐺 ) ) |
| 28 | fvexd | ⊢ ( ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) ∧ 𝑒 = ( iEdg ‘ 𝐺 ) ) → ( iEdg ‘ ℎ ) ∈ V ) | |
| 29 | fveq2 | ⊢ ( ℎ = 𝐻 → ( iEdg ‘ ℎ ) = ( iEdg ‘ 𝐻 ) ) | |
| 30 | 29 | adantl | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( iEdg ‘ ℎ ) = ( iEdg ‘ 𝐻 ) ) |
| 31 | 30 | adantr | ⊢ ( ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) ∧ 𝑒 = ( iEdg ‘ 𝐺 ) ) → ( iEdg ‘ ℎ ) = ( iEdg ‘ 𝐻 ) ) |
| 32 | eqidd | ⊢ ( ( 𝑒 = ( iEdg ‘ 𝐺 ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → 𝑗 = 𝑗 ) | |
| 33 | dmeq | ⊢ ( 𝑒 = ( iEdg ‘ 𝐺 ) → dom 𝑒 = dom ( iEdg ‘ 𝐺 ) ) | |
| 34 | 33 | adantr | ⊢ ( ( 𝑒 = ( iEdg ‘ 𝐺 ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → dom 𝑒 = dom ( iEdg ‘ 𝐺 ) ) |
| 35 | dmeq | ⊢ ( 𝑑 = ( iEdg ‘ 𝐻 ) → dom 𝑑 = dom ( iEdg ‘ 𝐻 ) ) | |
| 36 | 35 | adantl | ⊢ ( ( 𝑒 = ( iEdg ‘ 𝐺 ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → dom 𝑑 = dom ( iEdg ‘ 𝐻 ) ) |
| 37 | 32 34 36 | f1oeq123d | ⊢ ( ( 𝑒 = ( iEdg ‘ 𝐺 ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ↔ 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ) ) |
| 38 | fveq1 | ⊢ ( 𝑑 = ( iEdg ‘ 𝐻 ) → ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) ) | |
| 39 | fveq1 | ⊢ ( 𝑒 = ( iEdg ‘ 𝐺 ) → ( 𝑒 ‘ 𝑖 ) = ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) | |
| 40 | 39 | imaeq2d | ⊢ ( 𝑒 = ( iEdg ‘ 𝐺 ) → ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) |
| 41 | 38 40 | eqeqan12rd | ⊢ ( ( 𝑒 = ( iEdg ‘ 𝐺 ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → ( ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ↔ ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) |
| 42 | 34 41 | raleqbidv | ⊢ ( ( 𝑒 = ( iEdg ‘ 𝐺 ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → ( ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ↔ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) |
| 43 | 37 42 | anbi12d | ⊢ ( ( 𝑒 = ( iEdg ‘ 𝐺 ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → ( ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ↔ ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) |
| 44 | 43 | adantll | ⊢ ( ( ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) ∧ 𝑒 = ( iEdg ‘ 𝐺 ) ) ∧ 𝑑 = ( iEdg ‘ 𝐻 ) ) → ( ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ↔ ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) |
| 45 | 28 31 44 | sbcied2 | ⊢ ( ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) ∧ 𝑒 = ( iEdg ‘ 𝐺 ) ) → ( [ ( iEdg ‘ ℎ ) / 𝑑 ] ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ↔ ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) |
| 46 | 25 27 45 | sbcied2 | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( [ ( iEdg ‘ 𝑔 ) / 𝑒 ] [ ( iEdg ‘ ℎ ) / 𝑑 ] ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ↔ ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) |
| 47 | biidd | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ↔ ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) | |
| 48 | 46 47 | bitrd | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( [ ( iEdg ‘ 𝑔 ) / 𝑒 ] [ ( iEdg ‘ ℎ ) / 𝑑 ] ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ↔ ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) |
| 49 | 48 | exbidv | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( ∃ 𝑗 [ ( iEdg ‘ 𝑔 ) / 𝑒 ] [ ( iEdg ‘ ℎ ) / 𝑑 ] ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ↔ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) |
| 50 | 24 49 | anbi12d | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → ( ( 𝑓 : ( Vtx ‘ 𝑔 ) –1-1-onto→ ( Vtx ‘ ℎ ) ∧ ∃ 𝑗 [ ( iEdg ‘ 𝑔 ) / 𝑒 ] [ ( iEdg ‘ ℎ ) / 𝑑 ] ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ) ↔ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ) ) |
| 51 | 50 | abbidv | ⊢ ( ( 𝑔 = 𝐺 ∧ ℎ = 𝐻 ) → { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝑔 ) –1-1-onto→ ( Vtx ‘ ℎ ) ∧ ∃ 𝑗 [ ( iEdg ‘ 𝑔 ) / 𝑒 ] [ ( iEdg ‘ ℎ ) / 𝑑 ] ( 𝑗 : dom 𝑒 –1-1-onto→ dom 𝑑 ∧ ∀ 𝑖 ∈ dom 𝑒 ( 𝑑 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( 𝑒 ‘ 𝑖 ) ) ) ) } = { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) } ) |
| 52 | 5 7 9 18 51 | elovmpod | ⊢ ( ( 𝐺 ∈ 𝑋 ∧ 𝐻 ∈ 𝑌 ∧ 𝐹 ∈ 𝑍 ) → ( 𝐹 ∈ ( 𝐺 GraphIso 𝐻 ) ↔ 𝐹 ∈ { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) } ) ) |
| 53 | id | ⊢ ( 𝑓 = 𝐹 → 𝑓 = 𝐹 ) | |
| 54 | 1 | eqcomi | ⊢ ( Vtx ‘ 𝐺 ) = 𝑉 |
| 55 | 54 | a1i | ⊢ ( 𝑓 = 𝐹 → ( Vtx ‘ 𝐺 ) = 𝑉 ) |
| 56 | 2 | eqcomi | ⊢ ( Vtx ‘ 𝐻 ) = 𝑊 |
| 57 | 56 | a1i | ⊢ ( 𝑓 = 𝐹 → ( Vtx ‘ 𝐻 ) = 𝑊 ) |
| 58 | 53 55 57 | f1oeq123d | ⊢ ( 𝑓 = 𝐹 → ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ↔ 𝐹 : 𝑉 –1-1-onto→ 𝑊 ) ) |
| 59 | eqidd | ⊢ ( 𝑓 = 𝐹 → 𝑗 = 𝑗 ) | |
| 60 | 3 | eqcomi | ⊢ ( iEdg ‘ 𝐺 ) = 𝐸 |
| 61 | 60 | dmeqi | ⊢ dom ( iEdg ‘ 𝐺 ) = dom 𝐸 |
| 62 | 61 | a1i | ⊢ ( 𝑓 = 𝐹 → dom ( iEdg ‘ 𝐺 ) = dom 𝐸 ) |
| 63 | 4 | eqcomi | ⊢ ( iEdg ‘ 𝐻 ) = 𝐷 |
| 64 | 63 | dmeqi | ⊢ dom ( iEdg ‘ 𝐻 ) = dom 𝐷 |
| 65 | 64 | a1i | ⊢ ( 𝑓 = 𝐹 → dom ( iEdg ‘ 𝐻 ) = dom 𝐷 ) |
| 66 | 59 62 65 | f1oeq123d | ⊢ ( 𝑓 = 𝐹 → ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ↔ 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ) ) |
| 67 | 63 | fveq1i | ⊢ ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) |
| 68 | 67 | a1i | ⊢ ( 𝑓 = 𝐹 → ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) ) |
| 69 | 60 | fveq1i | ⊢ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) = ( 𝐸 ‘ 𝑖 ) |
| 70 | 69 | a1i | ⊢ ( 𝑓 = 𝐹 → ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) = ( 𝐸 ‘ 𝑖 ) ) |
| 71 | 53 70 | imaeq12d | ⊢ ( 𝑓 = 𝐹 → ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) |
| 72 | 68 71 | eqeq12d | ⊢ ( 𝑓 = 𝐹 → ( ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ↔ ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) |
| 73 | 62 72 | raleqbidv | ⊢ ( 𝑓 = 𝐹 → ( ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ↔ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) |
| 74 | 66 73 | anbi12d | ⊢ ( 𝑓 = 𝐹 → ( ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ↔ ( 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ∧ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) ) |
| 75 | 74 | exbidv | ⊢ ( 𝑓 = 𝐹 → ( ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ↔ ∃ 𝑗 ( 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ∧ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) ) |
| 76 | 58 75 | anbi12d | ⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) ↔ ( 𝐹 : 𝑉 –1-1-onto→ 𝑊 ∧ ∃ 𝑗 ( 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ∧ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) ) ) |
| 77 | 76 | elabg | ⊢ ( 𝐹 ∈ 𝑍 → ( 𝐹 ∈ { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) } ↔ ( 𝐹 : 𝑉 –1-1-onto→ 𝑊 ∧ ∃ 𝑗 ( 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ∧ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) ) ) |
| 78 | 77 | 3ad2ant3 | ⊢ ( ( 𝐺 ∈ 𝑋 ∧ 𝐻 ∈ 𝑌 ∧ 𝐹 ∈ 𝑍 ) → ( 𝐹 ∈ { 𝑓 ∣ ( 𝑓 : ( Vtx ‘ 𝐺 ) –1-1-onto→ ( Vtx ‘ 𝐻 ) ∧ ∃ 𝑗 ( 𝑗 : dom ( iEdg ‘ 𝐺 ) –1-1-onto→ dom ( iEdg ‘ 𝐻 ) ∧ ∀ 𝑖 ∈ dom ( iEdg ‘ 𝐺 ) ( ( iEdg ‘ 𝐻 ) ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝑓 “ ( ( iEdg ‘ 𝐺 ) ‘ 𝑖 ) ) ) ) } ↔ ( 𝐹 : 𝑉 –1-1-onto→ 𝑊 ∧ ∃ 𝑗 ( 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ∧ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) ) ) |
| 79 | 52 78 | bitrd | ⊢ ( ( 𝐺 ∈ 𝑋 ∧ 𝐻 ∈ 𝑌 ∧ 𝐹 ∈ 𝑍 ) → ( 𝐹 ∈ ( 𝐺 GraphIso 𝐻 ) ↔ ( 𝐹 : 𝑉 –1-1-onto→ 𝑊 ∧ ∃ 𝑗 ( 𝑗 : dom 𝐸 –1-1-onto→ dom 𝐷 ∧ ∀ 𝑖 ∈ dom 𝐸 ( 𝐷 ‘ ( 𝑗 ‘ 𝑖 ) ) = ( 𝐹 “ ( 𝐸 ‘ 𝑖 ) ) ) ) ) ) |