Changing gencols' rule

For scripts to aid with computation or simulation in cellular automata.
Post Reply
User avatar
A. Erkiaga
Posts: 18
Joined: November 1st, 2016, 12:24 pm

Changing gencols' rule

Post by A. Erkiaga » September 23rd, 2020, 12:27 pm

I tried making a script to automatically search for valid bit-parallel functions, but the search space was awfully large and the search was slow. Then I tried writing one manually, but the task was extremely difficult. Anybody knows how I could implement transitions for other rules than the default?

wildmyron
Posts: 1542
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: Changing gencols' rule

Post by wildmyron » September 23rd, 2020, 1:02 pm

A. Erkiaga wrote:
September 23rd, 2020, 12:27 pm
I tried making a script to automatically search for valid bit-parallel functions, but the search space was awfully large and the search was slow. Then I tried writing one manually, but the task was extremely difficult. Anybody knows how I could implement transitions for other rules than the default?
This post should get you going with semi-totalistic rules: viewtopic.php?p=3254#p3254

Disclosure: I've never used gencols, looked at the code or downloaded the zip file in the linked post.

If you're keen to get parallel bitwise implementations of other CA rules then you could investigate how Lifelib generates it's assembly code for the various rule families (genera) that it supports.
https://conwaylife.com/wiki/Lifelib
https://gitlab.com/apgoucher/lifelib

To be honest, it's not the easiest code to understand (but it is designed for performance and flexibility) so I'll mention one other option which is something I have used: Bellman also contains code to generate bit parallel logic for semi-totalistic rules. https://conwaylife.com/wiki/Bellman You can find the rule generation code in the original repo (the one on Sourceforge) and a description of how to use it in either draft A or B of the documentation.
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
A. Erkiaga
Posts: 18
Joined: November 1st, 2016, 12:24 pm

Re: Changing gencols' rule

Post by A. Erkiaga » September 23rd, 2020, 2:36 pm

Thank you! What I'm looking for seems to be lifelib's genera/lifelike.py script that you pointed out. I'll try to make sense of it.

Post Reply