Re: Life Lexicon update
Posted: August 25th, 2017, 6:04 pm
'Block pusher' doesn't work in the viewer.
Forums for Conway's Game of Life
https://conwaylife.com/forums/
Thanks. Fixed in Beta 7. The new paragraph after the pattern had an extra four spaces in front of it, in the original text version. That seems to be one of the few formatting mistakes that makehtml.sh fails to complain about, but still has trouble handling.drc wrote:'Block pusher' doesn't work in the viewer.
Code: Select all
#! /bin/sh
# Add LifeViewer to the multi-page Life Lexicon
# converted files go into a "conv" subdirectory
# define input and output file names
output1=lex1.html
output2=lex2.html
convdir=conv
# create the conv subdirectory
mkdir -p $convdir
# loop over each input file
for input in lex*.htm
do
# insert the LifeViewer plugin into the head section
cat $input | sed 's@</head>@<meta name="LifeViewer" content="viewer pre 150">\n<script src="lv-plugin.js"></script>\n&@' > $output1
# add a show in viewer button to each pattern
cat $output1 | sed 's@<pre>@<div class="viewer">\n<button type="button" onclick="updateViewer(this);return false;">Show in Viewer</button>\n&@' > $output2
cat $output2 | sed 's@</pre>@&\n</div>\n@' > $convdir/$input
done
# copy in the css and image file
cp lifelex.css at.gif $convdir
# copy in the LifeVewer js file
cp lv-plugin.js $convdir
# tidy up
rm -f $output1 $output2
Life Lexicon wrote: [...] this gives a crystal which forms a pair beehives for every 11 gliders which hit it.
Code: Select all
x = 6, y = 6, rule = B3/S23
b2o$o2bo$obobo$bobobo$2bo2bo$3b2o!
Well... I'd certainly consider the first two, and even the yet-another-bi-loaf, if something showed up in the very near future that looked like this:muzik wrote:How about definitions for "adjustable spaceship", "engineered spaceship" and "engineerable spaceship"?
Code: Select all
:engineered spaceship: Blah blah blah, {blah blah} blah blah {blah}. Blah blah.
:adjustable spaceship: Blah blah, {blah blah blah}. Blah blah {blah} blah blah.
:bi-loaf: This term has been used in at least four different senses...
[but is that really true? Who's been talking about the Easter-egg bi-loaf lately?]
[pattern in ASCII format with 8-space indent]Code: Select all
:Caterpillar: A {spaceship} that works by laying tracks at its front end. The first example constructed was a p270 17c/45 spaceship built by Gabriel Nivasch...
[no other changes]
:spiral growth: A {self-constructing} pattern built by Dave Greene in August 2014 that uses four {universal constructor}s (UCs) arranged in a diamond to build four more UCs in a slightly larger diamond. This was the first B3/S23 pattern that exhibited spiral growth. Much smaller versions have now been constructed using the {single-channel} construction toolkit.
:self-constructing: A type of pattern, generally a {macro-spaceship}, that contains encoded construction information about itself, and makes a complete copy of itself using those instructions. The {Gemini}, {linear propagator}, {spiral growth} patterns, {Demonoid}s and {Orthogonoid} are examples of self-constructing patterns. Self-constructing spaceships often have trivially adjustable speeds. In many cases, the direction of travel can also be altered, less easily, by changing the encoded {construction recipe}. Compare {self-supporting}, {elementary}.
:self-supporting: A type of pattern, specifically a {macro-spaceship}, that constructs {signal}s or {track}s or other scaffolding to assist its movement, but does not contain complete information about its own structure. Examples include the Caterpillar, {Centipede}, {half-baked knightship}, {waterbear}, and the {Caterloopillar}s. {Caterpillar} has been used as a general term for self-supporting spaceships, but it is not very appropriate for the HBKs. In general a self-supporting pattern cannot be trivially adjusted to alter its speed or direction. The variable speeds of the HBKs and the Caterloopillars are exceptions, but their direction of travel is fixed, and a specific Caterloopillar can't be made to change its speed without completely rebuilding it. Compare {self-constructing}, {elementary}.
:macro-spaceship: A {self-constructing} or {self-supporting} {spaceship}, such as the {Caterpillar}, {Centipede}, {half-baked knightship}, {waterbear}, {Demonoid}, {Orthogonoid}, and {Caterloopillar}. Engineered spaceships of these types tend to be much larger and more complex than {elementary} spaceships.We're about out of time for adding anything else, so thanks very much to everyone who has sent in missing terms -- I got quite a few by email as well as the ones posted higher up on this thread. There are several hundred new terms defined (or aliased), and it looks like the length of the text Lexicon has gone up by well over 50%.
Some typos:dvgrn wrote: I'm still interested in hearing about typos and anachronisms and other factual errors, if anyone runs across anything.
Here's a few:dvgrn wrote:I'm still interested in hearing about typos and anachronisms and other factual errors, if anyone runs across anything.
Code: Select all
:volatility: The volatility of an {oscillator} is the size (in cells) of its {rotor} divided by the sum of the sizes of its rotor and its {stator}. In other words, it is the proportion of cells involved in the oscillator which actually oscillate. For many periods there are known oscillators with volatility 1, see for example {Achim's p16}, {figure-8}, {Kok's galaxy}, {mazing}, {pentadecathlon}, {phoenix}, {relay}, {smiley} and {tumbler}. Such an oscillator of period 3 was found in August 2012 by Jason Summers.
.........*.*.....*...*.....*.*.
........*...*....*...*....*...*
.........*.......*...*.......*.
...........**.**.*...*.**.**...
.................*...*.........
..........*...*.........*...*..
........*.*.................*.*
...............................
........*...................*..
.......**..................**..
.......*...................*...
.....*..*................*..*..
*....*..............*....*.....
****.**.***.........****.**.***
***.**.****.........***.**.****
.....*....*..............*....*
..*..*................*..*.....
...*...................*.......
..**..................**.......
..*...................*........
...............................
*.*.................*.*........
..*...*.........*...*..........
.........*...*.................
...**.**.*...*.**.**...........
.*.......*...*.......*.........
*...*....*...*....*...*........
.*.*.....*...*.....*.*.........
The smallest period for which the existence of such statorless oscillators is undecided is 7. There are oscillators with volatility arbitrarily close to 1 for all but finitely many periods, because of the possibility of feeding the gliders from a {true} period n {gun} into an {eater}.
The term "volatility" is due to Robert Wainwright. See also {strict volatility}.Code: Select all
----------------------------------
Period Discoverers Date
----------------------------------
20 Matthias Merzenich May 2013
Noam Elkies
22 David Eppstein Aug 2000
Jason Summers
24 Noam Elkies Jun 1997
30 Bill Gosper Nov 1970
36 Jason Summers Jul 2004
40 Adam P. Goucher Mar 2013
Matthias Merzenich
Jason Summers
44 David Buckingham Apr 1992
45 Matthias Merzenich Apr 2010
46 Bill Gosper 1971
48 Noam Elkies Jun 1997
50 Dean Hickerson Oct 1996
Noam Elkies
David Buckingham
54 Dieter Leithner Jan 1998
Noam Elkies
David Buckingham
55 Stephen Silver Oct 1998
56 Dieter Leithner Jan 1998
David Buckingham
Noam Elkies
57 Matthias Merzenich
58 'Thunk' Apr 2016
Matthias Merzenich
Chris Cain
59 Adam P. Goucher Dec 2009
Jason Summers
60 Bill Gosper Nov 1970
61 Luka Okanishi Apr 2016
----------------------------------Done (wiki update, that is).Sokwe wrote:[*] The definitions of 25P3H1V0.1 and 25P3H1V0.2 need to be switched (with minor corrections, because they refer to each other). These names come from Heinrich Koenig's database where they are correctly labeled. Somehow they got mixed up when added to the wiki. The wiki also needs to be updated.
It's good that I went and looked at that entry again, too. I removed the sentenceSokwe wrote:It should also probably be mentioned in the "c/3 spaceship" definition that 25P3H1V0.1 is the first known ship of this speed.
... noticing as I did so that "degree" should have been "degrees" ...! It's hard to calculate a consistent single-number speed for oblique ships without resorting to sines and cosines, and even there you'd have to do something weirder than the usual definition. Otherwise you'd end up with gliders going either "c/2" or "sqrt(2)c/2". I was sure I'd taken that part out before, but I must have been editing the wrong file (sadly this is not unheard of, despite all my attempts to avoid it).A spaceship moving diagonally at an angle of 45 degree cannot travel at a speed of c/3, but it is likely that c/3 {knightship}s exist, though none have yet been found.
Not for this round, I think. I did a quick search and saw lots of {spaceship} links, and I'm not about to try anything silly like a global search-and-replace for plain " spaceship ", since I'm sure that was only an example. Will have to either re-read the whole document and add links manually, or write a script to suggest making links for each first instance of a known term in each definition -- other than the term being defined... Even that isn't so simple, because different forms of words can be linked.Sokwe wrote:There are a number of places where it seems like there should be links to other terms in the lexicon (e.g. most spaceships don't seem to link to the "spaceship" definition). I'm not sure if you had any plans to address this.
I do apologize in advance for straying off-topic, but isn't the speed for ships just based on a king-wise move metric? I.e., if a ship moves at speed (u,v)/pc, then its single-number speed is max(u, v)/pc. This matches how both diagonal and orthogonal speeds are measured, and is consistent with how information propagates, at least in Life-like CAs using the Moore neighborhood.dvgrn wrote:... noticing as I did so that "degree" should have been "degrees" ...! It's hard to calculate a consistent single-number speed for oblique ships without resorting to sines and cosines, and even there you'd have to do something weirder than the usual definition. Otherwise you'd end up with gliders going either "c/2" or "sqrt(2)c/2".
Yes, absolutely. But I'm not sure there's a decent reason any more to drop half of the information in (u,v), just so that we can arbitrarily classify a spaceship with a single-number speed. If multiple oblique macro-spaceships end up in the same single-number speed category, they'll most likely be in the same (u,v)c/p category too.Apple Bottom wrote:I do apologize in advance for straying off-topic, but isn't the speed for ships just based on a king-wise move metric? I.e., if a ship moves at speed (u,v)/pc, then its single-number speed is max(u, v)/pc. This matches how both diagonal and orthogonal speeds are measured, and is consistent with how information propagates, at least in Life-like CAs using the Moore neighborhood.dvgrn wrote:... noticing as I did so that "degree" should have been "degrees" ...! It's hard to calculate a consistent single-number speed for oblique ships without resorting to sines and cosines, and even there you'd have to do something weirder than the usual definition. Otherwise you'd end up with gliders going either "c/2" or "sqrt(2)c/2".
I suspect this is known before, especially regarding this oscillator:2c/3 wire: In 2017 Martin Grant observed that the 2c/3 signal can be split successfully into two half-signals that can be separated from each other by an arbitrary number of ticks.
Code: Select all
x = 28, y = 29, rule = B3/S23
obo3b2o$2obobo2bo$3bob2obo$3o5bob2o$o5b3obo$b3o7bo$6b5o$b3o$bo5b6o$3b
2obo6bo$4bobo2bob3o$2bobobobobo5bo$2b2o2bobobob5o$6bobobo$7b2obo2b6o$
10bobo6bo$10bobo2bob3o$11b2obobo5bo$14bobob5o$14bobo8bo$13b2obo2b7o$
16bobo$16bobo2bob3o$17b2obobo2bo$20bobo$20bobob4o$19b2obo4bo$23b3o$25b
2o!There isn't a reflector shown in:colour-changing See colour of a glider. The period-8 reflector shown in reflector is colour-changing, as are its p4/5/6/7 and higher-period versions.
Code: Select all
x = 39, y = 41, rule = B3/S23
8bo$8bo20bo$7b3o19bo$28b3o$5bo2bo2bo$5bobobobo8b2o4bo2bo2bo4b2o$4bo7bo
7bobo3bobobobo3bobo$4bo2bobo2bo9bo2bo7bo2bo$4o3bobo3b4o5b4o2bobo2b4o$
4bo7bo15bobo$2b4o5b4o7b3o9b3o$2b2o3bobo3b2o7bo2bob2ob2obo2bo$4b2o5b2o
10bobo7bobo$6b5o9b3o2bobo3bobo2b3o$o3b2o5b2o3bo3bo4b3o3b3o4bo$2obobo2b
o2bobob2o5b4o7b4o$bo3bobobobo3bo5b2o13b2o$o2b2obobobob2o2bo7b2o7b2o$3o
bobo3bobob3o4b3o2bo5bo2b3o$b2obobobobobob2o4bo2bo3bo3bo3bo2bo$b2obo2bo
bo2bob2o5bobobo2bobo2bobobo$5bobobobo8b2obobob2ob2obobob2o$b5obobob5o
8b2obo3bob2o$7bobo17bo3bo$b2o2b2obob2o2b2o11b2ob2o$bo2bobo3bobo2bo$4bo
3bo3bo$4b9o$3bo9bo$2b2o2b2ob2o2b2o$3bobobobobobo$3b2o2bobo2b2o$3bob2o
3b2obo$3bobo5bobo$o3bo7bo3bo$4o3bobo3b4o$4b3o3b3o$2b2o3b3o3b2o$bo2b2o
5b2o2bo$2bobob5obobo$3bo4bo4bo!Oh, yes, I'd definitely not want to encourage people to start using single-number speeds for oblique ships -- at least not without mentioning the slope as well! I was just looking for a workable definition, i.e. one that doesn't clash with the established way of measuring the speeds of orthogonal and diagonal ships.dvgrn wrote:The point about information propagation speed is a good one... but not good enough to make me want to encourage common use of single-number speed measurements, I think. A (1000,998)c/[a billion] oblique ship can't be usefully put into the same category as a (1000, 2)c/[a billion] oblique ship, though they'd both get the same single-number c-over-a-million speed.
Definitely agreed, though I personally don't think e.g. "(2,1)c/6" is annoying -- it's self-explanatory and unambiguous.The notation with parentheses is annoying, but avoiding that minor awkwardness by cavalierly throwing away important information... seems to me to be just inviting confusion, I guess.
No way. I'm not admitting that there are large numbers of changes left, so I'm up to Beta 8++...! Working on the three typos you pointed out now.Scorbie wrote:Edit: Oops, a little too late
Edit2: The next version number should be 10
Not in the Lexicon there aren't. I think this is one of the better p5 pipsquirters --Scorbie wrote:Edit3: I'm not sure what the p5 t-nose is for, as there are p5 pipsquirters...
Code: Select all
.........*.........
.........*.........
...................
...**..*.*.*..**...
...*...*****...*...
....***.....***....
......*.....*......
..*****..*..*****..
..*..*..*.*..*..*..
...*.....*.....*...
***.............***
*.................*Code: Select all
x = 16, y = 16, rule = B3/S23
11b2o$10bobo$2bo5bo4bo$2ob2o2b2obobo$o7bo3bo$bobo2$2b3o7bo$3bo7b3o2$
12bobo$3bo3bo7bo$3bobob2o2b2ob2o$2bo4bo5bo$3bobo$3b2o!Yeah :) I wasn't too serious about the versioning. Nice work on the lexicon all along. It's much more comprehensive and up to date. I see you did a lot there...dvgrn wrote:No way. I'm not admitting that there are large numbers of changes left, so I'm up to Beta 8++...! Working on the three typos you pointed out now.Scorbie wrote:Edit: Oops, a little too late :?
Edit2: The next version number should be 10 ;)
Ah, I see. The lexicon's t-nose may stay for now. Still, I wouldn't use that big one personally as in jslife there are also less intrusive p5 pipsquirters (with clearance similar to that of the t-nose) with more reasonable sizes. I, as well, have never seen a use case for the p5 pipsquirter.dvgrn wrote:Not in the Lexicon there aren't. I think this is one of the better p5 pipsquirters --Scorbie wrote:Edit3: I'm not sure what the p5 t-nose is for, as there are p5 pipsquirters...
but the diagonal clearance to its spark is much lower than the p6 and p7 squirters, so it really can't be used in the same kinds of places. If no one ever uses or talks about p5 pipsquirters, then are they really a thing to be defined? I suppose they are, but I'm not sure I'll get to it for this round.Code: Select all
.........*......... .........*......... ................... ...**..*.*.*..**... ...*...*****...*... ....***.....***.... ......*.....*...... ..*****..*..*****.. ..*..*..*.*..*..*.. ...*.....*.....*... ***.............*** *.................*
Similarly, I think the p5 T-nose is humongous specifically to support the nice pointy forward end without the eaterish forward projections.
I think Simon Ekström and Nathaniel Johnston should be credited there. (Also, a pointer to A019473 in the OEIS might not be amiss.)Life Lexicon wrote: Still lifes have been enumerated by Conway (4-7 bits), Robert Wainwright (8-10 bits), Dave Buckingham (11-13 bits), Peter Raynham (14 bits) and Mark Niemiec (15-24 bits). The resulting figures are shown below.
As usual, following the trail of interlocking terms turned up several other omissions that seemed worth fixing. Here are three new definitions and two revised ones. Please let me know if anything doesn't seem accurate:Apple Bottom wrote:Something for the next point version--
:still life: has a table with the numbers of (strict) still lifes up to 32 bits, but the sentence leading up to the table only gives credits up to 24 bits...
Code: Select all
:pseudo still life: The definition of {strict still life} rules out such {stable} patterns as the {bi-block}. In such patterns there are dead cells which have more than 3 neighbours in total, but fewer than 3 in any component still life. These patterns are called pseudo still lifes. Mark Niemiec and others have enumerated the pseudo still lifes up to 32 bits; these figures are shown below; see also {https://oeis.org/A056613}. Included in the final number is the unique 32-bit {triple pseudo} still life.
--------------
Bits Number
--------------
8 1
9 1
10 7
11 16
12 55
13 110
14 279
15 620
16 1645
17 4067
18 10843
19 27250
20 70637
21 179011
22 462086
23 1184882
24 3068984
25 7906676
26 20463274
27 52816265
28 136655095
29 353198379
30 914075620
31 2364815358
32 6123084116
--------------
A {stable} pattern whose live cells are not connected by adjacent dead cells where birth is suppressed by overpopulation.
:quad pseudo: A {still life} that can be broken down into four {stable} pieces but not into two or three. This term may refer to the following 34-bit pattern, found by Gabriel Nivasch in July 2001, or any similar pattern with the same property.
........**.
...**.*..*.
...*.**.*..
........**.
...*.**...*
.***.**.**.
*.......*..
.***.**.*..
...*.*.*...
As a consequence of the Four-Colour Theorem, there can be no analogous objects requiring decomposition into five or more pieces. By convention, patterns like this and the {triple pseudo} are considered to be {pseudo still life}s, not {strict still life}s. As of August 2017 it has been shown that no quad pseudo patterns exist with 32 or fewer bits, but a 33-bit pattern with this property may theoretically still be found.
:strict still life: A {still life} that is either a single connected {polyplet}, or is arranged such that a {stable} smaller pattern cannot be formed by removing one or more of its {island}s. For example, {beehive with tail} is a strict still life because it is connected, and {table on table} is a strict still life because neither of the {table}s are stable by themselves. See also {triple pseudo}, {quad pseudo}.
Still lifes have been enumerated by Conway (4-7 bits), Robert Wainwright (8-10 bits), Dave Buckingham (11-13 bits), Peter Raynham (14 bits), Mark Niemiec (15-24 bits), and Simon Ekstrom and Nathaniel Johnston (25-32 bits). The resulting figures are shown below; see also {https://oeis.org/A019473}. The most recent search by Nathaniel Johnston has also confirmed that the {triple pseudo} pattern found by Gabriel Nivasch is the only such still life with 32 bits or less. It is therefore included in the pseudo still life count and not in the table below.
--------------
Bits Number
--------------
4 2
5 1
6 5
7 4
8 9
9 10
10 25
11 46
12 121
13 240
14 619
15 1353
16 3286
17 7773
18 19044
19 45759
20 112243
21 273188
22 672172
23 1646147
24 4051711
25 9971377
26 24619307
27 60823008
28 150613157
29 373188952
30 926068847
31 2299616637
32 5716948683
--------------
:still life: Any {stable} pattern, usually assumed to be finite and nonempty. For the purposes of enumerating still lifes this definition is, however, unsatisfactory because, for example, any pair of blocks would count as a still life, and there would therefore be an infinite number of 8-bit still lifes.
For this reason a stricter definition is often used, counting a stable pattern as a {strict still life} only if its {island}s cannot be divided into two or more nonempty sets both of which are stable in their own right. If such a subdivision can be made, the pattern is a {pseudo still life}.
In rare cases bove a certain size threshold, a pattern may be divisible into three or four stable nonempty subsets but not into two. See the 32-bit {triple pseudo} (32 bits) and the 34-bit {quad pseudo} for examples.
All still lifes up to 18 bits have been shown to be {glider constructible}. It is an open question whether all still lifes can be incrementally constructed using glider collisions. For a subset of small still lifes that have been found to be especially useful in {self-constructing} circuitry, see also {Spartan}.
:triple pseudo: The following pattern, found by Gabriel Nivasch in July 2001. It is unique among 32-bit {still life}s in that it can be broken down into three {stable} pieces but not into two. The term may also refer to any larger {stable} pattern with the same property. See also {quad pseudo}.
......**
..*.*..*
.*.**.*.
.*....**
**.**...
...**.**
**....*.
.*.**.*.
*..*.*..
**......Looks good to me! But I think the last sentence in the :pseudo still life: entry was supposed to have been the first...?dvgrn wrote:As usual, following the trail of interlocking terms turned up several other omissions that seemed worth fixing. Here are three new definitions and two revised ones. Please let me know if anything doesn't seem accurate:
Code: Select all
:pseudo still life: The definition of {strict still life} rules out such {stable} patterns as the {bi-block}. In such patterns there are dead cells which have more than 3 neighbours in total, but fewer than 3 in any component still life. These patterns are called pseudo still lifes. Mark Niemiec and others have enumerated the pseudo still lifes up to 32 bits; these figures are shown below; see also {https://oeis.org/A056613}. Included in the final number is the unique 32-bit {triple pseudo} still life.
[table omitted]
A {stable} pattern whose live cells are not connected by adjacent dead cells where birth is suppressed by overpopulation.
Excellent!These will find their way into the "official" Release 26 Life Lexicon at http://www.conwaylife.com/ref/lexicon/, probably in a week or three -- and will eventually also sneak into Golly at some opportune moment.
Bother, no, it's a little more complicated than that. That last sentence was an unfinished thought -- I wanted to get a link to {constellation} in there somewhere. How about this?Apple Bottom wrote:... I think the last sentence in the :pseudo still life: entry was supposed to have been the first...?
Code: Select all
:pseudo still life: A {stable} pattern whose live cells are either immediately adjacent to each other, or are connected into a single group by adjacent dead cells where birth is suppressed by overpopulation.
The definition of {strict still life} rules out such stable patterns as the {bi-block}. In such patterns there are dead cells which have more than 3 neighbours in total, but fewer than 3 in any component still life. These patterns are called pseudo still lifes, and have been enumerated up to 32 bits, as shown in the table below.
[table omitted]
Attribution of these counts is given in {strict still life}; see also {https://oeis.org/A056613}. The unique 32-bit {triple pseudo} still life is included in the last count in the table.
If a stable pattern's live cells plus its overpopulated dead cells do not form a single mutually adjacent group, the pattern is usually referred to as a {constellation}. It is also technically a {still life} in the general sense, but is neither "pseudo" nor "strict".I think you have things pretty much right, in terms of common usage.Apple Bottom wrote:Also: the definition of a still life as any stable (finite, nonempty) includes constellations, but these are not considered still lifes of any kind, are they? Perhaps instead of "pattern", it should say "object".
(Then again, maybe it's just me who's confused about the intricacies of different classes of stable patterns. This is still my best current understanding -- but it might still be wrong, or (worse) oversimplified.)