§4.1, p. 34 — when φ is injective, the local layer is one step of the Weisfeiler–Lehman test
ProvedGeomDL.WL.injective_phi_one_wl_stepLet be injective, that is, implies and . Let and be two graphs, a round, and , node features that are an injective image of the round- Weisfeiler–Lehman colours across the two graphs: for all nodes of and of ,
Then after one application of the local layer (13) the same holds one round later: for all , ,
This is the precise sense in which an injective local function performs one step of the Weisfeiler–Lehman colour refinement, where is the pair of and the multiset of the colours of the neighbours of .
Formalization Note The book's sentence is informal; it is stated here as the one-step correspondence between equality of features and equality of WL colours. Colours are the history-carrying colours neighborColor of the reused definition WLIdentification, so they are comparable across graphs. Taking gives the single-graph version.
import Mathlib import Definitions.Def_WLIdentification import Definitions.Def_GeomDL_WL_Defs
namespace GeomDL.WL
open OAI.WLIdentification
/-- §4.1, p. 34: when the local function `φ` of the layer (13) is injective (as a function of the
pair `(x_u, X_{N_u})`), one application of the layer is one step of the Weisfeiler–Lehman colour
refinement: if, across two graphs `G` and `G'`, equal round-`s` features are exactly equal
round-`s` WL colours, then equal features after the layer are exactly equal round-`(s+1)` colours. -/
theorem injective_phi_one_wl_step {F : Type*} (φ : F → Multiset F → F)
(hφ : Function.Injective2 φ) (G G' : Graph) (s : ℕ)
(h : Fin G.order → F) (h' : Fin G'.order → F)
(hs : ∀ u v, h u = h' v ↔ neighborColor G s u = neighborColor G' s v) :
∀ u v, localLayer φ G h u = localLayer φ G' h' v ↔
neighborColor G (s + 1) u = neighborColor G' (s + 1) v := by sorry
end GeomDL.WL
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.