RRuleFennec
KI-Arbeitsumgebung für Code

Zelluläre Schritte auf einem Ring

Berechne einen gleichzeitigen Schritt eines elementaren zellulären Automaten auf einem Ring mit einer bis 256 Binärzellen.

● ● ●RuleFennec●
Arbeitsabläufe · Zelluläre Schritte auf einem Ring ×
def cellular_step(bits, rule):
    bits = tuple(bits)
    if not 1 <= len(bits) <= 256 or any(type(v) is not int or v not in (0, 1) for v in bits):
        raise ValueError("cells.binary")
    if type(rule) is not int or not 0 <= rule <= 255:
        raise ValueError("rule.byte")
    n = len(bits)
    return [(rule >> (4 * bits[(i - 1) % n] + 2 * bits[i] + bits[(i + 1) % n])) & 1 for i in range(n)]
✳Berechne einen gleichzeitigen Schritt eines elementaren zellulären Automaten auf einem Ring mit einer bis 256 Binärzellen.
✓ ÄnderungenVor dem Anwenden prüfen ↗
Illustration der Arbeitsumgebung
Vor dem Anwenden prüfenVergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.
ModelleRichten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.
ProjektPrüfe Randnachbarn und eine einzelne Zelle, und lehne leere Eingaben, boolesche Zellen und Regeln außerhalb null bis 255 ab.
Arbeitsabläufe

Zelluläre Schritte auf einem Ring

Arbeitsabläufe ↗
Arbeitsabläufe
def cellular_step(bits, rule):
    bits = tuple(bits)
    if not 1 <= len(bits) <= 256 or any(type(v) is not int or v not in (0, 1) for v in bits):
        raise ValueError("cells.binary")
    if type(rule) is not int or not 0 <= rule <= 255:
        raise ValueError("rule.byte")
    n = len(bits)
    return [(rule >> (4 * bits[(i - 1) % n] + 2 * bits[i] + bits[(i + 1) % n])) & 1 for i in range(n)]
KI-Arbeitsumgebung für Code

Einen Simulationsschritt über den gesamten Zustand konsistent halten

RuleFennec bietet einen KI-Programmierarbeitsbereich für Windows für Entwickler, die Zustandsübergangscode ändern. Erklären Sie vor der Anforderung einer Implementierung, was ein Schritt in Ihrer Anwendung bedeutet und welche Werte er lesen darf. Projektordner und Gespräch mit dem verbundenen Modell bieten einen Ort, diese Anforderung mit dem aktuellen Quelltext zu vergleichen.

Für einen elementaren zellulären Ring ist eine nützliche Aufgabe, eine synchrone Aktualisierung aus derselben Eingabegeneration zu berechnen. Nennen Sie Regeldarstellung, zyklisches Randverhalten und zulässige Zellwerte im Auftrag. Lassen Sie das Modell prüfen, ob ein Änderungsvorschlag versehentlich Werte liest, die früher im selben Schritt bereits aktualisiert wurden. Das ist eine Quelltextprüffrage mit beobachtbaren Folgen.

Prüfen Sie den Vorschlag mit einem Einzellenfall und einem kurzen Ring, dessen Endzellen voneinander abhängen. Führen Sie die projekteigenen Tests aus und vergleichen Sie die gesamte nächste Generation statt nur einer günstigen Position. Beziehen Sie Eingabevalidierung und Zustandserhaltung ebenfalls ein, damit eine geänderte Aktualisierungsfolge nicht unbemerkt den Bereich akzeptierter Daten erweitert.

Wählen Sie ein Modell über einen unterstützten OpenAI-kompatiblen oder Anthropic-Endpunkt und geben Sie bei Bedarf Zugangsdaten an. Uneingeschränkte KI-Modelle stehen zur Wahl, wenn der Endpunkt sie anbietet. Das gewählte Modell und der Server bestimmen Kontextkapazität, Werkzeuge und Einschränkungen; Ihre Übergangstestfälle bleiben die Belege für die Annahme des Codevorschlags.

Fragen zu einem geänderten Zustandsübergang

Was bedeutet synchron im Programmierauftrag?

Legen Sie fest, dass jede Ausgabezelle aus derselben Eingabegeneration berechnet wird. Die vorgeschlagene Implementierung darf frühere Ausgaben nicht in spätere Berechnungen einfließen lassen. Geben Sie ein Beispiel an, das bei direkter Aktualisierung andere Ergebnisse liefert, damit die Anforderung im Projekt unmittelbar testbar ist.

Warum einen Ring mit nur einer Zelle einbeziehen?

Er lässt zyklische Nachbarn zusammenfallen und macht Randannahmen sichtbar. Geben Sie das erwartete Ergebnis für die gewählte Regel an, statt seine Abdeckung durch größere Beispiele anzunehmen. Prüfen Sie, ob der Vorschlag dasselbe definierte Verhalten bei jeder unterstützten Größe verwendet.

Sollten boolesche Werte als Zellen zählen?

Verwenden Sie die erforderliche Eingaberegel Ihrer Anwendung und nennen Sie sie ausdrücklich. Die Beispielaufgabe weist boolesche Zellen zurück, obwohl manche Sprachen sie wie Ganzzahlen behandeln. Prüfen Sie die Validierung und ergänzen Sie einen Testfall, damit der Patch diese Unterscheidung nicht stillschweigend verändert.

Kann RuleFennec eine ganze Simulation anhand eines Schritts beurteilen?

Der Arbeitsbereich unterstützt die Besprechung Ihres Codes, aber Testfälle für einen Schritt belegen nur die ausgeübten Verhaltensweisen. Betrifft die Änderung wiederholte Ausführung, definieren Sie diese zusätzlichen Erwartungen und führen Sie geeignete Projektprüfungen aus, bevor Sie sich auf die umfassendere Simulation verlassen.

Für Windows herunterladen ↗

RuleFennec · Aktualisiert 2026-10-25