Bước ô tự động trên vòng
Tính một bước đồng bộ của ô tự động sơ cấp trên vòng gồm một đến 256 ô nhị phân.
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ểm tra trước khi áp dụng | So sánh hành vi thực tế với kết quả mong đợi. Nếu kiểm tra thất bại, tìm nguyên nhân trước khi sửa tiếp. |
|---|---|
| Mô hình | Cấu hình endpoint tương thích OpenAI hoặc Anthropic bằng URL cơ sở và khóa API nếu cần. Kiểm tra kết nối. Máy chủ mô hình cục bộ phải đang chạy; công cụ từ xa có thể truyền dữ liệu riêng. |
| Dự án | Kiểm tra láng giềng qua biên và một ô đơn lẻ, từ chối đầu vào rỗng, ô Boolean và quy tắc ngoài không đến 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)]Giữ bước mô phỏng nhất quán trên toàn trạng thái
RuleFennec cung cấp không gian lập trình AI trên Windows cho nhà phát triển sửa mã chuyển trạng thái. Trước khi yêu cầu cách triển khai, giải thích một bước có nghĩa gì trong ứng dụng và được phép đọc giá trị nào. Thư mục dự án cùng cuộc trao đổi với mô hình kết nối cho bạn nơi đối chiếu yêu cầu với mã nguồn hiện tại.
Với ôtômát tế bào sơ cấp dạng vòng, tác vụ hữu ích là tính một cập nhật đồng bộ từ cùng thế hệ đầu vào. Đưa biểu diễn quy tắc, hành vi nối vòng và giá trị ô được chấp nhận vào yêu cầu. Yêu cầu mô hình xem sửa đổi đề xuất có vô tình đọc giá trị đã cập nhật trước đó trong bước hay không. Đây là câu hỏi rà soát mã nguồn có hệ quả quan sát được.
Kiểm tra đề xuất bằng dữ liệu một ô và vòng ngắn mà các ô đầu cuối phụ thuộc nhau. Chạy kiểm thử riêng của dự án và so sánh toàn bộ thế hệ tiếp theo, không chỉ một vị trí thuận tiện. Giữ kiểm tra đầu vào và bảo toàn trạng thái trong lần rà soát để thay đổi thứ tự cập nhật không âm thầm mở rộng dữ liệu được chấp nhận.
Chọn mô hình qua điểm cuối tương thích OpenAI hoặc Anthropic được hỗ trợ, cung cấp thông tin xác thực khi cần. Mô hình AI không hạn chế là một lựa chọn khi điểm cuối có cung cấp. Mô hình và máy chủ được chọn quyết định dung lượng ngữ cảnh, công cụ và hạn chế; dữ liệu kiểm thử chuyển trạng thái vẫn là bằng chứng để chấp nhận mã đề xuất.
Câu hỏi khi sửa chuyển trạng thái
- Đồng bộ nghĩa là gì trong yêu cầu lập trình?
Quy định mọi ô đầu ra được tính từ cùng thế hệ đầu vào. Cách triển khai đề xuất không được để đầu ra trước ảnh hưởng phép tính sau. Kèm ví dụ cho kết quả khác nếu cập nhật tại chỗ để yêu cầu có thể kiểm thử trực tiếp trong dự án.
- Vì sao thêm vòng một ô?
Nó buộc các ô lân cận nối vòng trùng nhau và làm lộ giả định biên. Nêu kết quả mong đợi với quy tắc đã chọn thay vì cho rằng ví dụ lớn hơn đã bao phủ. Kiểm tra đề xuất dùng cùng hành vi đã định nghĩa ở mọi kích thước hỗ trợ.
- Giá trị Boolean có được tính là ô không?
Dùng chính sách đầu vào mà ứng dụng yêu cầu và nói rõ. Tác vụ minh họa từ chối ô Boolean dù một số ngôn ngữ coi chúng như số nguyên. Rà soát kiểm tra hợp lệ và thêm trường hợp kiểm thử để bản sửa không âm thầm đổi sự phân biệt đó.
- RuleFennec có thể đánh giá cả mô phỏng từ một bước không?
Không gian làm việc hỗ trợ trao đổi mã, nhưng dữ liệu kiểm thử một bước chỉ xác lập hành vi chúng thực hiện. Nếu thay đổi yêu cầu ảnh hưởng việc chạy lặp, xác định kỳ vọng bổ sung và chạy kiểm tra dự án phù hợp trước khi dựa vào mô phỏng rộng hơn.
RuleFennec · Cập nhật 2026-10-25