**UPDATE**:

**Universality was proven on November 3, 2020; renamed the thread from "Fireworld/Positronic" to "Fireworld (old historical rule)", because I abandoned the Positronic varieties and this rule altogether in favor of FireWorld (with a capital W). The underlying rule of the new FireWorld is 03ajkr/2ak/3. All my old patterns work under the new rule, since it is a superior superset. There is a version called FireWorld7, slightly modified by adding S7, which turns blocks into cool p3 guns.**

Recently I started posting on Github and further developing patterns of a simple non-totalistic rule, which I discovered in 2001 while playing with MCell. My interest to this particular rule was boosted by the appearance of the Wireworld computer a couple years later. I strongly believed that my rule, which I call Fireworld, is capable of universal computation and building a working computer model that actually looks like a computer of sorts.

UPDATE:

Back in 2002 I had already constructed basic logic gates, flip-flops a binary counter a some other basic computer-building blocks, besides various ships (only orthogonal one seem possible in Fireworld), puffers, rakes, oscillators, breeders etc.

By now, I have build RAM and ROM elements, data buses, controllable LED-like signal panels, chains of logic gates, a binary decrementer.

UPDATE from Nov. 3, 2020: Also a serial adder and a Rule 110 emulator.

The rule in Golly notation is as follows:

**03ajkr/2ak/3**

(

**B2ak/S03ajkr/G3**in another notation)

Personally I use a custom rule table though, which I made for Golly around 2008-2009, when such short notations for non-totalistic rules, to my knowledge, were not available yet.

Description:

**Fireworld operates in the Moore neighborhood. Cells may have 3 states: empty, alive and dead.**

A empty cell becomes alive only if it is surrounded by one live cell horizontally or vertically adjacent to it, while one other cell is adjacent to it in diagonal.

A live cell survives either if there are no other live cells in its neighborhood or there are exactly three live cells adjacent to it in a particular way: two adjacent orthogonally (horizontally or vertically), while the third one is adjacent in diagonal.

Dead cells count as empty and don't interfere with the birth or survival, if they are present in the neighborhood. They do prevent a cell to get born in their place though, as usual in the "Generations" rules.

A dead cell becomes empty in the next generation.

A empty cell becomes alive only if it is surrounded by one live cell horizontally or vertically adjacent to it, while one other cell is adjacent to it in diagonal.

A live cell survives either if there are no other live cells in its neighborhood or there are exactly three live cells adjacent to it in a particular way: two adjacent orthogonally (horizontally or vertically), while the third one is adjacent in diagonal.

Dead cells count as empty and don't interfere with the birth or survival, if they are present in the neighborhood. They do prevent a cell to get born in their place though, as usual in the "Generations" rules.

A dead cell becomes empty in the next generation.

Just a few days ago I also invented a new variety of this rule, which I called

**Positronic**.

It's a 5-state rule, which has "positively" and "negatively" charged live and dead cells, "matter" and "antimatter", so to speak. Both act identically to Fireworld, as long as "matter" and "antimatter" does not meat each other.

"Negative" cells are born and survive according to the same rules as in Fireworld, except that the respective number of live neighbors must also be negative.

The number of orthogonal neighbors and the number of diagonal neighbors are counted separately as the total sum of values of the live cells in the neighborhood, 1 for "live matter" and -1 for "live antimatter".

The list of various arrangements of "positive" and "negative" orthogonal and diagonal neighbors is quite extensive and can not be expressed by a simple notation. I was generated and verified by a computer algorithm (a little Lisp program).

"Negative" cells are encoded as State 3 and dead "negative" cells are encoded as State 4.

I also created a similar symmetrical "matter-antimatter" version of the standard Life called

**Twolives**, dedicated to John Conway's memory. The "positive" and "negative" cells count totalistically. A "negative" cell is born, when the total sum of its neighbors is -3, and survives, if the total sum of its neighbors is -2 and -3. Negative cells are emulated in my Golly rule table as State 2.

I would like to know, if anyone else is exploring such non-canonical "signed" symmetrical rules.

Here is my repository:

https://github.com/yoelmatveyev/Fireworld