Ich glaube, es gibt einen bekannten Poly (q) -Algorithmus. Mein Verständnis des Algorithmus von Chudnovsky, Cornuéjols, Liu, Seymour und Vušković, "Recognizing Berge Graphs", Combinatorica 2005 , ist, dass er in einem nicht perfekten Graphen in der Polynomzeit entweder ein seltsames Loch oder ein seltsames Anti-Loch findet. Die Autoren schreiben auf Seite 2 ihres Aufsatzes, dass das Problem der Suche nach ungeraden Löchern in Graphen, in denen sie enthalten sind, offen bleibt, da in Schritt 1 und 3 ihres Algorithmus Löcher gefunden werden, in Schritt 2 jedoch möglicherweise ein Anti-Loch gefunden wird. Wenn Sie jedoch bei Paley-Diagrammen ein Anti-Loch finden, multiplizieren Sie einfach alle Scheitelpunkte mit einem Nicht-Residuum, um es stattdessen in ein ungerades Loch zu verwandeln.
Alternativ sollte analog zum Rado-Graphen für jedes k ein N vorhanden sein, sodass Paley-Graphen auf N oder mehr Scheitelpunkten die Erweiterungseigenschaft haben sollten: für jede Teilmenge von weniger als k Scheitelpunkten und jede Zweifarbigkeit der Teilmenge, Es gibt einen anderen Scheitelpunkt neben jedem Scheitelpunkt in einer Farbklasse und nicht neben jedem Scheitelpunkt in der anderen Farbklasse. Wenn ja, dann könnten Sie für k = 5 ein ungerades 5-Loch gierig in Polynomzeit pro Schritt bauen. Vielleicht ist diese Richtung für einen Poly (log (q)) - Algorithmus hoffnungsvoll? Wenn es funktioniert, würde es zumindest zeigen, dass es kurze, ungerade Löcher gibt, anscheinend eine notwendige Voraussetzung, um sie schnell zu finden.
Eigentlich würde es mich nicht überraschen, wenn das Folgende ein Poly (log (q)) - Algorithmus wäre: Wenn q kleiner als eine feste Konstante ist, schlagen Sie die Antwort nach, sonst bauen Sie gierig ein ungerades 5-Loch auf, indem Sie nacheinander die Zahlen durchsuchen 0, 1, 2, 3, ... für Scheitelpunkte, die als Teil eines partiellen 5-Lochs hinzugefügt werden können. Aber vielleicht würde der Nachweis, dass es in Poly (log (q)) - Zeit funktioniert, eine tiefe Zahlentheorie erfordern.
Nach den Ergebnissen von Chung, Graham und Wilson, "Quasi-Random Graphs", Combinatorica 1989, löst der folgende randomisierte Algorithmus das Problem in einer konstanten erwarteten Anzahl von Versuchen, wenn q eine Primzahl ist: Wenn q ausreichend klein ist, dann schlagen Sie die Antwort nach. Wählen Sie andernfalls wiederholt eine zufällige Menge von fünf Scheitelpunkten aus, prüfen Sie, ob sie ein ungerades Loch bilden, und geben Sie es gegebenenfalls zurück. Aber sie sagen nicht, ob es funktioniert, wenn q keine Primzahl, sondern eine Primzahl ist. Vielleicht müssten Sie in diesem Fall vorsichtiger sein.