Transitions, conditions, and transition rules

For general discussion about Conway's Game of Life.
Post Reply
User avatar
H. H. P. M. P. Cole
Posts: 486
Joined: July 15th, 2023, 9:36 pm

Transitions, conditions, and transition rules

Post by H. H. P. M. P. Cole »

Here are intuitive definitions of the terms 'transition', 'condition', and 'transition rule' that have been in use. Please let me know if these definitions could be clearer in any way.

A transition is an ordered pair (current cellstate, new cellstate). There are n^2 possible transitions in a n-state rule. If one requires the two cellstates to be different, like in the dictionary definition for 'transition', there are n^2-n such ordered pairs.

For example, the 2^2 = 4 transitions in a 2-state rule are

Code: Select all

0 -> 0   0 -> 1   1 -> 0   1 -> 1
In the expanded B/S notation created by Tropyllium in 2011, the four transitions are called A (abstain), B (birth), D (death), and S (survival) respectively. Using the stronger definition only B and D would properly be called transitions.

A condition is a specification of the current states of cells in some cell's neighbourhood, under some equivalence class. For example, one can write:
- 'B3' to denote the condition "the cell is currently dead and has exactly three alive neighbours and all its other neighbours are dead"
- 'S3' to denote the condition "the cell is currently alive and has exactly three alive neighbours and all its other neighbours are dead".

The digit '3' can denote the condition "the cell has three alive neighbours and all its other neighbours are dead".
Using Hensel notation, one can write 'S4c' to denote the condition "the cell is currently alive and it has four alive neighbours, all diagonally adjacent to the cell, and four dead neighbours, all orthogonally adjacent to the cell".

A transition rule is a combination of a condition and a transition: simply an ordered pair (c; t) where c is the condition and t is the transition.
It is possible to define a cellular automaton by writing down a set of transition rules, such that for every condition that can possibly occur, the set of transition rules contains exactly one rule that "matches" that condition. In other words, the transition rules must cover all possible scenarios and leave no ambiguity or contradictions.

EDIT: request by rowett
EDIT2: described S4c better
Last edited by H. H. P. M. P. Cole on June 2nd, 2024, 1:57 am, edited 6 times in total.
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

[...] A transition rule is a combination of a condition and a transition: simply an ordered pair (c; t) where c is the condition and t is the transition. [...]
An example of a transition rule is:

"A cell is born in the next generation if it is currently dead and has three alive neighbours"

In this case, the condition is "[the middle cell] is currently dead and has three alive neighbours", and the transition is "[the middle cell] is born in the next generation".

Intuitively, the rule prescribes that a certain transition will happen whenever a certain condition is met.
[...] It is possible to define a cellular automaton by writing down a set of transition rules, such that for every condition that can possibly occur, the set of transition rules contains exactly one rule that "matches" that condition. In other words, the transition rules must cover all possible scenarios and leave no ambiguity or contradictions.
For example, LFoD (rulestring B2/S0) can be defined by writing down the following transition rules:
  • A cell is born in the next generation, if it is currently dead and has (exactly) two alive neighbours.
  • A cell stays alive in the next generation, if it is currently alive and does not have any alive neighbours.
  • If a cell is currently dead and the number of its alive neighbours is not 2, then the cell remains dead in the next generation.
  • If a cell is currently alive and has at least one alive neighbour, then the cell dies in the next generation.
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Transitions, conditions, and transition rules

Post by rowett »

I don't like the phrases "the middle cell" or "the central cell" since there are several neighborhoods where this is not correct. I'd rather talk about the cell and the cells in its neighborhood. Perhaps the conditions need to be clearer on the neighborhood specification (outer totalistic vs totalistic vs isotropic non-totalistic vs non-totalistic).

How would you document the conditions for a MAP rule?
User avatar
H. H. P. M. P. Cole
Posts: 486
Joined: July 15th, 2023, 9:36 pm

Re: Transitions, conditions, and transition rules

Post by H. H. P. M. P. Cole »

rowett wrote: May 29th, 2024, 7:55 am I don't like the phrases "the middle cell" or "the central cell" since there are several neighborhoods where this is not correct. I'd rather talk about the cell and the cells in its neighborhood. Perhaps the conditions need to be clearer on the neighborhood specification (outer totalistic vs totalistic vs isotropic non-totalistic vs non-totalistic).

How would you document the conditions for a MAP rule?
We can just remove designations of the 'middle cell' and just discuss conditions as descriptions of the cell's current state and the states of the cells in it's neighbourhood, under some equivalence class.

I have edited the definitions above. Thanks!
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

rowett wrote: May 29th, 2024, 7:55 am I don't like the phrases "the middle cell" or "the central cell" since there are several neighborhoods where this is not correct. I'd rather talk about the cell and the cells in its neighborhood. [...]
Yes, some examples are "unbalanced" or asymmetric neighbourhoods like this:

Code: Select all

x = 1, y = 1, rule = R1,C0,S1,B1,N@07
o!
Here there are three neighbors. The rulestring uses the custom neighbourhood notation, which allows defining outer-totalistic cellular automata.
In this rulespace (two cellstates, outer-totalistic, neighbourhood N@07) there are 8 distinguishable fully specified conditions (B0, B1, B2, B3, S0, S1, S2, S3), and 2^8 cellular automata that can be defined by choosing the future state of "the" cell for every fully specified condition.
rowett wrote: May 29th, 2024, 7:55 am [...] Perhaps the conditions need to be clearer on the neighborhood specification (outer totalistic vs totalistic vs isotropic non-totalistic vs non-totalistic). [...]
In general, a condition provides some information about the current states of cells. Some information can be omitted. The "rulespace under investigation" determines which information can be included in a condition.

For simplicity, until the end of this post, assume the square grid, the range-1 Moore neighbourhood, and two cellstates. Here are some examples:
  • In the outer-totalistic rulespace [with the above properties], there are 18 distinguishable fully specified conditions (the birth conditions B0 through B8 and the survival conditions S0 through S8), and there are 2^18 cellular automata, each of which can be defined by choosing the future state of "the" cell for each of those 18 conditions.
    Saying or writing down "the cell currently has exactly three alive neighbours" also gives a condition, but this condition is not fully specified (for this rulespace): the current state of "the" cell is left unspecified. This condition is the logical disjunction ("OR") of two conditions: B3, S3.
    Saying or writing down "the cell is currently alive and has at least four alive neighbours" also gives a condition. Again, it is not fully specified (for this rulespace); it is the logical disjunction of five conditions: S4, S5, S6, S7, S8.
  • In the totalistic rulespace ("pure-totalistic"), there are only 10 fully specified conditions (distinguishable by the total number of alive cells in the 3-by-3 neighbourhood), and there are 2^10 totalistic CA.
    As long as one is staying in this rulespace, it is impossible to distinguish the situation "the cell is currently dead and has exactly three alive neighbours" from the situation "the cell is currently alive and has exactly two alive neighbours": the two situations are considered the same condition.
  • In the isotropic rulespace (cellular automata definable using Hensel notation), there are 102 distinguishable fully specified conditions, and there are 2^102 isotropic CA.
    The condition "the cell is currently dead and has exactly three alive neighbours" is still valid, but it is not fully specified (for this rulespace): the configuration of the three alive neighbours is left unspecified and unrestricted. This condition is the logical disjunction of ten fully specified conditions: B3c, B3e, B3k, B3a, B3i, B3n, B3y, B3q, B3j, B3r.
  • In the full "two-state R1 Moore" rulespace, there are 2^9 = 512 distinguishable fully specified conditions, and there are 2^512 definable cellular automata. Every such CA can be defined by a MAP rulestring, or alternatively by a RuleLoader ruletable with

    Code: Select all

    @TABLE
    n_states:2
    neighborhood:Moore
    symmetries:none
    The condition "the cell is currently dead and has exactly three alive neighbours" still remains valid, but it is not fully specified (for this rulespace): the configuration of the three alive neighbours is left unspecified and unrestricted. This condition is the logical disjunction of 56 fully specified 3-by-3 conditions.
rowett wrote: May 29th, 2024, 7:55 am [...] How would you document the conditions for a MAP rule?
Linking to a relevant discussion: viewtopic.php?f=11&t=6470 "Human-readable alternative to base64-encoded MAP rulestrings?"
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Transitions, conditions, and transition rules

Post by rowett »

confocaloid wrote: May 29th, 2024, 10:19 am
rowett wrote: May 29th, 2024, 7:55 am [...] How would you document the conditions for a MAP rule?
Linking to a relevant discussion: viewtopic.php?f=11&t=6470 "Human-readable alternative to base64-encoded MAP rulestrings?"
That wasn't my point. I was trying to understand the relevance and usage of the proposed terminology.

The transition is trivial (at least for 2 state rules), the condition upon which that transition happens gets increasingly complex based on the rule type. For a MAP rule we'd need to say for each of the four transitions (0 -> 0, 0 -> 1, 1 -> 0, 1 -> 1) the list of conditions that applied, where a condition in this case would the index of the relevant bit number in the MAP string.
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

rowett wrote: May 29th, 2024, 12:21 pm [...] I was trying to understand the relevance and usage of the proposed terminology. [...]
An explanation or discussion of some topic of one's choice might not need all the terminology simultaneously. However, when switching from one topic to another topic, the underlying ideas / concepts remain the same.
The terminology is intended to help intuitive understanding, by keeping the meanings of words and phrases sufficiently close to their expected meanings. (E.g., transitions can happen; conditions can be met; rules prescribe something and can be followed.)

I think it's important that a reader will not need to change the underlying model they have in mind back and forth, when they are reading about different topics. That is possible as long as the underlying model always stays the same and is explained consistently, regardless of what is considered "most interesting" or "nontrivial" in any particular context.
  • Sometimes the main questions are about transitions, and so most of the discussion will involve transitions. (See an example at the end of this post.)
  • For other topics, focusing on [sets of] conditions may be the most natural approach. (For example, the "birth/survival" rulestring notation can be understood by unpacking it as a set of living conditions. The rulestring 'B3/S23' can be unpacked as the set {B3, S2, S3}.)
  • In another situation, the simplest explanation would talk about transition rules. (For example, RuleLoader ruletables are essentially lists of transition rules, chained together into an equivalent of "if...elseif...elseif...else" chains.)
rowett wrote: May 29th, 2024, 12:21 pm[...]
The transition is trivial (at least for 2 state rules), the condition upon which that transition happens gets increasingly complex based on the rule type. For a MAP rule we'd need to say for each of the four transitions (0 -> 0, 0 -> 1, 1 -> 0, 1 -> 1) the list of conditions that applied, where a condition in this case would the index of the relevant bit number in the MAP string.
The MAP rulestring notation defines two-state R1 Moore CA. Here it would suffice to list conditions for two out of four transitions (e.g. birth and survival; or alternatively birth and death).

In cases such as generating and testing pseudorandom rulesets, the MAP notation is probably the single most compact notation that exists. This notation can be used to define an arbitrary CA from the rulespace, and the rulestrings never become "unreasonably long".

However, many CA with intuitively understandable rules aren't really pseudorandom. For those, there can be simpler definitions via other notations (weighted neighbourhoods, custom neighbourhoods, Swedish notation, RuleLoader ruletables, ...)

With ruletables, conditions can be specified partially (using variables), which can lead to simplifications (e.g. merging several transition rules where current states of some neighbours do not affect the state of the cell in the next generation).

With weighted neighbourhoods (NW...), the conditions can tell the current state of the cell and the weighted sum over all neighbours. (The cell weight is multiplied by the state weight for every neighbour, and the results are added together.) This notation allows human-understandable definitions for some non-isotropic range-1 CA. It also allows defining some higher-range isotropic non-totalistic CA. (An additional example: link.)
rowett wrote: May 29th, 2024, 12:21 pm[...]
The transition is trivial (at least for 2 state rules), [...]
In my opinion, it becomes quite interesting to think about different possible transitions, when there are three or more cellstates. For example, consider three-state cellular automata with the following properties:
  • A state-0 cell never changes to state 2 in the next generation; it either goes to state 1 or remains in state 0.
  • A state-1 cell never remains in state 1 in the next generation; it either goes to state 0 or goes to state 2.
  • A state-2 cell never changes to state 1 in the next generation; it either goes to state 0 or remains in state 2.
Note that all of the above properties speak only about allowed transitions.
The resulting rulespace can be understood if the cellstates are named as follows: 0 = dead cell, 1 = newborn alive cell, 2 = old alive cell. The effect of the restrictions is that every alive cell correctly "remembers" whether it was alive or dead in the preceding generation.
All allowed transitions in a rulespace can be packed in a table, with rows for the current state of a cell and columns for the state of the cell in the next generation:

Code: Select all

  | 0 1 2 |
--+-------+
0 | + + - |
1 | + - + |
2 | + - + |
--+-------+
+ : the transition is allowed in the rulespace
- : the transition is forbidden in the rulespace
With more cellstates, there are more "interesting" rulespaces that can be obtained by forbidding some transitions while leaving other transitions allowed. One can proceed to enumerate all possible rulespaces that can be obtained in this way, and classify them further. This feels like an interesting line of exploration.

Even with just two cellstates, there are already "interesting" restrictions of this kind. Forbidding the transition 1 -> 0 leads to the rulespace where no alive cell ever dies; OCA:Life without death and OCA:H-trees are examples. Forbidding the transition 1 -> 1 instead leads to the rulespace where every alive cell dies in the next generation; OCA:Seeds is an example.
User avatar
H. H. P. M. P. Cole
Posts: 486
Joined: July 15th, 2023, 9:36 pm

Re: Transitions, conditions, and transition rules

Post by H. H. P. M. P. Cole »

rowett wrote: May 29th, 2024, 7:55 am Here it would suffice to list conditions for two out of four transitions (e.g. birth and survival; or alternatively birth and death).
Indeed, it would only suffice to list out six out of nine transitions in 3 states when one is describing a 3-state rule, and in general, n^2-n transitions out of n^2 when one is describing a n-state rule.
confocaloid wrote: May 29th, 2024, 3:55 pm With more cellstates, there are more "interesting" rulespaces that can be obtained by forbidding some transitions while leaving other transitions allowed. One can proceed to enumerate all possible rulespaces that can be obtained in this way, and classify them further. This feels like an interesting line of exploration.
There are exactly (2^n-1)^n such rulespaces in n states.

In addition, there are exactly n^n inner-totalistic CA with n states. I mention them because these CA have all their transition rules of the form:

(initial cellstate; initial cellstate->final cellstate)

and in this case the condition would probably be redundant in defining transition rules in this class of CA.
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

H. H. P. M. P. Cole wrote: May 29th, 2024, 2:49 am Here are definitions of the terms 'transition', 'condition', and 'transition rule' that I and confocaloid have written. Please let me know if these definitions could be clearer in any way. [...]
rowett wrote: May 29th, 2024, 12:21 pm [...] I was trying to understand the relevance and usage of the proposed terminology. [...]
confocaloid wrote: May 29th, 2024, 3:55 pm[...]
The terminology is intended to help intuitive understanding, by keeping the meanings of words and phrases sufficiently close to their expected meanings. (E.g., transitions can happen; conditions can be met; rules prescribe something and can be followed.)

I think it's important that a reader will not need to change the underlying model they have in mind back and forth, when they are reading about different topics. [...]
To avoid misunderstanding, I'd like to clarify that this terminology is old. It is not created by someone on these forums. The wider Life/CA community uses the same words and phrases to refer to the same ideas.

So it's not quite correct to refer to this as "proposed terminology" -- the terminology is already in use.

Below I'm crossposting links to some sources (and to forum posts with more links/quotes). Those sources are CA-related, and use 'condition', 'transition rule', 'transition', 'rule' to refer to the same ideas.
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

partial crosspost
confocaloid wrote: June 9th, 2024, 5:12 am[...]
dvgrn wrote: June 8th, 2024, 11:00 am [...] The rest of the time, it refers to something significantly different -- often an entire composite CA rule, not just one elementary piece of it. [...]
I disagree with "significantly different".

Intuitively, it remains the same idea. A transition rule is a way to prescribe how the cellular automaton behaves. The same intuition continues to work, whether there's just a single transition rule covering all possibilities, or whether there's a set of transition rules covering all possible situations without ambiguities or contradictions.

Logically, using just a single transition rule can be viewed as an extension of the same idea. When a transition rule is the "entire composite CA rule", it can also be decomposed into a condition and a transition. In this case, the condition becomes completely unspecified (and therefore the condition is always met, regardless of the states of any cells in the current generation), and the transition that happens is determined by evaluating a function taking the current states of some cells as inputs.

For example, Conway's Game of Life can be written as a single transition rule:
(an example of writing CGoL as a single transition rule) wrote: If (the cell's current state is c) and (the number of alive neighbours of the cell is n)
then the transition f(c, n) will happen in the next tick.

Code: Select all

def f(c, n):
   if n == 3:
      return (c, 1)
   if (c == 1) and (n == 2):
      return (1, 1)
   return (c, 0)
[...]
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
dakra
Posts: 3
Joined: June 21st, 2010, 6:03 pm

Re: Transitions, conditions, and transition rules

Post by dakra »

Consider these Conway's-Life-equivalent rules which determine the next generation state. They use the count of all living cells in a 3x3 block, meaning a cell and its immediate neighbors:
  • 3 -> ALIVE
  • 4 -> STAY AS IS
  • Otherwise -> DEAD
Note that these are future state rules, not action rules, such as BeBorn and Die.

How do they fit into this scheme?
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

dakra wrote: August 20th, 2024, 3:34 am Consider these Conway's-Life-equivalent rules which determine the next generation state. They use the count of all living cells in a 3x3 block, meaning a cell and its immediate neighbors:
  • 3 -> ALIVE
  • 4 -> STAY AS IS
  • Otherwise -> DEAD
In general, a condition provides some information about the current states of cells. Some information can be omitted.
A transition includes the current state of a cell and the state of the same cell in the next generation.
A rule (a transition rule) essentially tells that a certain transition happens when a certain condition is met.

What does that mean in this case?

The first rule (in the quoted post above) specifies the condition "the cell's neighbourhood currently contains exactly three alive cells".
The transition is prescribed implicitly, as a function of the current state of the cell. The part "-> ALIVE" means that if the cell is currently alive then it survives (so the transition is 1 -> 1) and if the cell is currently dead then it is born (so the transition is 0 -> 1).
In other words, the first rule prescribes the transition "c -> 1" where c denotes the current state of the middle cell of the 3-by-3 neighbourhood.

Second rule specifies the condition "the cell's neighbourhood currently contains exactly four alive cells", and prescribes the transition "c -> c" where c denotes the current state of the middle cell of the 3-by-3 neighbourhood.

(Accounting for the context of "Otherwise",) third rule specifies the condition "the number of alive cells in the neighbourhood is currently neither 3 nor 4", and prescribes the transition "c -> 0" where c denotes the current state of the middle cell of the 3-by-3 neighbourhood.

---

Another possibility is to pack all rules into a single rule, which is sometimes (not always) more illuminating. In this case, one can write the following pseudocode:

Code: Select all

function f(c, n) :=
  if n == 3 then 1
  else if n == 4 then c
  else 0
end
- and say that this function defines the evolution rule (with c denoting the current state of the cell and n denoting the number of alive cells in its 3-by-3 neighbourhood).
In this case, the condition is trivial (it's always met, regardless of the current states of any cells), and the transition is "c -> f(c, n)".
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
R2INT
Posts: 939
Joined: July 2nd, 2024, 7:42 pm

Re: Transitions, conditions, and transition rules

Post by R2INT »

confocaloid wrote: March 12th, 2025, 12:01 pm In my view, it is counterproductive to follow the current state of the wiki on this. In this case, following the wiki causes significant confusion, and misses opportunities for explaining related topics in ways that would be significantly clearer and would better agree with (expected) common sense/intuition/expectations of a reader.

I don't see a reason to avoid attempting to explain things better than the wiki currently attempts to.

Neighbourhood configurations don't happen and can't possibly happen. They are just giving the current states of a cell and its neighbours.
It is both technically incorrect and very confusing to use the word 'transition' to refer to a neighbourhood configuration.

In general, sources seem to use the word 'transition' (by itself) only when it refers to "something that happens or can happen".
Let us not derail that thread related to the debate about transitions and transition rules. See also the following LifeWiki page: Transition_(disambiguation). The last time this was edited was in the year 2025.
confocaloid wrote: March 12th, 2025, 12:01 pm The following is my understanding of the (previously existing) concepts and terms. This is my attempt to give a summary of what can be found in multiple CA-related sources, including but not limited to those within the local community around these forums.
  • "CA" is an abbreviation for "cellular automaton" (plural "cellular automata").
  • In the context of evolving CA patterns, the word 'transition' is used to refer to any single cell either changing its state or remaining in the same state in the next generation. For example, in a CA with two cellstates (0 = dead, 1 = alive) and with rules written in terms of "looking at current states of a cell and its neighbours", there can be only four possible transitions, namely:
    • 0-to-0 (the cell is currently dead and will remain dead in the next generation),
    • 0-to-1 (the cell is currently dead and will become alive in the next generation; birth),
    • 1-to-0 (the cell is currently alive and will become dead in the next generation; death),
    • 1-to-1 (the cell is currently alive and will remain alive in the next generation; survival).
    (There can be fewer, if the rules of the CA are such that some of the transitions can never happen. For example, there are no survivals in B2/S "Seeds".
    In a CA with three or more cellstates, of course there can be more distinct transitions.)
Here is a LifeWiki page that agrees with my definition of 'transition': Transition_(rule_definition)
confocaloid wrote: March 12th, 2025, 12:01 pm [*] In the context of writing down the rules of a CA, either the word 'rule' or the phrase 'transition rule' is used to refer to a rule naturally expressed in an "if-then" fashion:
"If the current states of a cell and its neighbours satisfy such-and-such conditions,
then the cell will be in such-and-such future state in the next generation".
For example, again assuming two cellstates (dead and alive) and the (range-1) Moore neighbourhood, each of the following would be a rule (or a transition rule):
  • "B3": if the cell is currently dead and has precisely three currently-alive neighbours, then the cell will become alive in the next generation.
  • "S2n": if the cell is currently alive and has precisely two currently-alive neighbours which are diagonal neighbours located opposite each other, then the cell will remain alive in the next generation.
  • "D8": if the cell is currently alive and has eight currently-alive neighbours, then the cell will become dead in the next generation.
  • "A8": if the cell is currently dead and has eight currently-alive neighbours, then the cell will remain dead in the next generation.
[*] In the context of defining (writing down) the rules of a CA, the word 'condition' is used to refer to the part of a rule which is given between "if" and "then". This is also consistent with terminology used for similar "if-then" rules in other contexts.
[/list]
R2INT wrote: March 12th, 2025, 9:43 am [...] Other than that, I was attempting to use neighborhood configurations for clarity.

According to the LifeWiki table on isotropic rules (Higher-range_isotropic_non-totalistic_rule), the LifeWiki uses transitions to describe the possible neighborhood configurations (in my context). Here, there are 104 transitions if the LifeWiki's measuring system is used.
confocaloid wrote: March 11th, 2025, 9:49 pmThis comes across as completely unnecessary obscurity. I'm complaining about unnecessarily confusing and counterintuitive attempts at explanations, which fail to explain the topic, fail to explain to the reader why the topic is interesting at all and how it makes any sense [the topic is indeed interesting and deserves a clearer explanation], and also fail to agree with how previously mentioned Life/CA-related sources use terminology.
confocaloid wrote: October 18th, 2024, 10:18 am [...] the terminology isn't mine. For example here are links to several sources (incomplete):
[...]
https://web.archive.org/web/20230928182 ... ary_03.htm
https://conwaylife.com/w/index.php?titl ... 314#Page_2
https://web.archive.org/web/20040323172 ... ndixA.html
[...]
viewtopic.php?p=171596#p171596
viewtopic.php?p=171671#p171671
viewtopic.php?p=172091#p172091
[...]
See also explainxkcd (as well as many other sources explaining CGoL and cellular automata): [...]
https://www.explainxkcd.com/wiki/index. ... did=350843 [...]
If absolutely necessary, here is my proposed definition that distinguishes between many of the terms provided. Feel free to revise this:
  • A ruleset, or a rule, is the set of all instructions for which the rule must follow. For example. B2eik3ain4art5aenr6eik/S02e3iqr4rz5aj6k would be defined as a ruleset
  • Instructions, or atoms, are the individual components of a rulestring. For example, B3, B4j, and S2c are all instructions. Note that this does include what happens to the state of the center cell.
  • Conditions could distinguish between the rules. For example, a dead cell with 3 live neighbors (often referred to as B3; there exist no convenient alternatives) would be referred to as a condition. Note that this does not include what happens to the cell.
  • Neighborhood configurations (or neighborhoods) can refer to the configuration of cells in the neighborhood of, but not including, the center cell. For example, in the instruction S6a, the surrounding configuration can be written as 6a
According to this definition, the INT rulespace contains 51 neighborhoods and 102 instructions or atoms. Similarly, there are 104 neighborhoods and 208 instructions or atoms in the LxINT rulespace

Continued meta-discussion can and does slow down new discoveries, because it distracts attention from the actual CA. Meta-discussion posts take much longer and more effort to write compared to posting and describing CA-related patterns (even if it took a lot of effort to make a large, notable, that does not mean it takes multiple paragraphs to describe the pattern.) When discovering a new rulespace, one should not have to re-define what transitions and neighborhood configurations are.

Due to time constraints, I cannot continue writing.
Range-2 INT
R2INT's Rule Collection

3-state rules are the final frontier.
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

R2INT wrote: March 12th, 2025, 4:18 pm [...] Here is a LifeWiki page that agrees with my definition of 'transition': Transition_(rule_definition) [...]
That page looks/reads as if it was written to defend one of several viewpoints on the issue (i.e. is biased).

Currently, the wiki page you linked to fails to adequately explain the existing terminology used in Life/CA-related discussion. It contains claims that are unsourced, contradict available relevant sources, and/or otherwise problematic. It also misses relevant information that needs to be included.
R2INT wrote: March 12th, 2025, 4:18 pm [...] If absolutely necessary, here is my proposed definition that distinguishes between many of the terms provided. Feel free to revise this: [...]
[...] When discovering a new rulespace, one should not have to re-define what transitions and neighborhood configurations are. [...]
I did not yet read your proposal carefully but I intend to read it later.

Almost nothing is absolutely necessary. However, it would certainly help to have well-understood shared language to discuss these topics, and such well-understood shared language should be internally consistent, it should be clearly defined, and it shouldn't contradict basic common sense of a curious reader who is trying to understand the ideas.

I wrote that I believe it is counterproductive to follow the current state of the wiki on this. The wiki pages currently contain traces of the disagreement on this question, and don't really contain any reasonably good explanation of the topics aimed at the reader. The current wiki coverage is unreliable.

Instead, I think it would be better to follow earlier existing Life/CA-related sources (texts, articles), which used what I consider a much clearer terminology to refer to the same concepts. Both the concepts and the terminology are still in use, and were in use for a long time (longer than these forums exist).
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

confocaloid wrote: March 12th, 2025, 4:40 pm [...] I did not yet read your proposal carefully but I intend to read it later. [...]
R2INT wrote: March 12th, 2025, 4:18 pm
confocaloid wrote: March 12th, 2025, 12:01 pm [...] I don't see a reason to avoid attempting to explain things better than the wiki currently attempts to.

Neighbourhood configurations don't happen and can't possibly happen. They are just giving the current states of a cell and its neighbours. [...]
If absolutely necessary, here is my proposed definition that distinguishes between many of the terms provided. Feel free to revise this:
  • A ruleset, or a rule, is the set of all instructions for which the rule must follow. For example. B2eik3ain4art5aenr6eik/S02e3iqr4rz5aj6k would be defined as a ruleset
  • Instructions, or atoms, are the individual components of a rulestring. For example, B3, B4j, and S2c are all instructions. Note that this does include what happens to the state of the center cell.
  • Conditions could distinguish between the rules. For example, a dead cell with 3 live neighbors (often referred to as B3; there exist no convenient alternatives) would be referred to as a condition. Note that this does not include what happens to the cell.
  • Neighborhood configurations (or neighborhoods) can refer to the configuration of cells in the neighborhood of, but not including, the center cell. For example, in the instruction S6a, the surrounding configuration can be written as 6a
According to this definition, the INT rulespace contains 51 neighborhoods and 102 instructions or atoms. Similarly, there are 104 neighborhoods and 208 instructions or atoms in the LxINT rulespace
[...]
"Neighbourhood" vs "neighbourhood configuration"

Linking related discussion: viewtopic.php?p=203681#p203681 viewtopic.php?p=203663#p203663

By itself, the word "neighbourhood" can be taken to mean "a specification of where the neighbours are located relative to a given cell, but without telling what are their current states".

Indeed, people are often referring to specific neighbourhoods such as the Moore neighbourhood, or the von Neumann neighbourhood, or the honeycomb neighbourhood on the hexagonal tiling. It is understood that such mentions only tell which cells are considered neighbours in a given context, but don't tell anything about any configuration/assignment of cellstates.

When your intent is to tell what are the current states of neighbours, I believe it is better to write "neighbourhood configurations" to clarify that.

"Individual components of a rulestring" misses the point, and may mislead users of the terminology

You are defining an instruction (or atom) by stating that it is an "individual component of a rulestring".
I believe such phrasing is problematic,
(a) because it is unclear and left unexplained what is meant by "individual components of a rulestring",
(b) because the mentioned idea is irrelevant to understanding the underlying concept hidden behind words 'instruction' or 'atom'.

If I understand your idea correctly, then you intend to be able to say (for example) that the character strings "B3a" and "B3i" denote two different instructions (or atoms) in the context of two-state isotropic CA with Moore neighbourhood. However, the character strings "B3a" and "B3i" fail to be substrings of the rulestring "B3/S234c" - even though both of those instructions (or atoms) belong in the ruleset defined by the rulestring "B3/S234c".

In short, I think defining rules (instructions, atoms) as "components of a rulestring" misses the idea, and can mislead users of the terminology. The underlying concept of an "if-then rule" (such that a set of such rules applying in every possible situation completely determines the behaviour of a CA) doesn't require any particular rulestring notation, or any other specific representation of the ruleset.

I think the instructions (atoms) can be simply viewed as elements of the ruleset. The ruleset is a set of all instructions (atoms).

All of B8, S8, D8, A8 are instructions

For clarity, I think it should be mentioned that the ruleset needs to include one and only one instruction for every possible case, so that all possible CA configurations can be evolved without any ambiguities or contradictions. That means for example (in the context of two-state isotropic CA with Moore neighbourhood) that each of B8, S8, A8, D8 is an instruction; precisely one of two instructions B8, A8 belongs in any given ruleset; and precisely one of two instructions S8, D8 belongs in any given ruleset.

"Instruction" vs "atom" vs "rule" vs "transition rule" vs "update rule" vs "if-then rule"

My opinion on these three:

In principle, either of them (or each of them) can be used as a defined term.

The word "instruction" seems to communicate the (correct and relevant) intuition of it providing detailed information about how CA configurations will evolve (how the cellular automaton operates).

The word "atom" seems to communicate the (correct and relevant) intuition of it being indivisible within this particular context, at least as long as there are additional clarifications in your definitions.

(How about defining an atom to be an indecomposable instruction? Then all atoms are instructions, but not all instructions are atoms.)
For example, to be able to correctly claim that "there are 204 atoms in the space of two-state isotropic cellular automata with range-1 Moore neighbourhood", you need to explicitly restrict the meaning of "atom" so that it refers to the "fully-specified and indivisible" instructions only. So you would still be able to see B3 as an instruction, but with understanding that it is decomposable into ten atoms which are B3c, B3e, B3k, B3a, B3i, B3n, B3y, B3q, B3j, B3r.

The other variants explicitly tell that they are "rules", which seems to communicate the (correct and relevant) intuition of it telling how the cellular automaton works.

Existing CA-related sources (web pages, books, publications, and so on)?

The choices "rule", "transition rule", "update rule" also have the significant advantage that the same terminology can be found in multiple already existing CA-related sources. Many other people used the same words/phrases to refer to the same concepts. This terminology is already in use.
confocaloid wrote: June 1st, 2024, 3:15 pm [...] To avoid misunderstanding, I'd like to clarify that this terminology is old. It is not created by someone on these forums. The wider Life/CA community uses the same words and phrases to refer to the same ideas.

So it's not quite correct to refer to this as "proposed terminology" -- the terminology is already in use.

Below I'm crossposting links to some sources (and to forum posts with more links/quotes). Those sources are CA-related, and use 'condition', 'transition rule', 'transition', 'rule' to refer to the same ideas.
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
hotdogPi
Moderator
Posts: 2296
Joined: August 12th, 2020, 8:22 pm

Re: Transitions, conditions, and transition rules

Post by hotdogPi »

This is a reply to the "other neighborhoods" thread, but it would be off topic in that thread.
confocaloid wrote: March 26th, 2025, 2:59 pm Can you explain convincingly why you believe they should be called "transitions"?
Because literally everyone except for you calls them that.
Attachments
Screenshot 2025-03-26 at 3.13.16 PM.png
Screenshot 2025-03-26 at 3.13.16 PM.png (180.01 KiB) Viewed 2964 times
User:HotdogPi/My discoveries

Periods discovered:

All evens ≤128 except 52,58,78,82,92,94,98,104,118,122

5-15,㉕-㉛,㉟㊺,51,63,65,73,75
1㊳㊵㊹㊼㊽,54,56,72,74,80,90,92
217,240,300,486,576

Guns: 20,21,32,54,55,57,114,117,124,126
SKOPs: 32,74,76,102,196
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

My preceding post here linked to several sources using terminology that actually makes sense.
There are lots of other relevant sources discussing/explaining CGoL/CA, also using the same or consistent terminology.

That contradicts your claim.
hotdogPi wrote: March 26th, 2025, 3:16 pm Because literally everyone except for you calls them that.
confocaloid wrote: March 14th, 2025, 1:46 pm [...]
Existing CA-related sources (web pages, books, publications, and so on)?

The choices "rule", "transition rule", "update rule" also have the significant advantage that the same terminology can be found in multiple already existing CA-related sources. Many other people used the same words/phrases to refer to the same concepts. This terminology is already in use.
[...]
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
User avatar
hotcrystal0
Posts: 4721
Joined: July 3rd, 2020, 5:32 pm
Location: wherever you think I am

Re: Transitions, conditions, and transition rules

Post by hotcrystal0 »

We still can’t agree on the right definition of “condition”, “transition” and “transition rule”. For all I know, “transition” could mean “changing your gender expression to better align with your gender identity.”

All jokes aside, why are you, confocaloid, arguing over the correct use of something that was almost unanimously accepted in the past?
Last edited by hotcrystal0 on May 7th, 2025, 4:20 pm, edited 1 time in total.
There's a lot you can do by just reassembling known components.
81 days until New York's age verification law goes into effect.

Code: Select all

x = 192, y = 53, rule = B3/S23
33$42b4o$41b6o$40b2ob4o$41b2o3$41b2o$39bo6bo$38bo8bo$38bo8bo$38b9o3$42b
4o$41b6o$40b2ob4o$41b2o!
User avatar
confocaloid
Posts: 6697
Joined: February 8th, 2022, 3:15 pm
Location: learn to protect yourself against stray gliders and sparks and self-destruct mechanisms

Re: Transitions, conditions, and transition rules

Post by confocaloid »

hotcrystal0 wrote: May 6th, 2025, 4:08 pm All jokes aside, why are you, confocaloid, arguing over the correct use of something that was almost unanimously accepted in the past?
Please read the sources I linked to above.

The local jargon contradicts those sources (as well as contradicting many other texts introducing/discussing cellular automata).

The local jargon also contradicts intuition, in several ways already explained.

Also I disagree with your claim. Just because there was very little attention in the past (in the local community on these forums) to how clear, correct, self-consistent and intuitive the terminology is, shouldn't be misinterpreted as if the local jargon was "unanimously accepted". It wasn't so much "accepted" as it was "left unchallenged"; it looks more likely that nobody bothered to complain about it.
confocaloid wrote: March 14th, 2025, 1:46 pm Existing CA-related sources (web pages, books, publications, and so on)?

The choices "rule", "transition rule", "update rule" also have the significant advantage that the same terminology can be found in multiple already existing CA-related sources. Many other people used the same words/phrases to refer to the same concepts. This terminology is already in use.
confocaloid wrote: June 1st, 2024, 3:15 pm [...] To avoid misunderstanding, I'd like to clarify that this terminology is old. It is not created by someone on these forums. The wider Life/CA community uses the same words and phrases to refer to the same ideas.

So it's not quite correct to refer to this as "proposed terminology" -- the terminology is already in use.

Below I'm crossposting links to some sources (and to forum posts with more links/quotes). Those sources are CA-related, and use 'condition', 'transition rule', 'transition', 'rule' to refer to the same ideas.
127:1 B3/S234c User:Confocal/R (isotropic CA, incomplete)
Unlikely events happen.
My silence does not imply agreement, nor indifference. If I disagreed with something in the past, then please do not construe my silence as something that could change that.
Post Reply