Format transitions for “Repel” Cellular automaton by SeanBP of conwaylife.com forums. First thing needed is to implement the actual “repel” part of the system. The following rules are listed below, however they are an extreme simplification of what would need to go into a golly rule file in order to be able to be read by a computer. To repel we typically need to use an extended moore neighborhood. The reason is: ...... ...... ...... ...... ..oo.. -> .o..o. ...... ...... ...... ...... The area around the cell which is required to be tested for a standard "neighborhood" cellular automaton is larger than normal. Normal neighborhoods are considered 4-8 cells. To fix this we implement it in Moore/vonNeumman neighborhood. For this example I'll use vonNeumann because it's simpler. In order to implement this in a moore neighborhood, I will use ascii to demonstrate. "." stands for a dead, or state 0, cell. "*" stands for a dead cell within influence zone of a live one. "a" stands for a cell with state 1, or on, cell. "B" stands for a cell with state 2, or repulsion. state "c" is right repulsion. Here is a demonstration. ...... ...... ...... .****. .****. ****** .*aa*. -> .*bc*. -> *a**a* .****. .****. ****** ...... ...... ...... The following demonstration clearly uses a Moore neighborhood, because the only transitions necessary are to be evaluated by the Moore, or 9-cell, neighborhood. Here is the transition function: state "a" turns to state "b" if one state "a" cell orthogonally adjacent to the right state "a" turns to state "c" if one state "a" cell orthogonally adjacent to the left state "." turns to state "a" if one orthogonally east adjacent "b" or one orthogonally west adjacent "c" For dealing with diagonal repels we have the following: ...... ...... .***.. .***.. .***.. .*a*.. .*a**. -> .*b**. -> .***** .*aa*. .*dc*. ****a* .****. .****. *a**** ...... ...... ***... The rule transitions are slightly more complicated, and have to use a larger neighborhood (9 cells): state "a" turns to state "b" if one orthogonally adjacent "a" to the south state "a" turns to state "c" if one orthogonally adjacent "a" to the west state "a" turns to state "d" if one orthogonally ajacent "a" to the north and one orthogonally adjacent "a" to the east state "." turns to state "a" if one orthogonally adjacent "b" to the south state "." turns to state "a" if one orthogonally adjacent "c" to the west state "." turns to state "a" if one diagonally adjacent "d" to the northeast Number of states needed for just the "repel" part of the system are calculated below. An "." cell requires 1 state All possible ways for a "." to turn to a "a" cell requires 8 more states All possible ways for a "a" to turn to another live cell like "b", "c", or "d" requires 50+ states All possible ways for a live cell like "b", "c", or "d" requires 50+ more states My guess is that the automaton would eventually need 220+ states.