Il problema che descrivi è stato sicuramente preso in considerazione (ricordo di averne discusso a scuola, e all'epoca era già stato discusso molto prima di allora), anche se non posso indicare alcun riferimento particolare in letteratura. Forse perché è linearmente equivalente all'isomorfismo grafico non colorato, come segue (questo vale anche per le forme canoniche). Chiama il problema che descrivi EQ-GI.
GI è solo il caso speciale di EQ-GI in cui ogni grafico ha solo una classe di equivalenza composta da tutti i vertici.
Nella direzione opposta, per ridurre l'EQ-GI a GI, sia un grafico con relazione di equivalenza con n vertici, bordi m e classi di equivalenza c . Costruisci un grafico G ′ il cui insieme di vertici è costituito dai vertici di G , insieme ai nuovi vertici v 1 , ... , v c , uno per ogni classe di equivalenza in = G , nonché n + c + 1 nuovi vertici w 0 , ... ,( G , ∼sol)nmcsol'solv1, ... , vc=soln + c + 1 . Collegare il w i s' in un percorso w 0 - w 1 - w 2 - ⋯ - w n + c , collegare ciascun v i al w 0 , e per ogni vertice in G , collegarlo al corrispondente equivalenza classe vertice v i . Quindi G ′ ha al massimo n + 2 c + n + 1 ≤ O ( n )w0, ... , wn + cwiow0- w1- w2- ⋯ - wn + cviow0solviosol'n + 2 c + n + 1 ≤ O ( n )vertici e possono essere costruiti essenzialmente nello stesso limite di tempo. (Ha anche al massimo bordi - che è O ( m ) per i grafici collegati - ma è un po 'meno rilevante poiché la maggior parte degli algoritmi GI ha tempi di esecuzione che dipendono essenzialmente solo da n .)m + n + c + ( n + c + 1 ) ≤ m + 4 n + 1 ≤ O ( m + n )O ( m )n
Aggiornamento : poiché c'era una certa confusione nei commenti, sto aggiungendo qui uno schizzo della correttezza dell'argomento sopra. Dato e ( G 2 , ∼ 2 ) , siano G ′ 1 e G ′ 2 i grafici costruiti come sopra; lascia v i , 1 denota il vertice v i dall'alto in G ′ 1 , e v i , 2 quello in G ′( G1, ∼1)( G2, ∼2)sol'1sol'2vio , 1viosol'1vi,2 , e similmente perwi,1ewi,2. Se c'è un isomorfismoG ' 1 ≅G ' 2 , deve inviarewi,1awi,2per tuttii, dal momento che in ogni graficown+cè il vertice unico che è il punto finale di un percorso di lunghezza almenon+c+1. In particolare,w0,1G′2wi,1wi,2G′1≅G′2wi,1wi,2iwn+cn+c+1w0,1mappa a . Poiché i vicini di w 0 che non sono w 1 sono esattamente i v i , l'isomorfismo deve mappare l'insieme { v 1 , 1 , ... , v c , 1 } sull'insieme { v 1 , 2 , ... , v c , 2 } (e in particolare sia ∼ 1 che ∼ 2 devono avere lo stesso numero, cw0,2w0w1vi{v1,1,…,vc,1}{v1,2,…,vc,2}∼1∼2c, di classi di equivalenza). Si noti che l'isomorfismo non deve necessariamente inviare a v i , 2 per tutti i , ma è autorizzato a permutare gli indici di v finché le corrispondenti classi di equivalenza possono essere mappate tra loro. Viceversa, sulla base di questa descrizione di come possono apparire gli isomorfismi tra G ′ 1 e G ′ 2 , è facile capire se if ( G 1 , ∼ 1 ) ≅ ( G 2 , ∼ 2 )vi,1vi,2ivG′1G′2(G1,∼1)≅(G2,∼2)allora questo dà un isomorfismo .G′1≅G′2