RRuleFennec
Espace de développement avec IA

Étapes cellulaires sur un anneau

Calculez une étape simultanée d’un automate cellulaire élémentaire sur un anneau de une à 256 cellules binaires.

● ● ●RuleFennec●
Méthodes de travail · Étapes cellulaires sur un anneau ×
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)]
✳Calculez une étape simultanée d’un automate cellulaire élémentaire sur un anneau de une à 256 cellules binaires.
✓ ModificationsVérifiez avant d’appliquer ↗
Illustration de l’espace de travail
Vérifiez avant d’appliquerComparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.
ModèlesConfigurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
ProjetVérifiez les voisins aux extrémités et une cellule unique, en rejetant une entrée vide, les cellules booléennes et les règles hors de zéro à 255.
Méthodes de travail

Étapes cellulaires sur un anneau

Méthodes de travail ↗
Méthodes de travail
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)]
Espace de développement avec IA

Gardez une étape de simulation cohérente sur l’ensemble de l’état

RuleFennec offre un espace de programmation avec IA sous Windows aux développeurs qui modifient du code de transition d’état. Avant de demander une implémentation, expliquez ce que signifie une étape dans l’application et quelles valeurs elle peut lire. Le dossier du projet et la conversation avec le modèle connecté permettent de comparer cette exigence au code actuel.

Pour un anneau cellulaire élémentaire, une tâche utile consiste à calculer une mise à jour synchrone à partir d’une même génération d’entrée. Incluez dans la demande la représentation de la règle, le bouclage aux extrémités et les valeurs de cellule acceptées. Demandez au modèle de vérifier si une modification lit accidentellement des valeurs déjà mises à jour plus tôt dans l’étape. C’est une question de revue du code avec une conséquence observable.

Vérifiez la proposition avec un cas à une seule cellule et un anneau court dont les cellules aux extrémités dépendent l’une de l’autre. Exécutez les tests du projet et comparez toute la génération suivante, pas seulement une position commode. Incluez aussi la validation des entrées et la préservation de l’état dans la revue pour qu’un changement d’ordre de mise à jour n’élargisse pas silencieusement les données acceptées.

Sélectionnez un modèle via un point de terminaison compatible OpenAI ou Anthropic pris en charge, avec les identifiants nécessaires. Les modèles d’IA sans restrictions sont une option si le point de terminaison les propose. Le modèle sélectionné et le serveur déterminent la capacité de contexte, les outils et les restrictions ; vos tests de transition restent les éléments permettant d’accepter le code proposé.

Questions pour modifier une transition d’état

Que signifie synchrone dans la demande de programmation ?

Précisez que chaque cellule de sortie est calculée depuis la même génération d’entrée. L’implémentation proposée ne doit pas laisser une sortie précédente influencer les calculs suivants. Incluez un exemple qui diffère avec des mises à jour sur place pour rendre l’exigence directement testable dans le projet.

Pourquoi inclure un anneau à une cellule ?

Il force les voisins par bouclage à coïncider et rend les hypothèses de bord visibles. Précisez le résultat attendu pour la règle choisie plutôt que supposer qu’un plus grand exemple couvre ce cas. Vérifiez que la proposition applique le même comportement défini à toutes les tailles prises en charge.

Les booléens doivent-ils compter comme cellules ?

Utilisez la politique d’entrée requise par l’application et explicitez-la. La tâche illustrée rejette les cellules booléennes même si certains langages les traitent comme des entiers. Examinez la validation et ajoutez un test pour que le correctif ne change pas silencieusement cette distinction.

RuleFennec peut-il évaluer toute une simulation à partir d’une étape ?

L’espace permet de discuter du code, mais les tests d’une étape n’établissent que les comportements exercés. Si la modification affecte des exécutions répétées, définissez ces attentes supplémentaires et effectuez les vérifications adaptées du projet avant de vous fier à la simulation plus large.

Télécharger pour Windows ↗

RuleFennec · Mis à jour 2026-10-25