Extended Generations: Difference between revisions

From LifeWiki
Jump to navigation Jump to search
added links and categories
Confocal (talk | contribs)
 
(5 intermediate revisions by 3 users not shown)
Line 5: Line 5:


==Description==
==Description==
Extended Generations rules are described by [[rulestring]]s in the form Bb/Ss/Dd; where b and s are numbers between 0 - 8. The last segment, d, specifies ranges of activity/inactivity, starting with the former and then alternating.
Extended Generations rules are described by [[rulestring]]s in the form B''b''/S''s''/D''d''; where ''b'' and ''s'' are numbers between 0 - 8. The last segment, ''d'', specifies ranges of activity/inactivity, starting with the former and then alternating.


We write n ∈ B, n ∈ S if n is one of the numbers in b, s; patterns then evolve according to the following rules:
We write ''n'' ∈ ''B'', ''n'' ∈ ''S'' if ''n'' is one of the numbers in ''b'', ''s''; patterns then evolve according to the following rules:


# An active cell
# An active cell:
## Remain in its current state if n ∈ S
## remains in its current state if ''n'' ∈ ''S'';
## If not, it advances to state ((x + 1) mod y) in the next generation of the pattern where x is the current state and y is the total number of states.
## advances to state ((''x'' + 1) mod ''y'') in the next generation of the pattern otherwise, where ''x'' is the current state of the cell and ''y'' is the total number of states in the rule
# An inactive cell
# An inactive cell:
## Advances to state ((x + 1) mod y) in the next generation of the pattern where x is the current state and y is the total number of states. I behaves like a normal [[Generations]] dying cell.
## advances to state ((''x'' + 1) mod ''y'') in the next generation of the pattern otherwise, where ''x'' is the current state and ''y'' is the total number of states, i.e. behaves like a normal [[Generations]] dying cell.
# A dead cell
# A dead cell:
## Advances to state 1 if n ∈ B.
## advances to state 1 if ''n'' ∈ B;
## If not, it remains dead.
## remains dead otherwise.


[[Generations]] and snoitareneG<ref name="thread2939"/><ref name="thread372"/><ref name="post44058"/> can be considered subsets of the Extended Generations rulespace.<ref name="post62255"/>
[[Generations]] and snoitareneG<ref name="thread2939"/><ref name="thread372"/><ref name="post44058"/> can be considered subsets of the Extended Generations rulespace.<ref name="post62255"/>


==Software support==
==Software support==
Extended Generations rules are not natively supported by either [[Golly]] or [[LifeViewer]], but can be run using the Golly's [[RuleLoader]] algorithm and a suitable rule table. [[Catagolue]] and [[apgsearch]] also support Extended Generations rules.
Extended Generations rules are not natively supported by either [[Golly]] or [[LifeViewer]] (support is planned for the latter),<ref name="post68691" /> but can be run with a suitable ruletable on either. [[Catagolue]] and [[apgsearch]] natively support Extended Generations rules.<ref>{{cite web|url=https://gitlab.com/apgoucher/apgmera/-/commit/a5812bb36a3f2d40b7fbf630f90546bbf1bf1fe4|title=Native support for Extended Generations and Deficient rules courtesy of M. I. Wright|author=Adam P. Goucher|date=January 15, 2019|work=GitLab}}</ref>


==References==
==References==
Line 54: Line 54:
|author = M. I. Wright
|author = M. I. Wright
|date  = August 1, 2018
|date  = August 1, 2018
}}</ref>
<ref name="post68691">{{LinkForumThread
|format = ref
|title  = Re: Pattern viewer for forum threads
|p      = 68691
|author = Chris Rowett
|date  = January 26, 2019
}}</ref>
}}</ref>
</references>
</references>
Line 60: Line 67:
[[Category:Cellular automata]]
[[Category:Cellular automata]]
[[Category:Generations| ]]
[[Category:Generations| ]]
[[Category:Multistate rules]]

Latest revision as of 14:59, 7 March 2023

Extended Generations rules are a generalization of Generations rules. This extension explores the result of changing the amounts of time cells can be active/inactive for, and also of allowing cells to "come back" from inactivity and alternate between being active/inactive an indefinite amount of times before dying.

They were conceived by users DigitalCross and later Milo Jacquet.[1]

Description

Extended Generations rules are described by rulestrings in the form Bb/Ss/Dd; where b and s are numbers between 0 - 8. The last segment, d, specifies ranges of activity/inactivity, starting with the former and then alternating.

We write n ∈ B, n ∈ S if n is one of the numbers in b, s; patterns then evolve according to the following rules:

  1. An active cell:
    1. remains in its current state if n ∈ S;
    2. advances to state ((x + 1) mod y) in the next generation of the pattern otherwise, where x is the current state of the cell and y is the total number of states in the rule
  2. An inactive cell:
    1. advances to state ((x + 1) mod y) in the next generation of the pattern otherwise, where x is the current state and y is the total number of states, i.e. behaves like a normal Generations dying cell.
  3. A dead cell:
    1. advances to state 1 if n ∈ B;
    2. remains dead otherwise.

Generations and snoitareneG[2][3][4] can be considered subsets of the Extended Generations rulespace.[1]

Software support

Extended Generations rules are not natively supported by either Golly or LifeViewer (support is planned for the latter),[5] but can be run with a suitable ruletable on either. Catagolue and apgsearch natively support Extended Generations rules.[6]

References

  1. ↑ 1.0 1.1 M. I. Wright (August 1, 2018). "Extended" Generations rules (discussion thread) at the ConwayLife.com forums
  2. ↑ Saka (July 2, 2017). snoitareneG Rules (discussion thread) at the ConwayLife.com forums
  3. ↑ Martin Grant (April 10, 2010). "Reverse Generations" Rules (discussion thread) at the ConwayLife.com forums
  4. ↑ Brian Prentice (June 4, 2017). Re: Thread for basic questions (discussion thread) at the ConwayLife.com forums
  5. ↑ Chris Rowett (January 26, 2019). Re: Pattern viewer for forum threads (discussion thread) at the ConwayLife.com forums
  6. ↑ Adam P. Goucher (January 15, 2019). "Native support for Extended Generations and Deficient rules courtesy of M. I. Wright". GitLab.