고리형 셀룰러 오토마타 단계
이진 셀 1개부터 256개로 된 고리에서 기본 셀룰러 오토마타의 동기 단계를 한 번 계산합니다.
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)]| 적용하기 전에 검토하세요 | 실제 동작을 예상 결과와 비교하세요. 검사가 실패하면 다음 변경을 하기 전에 원인을 조사하세요. |
|---|---|
| 모델 | 기본 URL과 필요한 API 키로 OpenAI 호환 또는 Anthropic 엔드포인트를 설정하고 연결을 테스트하세요. 로컬 모델 서버는 실행 중이어야 합니다. 원격 도구는 데이터를 별도로 전송할 수 있습니다. |
| 프로젝트 | 경계를 넘는 이웃과 단일 셀을 확인하고 빈 입력, 불리언 셀, 0부터 255 밖의 규칙을 거부합니다. |
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)]시뮬레이션 한 단계를 전체 상태에 걸쳐 일관되게 유지하세요
RuleFennec는 상태 전이 코드를 변경하는 개발자를 위한 Windows AI 코딩 작업 공간입니다. 구현을 요청하기 전에 애플리케이션에서 한 단계가 무엇을 뜻하고 어떤 값을 읽을 수 있는지 설명하세요. 프로젝트 폴더와 연결된 모델 대화는 그 요구사항을 현재 소스와 비교할 공간을 제공합니다.
기본 셀룰러 링에서는 같은 입력 세대로부터 한 번의 동기 갱신을 계산하는 것이 유용한 작업입니다. 요청에 규칙 표현, 순환 경계 동작, 허용 셀 값을 포함하세요. 모델에게 제안 수정이 그 단계 앞부분에서 이미 갱신한 값을 실수로 읽는지 살펴보도록 요청하세요. 이는 관측 가능한 결과를 가진 소스 검토 질문입니다.
단일 셀 테스트 사례와 양 끝 셀이 서로 의존하는 짧은 링으로 제안을 확인하세요. 프로젝트 자체 테스트를 실행하고 편한 위치 하나만이 아니라 다음 세대 전체를 비교하세요. 갱신 순서 변경이 허용 데이터를 조용히 넓히지 않도록 입력 검증과 상태 보존도 검토에 포함하세요.
지원되는 OpenAI 호환 또는 Anthropic 엔드포인트를 통해 모델을 선택하고 필요한 경우 인증 정보를 제공하세요. 엔드포인트에서 제공할 때 제한 없는 AI 모델을 선택할 수 있습니다. 선택한 모델과 서버가 컨텍스트 용량, 도구, 제한을 결정하며, 제안 코드를 수락할 근거는 전이 테스트 사례입니다.
상태 전이 변경에 관한 질문
- 코딩 요청에서 동기적이라는 말은 무엇을 뜻하나요?
모든 출력 셀이 같은 입력 세대에서 계산됨을 명시하세요. 제안 구현은 앞의 출력이 뒤의 계산에 영향을 주지 않게 해야 합니다. 제자리 갱신에서 달라지는 예제를 포함하여 프로젝트에서 요구사항을 직접 테스트할 수 있게 하세요.
- 단일 셀 링을 포함하는 이유는 무엇인가요?
순환 이웃이 같은 셀로 겹치게 하여 경계 가정을 드러내기 때문입니다. 큰 예제가 이를 다룬다고 가정하지 말고 선택한 규칙의 예상 결과를 명시하세요. 제안이 모든 지원 크기에서 같은 정의된 동작을 사용하는지 확인하세요.
- 불리언 값도 셀로 인정해야 하나요?
애플리케이션에 필요한 입력 정책을 사용하고 명시하세요. 일부 언어가 불리언을 정수처럼 다루지만 예시 작업은 불리언 셀을 거부합니다. 검증을 검토하고 테스트 사례를 추가하여 제안 패치가 그 구분을 조용히 바꾸지 않도록 하세요.
- RuleFennec가 한 단계만으로 전체 시뮬레이션을 평가할 수 있나요?
작업 공간은 코드 논의를 지원하지만 한 단계 테스트 사례는 실행한 동작만 입증합니다. 요청한 변경이 반복 실행에 영향을 준다면 더 넓은 시뮬레이션에 의존하기 전에 추가 기대사항을 정의하고 적절한 프로젝트 검사를 실행하세요.
RuleFennec · 업데이트 2026-10-25