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.