Page 1 of 1

Life-to-Wire

Posted: May 29th, 2010, 10:17 pm
by Axaj
This is a rule table that combines 23/3 and WireWorld for simple computations while retaining Universal-Constructability. The rule table is fairly simple and the sample patterns should help you figure it out, but if you need help on how it works, just ask.

The rule table:

Code: Select all

#LifetoWire.table
#A combination of 23/3 and Wireworld
#
#State 0: off
#State 1: life on
#States 2-3: receiver
#States 4-6: WW blocks
#State 7: extruder head
#State 8: changer
n_states:9
neighborhood:Moore
symmetries:rotate8
var a={0,1,2,3,4,5,6,7,8}
var b={0,1,2,3,4,5,6,7,8}
var c={0,1,2,3,4,5,6,7,8}
var d={0,1,2,3,4,5,6,7,8}
var e={0,1,2,3,4,5,6,7,8}
var f={0,1,2,3,4,5,6,7,8}
var g={0,1,2,3,4,5,6,7,8}
var h={0,1,2,3,4,5,6,7,8}
var i={0,2,3,5,6,7,8}
var j={0,2,3,5,6,7,8}
var k={0,2,3,5,6,7,8}
var l={0,2,3,5,6,7,8}
var m={0,2,3,5,6,7,8}
var n={0,2,3,5,6,7,8}
var o={0,2,3,5,6,7,8}
var p={0,1}
var q={0,1}
var r={0,1}
var s={0,1}
var t={0,1}
var u={0,1}
var v={0,1}

##Life
#Birth
0,1,1,1,i,j,k,l,m,1
0,1,1,i,1,j,k,l,m,1
0,1,1,i,j,1,k,l,m,1
0,1,1,i,j,k,1,l,m,1
0,1,1,i,j,k,l,1,m,1
0,1,i,1,j,1,k,l,m,1
0,1,i,1,j,k,1,l,m,1
#Survival
1,1,1,i,j,k,l,m,n,1
1,1,i,1,j,k,l,m,n,1
1,1,i,j,1,k,l,m,n,1
1,1,i,j,k,1,l,m,n,1
1,1,1,1,i,j,k,l,m,1
1,1,1,i,1,j,k,l,m,1
1,1,1,i,j,1,k,l,m,1
1,1,1,i,j,k,1,l,m,1
1,1,1,i,j,k,l,1,m,1
1,1,i,1,j,1,k,l,m,1
1,1,i,1,j,k,1,l,m,1

##Life-to-Wire
#Changer
6,8,a,4,b,c,d,e,f,7
6,8,a,7,b,c,d,e,f,4
6,8,a,b,c,d,e,4,f,7
6,8,a,b,c,d,e,7,f,4
#Receiver
2,1,a,b,c,d,e,f,g,3
6,3,b,c,d,e,f,g,h,7
3,a,b,c,d,e,f,g,h,2
#Extruder
7,a,b,c,d,e,f,g,h,5
6,i,j,k,l,m,n,a,7,7
6,i,j,k,l,m,7,n,7,7
6,i,j,k,l,7,m,n,7,7
6,i,j,k,7,l,m,n,7,7
0,7,p,q,r,s,t,u,v,1

##WireWorld rules
4,a,b,c,d,e,f,g,h,5
5,a,b,c,d,e,f,g,h,6
6,i,j,k,l,m,n,a,4,4
6,i,j,k,l,m,4,n,4,4
6,i,j,k,l,4,m,n,4,4
6,i,j,k,4,l,m,n,4,4

##Death
1,a,b,c,d,e,f,g,h,0
One WW signal to glider:

Code: Select all

x = 12, y = 23, rule = lifetowire
7.H$6.F$5.F.F$5.F2.F$9.F$F9.F$2.2F7.F$HF9.F$.F9.F$.F9.F$.F9.F$F4.F2.F
2.F$F.F2.F2HF2.F$.F.F.F2.F2.F$3.F.F2.F.F$3.F2.F.F.F$3.F3.F2.F$4.3F.F.
F$9.F$9.F$9.F$9.D$9.E!
One WW signal to B-Heptomino:

Code: Select all

x = 12, y = 9, rule = lifetowire
4.4F$3.F2.H$2.F3.H$.7F$F10.F$.F9.F$2.F7.HF$3.8F$EDF!
A GGG deleting its own gliders:

Code: Select all

x = 30, y = 16, rule = lifetowire
21.2A$21.A.A$9.A12.3A$6.4A13.3A3.F$5.4A13.3A$.FB2.A2.A12.A.A$F4.4A12.
2A$F5.4A$.F7.A$2.F$3.F$4.F$5.F$6.F$7.F$8.13F!
A Glider/LWSS/MWSS/HWSS Heisenburp:

Code: Select all

x = 56, y = 20, rule = lifetowire
10.5A4.6A$.4A4.A4.A3.A5.A$A3.A9.A9.A$4.A4.A3.A4.A4.A$A2.A7.A8.2A$43.B
$43.F$36.3A4.F$38.A4.F$37.A5.F$42.F.F$41.F3.F$41.F2.F$41.F12.2F$47.F
5.F.F$47.F3.2F.2F$43.B7F2.F.F$49.H.2F.2F$53.F.F$54.2F!

Re: Life-to-Wire

Posted: May 30th, 2010, 7:35 am
by Keiji
Axaj wrote:while retaining Universal-Constructability.
Aww, I was expecting to be able to construct arbitrary patterns of states 2, 6 and 8.

Good work so far, though it could do with a way to construct such patterns.


Have you seen my "wirelife" rule? This uses only three states and also combines 23/3 and WW, though so far I haven't found a recyclable (i.e. can be used as many times as needed) way to convert signals to gliders or back. I've pretty much stopped working on it though since trying to engineer anything in Life is a bit of a chore to me, but if you want to try and improve on it, go right ahead.

Re: Life-to-Wire

Posted: May 30th, 2010, 9:16 am
by apg
Can't you use Life 'on' cells as the background wire for Wireworld? That way, the automaton only needs to have four states, rather than eight.

Re: Life-to-Wire

Posted: May 30th, 2010, 11:52 am
by Axaj
My intention while creating this rule was to simply combine Life and WW while retaining complete backwards compatibility; it definitely could be optimized, but that's not the point of it. More of a gimmick than anything.
Keiji wrote:
Axaj wrote:while retaining Universal-Constructability.
Aww, I was expecting to be able to construct arbitrary patterns of states 2, 6 and 8.

Good work so far, though it could do with a way to construct such patterns.


Have you seen my "wirelife" rule? This uses only three states and also combines 23/3 and WW, though so far I haven't found a recyclable (i.e. can be used as many times as needed) way to convert signals to gliders or back. I've pretty much stopped working on it though since trying to engineer anything in Life is a bit of a chore to me, but if you want to try and improve on it, go right ahead.
Yes, I've seen your rule. I haven't looked into it much, but it appears to me that it is somewhat of a combination of two "colors" of life.
calcyman wrote:Can't you use Life 'on' cells as the background wire for Wireworld? That way, the automaton only needs to have four states, rather than eight.
You mean the main wires? I've tried that, but it never worked. I could give it another shot, I suppose.

Re: Life-to-Wire

Posted: May 31st, 2010, 4:33 am
by apg
You mean the main wires? I've tried that, but it never worked. I could give it another shot, I suppose.
Yes, so that (for example) a Wireworld signal could circulate on a pond.

Re: Life-to-Wire

Posted: May 31st, 2010, 3:04 pm
by Axaj
calcyman wrote:
You mean the main wires? I've tried that, but it never worked. I could give it another shot, I suppose.
Yes, so that (for example) a Wireworld signal could circulate on a pond.
Well, I started from scratch, and it worked perfectly! I must be getting better at this... Check out its topic.

Re: Life-to-Wire

Posted: April 7th, 2014, 10:36 pm
by c0b0p0
calcyman wrote:
You mean the main wires? I've tried that, but it never worked. I could give it another shot, I suppose.
Yes, so that (for example) a Wireworld signal could circulate on a pond.
In my adaptation of the LifeWire rule (which I named WireLife), a Wireworld signal can circulate on a glider.

Code: Select all

x = 3, y = 3, rule = WireLife
2.C$C.B$.AC!
Making a "wireglider" loop (using signals) would be a step toward proving this rule omniperiodic. (WW is not; Life does not seem to be, either).
The rule table:

Code: Select all

@RULE WireLife


@TABLE

# Golly rule-table format.
# Each rule: C,N,NE,E,SE,S,SW,W,NW,C'
#
# Default for transitions not listed: no change
#
# Variables are bound within each transition. 
# For example, if a={1,2} then 4,a,0->a represents
# two transitions: 4,1,0->1 and 4,2,0->2
# (This is why we need to repeat the variables below.
#  In this case the method isn't really helping.)

n_states:4
neighborhood:Moore
symmetries:permute
var a={0,1,2,3}
var b={0,1,2,3}
var c={0,1,2,3}
var d={0,1,2,3}
var e={0,1,2,3}
var f={0,1,2,3}
var g={0,1,2,3}
var h={0,1,2,3}
var i={0,2,3}
var j={0,2,3}
var k={0,2,3}
var l={0,2,3}
var m={0,2,3}
var n={0,2,3}
var o={1,2,3}
var p={o}
var q={o}
var r={o}
3,a,0,0,0,0,0,0,0,0
3,o,p,q,r,a,b,c,d,0
1,a,b,c,d,e,f,g,h,2
2,a,b,c,d,e,f,g,h,3
3,i,j,k,l,m,n,a,1,1
3,i,j,k,l,m,1,n,1,1
3,i,j,k,l,1,m,n,1,1
3,i,j,k,1,l,m,n,1,1
0,3,o,p,0,0,0,0,0,3
@NAMES

# these state names are not yet used by Golly
0 empty
1 electron tail
2 electron head
3 copper wire

@COLORS

# same colors used at http://www.quinapalus.com/wi-index.html
0  48  48  48   dark gray
1   0 128 255   light blue
2 255 255 255   white
3 255 128   0   orange

@ICONS

# icon info is in XPM format (order is not important)

XPM
/* width height num_colors chars_per_pixel */
"31 31 5 1"
/* colors */
". c #000000"
"D c #404040"
"C c #808080"
"B c #C0C0C0"
"W c #FFFFFF"
/* pixels */
"..............................."
"..............................."
"..........DCBWWWWWBCD.........."
".........CWWWWWWWWWWWC........."
".......DWWWWWWWWWWWWWWWD......."
"......BWWWWWWWWWWWWWWWWWB......"
".....BWWWWWWWWWWWWWWWWWWWB....."
"....DWWWWWWWWWWWWWWWWWWWWWD...."
"....WWWWWWWWWWWWWWWWWWWWWWW...."
"...CWWWWWWWWWWWWWWWWWWWWWWWC..."
"..DWWWWWWWWWWWWWWWWWWWWWWWWWD.."
"..CWWWWWWWWWWWWWWWWWWWWWWWWWC.."
"..BWWWWWWWWWWWWWWWWWWWWWWWWWB.."
"..WWWWWWWWWWWWWWWWWWWWWWWWWWW.."
"..WWWWWWWWWWWWWWWWWWWWWWWWWWW.."
"..WWWWWWWWWWWWWWWWWWWWWWWWWWW.."
"..WWWWWWWWWWWWWWWWWWWWWWWWWWW.."
"..WWWWWWWWWWWWWWWWWWWWWWWWWWW.."
"..BWWWWWWWWWWWWWWWWWWWWWWWWWB.."
"..CWWWWWWWWWWWWWWWWWWWWWWWWWC.."
"..DWWWWWWWWWWWWWWWWWWWWWWWWWD.."
"...CWWWWWWWWWWWWWWWWWWWWWWWC..."
"....WWWWWWWWWWWWWWWWWWWWWWW...."
"....DWWWWWWWWWWWWWWWWWWWWWD...."
".....BWWWWWWWWWWWWWWWWWWWB....."
"......BWWWWWWWWWWWWWWWWWB......"
".......DWWWWWWWWWWWWWWWD......."
".........CWWWWWWWWWWWC........."
"..........DCBWWWWWBCD.........."
"..............................."
"..............................."

XPM
/* width height num_colors chars_per_pixel */
"15 15 4 1"
/* colors */
". c #000000"
"D c #404040"
"B c #C0C0C0"
"W c #FFFFFF"
/* pixels */
"..............."
"....DBWWWBD...."
"...BWWWWWWWB..."
"..BWWWWWWWWWB.."
".DWWWWWWWWWWWD."
".BWWWWWWWWWWWB."
".WWWWWWWWWWWWW."
".WWWWWWWWWWWWW."
".WWWWWWWWWWWWW."
".BWWWWWWWWWWWB."
".DWWWWWWWWWWWD."
"..BWWWWWWWWWB.."
"...BWWWWWWWB..."
"....DBWWWBD...."
"..............."

XPM
/* width height num_colors chars_per_pixel */
"7 7 4 1"
/* colors */
". c #000000"
"D c #404040"
"E c #E0E0E0"
"W c #FFFFFF"
/* pixels */
".DEWED."
"DWWWWWD"
"EWWWWWE"
"WWWWWWW"
"EWWWWWE"
"DWWWWWD"
".DEWED."

Re: Life-to-Wire

Posted: May 4th, 2014, 2:09 am
by Sphenocorona
Another construct that isn't possible in normal Life that is possible in c0b0p0's rule is a 5c/11 spaceship with period 22, made of 4 block puffers of the same speed:

Code: Select all

x = 37, y = 12, rule = WireLife
11.2C11.2C$10.C.C11.C.C2$.2C3.2C.3C13.3C.2C3.2C$2.C3.C23.C3.C$C7.C5.C
7.C5.C7.C$13.C.C5.C.C$13.ABA5.ABA$4.C9.C7.C9.C$3.A.A25.A.A$3.BCB25.BC
B$3.CAC25.CAC!
The generic eaters don't seem to work for the signal-glider, let alone one which would allow the signal to continue.

EDIT: Here's a backwards glider rake using three of these ships:

Code: Select all

x = 76, y = 41, rule = WireLife
24.C$23.2C25.3C.3C.3C.3C$23.C.C24.2C3.2C.2C3.2C$41.C3.C4.2C3.2C.2C3.
2C4.C3.C$40.C.C.C.C3.2C.B.2C.2C.B.2C3.C.C.C.C$36.2C.C7.C4.CBC5.CBC4.C
7.C$36.2C.C7.C4.CAC5.CAC4.C7.C$40.C2.C2.C21.C2.C2.C$43.C27.C$42.ABA
25.ABA$43.C27.C4$34.2C$34.2C2.C$29.2C6.2C.2C$28.2C7.2C.2C$30.C2$48.2C
11.2C$48.2C11.2C$48.C13.C$38.2C3.3C.C15.C.3C3.2C$37.C.C3.C.C.C15.C.C.
C3.2C$37.2C6.3C3.B7.B3.3C$49.2C.2C3.2C.2C$.2C46.A3.A3.A3.A$.2C12.C5.C
18.3C6.CBCBC3.CBCBC6.3C$16.C3.C18.2AC2A6.CAC5.CAC6.2AC2A$7.3C17.3C8.C
B3.BC21.CB3.BC$5.7C2.2C5.2C2.7C7.AC.CA23.AC.CA$.2C.C3.C.C15.C.C3.C.2C
3.C.B.C23.C.B.C$C.C.C.C.C.C15.C.C.C.C.C.C4.C27.C$6.C23.C$2C5.C.C3.BCB
5.BCB3.C.C5.2C$13.CAC5.CAC$4.C27.C$3.C.C25.C.C$3.ABA25.ABA$4.C27.C!
Can anybody find a forward rake? (colliding two backwards streams won't work)

Re: Life-to-Wire

Posted: June 23rd, 2014, 10:09 pm
by c0b0p0
For glider syntheses, the signal-glider has no advantage over the ordinary glider. Here is the smallest pulsar synthesis I could find.

Code: Select all

x = 94, y = 68, rule = WireLife
91.B.C$91.AC$92.C18$2.C$C.B$.AC34$44.C$42.C.B$43.AC7$49.AB$48.2C$50.C
!

Re: Life-to-Wire

Posted: June 23rd, 2015, 11:36 am
by Kiran
Can it be made so that the signals do not affect the evolution of the life pattern?

Re: Life-to-Wire

Posted: October 11th, 2025, 2:05 pm
by Resu
This seems to be the right topic for this loaf-pull:
  • Code: Select all

    x = 34, y = 35, rule = WireLife
    2.C$C.B$.AC4$8.C$6.C.B$7.AC4$14.C$12.C.B$13.AC4$20.C$18.C.B$19.AC4$26.
    C$24.C.B$25.AC5$31.2C$30.C2.C$30.C.C$31.C!