Thread for basic non-CGOL questions

For discussion of other cellular automata.
Post Reply
User avatar
muzik
Posts: 5612
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Thread for basic non-CGOL questions

Post by muzik » December 22nd, 2017, 8:27 am

I don't know, but it is simulating a Margolus neighbourhood as 2x2 and similar rules would do.

User avatar
gameoflifemaniac
Posts: 1242
Joined: January 22nd, 2017, 11:17 am
Location: There too

Re: Thread for basic non-CGOL questions

Post by gameoflifemaniac » December 22nd, 2017, 8:55 am

lifeisawesome wrote:Is this a billiard table?

Code: Select all

x = 9, y = 9, rule = B2ei3e/S
bobobobo$o7bo2$o7bo2$o7bo2$o7bo$bobobobo!
No. It has no stator, so the rotor isn't inside anything.
I was so socially awkward in the past and it will haunt me for the rest of my life.

Code: Select all

b4o25bo$o29bo$b3o3b3o2bob2o2bob2o2bo3bobo$4bobo3bob2o2bob2o2bobo3bobo$
4bobo3bobo5bo5bo3bobo$o3bobo3bobo5bo6b4o$b3o3b3o2bo5bo9bobo$24b4o!

User avatar
lifeisawesome
Posts: 86
Joined: April 22nd, 2016, 1:55 pm
Location: poland

Re: Thread for basic non-CGOL questions

Post by lifeisawesome » December 25th, 2017, 6:44 am

Is this a known fuse?

Code: Select all

x = 47, y = 3, rule = B36/S23
b2o$o2bob2o2b2o2b2o2b2o2b2o2b2o2b2o2b2o2b2o2b2o2b2o$b2o2b2o2b2o2b2o2b
2o2b2o2b2o2b2o2b2o2b2o2b2o2b2o!
--Szymon Bartosiewicz
favorite pattern:

Code: Select all

x = 2, y = 2, rule = B25/S3a
2o$2o!

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Thread for basic non-CGOL questions

Post by BlinkerSpawn » January 2nd, 2018, 9:44 am

Is it possible to create a counterexample to the no-spaceships-with-S0123 rule by utilizing 4a, similar to this?

Code: Select all

x = 6, y = 4, rule = B2ce3-an4a5a/S01e234rt6ac7c8
bo2bo$6o$b4o$2b2o!
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

User avatar
muzik
Posts: 5612
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Thread for basic non-CGOL questions

Post by muzik » January 2nd, 2018, 11:17 am

Are there any rules where the maximum speed is irrational?

User avatar
Rhombic
Posts: 1072
Joined: June 1st, 2013, 5:41 pm

Re: Thread for basic non-CGOL questions

Post by Rhombic » January 2nd, 2018, 11:21 am

muzik wrote:Are there any rules where the maximum speed is irrational?
I don't have a formal proof but in essence certainly not for finite patterns, because that would imply some kind of non-specific infinite-distance interaction that should somehow converge to no rational number. I've got no clue as to how to prove this though.
SoL : FreeElectronics : DeadlyEnemies : 6a-ite : Rule X3VI
what is “sesame oil”?

AbhpzTa
Posts: 592
Joined: April 13th, 2016, 9:40 am
Location: Ishikawa Prefecture, Japan

Re: Thread for basic non-CGOL questions

Post by AbhpzTa » January 2nd, 2018, 12:05 pm

BlinkerSpawn wrote:Is it possible to create a counterexample to the no-spaceships-with-S0123 rule by utilizing 4a, similar to this?

Code: Select all

x = 6, y = 4, rule = B2ce3-an4a5a/S01e234rt6ac7c8
bo2bo$6o$b4o$2b2o!
Yes:

Code: Select all

x = 6, y = 4, rule = B2e3ij4n5n6k/S01235i6a7c
b4o$ob2obo$2b2o$2b2o!
100009436650194649 = 94649 * 1056634900001

User avatar
Macbi
Posts: 903
Joined: March 29th, 2009, 4:58 am

Re: Thread for basic non-CGOL questions

Post by Macbi » January 2nd, 2018, 12:29 pm

Rhombic wrote:
muzik wrote:Are there any rules where the maximum speed is irrational?
I don't have a formal proof but in essence certainly not for finite patterns, because that would imply some kind of non-specific infinite-distance interaction that should somehow converge to no rational number. I've got no clue as to how to prove this though.
Could there perhaps be a family of finite ships whose speeds got closer and closer to an irrational speed limit, with none of them able to achieve it?

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Thread for basic non-CGOL questions

Post by AforAmpere » January 2nd, 2018, 1:09 pm

On the same kind of thinking, what is the lowest max speed for orthogonal ships, that is not 0c? The max for JustFriends is C/3, I believe.
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

Gamedziner
Posts: 795
Joined: May 30th, 2016, 8:47 pm
Location: Milky Way Galaxy: Planet Earth

Re: Thread for basic non-CGOL questions

Post by Gamedziner » January 2nd, 2018, 1:26 pm

muzik wrote:Are there any rules where the maximum speed is irrational?
No. In fact, there are no bounded interactions in finite-state cellular automata with an irrational speed.
(I'm assuming generations are indivisible.)
Here's a(n incomplete) proof:

By the definition of a cellular automaton, the automaton has an indivisible cell, the unit cell.
This fact, combined with the requirements that the interaction be bounded and have a finite number of states, means that there are finitely many patterns that can occur in the interaction.
The maximum amount of generations possible for the interaction to occur and still move is the number of patterns that can occur in the interaction, since any more generations would either lead to an oscillator (if it returned to the initial position without moving) or have a larger bounding box.
By the definition of speed in a cellular automaton, speed is the ratio of the distance (in unit cells) an interaction has moved to the number of generations taken to move that distance.
Since the interaction is finite, the distance moved is also finite.
Because the unit cells and generations are indivisible, partial unit cells and generations cannot exist. Thus, they must be counted with integers.
Since the distance and number of generations are both finite integers (as shown previously), the speed is always rational, by the definition of rational. Thus, a speed cannot be "not rational," or irrational.

Code: Select all

x = 81, y = 96, rule = LifeHistory
58.2A$58.2A3$59.2A17.2A$59.2A17.2A3$79.2A$79.2A2$57.A$56.A$56.3A4$27.
A$27.A.A$27.2A21$3.2A$3.2A2.2A$7.2A18$7.2A$7.2A2.2A$11.2A11$2A$2A2.2A
$4.2A18$4.2A$4.2A2.2A$8.2A!

User avatar
BlinkerSpawn
Posts: 1992
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

Re: Thread for basic non-CGOL questions

Post by BlinkerSpawn » January 2nd, 2018, 1:41 pm

AbhpzTa wrote:
BlinkerSpawn wrote:Is it possible to create a counterexample to the no-spaceships-with-S0123 rule by utilizing 4a, similar to this?

Code: Select all

x = 6, y = 4, rule = B2ce3-an4a5a/S01e234rt6ac7c8
bo2bo$6o$b4o$2b2o!
Yes:

Code: Select all

x = 6, y = 4, rule = B2e3ij4n5n6k/S01235i6a7c
b4o$ob2obo$2b2o$2b2o!
Ah, I hadn't thought of that approach; I'll edit the wiki accordingly.
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]

Image

User avatar
praosylen
Posts: 2443
Joined: September 13th, 2014, 5:36 pm
Location: Pembina University, Home of the Gliders
Contact:

Re: Thread for basic non-CGOL questions

Post by praosylen » January 2nd, 2018, 1:53 pm

Gamedziner wrote:
muzik wrote:Are there any rules where the maximum speed is irrational?
No. In fact, there are no bounded interactions in finite-state cellular automata with an irrational speed.
But if you replace "maximum speed" with "speed limit" -- I'm assuming that's what muzik meant -- your proof doesn't work. Since the rational numbers are dense in the reals, it's mathematically possible that rational speeds could exist arbitrarily close to some irrational limit but not above it.
former username: A for Awesome
praosylen#5847 (Discord)

The only decision I made was made
of flowers, to jump universes to one of springtime in
a land of former winter, where no invisible walls stood,
or could stand for more than a few hours at most...

User avatar
gmc_nxtman
Posts: 1150
Joined: May 26th, 2015, 7:20 pm

Re: Thread for basic non-CGOL questions

Post by gmc_nxtman » January 28th, 2018, 3:23 pm

Can somebody tell me the growth rate of this pattern?

Code: Select all

x = 17, y = 6, rule = B3ain/S2a4-ceitw56-n7
15bo$bobob2ob2ob2ob3o$6ob9o$5ob2o3b2ob3o$bo3b2obo6bo$4bo!

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: Thread for basic non-CGOL questions

Post by Majestas32 » January 28th, 2018, 3:31 pm

Pretty sure it's still technically linear
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

User avatar
77topaz
Posts: 1496
Joined: January 12th, 2018, 9:19 pm

Re: Thread for basic non-CGOL questions

Post by 77topaz » January 28th, 2018, 5:24 pm

Yeah, it's irregular, but overall linear:

Code: Select all

x = 552, y = 536, rule = B3/S23
261b3o2bo6b3o2b4o2b4o3b3o3b3o2b4o2b4o$260bo3bobo7bo3bo3bobo3bobo3bobo
3bobo3bobo3bo$260bo5bo7bo3bo3bobo3bobo3bobo3bobo3bobo3bo$260bo5bo7bo3b
4o2b4o2bo3bob5ob4o2bo3bo$260bo5bo7bo3bo5bo3bobo3bobo3bobo2bo2bo3bo$
260bo3bobo7bo3bo5bo3bobo3bobo3bobo3bobo3bo$261b3o2b5o2b3o2bo5b4o3b3o2b
o3bobo3bob4o8$bo4b3o4bo4b3o2b5o$2o3bo3bo2b2o3bo3bobo$bo7bo3bo3bo3bobo$
bo6bo4bo4b3o3b3o10bo$bo5bo5bo3bo3bo5bo9bo401bo$bo4bo6bo3bo3bobo3bo9bo
400b5o$3o2b5o2b3o3b3o3b3o10bo400b6o$37bo399b2ob4o$37bo399b2o4bo$37bo
398b2o5b2o$37bo394b2ob3o6bo$37bo394b2ob2o7b2o$37bo394b4o9bo$37bo394b3o
10bo$37bo394bo12bo$37bo393b2o12bo$37bo393bo13bo$37bo393bo13b2o$37bo
393bo14bo$37bo393bo14bo$37bo392b2o14bo$37bo392bo15bo$37bo392bo15bo$37b
o391b2o15bo$37bo391bo16bo$37bo391bo16bo$37bo390b2o16bo$37bo390b2o16bo$
37bo390bo17b2o$37bo390bo18bo$37bo390bo18bo$37bo389bo19bo$37bo388b2o19b
o$37bo388b2o19bo$37bo388bo20bo$37bo388bo20b2o$37bo387b2o21bo$37bo387bo
22bo$37bo387bo22bo$37bo386b2o22bo$37bo386bo23bo$37bo386bo23bo$37bo385b
2o23b2o$37bo382bo2b2o24bo85b3o$37bo381b2ob2o25bo85b2o$37bo381b5o25bo
84b2o$37bo381b4o26bo84bo$37bo381bobo27b2o83bo$37bo380b2o30bo82b2o$37bo
380bo31bo82b2o$37bo380bo31bo82bo$37bo380bo31bo82bo$37bo379b2o31bo81b2o
$37bo379bo32b2o80bo$37bo379bo33bo80bo$37bo378b2o33bo79b2o$37bo378bo34b
o79bo$37bo378bo34b2o78bo$37bo378bo35bo77b2o$37bo377b2o35bo77bo$37bo
377bo36bo77bo$37bo377bo36bo76b2o$37bo377bo36b2o74b2o$37bo376b2o36b2o
74bo$37bo376bo38bo74bo$37bo375b2o38bo73b2o$37bo375bo39b2o72b2o$37bo
375bo39b2o72bo$37bo374b2o40bo67bo4bo$37bo374bo41b2o66bo3b2o$37bo374bo
42bo65b3o2bo$37bo374bo42bo65bob4o$37bo373b2o42b2o64bob3o$37bo373bo44bo
64bo2bo$37bo373bo44bo63b2o$37bo372b2o44b2o62bo$37bo372bo46b2o61bo$37bo
372bo46b2o60b2o$37bo371b2o47bo60bo$37bo371bo48bo60bo$37bo371bo48bo59b
2o$37bo369b3o48b2o58bo$37bo368b4o49bo58bo$37bo368b2o51bo57b2o$37bo368b
o52bo57bo$37bo368bo52bo56b2o$37bo367b2o52bo56b2o$37bo367bo53b2o54b2o$
37bo367bo54b2o53b2o$37bo366b2o55b2o52bo$37bo366b2o55b2o51b2o$37bo366bo
57b3o49bo$37bo366bo58b3o48bo$37bo365b2o59b2o47b2o$37bo356bo8bo61bo47b
2o$37bo355b2o8bo61b3o45bo$37bo355b2o7b2o62b3o43b2o$37bo355b3o6bo64b4o
24b2o15bo$37bo354b2obo5b2o65b4o23b3o13b2o$37bo354bo2bo4b3o66bobo22b4o
11b3o$37bo354bo2b2o3b2o69bo21b2o2bo11b3o$37bo354bo2b3ob2o70bo21b2o2bo
10b3o$37bo353b2o3b4o71bo20b2o3bo10bo$37bo353b2o4b3o71b2o17b3o4bo10bo$
37bo353bo80bo16b4o4bo10bo$37bo352b2o80bo10b2o4bobo5b2o8b2o$37bo352bo
81bo10b2o3b2o8bo8bo$37bo352bo81bo9b3ob3o9bo7b2o$37bo352bo81b2o7b7o10bo
7bo$37bo351b2o81b2o3bo2b3o2b2o11b2o5b2o$37bo351bo83bo3b5o16b2o5bo$37bo
351bo83b2ob4o19bo5bo$37bo351bo84b3ob2o19b2o2b3o$37bo350b2o85bo24bob3o$
37bo349b2o111b5o$37bo349b2o111b3o$37bo349bo$37bo349bo$37bo348b2o$37bo
348b2o$37bo348bo$37bo348bo$37bo347b2o$37bo347bo$37bo347bo$37bo346b2o$
37bo346bo$37bo346bo$37bo345b2o$37bo343bobo$37bo343b3o$37bo343b3o$37bo
343bo$37bo342b2o$37bo342bo$37bo342bo$37bo342bo$37bo341bo$37bo341bo$37b
o341bo$37bo340b2o$37bo340bo$37bo340bo$37bo339b2o$37bo339bo$37bo339bo$
37bo338b2o$37bo338bo$37bo337b2o$37bo337b2o$37bo336b2o$37bo336bo$37bo
336bo$37bo335b2o$37bo335bo$37bo330b2o3bo$37bo330b2o2b2o$37bo330b2ob2o$
37bo329b6o$37bo329bo2b2o$37bo329bo$37bo329bo$37bo328b2o$37bo328bo$37bo
328bo$37bo327bo$37bo327bo$37bo304bo22bo$37bo303b3o20b2o$37bo303b3o20bo
$37bo303bobo20bo$37bo302b2obo19b2o$37bo302bo2bo18b2o$37bo301b2o2bo18b
2o$37bo301bo3b2o17bo$37bo301bo4bo16b2o$37bo301bo4bo16bo$37bo300b2o4bo
16bo$37bo300bo5bo16bo$37bo300bo5b2o14bo$37bo299b2o6bo14bo$37bo299bo7bo
13b2o$37bo298b2o7b2o12bo$37bo298bo9bo8b2ob2o$37bo298bo9bo8b2obo$37bo
298bo9b2o7b2obo$37bo297b2o10b3o3b6o$37bo297bo11b3o2b3o2bo$37bo297bo12b
6o$37bo297bo14b2o$37bo296bo15b2o$37bo296bo$37bo296bo$37bo295bo$37bo
295bo$37bo295bo$37bo294b2o$37bo292bobo$37bo292b3o$37bo292b3o$37bo291b
2o$37bo291bo$37bo291bo$37bo291bo$37bo290b2o$37bo290bo$37bo290bo$37bo
289b2o$37bo289bo$37bo289bo$37bo288b2o$37bo288bo$37bo288bo$37bo287b2o$
37bo287bo$37bo287bo$37bo286b2o$37bo286bo$37bo285b2o$37bo285bo$37bo285b
o$37bo284b2o$37bo284bo$37bo279b2o3bo$20b7o10bo279b2o2b2o$23bo13bo278b
3ob2o$22bo14bo278bob4o$21bo15bo278bob3o$20b7o10bo278bo$37bo278bo$21b5o
11bo277bo$20bo5bo10bo277bo$20bo5bo10bo276b2o$20bo5bo10bo276bo$21b5o11b
o276bo$37bo275b2o$37bo275bo$20bo5bo10bo275bo$20b7o10bo275bo$20bo5bo10b
o274b2o$37bo273b2o$37bo273b2o$20bo16bo272b2o$20bo16bo272b2o$20b7o10bo
272bo$20bo16bo272bo$20bo16bo271b2o$37bo271bo$21b6o10bo270b2o$20bo2bo
13bo270b2o$20bo2bo13bo270bo$20bo2bo13bo269b2o$21b6o10bo269bo$37bo267bo
bo$26bo10bo266b4o$26bo10bo200bo65b3o$26bo10bo199b3o64bo$26bo10bo198b5o
62bo$20b7o10bo196b3o3bo62bo$37bo196b3o3bo50bo11bo$20b6o11bo196b2o4b2o
49b2o9b2o$26bo10bo196bo6bo48b3o9bo$26bo10bo195b2o6bo48b3o8b2o$26bo10bo
195bo7bo48bobo8bo$20b6o11bo195bo7bo47b2ob2o6b2o$37bo195bo7bo47bo3bo6b
2o$21b2o14bo194bo8bo47bo3bo6bo$20bo2bo13bo194bo8bo46b2o3b2o3b3o$20bo2b
o13bo194bo8b2o45b2o3b2o2b4o$20bo2bo13bo193b2o9bo45bo5b6o$20b7o10bo193b
o10bo45bo6b3o$37bo193bo10bo44b2o$21b5o11bo192b2o10bo44bo$20bo5bo10bo
192bo11bo44bo$20bo5bo10bo192bo11bo43b2o$20bo5bo10bo190b3o11bo42b2o$21b
5o11bo189b3o12b2o41b2o$37bo189b3o13bo41bo$21b2o14bo189bo15bo40b2o$20bo
2bo13bo189bo15bo40bo$20bo2bo13bo188b2o15bo40bo$20bo2bo13bo188bo17bo38b
2o$20b7o10bo188bo17bo38bo$37bo188bo17bo38bo$37bo187b2o17bo37b2o$37bo
187bo18b2o36bo$37bo186b2o19bo35b2o$37bo186bo20bo33bobo$37bo186bo20b2o
32b3o$37bo186bo20b2o31b4o$37bo185bo22bo31bo$37bo185bo22b2o30bo$37bo
185bo23bo29b2o$37bo183b3o23bo29bo$37bo183b2o24bo29bo$37bo183bo25b2o27b
2o$37bo183bo26bo27bo$37bo182b2o26b2o25b2o$37bo182bo27b3o24bo$37bo182bo
28b2o24bo$37bo177bo4bo29b2o22b2o$37bo176b2o3bo30b4o11b2o7bo$37bo176b3o
b2o32b2o11b2o6b2o$37bo176b6o33bo11b2o5b3o$37bo176bob3o34b2o8b5o4bo$37b
o175b2obo37bo7b3o2bo4bo$37bo175bo40bo4b5o3bo3b2o$37bo175bo40bo3b5o4bo
3bo$37bo174b2o40b5o2bo5bo2b2o$37bo174b2o41b3o9b5o$37bo174bo55b3o$37bo
174bo$37bo173b2o$37bo173bo$37bo172b2o$37bo172b2o$37bo172bo$37bo172bo$
37bo171b2o$37bo170b2o$37bo170bo$37bo170bo$37bo169b2o$37bo169bo$37bo
169bo$37bo168b2o$37bo168bo$37bo168bo$37bo167bo$37bo167bo$37bo166b2o$
37bo164b3o$37bo163b4o$37bo163bo$37bo163bo$37bo163bo$37bo162b2o$37bo
150b2o10bo$37bo150b3o9bo$37bo150b3o8b2o$37bo150bobo8bo$37bo149b2obo7b
2o$37bo149bo2bo7bo$37bo148b2o2bo7bo$37bo148b2o3bo4b3o$37bo148bo4b2o2b
3o$37bo148bo4b2ob4o$37bo147bo6b4o$37bo147bo7b2o$37bo147bo$37bo146b2o$
37bo146bo$37bo145b2o$37bo145b2o$37bo144b2o$37bo144bo$37bo144bo$37bo
143b2o$37bo143bo$37bo143bo$37bo142b2o$37bo142b2o$37bo141b2o$37bo141b2o
$37bo139bobo$37bo138b4o$37bo138b3o$37bo138b3o$37bo137b2o$37bo137bo$37b
o137bo$37bo137bo$37bo136b2o$37bo135b2o$37bo135b2o$37bo135bo$37bo134b2o
$37bo134bo$37bo134bo$37bo132b3o$37bo99b2o31b2o$37bo98b3o31bo$37bo97b4o
30b2o$37bo97b2obo24b2o4bo$37bo96b2o2bo24b2o4bo$37bo96bo3bo24b2o3bo$37b
o96bo4bo22b4ob2o$37bo96bo4bo22bo2b4o$37bo95b2o4bo22bo2b3o$37bo95bo5bo
21b2o$37bo94b2o5bo21bo$37bo94b2o5bo20b2o$37bo93b2o6b2o19bo$37bo93bo8bo
19bo$37bo93bo8bo18b2o$37bo92b2o8bo18bo$37bo92bo9b2o16b2o$37bo92bo10bo
15b3o$37bo91b2o10bo15b2o$37bo91bo11b2o13b2o$37bo90b2o11b2o13bo$37bo90b
2o12bo13bo$37bo90bo13b3o10b2o$37bo87bob2o14b3o9bo$37bo87b3o15b3o4b2o2b
2o$37bo87b3o17bo2b4o2bo$37bo86b2o19b10o$37bo86bo20b4o3b2o$37bo86bo27b
2o$37bo86bo$37bo85bo$37bo85bo$37bo84b2o$37bo84bo$37bo83b2o$37bo83bo$
37bo83bo$37bo82b2o$37bo81b2o$37bo81b2o$37bo80b2o$37bo75bo4bo$37bo74b2o
3b2o$37bo74b2o3b2o$37bo73b3o3bo$37bo73bob5o$37bo73bo2b3o$37bo72b2o2b2o
$37bo72bo$37bo72bo$37bo71bo$37bo71bo$37bo70b2o$37bo70bo$37bo70bo$37bo
68b3o$37bo68b2o$37bo67b2o$37bo67bo$37bo67bo$37bo67bo$37bo66bo$37bo65b
2o$37bo48b2o15bo$37bo48b2o12bob2o$37bo47b3o11b2obo$37bo47bobo11b4o$37b
o46b2obo11bobo$37bo46bo3bo9b2o$37bo46bo3bo9bo$37bo45b2o3bo8b2o$37bo45b
o4bo7b2o$37bo44b2o4b2o6b2o$37bo44b2o5b2o5bo$37bo44bo6b2o2bob2o$37bo42b
3o7b6o$37bo42b2o8b6o$37bo42bo13bo$37bo41b2o$37bo41bo$37bo41bo$37bo40b
2o$37bo39b2o$37bo36bo2bo$37bo36bob2o$37bo35b4o$37bo35bob2o$37bo35bo$
37bo34b2o$37bo34bo$37bo33b2o$37bo33bo$37bo32b2o$37bo32bo$37bo23bo7b2o$
37bo22b3o5b2o$37bo22b3o4b3o$37bo22bobo4bo$37bo22bobo3b2o$37bo21bo2b3ob
o$37bo20b2o3b4o$37bo20bo5b2o$37bo19b2o$37bo19bo$37bo18b2o$37bo17b2o$
37bo16b3o$37bo16bo$37bo15b2o$37bo15bo$37bo10b2o2b2o$37bo10b2ob2o$37bo
9b5o$37bo9bo2bo$37bo8b2o$37bo7b2o$37bo6b2o$37bo4bob2o$37bo3b4o$17b3o3b
3o11bo3bobo$16bo3bobo3bo10bo2b2o$20bobo3bo10bob2o$18b2o3b4o10b3o$20bo
5bo10b501o$16bo3bo5bo$17b3o3b3o8$35b3o185b3o2b5obo3bob5ob4o3b3o2b5o2b
3o3b3o2bo3bo10bo34bo4b3o4bo4b3o3bo175bo4b3o3b3o3b3o3b3o$34bo3bo183bo3b
obo5b2o2bobo5bo3bobo3bo3bo5bo3bo3bob2o2bo9bo11bo22b2o3bo3bo2bobo2bo3bo
3bo173b2o3bo3bobo3bobo3bobo3bo$34bo2b2o183bo5bo5bobobobo5bo3bobo3bo3bo
5bo3bo3bobobobo9bo4b4ob5o2b3o2b4o2b5o3bo3bo2b2obo3bobo2b2o3bo174bo3bo
2b2obo2b2obo2b2obo2b2o$34bobobo183bo2b2ob3o3bo2b2ob3o3b4o2b5o3bo5bo3bo
3bobo2b2o9bo3bo7bo3bo3bobo3bo9bo3bobobo7bobobo3bo174bo3bobobobobobobob
obobobobo$34b2o2bo183bo3bobo5bo3bobo5bo2bo2bo3bo3bo5bo3bo3bobo3bo9bo4b
3o4bo3b5obo3bob5o3bo3b2o2bo7b2o2bo3bo174bo3b2o2bob2o2bob2o2bob2o2bo$
34bo3bo183bo3bobo5bo3bobo5bo3bobo3bo3bo5bo3bo3bobo3bo9bo7bo3bo3bo5bo3b
o9bo3bo3bo7bo3bo3bo174bo3bo3bobo3bobo3bobo3bo$35b3o185b3o2b5obo3bob5ob
o3bobo3bo3bo4b3o3b3o2bo3bo10bo2b4o5b2o2b4ob4o9b3o3b3o9b3o3bo174b3o3b3o
3b3o3b3o3b3o$312bo$312bo!

User avatar
toroidalet
Posts: 1514
Joined: August 7th, 2016, 1:48 pm
Location: My computer
Contact:

Re: Thread for basic non-CGOL questions

Post by toroidalet » January 28th, 2018, 11:46 pm

Actually, starting at generation 180536 it periodically produces growing spaceships that extend to the side (down) at period 163840, so the asymptotic growth rate is quadratic.
Any sufficiently advanced software is indistinguishable from malice.

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Thread for basic non-CGOL questions

Post by Saka » March 16th, 2018, 4:41 am

Does there exist, in B45678/S2345, a "full" oscillator in which the casing is a diamond?
This is an example of a "full" oscillator of period 97

Code: Select all

x = 8, y = 8, rule = B45678/S2345
8o$o2b2o2bo$ob4obo$obo2bobo$2o4b2o$obo2bobo$ob4obo$b6o!
As you can see, full oscillators tend to have higher periods and use all space given for the rotor.
But when I change the casing to a diamond shape, randomness inside just degrades into
a) a vacuum
b) a still life
c) non-full oscillators
example of degradation into an oscillator, still life, and vacuum

Code: Select all

x = 29, y = 19, rule = B45678/S2345
7bo16bo$6bobo14bobo$5bo3bo12bo3bo$4bo5bo10bob2o2bo$3b3ob5o8bo3b2o2bo$
2bo2bob4obo8bo2b2obo$bo2bob2obo3bo8bo3bo$o3b2o2bobo3bo8bobo$bo3b2obo4b
o10bo$2bo2bob4obo$3bob2o2b3o12bo$4bo5bo12bobo$5bo3bo12bo3bo$6bobo12bob
2o2bo$7bo12bo2bo4bo$21bob3obo$22bo3bo$23bobo$24bo!
Actually I have found one, but it has a small period of 10 and this is the only one I have found. Are there more of larger periods?

Code: Select all

x = 9, y = 9, rule = B45678/S2345
4bo$3bobo$2bo3bo$bo5bo$2o6bo$b3o3bo$2b2o2bo$3b3o$4bo!

User avatar
muzik
Posts: 5612
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Thread for basic non-CGOL questions

Post by muzik » June 29th, 2018, 3:13 pm

Do there exist any programs that can simulate any desired one-dimensional rules with a range higher than 1?

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Thread for basic non-CGOL questions

Post by AforAmpere » June 29th, 2018, 3:30 pm

muzik wrote:Do there exist any programs that can simulate any desired one-dimensional rules with a range higher than 1?
You can use Wolfram Alpha to simulate a lot of those rules if you want to simulate what happens with one starting cell. Or do you need something else?
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
muzik
Posts: 5612
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Thread for basic non-CGOL questions

Post by muzik » June 29th, 2018, 3:37 pm

The ability to specify more starting conditions.

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Thread for basic non-CGOL questions

Post by Saka » June 29th, 2018, 8:58 pm

muzik wrote:Do there exist any programs that can simulate any desired one-dimensional rules with a range higher than 1?
You can try MCell, it's pretty good, although it's limited to a boinded grid.

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: Thread for basic non-CGOL questions

Post by Majestas32 » June 30th, 2018, 12:23 am

There should be made a script that converts one into a 8 state golly rule
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

User avatar
muzik
Posts: 5612
Joined: January 28th, 2016, 2:47 pm
Location: Scotland

Re: Thread for basic non-CGOL questions

Post by muzik » June 30th, 2018, 7:56 pm

What rule does the edge of this simulate?:

Code: Select all

x = 1, y = 3, rule = B2-ek/S
o2$o!

AforAmpere
Posts: 1334
Joined: July 1st, 2016, 3:58 pm

Re: Thread for basic non-CGOL questions

Post by AforAmpere » July 3rd, 2018, 2:13 pm

This sort of fits the description of this thread. Would anyone like a new version of the Glider Database, but for Isotropic Non-Totalistic rules? This script, which is a modified version of isotropic-rule-gen.py, which takes a rule as input, and outputs programmed in ships as output if they are viable in that rule. It runs with Golly, and so inputting a rule automatically places known ships on the grid. Currently only the Glider and LWSS are programmed in.

Code: Select all

# Glider_Database.py, run with Golly.
import golly as g
import os
import sys
g.new("")
class RuleGenerator:
    notationdict = {
        "0"  : [0,0,0,0,0,0,0,0],   #    
        "1e" : [1,0,0,0,0,0,0,0],   #   N
        "1c" : [0,1,0,0,0,0,0,0],   #   NE
        "2a" : [1,1,0,0,0,0,0,0],   #   N,  NE
        "2e" : [1,0,1,0,0,0,0,0],   #   N,  E
        "2k" : [1,0,0,1,0,0,0,0],   #   N,  SE
        "2i" : [1,0,0,0,1,0,0,0],   #   N,  S
        "2c" : [0,1,0,1,0,0,0,0],   #   NE, SE
        "2n" : [0,1,0,0,0,1,0,0],   #   NE, SW
        "3a" : [1,1,1,0,0,0,0,0],   #   N,  NE, E
        "3n" : [1,1,0,1,0,0,0,0],   #   N,  NE, SE
        "3r" : [1,1,0,0,1,0,0,0],   #   N,  NE, S
        "3q" : [1,1,0,0,0,1,0,0],   #   N,  NE, SW
        "3j" : [1,1,0,0,0,0,1,0],   #   N,  NE, W
        "3i" : [1,1,0,0,0,0,0,1],   #   N,  NE, NW
        "3e" : [1,0,1,0,1,0,0,0],   #   N,  E,  S
        "3k" : [1,0,1,0,0,1,0,0],   #   N,  E,  SW
        "3y" : [1,0,0,1,0,1,0,0],   #   N,  SE, SW
        "3c" : [0,1,0,1,0,1,0,0],   #   NE, SE, SW
        "4a" : [1,1,1,1,0,0,0,0],   #   N,  NE, E,  SE
        "4r" : [1,1,1,0,1,0,0,0],   #   N,  NE, E,  S
        "4q" : [1,1,1,0,0,1,0,0],   #   N,  NE, E,  SW
        "4i" : [1,1,0,1,1,0,0,0],   #   N,  NE, SE, S
        "4y" : [1,1,0,1,0,1,0,0],   #   N,  NE, SE, SW
        "4k" : [1,1,0,1,0,0,1,0],   #   N,  NE, SE, W
        "4n" : [1,1,0,1,0,0,0,1],   #   N,  NE, SE, NW
        "4z" : [1,1,0,0,1,1,0,0],   #   N,  NE, S,  SW
        "4j" : [1,1,0,0,1,0,1,0],   #   N,  NE, S,  W
        "4t" : [1,1,0,0,1,0,0,1],   #   N,  NE, S,  NW
        "4w" : [1,1,0,0,0,1,1,0],   #   N,  NE, SW, W
        "4e" : [1,0,1,0,1,0,1,0],   #   N,  E,  S,  W
        "4c" : [0,1,0,1,0,1,0,1],   #   NE, SE, SW, NW
        "5i" : [1,1,1,1,1,0,0,0],   #   N,  NE, E,  SE, S
        "5j" : [1,1,1,1,0,1,0,0],   #   N,  NE, E,  SE, SW
        "5n" : [1,1,1,1,0,0,1,0],   #   N,  NE, E,  SE, W
        "5a" : [1,1,1,1,0,0,0,1],   #   N,  NE, E,  SE, NW
        "5q" : [1,1,1,0,1,1,0,0],   #   N,  NE, E,  S,  SW
        "5c" : [1,1,1,0,1,0,1,0],   #   N,  NE, E,  S,  W
        "5r" : [1,1,0,1,1,1,0,0],   #   N,  NE, SE, S,  SW
        "5y" : [1,1,0,1,1,0,1,0],   #   N,  NE, SE, S,  W
        "5k" : [1,1,0,1,0,1,1,0],   #   N,  NE, SE, SW, W
        "5e" : [1,1,0,1,0,1,0,1],   #   N,  NE, SE, SW, NW
        "6a" : [1,1,1,1,1,1,0,0],   #   N,  NE, E,  SE, S,  SW
        "6c" : [1,1,1,1,1,0,1,0],   #   N,  NE, E,  SE, S,  W
        "6k" : [1,1,1,1,0,1,1,0],   #   N,  NE, E,  SE, SW, W
        "6e" : [1,1,1,1,0,1,0,1],   #   N,  NE, E,  SE, SW, NW
        "6n" : [1,1,1,0,1,1,1,0],   #   N,  NE, E,  S,  SW, W
        "6i" : [1,1,0,1,1,1,0,1],   #   N,  NE, SE, S,  SW, NW
        "7c" : [1,1,1,1,1,1,1,0],   #   N,  NE, E,  SE, S,  SW, W
        "7e" : [1,1,1,1,1,1,0,1],   #   N,  NE, E,  SE, S,  SW, NW
        "8"  : [1,1,1,1,1,1,1,1],   #   N,  NE, E,  SE, S,  SW, W,  NW
        }
    
    allneighbours = [  
        ["0"],
        ["1e", "1c"],
        ["2a", "2e", "2k", "2i", "2c", "2n"],
        ["3a", "3n", "3r", "3q", "3j", "3i", "3e", "3k", "3y", "3c"],
        ["4a", "4r", "4q", "4i", "4y", "4k", "4n", "4z", "4j", "4t", "4w", "4e", "4c"],
        ["5i", "5j", "5n", "5a", "5q", "5c", "5r", "5y", "5k", "5e"],
        ["6a", "6c", "6k", "6e", "6n", "6i"],
        ["7c", "7e"],
        ["8"],
        ]
        
    allneighbours_flat = [n for x in allneighbours for n in x]
    
    numneighbours = len(notationdict)
    
    # Use dict to store rule elements, initialised by setrule():
    bee = {}
    ess = {}
    alphanumeric = ""
    rulename = ""
    
    # Save the isotropic rule
    def saveAllRules(self):    
        self.saveIsotropicRule()
    
    # Interpret birth or survival string
    def ruleparts(self, part):

        inverse = False
        nlist = []
        totalistic = True
        rule = { k: False for k, v in self.notationdict.iteritems() }
        
        # Reverse the rule string to simplify processing
        part = part[::-1]
        
        for c in part:
            if c.isdigit():
                d = int(c)
                if totalistic:
                    # Add all the neighbourhoods for this value
                    for neighbour in self.allneighbours[d]:
                        rule[neighbour] = True
                elif inverse:
                    # Add all the neighbourhoods not in nlist for this value
                    for neighbour in self.allneighbours[d]:
                        if neighbour[1] not in nlist:
                            rule[neighbour] = True
                else:
                    # Add all the neighbourhoods in nlist for this value
                    for n in nlist:
                        neighbour = c + n
                        if neighbour in rule:
                            rule[neighbour] = True
                        else:
                            # Error
                            return {}
                    
                inverse = False
                nlist = []
                totalistic = True

            elif (c == '-'):
                inverse = True

            else:
                totalistic = False
                nlist.append(c)
        
        return rule

    # Set isotropic, non-totalistic rule
    # Adapted from Eric Goldstein's HenselNotation->Ruletable(1.3).py
    def setrule(self, rulestring):
    
        # neighbours_flat = [n for x in neighbours for n in x]
        b = {}
        s = {}
        sep = ''
        birth = ''
        survive = ''
        
        rulestring = rulestring.lower()
        
        if '/' in rulestring:
            sep = '/'
        elif '_' in rulestring:
            sep = '_'
        elif (rulestring[0] == 'b'):
            sep = 's'
        else:
            sep = 'b'
        
        survive, birth = rulestring.split(sep)
        if (survive[0] == 'b'):
            survive, birth = birth, survive
        survive = survive.replace('s', '')
        birth = birth.replace('b', '')
        
        b = self.ruleparts(birth)
        s = self.ruleparts(survive)

        if b and s:
            self.alphanumeric = 'B' + birth + 'S' + survive
            self.rulename = 'B' + birth + '_S' + survive
            self.bee = b
            self.ess = s
        else:
            # Error
            g.note("Unable to process rule definition.\n" +
                    "b = " + str(b) + "\ns = " + str(s))
            g.exit()
            

    # Save a rule file:
    def saverule(self, name, comments, table, colours):
        
        ruledir = g.getdir("rules")
        filename = ruledir + name + ".rule"

        global results
	results = ""
        results += table

        # Only create a rule file if it doesn't already exist; this avoids
        # concurrency issues when booting an instance of apgsearch whilst
        # one is already running.
        

    # Defines a variable:
    def newvar(self, name, vallist):

        line = "var "+name+"={"
        for i in xrange(len(vallist)):
            if (i > 0):
                line += ','
            line += str(vallist[i])
        line += "}\n"

        return line

    # Defines a block of equivalent variables:
    def newvars(self, namelist, vallist):

        block = "\n"

        for name in namelist:
            block += self.newvar(name, vallist)

        return block

    def scoline(self, chara, charb, left, right, amount):

        line = str(left) + ","

        for i in xrange(8):
            if (i < amount):
                line += chara
            else:
                line += charb
            line += chr(97 + i)
            line += ","

        line += str(right) + "\n"

        return line

    def isotropicline(self, chara, charb, left, right, n):

        line = str(left) + ","
        neighbours = self.notationdict[n]
        
        for i in xrange(8):
            if neighbours[i]:
                line += chara
            else:
                line += charb
            line += chr(97 + i)
            line += ","

        line += str(right) + "\n"

        return line
        
    def saveIsotropicRule(self):
    
  

        table = """"""

        for n in self.allneighbours_flat:
            if self.bee[n]:
                table += "1"
	    else:
		table += "0"

        for n in self.allneighbours_flat:
            if self.ess[n]:
                table += "1"
	    else:
		table += "0"
        
        colours = ""
	comments = ""
        self.saverule(self.rulename, comments, table, colours)

rulestring = g.getstring("Enter rule string in Alan Hensel's isotropic rule notation", 
                         "B2-a/S12")

rg = RuleGenerator()

rg.setrule(rulestring)
rg.saveIsotropicRule()
g.setrule(rulestring)

# g.show(results)
p=0

j=0
ships=["b2o$obo$2bo!", "b3o$o2bo$3bo$3bo$obo!"]
y=["000002202112211222220222222222222202222222222222222200112222211212222222222022222222222222222222222222", "000002002122211222222222222222222220222222222222022020211122111211222202222222220222022222022220202222"]
for z in range(len(y)):
    p = 0
    for x in range(len(results)):
        if (results[x] == "1" and y[z][x] == "0") or (results[x] == "0" and y[z][x] == "1"):
	    # g.show(rg.rulename + "False")
	    p = 1

    if p ==0:
	# g.show(rg.rulename + "True")
	g.setclipstr(ships[z])
	g.paste(j,0,"or")
	j+=30
The code is very unoptimized, but it works. You input new spaceships by putting the RLE in a string in the top list, and the string corresponding to the rule in the bottom. The bottom rule string is what you get when you take each transition in the order below, and for each transition, put a 0 if it is not allowed, a 1 if it is required, or a 2 if it does not matter.

Code: Select all

        ["0"],
        ["1e", "1c"],
        ["2a", "2e", "2k", "2i", "2c", "2n"],
        ["3a", "3n", "3r", "3q", "3j", "3i", "3e", "3k", "3y", "3c"],
        ["4a", "4r", "4q", "4i", "4y", "4k", "4n", "4z", "4j", "4t", "4w", "4e", "4c"],
        ["5i", "5j", "5n", "5a", "5q", "5c", "5r", "5y", "5k", "5e"],
        ["6a", "6c", "6k", "6e", "6n", "6i"],
        ["7c", "7e"],
        ["8"]
I will work on a script to make additions a bit easier if anyone is interested.
Last edited by AforAmpere on July 4th, 2018, 10:41 am, edited 1 time in total.
I manage the 5S project, which collects all known spaceship speeds in Isotropic Non-totalistic rules. I also wrote EPE, a tool for searching in the INT rulespace.

Things to work on:
- Find (7,1)c/8 and 9c/10 ships in non-B0 INT.
- EPE improvements.

User avatar
Majestas32
Posts: 549
Joined: November 20th, 2017, 12:22 pm
Location: 'Merica

Re: Thread for basic non-CGOL questions

Post by Majestas32 » July 4th, 2018, 1:16 am

YASSSS
Searching:
b2-a5k6n7cs12-i3ij4k5j8
b2-a3c7cs12-i

Currently looking for help searching these rules.

Post Reply