Algoritm för färgförfining

Inom grafteori och teoretisk datavetenskap är färgförfiningsalgoritmen även känd som den naiva vertexklassificeringen , eller den 1-dimensionella versionen av Weisfeiler-Leman-algoritmen, en rutin som används för att testa om två grafer är isomorfa eller inte.

Historia

Beskrivning

Vi definierar en sekvens av vertexfärgningar definierade enligt följande:

  • är den ursprungliga färgen. Om grafen är omärkt tilldelar den initiala färgningen en trivial färg till varje vertex . Om grafen är märkt etiketten för vertex .
  • För alla hörn sätter vi . Med andra ord, den nya färgen på vertex är paret som bildas av den tidigare färgen och multiuppsättningen av färgerna för dess grannar.

Denna algoritm fortsätter att förfina den aktuella färgen. Vid någon tidpunkt, före n steg, där n är antalet hörn, stabiliseras det: ändras inte längre när t ökar. Denna slutliga färgning kallas den stabila färgen .

Expressivitet

Denna algoritm skiljer inte en cykel med längd 6 från ett par trianglar (exempel V.1 in ).

Komplexitet

Den stabila färgen kan beräknas i O((n+m)log n) där n är antalet hörn och m antalet kanter. Denna komplexitet har visat sig vara optimal för vissa klasser av grafer.