Page 1 of 1

Concatination Rules

Posted: December 15th, 2014, 12:36 pm
by simsim314
I was thinking about a new way to generate interesting rules.

I came up with the idea of running rule A for single generation and then rule B for single generation. Rules A and B could be even simple totalistic rules. This rule concatenation can be of any length of course, and can be simply replaced by rule with N states.

Here is an example of Serizawa like concatination rule:
B3/S23456/B34/S3

Code: Select all

import golly as g 

g.new("")
g.select([0, 0, 1000, 20])
g.randfill(50)
g.fit()
g.setmag(0)
for i in xrange(0, 1000):
	g.setrule("B3/S23456")
	g.run(1)
	g.update()
	g.setrule("B34/S3")
	g.run(1)
	g.update()
I made a script instead of rule, to simplify the tweaking tests.

Re: Concatination Rules

Posted: December 15th, 2014, 1:21 pm
by EricG
For more on this topic, see Tropylium's post on Alternating Rules: viewtopic.php?f=11&t=719&p=7841&hilit=a ... ules#p5025

Alternating rules just once, instead of repeatedly, can sometimes be useful too. I've occasionally found puffers in rules by first creating a large lineup of known spaceships in a rule (I used afind), then adding S0 to the rule, then running the new rule for one generation, and finally switching back to the original rule and allowing the altered spaceships to proceed.

Re: Concatination Rules

Posted: January 14th, 2015, 4:37 am
by Kahanho0
Wireworld might be a good place to start. It has pretty much all small logic gates, and interesting/useful patterns can be constructed in the rule, such as a prime number calculator, which actually displays the prime numbers on an LCD-esque display.