text:
## Soup search results

For discussion of specific patterns or specific families of patterns, both newly-discovered and well-known.
mniemiec
Posts: 1191
Joined: June 1st, 2013, 12:00 am

### Re: Soup search results

Freywa wrote:The name of house on house siamese table-on-table weld hat-siamese-hat caught my eye. One of the C1 soups gave me a 9G synthesis of that, as well as 11G for the doubled version: ... The systematic name is so unwieldy that I'll name the 34-cell SL Liberty Bell and the 50-cell SL double Liberty Bell
The names sound good. I had a 9G synthesis of the 34-bit one from 2016-09-30, which was probably a reduction of yootaa's 10-glider synthesis of the 50-bit one from the same day. Those used a cheaper cleanup, and yours has a cheaper engine. Combining the two reduce these to 8 and 9, respectively:

Code: Select all

x = 182, y = 112, rule = B3/S23
13bo38bo$14boo34bobo9bo48bo39bo$13boo36boo7bobo28bo19bo19bo19bo19bo$61boo12bobo12bobobboo3boo9bo18bobobboo3boo9bo18bobobboo3boo$11bo26bo
29bo6boo13bob4obobobo28bob4obobobo28bob4obobobo$11boo25bo21bo7bo7bo12b oo6bobo7b3o3b3o13boo6bobo7b3o3b3o13boo6bobo$10bobo25bo11bo9boo6bo21bob
4obobobo28bob4obobobo28bob4obobobo$50boo7bobo12boo14bobobboo3boo9bo18b obobboo3boo9bo5boo11bobobboo3boo$49bobo22bobo14bo19bo19bo19bo4boo13bo$74bo36bo39bo6bo9$29bo$30boo$29boo$39bo$37bobo$38boo9$52bo38bo18b3o18bo
18b3o18bo$51bo38bobobboo3boo28bobobboo3boo28bobobboo3boo$51b3o36bob4ob
obobo6bo5bo15bob4obobobo6bo5bo15bob4obobobo$89boo6bobo8bo5bo14boo6bobo 8bo5bo14boo6bobo$90bob4obobobo6bo5bo15bob4obobobo6bo5bo15bob4obobobo$52b3o35bobobboo3boo28bobobboo3boo14b3o11bobobboo3boo$52bo38bo18b3o18bo
18b3o3bo14bo$53bo103bo$$71boo70boo72bo528boo27bobo9boo29bo10boo 39bo93bo38bo4boo34bobo9bo3boo36boo7bobo22bobo13bo13bo51boo12bobo7b oo13bobobboo3boobbobobo26bo29bo6boo9bo13bob4obobob4oboboo25bo21bo7bo 7bo22boo6bobo6booobo25bo11bo9boo6bo31bob4obobob4obo40boo7bobo12boo 24bobobboo3boobbobo39bobo22bobo7boo15bo13bo64bo9bobo74bo819bo57bo 20boo53boo19boo55boo29bo27bobo28boo942bo48bo13bo41bo48bobobboo3b oobbobo41b3o46bob4obobob4obo89boo6bobo6boo90bob4obobob4obo42b3o45b obobboo3boobbobo42bo48bo13bo43bo$$61boo$60boo$62bo5$18boo57boo$17bob o9boo46bobo$19bo10boo45bo$29bo!  A for awesome Posts: 2119 Joined: September 13th, 2014, 5:36 pm Location: Pembina University, Home of the Gliders Contact: ### Re: Soup search results 42-cell SL with a surprisingly simple predecessor (first occurrence in any symmetry), found by rliston: Code: Select all x = 16, y = 16, rule = B3/S23 bbobooooboobbobb$
bbbobboooobbboob$bobbbooboobbbbob$
obobbboooooobboo$bbbbbbboboobboob$
bboooobobboooobb$obobbbbooobbooob$
boobboobobobbooo$boobbobobobooooo$
boobooobobbboobo$ooobbbooobbbooob$
booooobboboobobb$bbobbbobbbbbbboo$
oooboobooooobboo$obbobooobboooboo$
bbobooboooboobbo!
praosylen#5847 (Discord)

x₁=ηx
V*_η=c²√(Λη)
K=(Λu²)/2
Pₐ=1−1/(∫^∞_t₀(p(t)ˡ⁽ᵗ⁾)dt)

$$x_1=\eta x$$
$$V^*_\eta=c^2\sqrt{\Lambda\eta}$$
$$K=\frac{\Lambda u^2}2$$
$$P_a=1-\frac1{\int^\infty_{t_0}p(t)^{l(t)}dt}$$

dvgrn
Moderator
Posts: 7270
Joined: May 17th, 2009, 11:00 pm
Contact:

### Re: Soup search results

A for awesome wrote:42-cell SL with a surprisingly simple predecessor (first occurrence in any symmetry), found by rliston...
Nice one! Even I can make a recipe for that one, with a lot of help from Goldtiger997's scripts. Can anyone beat 15 gliders?

Code: Select all

x = 46, y = 53, rule = B3/S23
26bobo$26b2o$27bo2$44bo$43bo$43b3o$8bo14bo$9b2o12bobo$8b2o13b2o18bo$42bo$42b3o$2bo16bo$3bo16b2o$b3o15b2o4$4bobo$5b2o$5bo11$bo$b2o$obo5$19b
2o$20b2o$19bo$42b3o$42bo$8b2o13b2o18bo$9b2o12bobo$8bo14bo$43b3o$43bo$
44bo2$27bo$26b2o$26bobo! EDIT: Maybe this would be a good case for a tutorial on how to get from a soup to a recipe? Here are the results from running Goldtiger997's synthesise-constellation-ee9.py script against the two constellations that it seemed reasonable to build from three gliders each: Code: Select all x = 1218, y = 117, rule = LifeHistory .C60.C52.C52.C31.C59.C43.C.C47.C52.C45.C46.C.C58.C46.C44.C47.C55.C57. C40.C.C47.C51.C41.C49.C49.C62.C44.C$2.C59.C.C51.C52.C31.2C58.C43.2C
48.C49.2C47.C45.2C57.2C48.C44.C47.C54.C.C53.2C41.2C49.2C49.C.C40.2C
17.C30.2C48.2C61.C42.C$3C2.C56.2C50.3C50.3C30.2C57.3C39.C3.C47.3C45.C 4.2C44.3C46.C58.2C45.3C42.3C2.C42.3C48.C5.2C55.2C41.C48.2C50.2C40.2C 19.C28.2C48.2C60.3C42.3C$5.C.C294.C99.C253.2C94.C48.C109.C107.3C36.C
49.C$5.2C293.3C97.3C99.C97.C55.C.C91.3C49.C107.2C147.C49.C$114.2C51.
2C90.2C195.C46.C47.C49.2C3.2C42.2C50.3C95.3C99.C7.C.C144.3C47.3C51.2C
$3.C111.2C51.2C90.2C92.3C98.2C44.3C48.C47.2C3.2C44.2C51.C195.C.C117. 3C138.C.C$3.2C109.C52.C91.C94.C49.C45.2C3.C.C92.3C54.C42.C52.C47.2C
148.2C47.C71.C138.C44.C$2.C.C296.3C47.C3.C47.2C46.2C298.C.C48.2C147. 2C68.C36.C50.C94.2C$301.C48.2C51.C.C44.C53.2C245.C51.2C145.2C106.2C
48.2C95.2C$302.C47.C.C150.C.C47.2C247.C48.C103.C101.C.C48.C.C90.C$
505.C46.C.C297.C101.2C246.C$554.C295.3C101.C.C243.3C2$1151.2C$852.2C 296.C.C$853.2C297.C$852.C$705.2C$51.C652.2C$52.C653.C$50.3C48.C48.3C 70.C$101.2C49.C71.C25.2C$100.C.C48.C70.3C26.2C$50.2C198.C$51.2C$50.C
171.2C$223.2C$222.C48$514.2B547.2B48.2B$513.4B294.2A104.3B142.8B42.8B
$513.6B291.B2AB101.3B2AB139.10B40.10B41.2A$506.3B4.6B290.5B99.5B2A3B
137.12BA37.12BA37.A2BA$9.D2A58.DB51.D52.D31.DB58.D43.DBD47.D51.BD45.D 43.3BDBD.6B50.BD45.ACB43.D2B45.D55.DB42.5B2A6.BD40.DBD46.BD9B42.DB40. DB48.D12BABA34.D12BABA36.B2A2B2.3B.D44.D$8.2BCA57.BDBD49.2BDB49.2BDB
41.2BD2B42.3BDB47.2A3.BDBD40.5BA2BA4.2DB39.B2DB46.2B2D4B2AB41.BDBD39.
B2D17.D29.B2D10BABA34.B2D10BABA36.12BDB41.D2B$8.3D2BDB53.2B2D50.3D3B 47.3D3B27.2D2B55.3D5B34.D2ABD3B44.3D3B42.D4B2D44.3DB40.5BD10B40.B5.2B 2D44.B3DB40.B3DBAC39.3B3D2B45.BCA4B2D41.6B2A4.2B2D38.3BD45.3B2D4BA2BA 40.2B2D40.2D2B10.B2.4BD4.2B22.2D12BA35.2D12BA35.6B2A4B3DB40.B3D$9.2B.
2A9B39.3B3.4B43.2A5B39.6B2CB38.9B44.2BD2BA2B41.2BD7B2.4B38.4B46.8BDB
2AB39.4B42.4B6.8B3D7B22.7BDB2A2B37.7BDB2A2B36.6B2A10B37.4B$12.A2DA50. 4B51.BA6B45.BA6B28.4B51.13B30.3D7B39.A2BAB2.2B42.3DBA2BA46.B2A39.5BAC 9B38.2A8B40.DB.A2BA3B40.3BA2BDBD38.9B44.3DBABAB42.2BD11B38.4B46.8B2D 4B38.4B44.4B4.19B23.7BD2AB39.7BD2AB37.19B35.4B$12.B2A50.4B52.ADC5B45.
6B41.B2DB2A2D2B40.2DABA2B40.5B3D2B43.4BABA43.3D10B38.4B46.BD7BDBD3B
36.5B46.4B4.19B21.6B3D3B38.6B3D3B37.11B2D6B34.4B$11.DB51.4B53.ABCD4B 45.ABCD4B30.4B48.3BACD8B29.2B2.BA2BA39.7B3D43.6B45.2B.B2CB40.3B3DABA 6B36.B2AD5B42.2D3B2DB42.BDCBA42.7BD2B44.3B.A45.11B38.5B45.DBD12B34.7B 48.4B2.10B3D8B20.13B37.13B36.11BDBD3B35.4B$10.B2DB49.4B52.3BC5B44.3BC
6B41.5B.BD42.DB.A41.8BDB45.B2DB47.10B40.5B.A43.2D13B32.2BD5B49.4B2.
11BD7B21.13B37.13B35.12BD4B35.5BD$10.DBD49.4B52.2A9B42.2A9B32.4B45.AB A11B29.3B3D44.3BDB2AD46.ACDB44.BDCA41.10BA6B36.5B2A5B39.5B90.10B46.BD BD48.2D3B2.B41.5BABA43.13B30.2A4B2D4B3.3B43.8B2A2B2.BD7B23.6BD5B38.7B D4B35.16B35.2A2B2DB$61.4B53.2A8B42.B2A8B34.4B43.BABA9B32.2BD2B45.B2D
2B49.DBD44.DB2A42.8B2D4B38.5B2A4B41.3B91.10B47.DB49.B2D45.6BABA44.11B
30.B2A3B2D13B42.7B2A8.3B26.B.3B2D2B41.B.3B2D2B38.12B36.2B2A3B2D$60.4B 54.9B43.10B36.4B42.2BA8B37.D47.DBD142.8BDBD3B40.4B2D3B137.9B98.DB47.D 5BA3B42.4B3.B33.11BD11B41.3BA.B42.BDBD2B44.2BDBDB39.12B34.4BD4B$59.4B
56.7B42.11B38.4B42.8B233.9BD3B42.BDBDB139.2B2A3B148.2BD7B2A42.3B37.4B
2A4B2D11B42.BABA43.6B44.6B39.11B35.2A3BD4B$58.4B56.7B42.11B40.4B42.6B 235.5B4.B46.BD139.3B2A3B148.3D7B2A83.2BA2BA3BDBD10B43.ABA44.5B45.5B 41.4B.3B35.A2BA3D4B$57.4B56.6B43.4B.5B43.4B41.5B432.9B149.10B84.3B2A
17B44.A45.4B46.4B41.4B40.B2A9B$56.4B56.6B43.4B3.B47.4B39.7B431.B2A7B 148.9B85.20B93.3B47.3B40.2D2B41.13B$55.4B56.4B45.4B53.4B39.5B432.A2BA
7B148.2D4B90.13B.2B94.2B48.2B40.DBDB43.12B$54.5B55.4B45.4B55.4B38.4B 434.2A4B.4B147.B2DB93.11B191.BD44.11B$53.7B53.4B45.4B57.4B36.4B437.2B
4.4B146.DB99.4B245.5B$52.2A6B52.4B45.4B59.4B34.4B445.2B2D248.B247.B$
51.A2BA4BDB50.4B45.4B61.4B32.4B447.2DB$52.2A6BDB48.4B45.4B63.4B30.4B 449.BD$54.4B3D3B45.D3B45.3DB63.2A4BD27.4B$53.2B2A8B43.B2DB46.2BD64.2A 5BDB24.2D2B$53.2B2A8B43.DBD48.D66.3BA3D3B22.B2D$53.5B2D5B160.3BABA6B 21.DB$54.5B2D4B160.3BABA6B$53.5BD5B161.4BA2D5B$53.12B161.5B2D4B$52. 12B161.5BD5B$52.11B162.12B$53.9B162.12B$53.8B163.11B$54.5B166.9B$54.
3B168.8B$55.B170.5B$226.3B$227.B! Code: Select all x = 613, y = 59, rule = LifeHistory 24.A25.A.A47.A56.A49.A43.A49.A49.A58.A45.A48.A45.A48.A$25.A25.2A48.2A
55.A49.A43.A49.A49.A58.A45.A48.A45.A48.2A6.A$23.3A25.A48.2A49.A4.3A 41.A.A3.3A41.3A47.3A47.3A56.3A43.3A46.3A43.3A47.2A7.A.A$151.2A48.2A
406.2A$55.A49.2A43.A.A48.A307.A45.A49.A$23.2A31.2A46.2A52.2A48.2A46.A
46.2A46.A60.A.A35.2A4.2A49.2A44.2A48.2A$24.2A29.2A49.A51.A.A47.A.A46. A44.A.A8.A38.A59.2A37.2A3.A.A49.2A44.2A48.2A$23.A134.A49.A46.3A46.A7.
2A36.3A60.A36.A5.A$60.2A48.A201.A.A$59.2A48.2A389.3A57.3A$61.A47.A.A 146.2A93.A.A146.A57.A$257.A.A93.2A146.A59.A$259.A94.A$401.A$401.2A$
400.A.A$3A$2.A$.A11$458.B$457.3B$306.B150.3B$305.3B147.7B47.B45.B$
305.3B147.A5BA46.3B43.3B$107.B195.7B144.BA5BAB45.3B43.3B$106.3B194.7B
144.BA5BAB43.7B39.7B$106.3B193.3A3B3A143.9B43.7B39.7B$104.7B191.9B
143.9B42.3A3B3A37.3A3B3A$22.2B80.A5BA43.3B98.A46.9B142.11B41.9B37.9B$
17.2B3.3BD25.DBD47.D2BA5BAB41.4B.D49.D43.D.BAB45.D8B41.D58.D40.5BD7B
40.BD7B37.BD7B41.DB$16.3B2.5BDB23.B2DB46.B2DA5BAB41.6BD2B45.2BD2B39. 2BDBAB43.3BD8B39.2BD55.3BD39.6BD6B40.2BD6B37.2BD6B41.B2D6.DB$15.9B3D
3B22.D3B45.2D9B40.D4B3D4B37.DBD3.3D4B37.3D4B42.B3D9B38.3DB52.3B3DB40.
2B3D4B41.B3D7B35.B3D7B40.2D2B4.BDBD$14.17B21.9B41.10B39.B2DB.3A3B3A 36.B2DB.3A3B3A37.6B41.14B36.2B.4B51.8B38.8B42.13B33.13B40.3B3.2B2D$
13.4B.13B19.6BD6B39.4B2D5B38.DBD3.7B38.D11B39.7B39.14B36.3B.4B50.8B
37.4B.3B43.7BD5B33.7BD5B40.4BD4B$12.4B3.5B2D5B19.7B2D4B38.4B2D7B44.B 2DB41.6B2DB42.BABD2B40.4B2D2B2.4B34.4BD4B49.7BDBD35.2D2B.B2DB45.3B2D 4B37.3B2D4B41.3B2D4B$11.4B5.5B2D4B20.5B2D4B39.6BD6B44.BDBD41.4B.BDBD
42.BA2BD2B41.BDBDB4.3BD33.5BD2B46.11B2DB35.B2D2.BDBD44.5B2D42.2B2D.3B
39.5B2D2B$10.4B5.5BD5B22.10B41.9B47.DB43.3B2.DB43.BA3D2B43.BD6.B2DB 32.3B3D2B44.B3A10BDB35.DB4.DB44.7B43.3B2.4B37.9B$9.4B6.2BA5BA3B21.9B
2D45.3BD142.8B51.DBD33.7B44.15B87.4B2.B45.B4.4B34.13B$8.4B6.3BA5BA2B 22.BA5BA2DB46.B2DB141.9B86.8B41.17B86.3DB55.B3D33.13B$7.4B7.3BA5BAB
23.BA5BA2BD47.DBD141.5B2D2B86.5BDBD40.18B86.2BD57.D2B34.11B$6.4B9.9B 25.A5BA197.BDBDB87.3A2BDC2A40.18B86.D59.D36.9B$5.4B10.8B26.7B199.BD
88.6BD2B42.15B184.9B$4.4B12.6B29.3B291.9B42.BACA10B185.9B$3.4B13.3B.B
30.3B291.9B43.B2D9B186.3A3B3A$2.4B15.B34.B291.11B42.DBD2.3B191.7B$.3D
B342.13B47.2B191.7B$.2BD343.13B242.3B$2.D346.9B244.3B$603.B! Replacing the blocks on the right with gliders needed a little trial and error, and then it was just a matter of picking the recipes that seemed to have gliders coming from the right directions, and where the reaction envelopes were as small as possible on the construction side. It might be worth adjusting those three-glider scripts to rewind all the recipe gliders by 20 cells or so, so that it's easier to see glider directions in this kind of LifeHistory blueprint. Sarp Posts: 219 Joined: March 1st, 2015, 1:28 pm ### Re: Soup search results Natural loafer! Code: Select all x = 16, y = 16, rule = B3/S23 bbbobbobobooboob$
booobbobbbbbbooo$obbbooboboobbobb$
bobbobbobbbboboo$bbbbbobbobbbbbob$
oobbobobobobobbo$bbbooobobbobbobb$
bbooobbobooobobb$oobbbbbbbbobbobb$
obbbobooobbooboo$bbobboooobboobob$
boobbbbbbbbbbboo$boooobbbboobbbob$
obb5obbbobbbobbb$bbbboobobooobobb$
oobbboboboobbboo!
Last edited by dvgrn on April 1st, 2019, 9:49 am, edited 1 time in total.
Reason: added link to the relevant Catagolue page (from exactly one year ago, by a strange coincidence)

Freywa
Posts: 718
Joined: June 23rd, 2011, 3:20 am
Location: Singapore
Contact:

### Re: Soup search results

Sarp wrote:Natural loafer!

Code: Select all

x = 16, y = 16, rule = B3/S23
bbbobbobobooboob$booobbobbbbbbooo$
obbbooboboobbobb$bobbobbobbbboboo$
bbbbbobbobbbbbob$oobbobobobobobbo$
bbbooobobbobbobb$bbooobbobooobobb$
oobbbbbbbbobbobb$obbbobooobbooboo$
bbobboooobboobob$boobbbbbbbbbbboo$
boooobbbboobbbob$obb5obbbobbbobbb$
bbbboobobooobobb$oobbboboboobbboo! It looks like this came from that spam loafer symmetry...? Catalogue shows no actual loafer-producing soup. Princess of Science, Parcly Taxel Goldtiger997 Posts: 628 Joined: June 21st, 2016, 8:00 am ### Re: Soup search results dvgrn wrote:Nice one! Even I can make a recipe for that one, with a lot of help from Goldtiger997's scripts. Can anyone beat 15 gliders? Code: Select all x = 46, y = 53, rule = B3/S23 26bobo$26b2o$27bo2$44bo$43bo$43b3o$8bo14bo$9b2o12bobo$8b2o13b2o18bo$
42bo$42b3o$2bo16bo$3bo16b2o$b3o15b2o4$4bobo$5b2o$5bo11$bo$b2o$obo5$19b 2o$20b2o$19bo$42b3o$42bo$8b2o13b2o18bo$9b2o12bobo$8bo14bo$43b3o$43bo$44bo2$27bo$26b2o$26bobo!
It's nice to see that my scripts aren't too hard to use. Here's a reduction to 14 gliders:

Code: Select all

x = 46, y = 53, rule = B3/S23
26bobo$26b2o$27bo2$44bo$43bo$43b3o$8bo14bo$9b2o12bobo$8b2o13b2o3$2bo$
3bo$b3o2$26bo$26b2o3bo$4bobo18bobo2b2o$5b2o23bobo$5bo11$bo$b2o$obo3$
40bo$39b2o$39bobo5$8b2o13b2o$9b2o12bobo$8bo14bo$43b3o$43bo$44bo2$27bo$
26b2o$26bobo! Moosey Posts: 3712 Joined: January 27th, 2019, 5:54 pm Location: A house, or perhaps the OCA board. Or [click to not expand] Contact: ### Re: Soup search results Freywa wrote: Sarp wrote:Natural loafer! Code: Select all x = 16, y = 16, rule = B3/S23 bbbobbobobooboob$
booobbobbbbbbooo$obbbooboboobbobb$
bobbobbobbbboboo$bbbbbobbobbbbbob$
oobbobobobobobbo$bbbooobobbobbobb$
bbooobbobooobobb$oobbbbbbbbobbobb$
obbbobooobbooboo$bbobboooobboobob$
boobbbbbbbbbbboo$boooobbbboobbbob$
obb5obbbobbbobbb$bbbboobobooobobb$
oobbboboboobbboo!
It looks like this came from that spam loafer symmetry...? Catalogue shows no actual loafer-producing soup.
Everyone has been holding onto April fools pranks for awhile.
My CA rules can be found here

Bill Watterson once wrote: "How do soldiers killing each other solve the world's problems?"
Nanho walåt derwo esaato?

Code: Select all

x = 4, y = 5, rule = B34e5e67c/S23ce45
4o2$b2o$o2bo$b2o! [[ TRACK 0 -7/325 ZOOM 16 THEME 0 ]] Ian07 Posts: 620 Joined: September 22nd, 2018, 8:48 am ### Re: Soup search results Some new long-lived soup records: C1 soup with final population of 5854: Code: Select all x = 16, y = 16, rule = B3/S23 oooboboobbbobboo$
obbboobbobbooobo$bbbobobboboobbbb$
bbooboobbbobooob$bbbbbobobbbboobo$
bobobbbooooobooo$bboooobbbbobbobb$
bbobbbbbobooobbo$oobboboobbbooboo$
oobobobboobbbboo$oooobbbbobbobbbo$
bbbobooobbbobbob$boboobbboooooboo$
obbobobbobobbobb$obbobbooobbboboo$
obooooobbbbobboo!
Haul: https://catagolue.appspot.com/haul/b3s2 ... 93008c889f (Arie Paap, 2019-04-06)

1638-tick C4_1 diehard:

Code: Select all

x = 31, y = 31, rule = B3/S23
oobboobobbooobbobbbooboboobbooo$obbooobboboobooobbbbobobboboobo$
ooooboobbbbbooooobobobooboboobb$booobbbooboboboooboooobobboooob$
bbboooboobooooboooooooobboobboo$oooboobboobbobbobobbooooooobooo$
obbbboboobbbooooobooobbobbbbobb$bboobooboobobbbbbbbobobboboobbo$
oooboobboobobbbooooooooooooobob$bbbooobooobobbbobbbobooobobbbbb$
ooooooobobbobboooobbbbbbbbooboo$obbooboooobbobbooobboooobbobboo$
bbooobobobbbobbbbboobbbbooooobo$bbbboobboboobooobobbbbbboboboob$
bboooboboboobbbobobbobbbobbooob$ooooooobooooboooooboooobooooooo$
booobbobbbobbobobbboobobobooobb$boobobobbbbbboboooboobobboobbbb$
obooooobbbboobbbbbobbbobobooobb$oobbobboooobbooobbobbooooboobbo$
ooboobbbbbbbboooobbobbobooooooo$bbbbbobooobobbbobbbobooobooobbb$
bobooooooooooooobbboboobboobooo$obboobobbobobbbbbbboboobooboobb$
bbobbbbobbooobooooobbboobobbbbo$ooobooooooobbobobbobboobboobooo$
oobboobboooooooobooooboobooobbb$boooobbobooooboooboboboobbbooob$
bbooboboobobobooooobbbbbooboooo$oboobobbobobbbboooboobobbooobbo$
ooobbooboboobbbobbooobboboobboo!
Haul: https://catagolue.appspot.com/haul/b3s2 ... 1b7e894c17 (carybe, 2019-03-29)

D4_+2 soup with final population of 12760, found with GPU:

Code: Select all

x = 32, y = 31, rule = B3/S23
oobboobooobboobooboobboooboobboo$oooobbbobboobbbbbbbboobbobbboooo$
ooooobobbobbbobbbbobbbobbobooooo$oboboboboobbboooooobbboobobobobo$
obobobbbobobbboooobbbobobbbobobo$oobobobbbboobobbbboboobbbboboboo$
obobboooooboboobboobobooooobbobo$obbbbboobboobbobbobboobboobbbbbo$
oobbbbbboobooboooobooboobbbbbboo$bbooooobbbboooboobooobbbbooooobb$
oboboooboobboboooobobboobooobobo$ooboobbboooooboooobooooobbbooboo$
bbobbbobbboboobooboobobbbobbbobb$obbooooboobbbbobbobbbbooboooobbo$
bobboobbbbbbobbbbbbobbbbbboobbob$bbooboobooooobbbbbbooooobooboobb$
bobboobbbbbbobbbbbbobbbbbboobbob$obbooooboobbbbobbobbbbooboooobbo$
bbobbbobbboboobooboobobbbobbbobb$ooboobbboooooboooobooooobbbooboo$
oboboooboobboboooobobboobooobobo$bbooooobbbboooboobooobbbbooooobb$
oobbbbbboobooboooobooboobbbbbboo$obbbbboobboobbobbobboobboobbbbbo$
obobboooooboboobboobobooooobbobo$oobobobbbboobobbbboboobbbboboboo$
obobobbbobobbboooobbbobobbbobobo$oboboboboobbboooooobbboobobobobo$
ooooobobbobbbobbbbobbbobbobooooo$oooobbbobboobbbbbbbboobbobbboooo$
oobboobooobboobooboobboooboobboo!
Haul: https://catagolue.appspot.com/haul/b3s2 ... fffabe2ae9 (Arie Paap, 2019-04-01)

A for awesome
Posts: 2119
Joined: September 13th, 2014, 5:36 pm
Location: Pembina University, Home of the Gliders
Contact:

### Re: Soup search results

The first methuselah_44k just showed up, lasting 44098 gens (found by rliston):

Code: Select all

x = 16, y = 16, rule = B3/S23
boooobobbbobbobb$bboboooobbbbobob$
obbbooobbobbbobb$obbbobooobobbooo$
oboobobbobbobooo$bobbbboboboboobo$
oobbobbbobbboobo$oooooobobboboooo$
oobooooobbbbobbb$bbbbbobooobobboo$
booobbbbooobobbo$boboobbboooobooo$
oboobobboobbbooo$bobbboobobbbobbo$
bbbobbbobbbbooob$bboooobbbbbbboob! megasized_136h in H4_+2 (found by Arie Paap): Code: Select all x = 32, y = 31, rule = B3/S23 bbobbobooobobbbbbbbbobooobobbobb$
bbobobbbbbobobobbobobobbbbbobobb$obobboooooobboooooobboooooobbobo$
obobbobooobobboooobbobooobobbobo$booobbbbbbooboobbooboobbbbbbooob$
boboobobboobobbbbbboboobboboobob$ooooobbboobbboobboobbboobbbooooo$
bobbbbbbbbbboooooooobbbbbbbbbbob$bbobooobbbobbbbbbbbbbobbbooobobb$
bobobbbboobobobbbboboboobbbbobob$bbbobobboobbobobbobobboobbobobbb$
bboboobbbbbobobbbbobobbbbboobobb$boboooboobbbbbobbobbbbboobooobob$
bbbbboobbooobboooobbooobboobbbbb$bbooooboobbbbbboobbbbbbooboooobb$
ooobbooooobbbboooobbbbooooobbooo$bbooooboobbbbbboobbbbbbooboooobb$
bbbbboobbooobboooobbooobboobbbbb$boboooboobbbbbobbobbbbboobooobob$
bboboobbbbbobobbbbobobbbbboobobb$bbbobobboobbobobbobobboobbobobbb$
bobobbbboobobobbbboboboobbbbobob$bbobooobbbobbbbbbbbbbobbbooobobb$
bobbbbbbbbbboooooooobbbbbbbbbbob$ooooobbboobbboobboobbboobbbooooo$
boboobobboobobbbbbboboobboboobob$booobbbbbbooboobbooboobbbbbbooob$
obobbobooobobboooobbobooobobbobo$obobboooooobboooooobboooooobbobo$
bbobobbbbbobobobbobobobbbbbobobb$bbobbobooobobbbbbbbbobooobobbobb! praosylen#5847 (Discord) x₁=ηx V*_η=c²√(Λη) K=(Λu²)/2 Pₐ=1−1/(∫^∞_t₀(p(t)ˡ⁽ᵗ⁾)dt) $$x_1=\eta x$$ $$V^*_\eta=c^2\sqrt{\Lambda\eta}$$ $$K=\frac{\Lambda u^2}2$$ $$P_a=1-\frac1{\int^\infty_{t_0}p(t)^{l(t)}dt}$$ googoIpIex Posts: 260 Joined: February 28th, 2019, 4:49 pm Location: Sqrt(-1) ### Re: Soup search results minimal form of the 5854 final population soup: Code: Select all x = 23, y = 22, rule = B3/S23 15b2o$14bobo$14b3o$3bo8b3o$2b2o7b2o5b4o$2b3o2bo3bo2bo3bo2bo$2bo3b2o4b 3o6b2o$3bo3bo4b3o$3bobo13b2o$19bo$8bob2o5bo$8b3o6bo$9bo6bobo$18bo$2o 11bo2bo$o7bo5b2o$2ob2obobo$bobobo$2bo3bobo2b3o$7bo6bo$11b2obo$13bo!

woomy on a vroomy

A for awesome
Posts: 2119
Joined: September 13th, 2014, 5:36 pm
Location: Pembina University, Home of the Gliders
Contact:

### Re: Soup search results

New Coe's P8 variant found by carybe:

Code: Select all

x = 31, y = 31, rule = B3/S23
boobooooboooooobbbbbbobbboobbob$oooobbooooboboboboboboobboobooo$
oobbbboooboobbbobbbbbobbbooobob$bobboobbobbbbobbbbobboooobbbobb$
obbobbbbbbbboboobbooobboobbbooo$obbobbbobbbbbbboobbobbbbbbbbooo$
ooobbboboooooooobobobobooboobbb$ooobbobbobbobobooboboboboboobbb$
booobboooboobobobobooooobbbobob$oobbbbobboboobooobbbboobobboooo$
obobbbobobbbbooooboobboobbobbbb$ooobbboooobboboobobbobobooobbob$
obbbobobboboobbbbbobobbobboobbb$oobobbooobobboobbobobbobobbbbob$
obbbobobboooboooobbboobobobbbbb$booboooooooobbooobbooooooooboob$
bbbbboboboobbboooobooobbobobbbo$bobbbbobobbobobboobbobooobboboo$
bbboobbobbobobbbbboobobbobobbbo$bobbooobobobboboobobboooobbbooo$
bbbbobboobbooboooobbbbobobbbobo$oooobboboobbbboooboobobbobbbboo$
bobobbboooooboboboboobooobbooob$bbbooboboboboboobobobbobbobbooo$
bbboobooboboboboooooooobobbbooo$ooobbbbbbbbobboobbbbbbbobbbobbo$
ooobbboobbooobboobobbbbbbbbobbo$bbobbboooobbobbbbobbbbobboobbob$
bobooobbbobbbbbobbboobooobbbboo$oooboobbooboboboboboboooobboooo$
bobboobbbobbbbbboooooobooooboob!
praosylen#5847 (Discord)

x₁=ηx
V*_η=c²√(Λη)
K=(Λu²)/2
Pₐ=1−1/(∫^∞_t₀(p(t)ˡ⁽ᵗ⁾)dt)

$$x_1=\eta x$$
$$V^*_\eta=c^2\sqrt{\Lambda\eta}$$
$$K=\frac{\Lambda u^2}2$$
$$P_a=1-\frac1{\int^\infty_{t_0}p(t)^{l(t)}dt}$$

Bullet51
Posts: 564
Joined: July 21st, 2014, 4:35 am

### Re: Soup search results

Dimerized and Variation:

Code: Select all

x = 57, y = 27, rule = B3/S23
48bo$41bo5bobo$13bo25bob2o5bo$12bobo24bobo$13bo28bo3b5o$40bobo3bo4bo$
11b5o23bo3bo5bo2bo$2o9bo4bo22bo2bo5b3obo2bo$2o2b3o7b2obo22b2o4b4o2bobo
bo$6bo7b2obo2bo11b2o2b2o7bo2bo3bo2bo$5bobo3bo5bobobo13bo2bo7bobo2b2o$7b2obobo4bo2bo10b3o4bo8bo$6bo3bo2bo2b2o14bob2obo$11b2o23bo13bo$49bob2o
bo$12bo26bo8bo4b3o$12b2o20b2o2bobo7bo2bo$11bo2b2o15bo2bo3bo2bo7b2o2b2o$13bobo14bobobo2b4o4b2o$15bo15bo2bob3o5bo2bo$34bo2bo5bo3bo$35bo4bo3bob o$15b2o19b5o3bo$15b2o28bobo$38bo5b2obo$37bobo5bo$38bo!

Still drifting.

Jormungant
Posts: 240
Joined: May 27th, 2016, 1:01 am

### Re: Soup search results

Bullet51 wrote:Dimerized and Variation:
ditto

Code: Select all

x = 59, y = 60, rule = LifeHistory
2$19.8B$19.6B2AB$19.6B2AB$9.2B.B.2B3.9B$9.20B$9.17BA2B$9.17BABA3B9.6B$9.3B.13B2A2BA16B$9.B2A5B.8B.B2A2B2.6B2A5B$9.B2A5B.7B.3BA.3B.3A2B2A4B
$9.8B7.2B.4B2.2BA6B.4B$9.2BA5B7.2B2.B2AB.BABA9B$9.2B2A4B.6B2.2BA2BAB 2A12B$9.BA2B2A2B.4B.2B.3BABAB.BA11B$3B.8BABA2B.8BA3BA15B$3B.7B.2BA2B.
3BA3BABA3B.2B.12B$3B.6B.4B.6B2ABA2BA2B2.14B$11B.4B2.2BABAB.B2AB2.2B8.
6B$2A3BA5B2.4B.3BA12B7.7B$2AB2A4B2.2B3A3B3A5BA11B.8B$4BABA3B.2BABA11B 2A10B.6B2A$5BA5B2AB2A10BA2B2A8B.6B2AB$5B3A3BABA14BABA3B12.2B$8B.2B3A
16BA19B7.2B$9B.4B2.30BA3B$7B.B2.4B.3B5.3B.4B2.10BABA3B$2B7.18B2.4B.8B A2B2A3B$9.3BA16B3A11B2A5B$9.3BABA14BABA3B3A5BA6B$9.3B2A2BA10B2AB2A5BA
11B.9B$9.5B2A11BABA2B.3BABA3B2AB2.2B.6B2AB$9.6BA5B3A3B3A2B2.4B2ABA2BA
2B4.3A2B2AB$21BA3B.4B2.5BA3BABA3B.3BA6B$B2A6B.2B2.B2AB.BABA2B2.4B.10B
A3BA3BABA6B$B2A2B3A4.2BA2BAB2A6B.4B.5B.2B.3BABAB2A8B$.6BA3B.3BABA3BA
3B.2BA2B.8B2.2BA2BAB.BA7B$6BABA3BA3BA8B.2BABA4B5.2B2.B2AB.10B$8B2ABAB
A3B.10B2A2BA3B4.2B.4B2.B.8B$7BAB.BA2BA2B2.11B2A5B7.B.A12B$10B.B2AB2.
2B4.8BA5B7.2B2AB.B6.2B$8B.B2.4B.5B.12B.2B6.BA2B2AB6.2B$12BA.B.B2.12B
2AB2.2B7.2BABAB$7.2B.B2A2B4.7BA3BA2BA2B10.3BAB$7.2B2A2BAB4.8B2ABABA3B
.B8.5B$7.2BABA2B5.3B.2BABA3BA3BA5B5.5B$7.2BA3B6.3B.3BA3B.3BABAB.BAB4.
3B2AB$7.6B6.B2A2B3A3B.2BA2BAB2A9B2AB$7.6B7.2A9B2.B2AB.BABA6B.2B$7.B2A 3B8.B.8B.4B2.2BA6B3.2B$7.B2A3B10.6B3.2BA.3B.3A2B2AB$8.2B.2B16.2B.B2A 2B.7B2A2B$7.2B20.2B2A2BA3B6.2B.B$29.2BABA5B$29.2BA7B$29.10B$29.10B$29.B2A7B$23.B5.B2A9B!

Freywa
Posts: 718
Joined: June 23rd, 2011, 3:20 am
Location: Singapore
Contact:

### Re: Soup search results

Based on this soup, super loaf in 10 gliders (LifeWiki/Niemiec says 30):

Code: Select all

x = 30, y = 30, rule = B3/S23
9bo$7bobo$8b2o8bo$16b2o$17b2o3$20bo$19bobo$19bo2bo$20b2o$25bobo$25b2o$11bo14bo$11b2o$10bobo$2o$b2o11b2o$o14b2o$14bo$27b3o$27bo$28bo5$12bo$
12b2o$11bobo! Bullet51 wrote:Dimerized and Variation: And then some: Code: Select all x = 24, y = 24, rule = B3/S23 7b2o$7b2o3$7b3o$10bo$7bo2b2o$2o7bobo$2o2b2o$5b2o$4bo2bo$7bo2b2o$5bobo 3b2o3b2o$12bo4b2o$16bo2bo$19bo2b2o$11b3o3bobo2b2o$14bo$11bo2b2o$13bobo
3$15b2o$15b2o!
Princess of Science, Parcly Taxel

mniemiec
Posts: 1191
Joined: June 1st, 2013, 12:00 am

### Re: Soup search results

Freywa wrote:Based on this soup, super loaf in 10 gliders (LifeWiki/Niemiec says 30): ...
Billabob posted a similar 10-glider synthesis (the two clean-up gliders were sightly father away) on 2018-04-10.

Freywa
Posts: 718
Joined: June 23rd, 2011, 3:20 am
Location: Singapore
Contact:

### Re: Soup search results

I'm not one to be outdone though. There's this 17-cell heart-shaped SL that is listed as requiring 108 gliders; here it is in 13 from this soup:

Code: Select all

x = 166, y = 36, rule = B3/S23
bo$2bo$3o5$60bobo84bo$60b2o86bo$61bo84b3o2$43bo107bo$43bo23bo82bobo$
43bo21b2o82bo2bo$66b2o69bo12b2o$137bo$131bo5bo$132bo$130b3o$135b2o$25b o109b2o$26b2o131bo$25b2o9bo113b2ob2o3bobo$35b2o112bobobobo2bobo$32bo2b obo111bo2bo2bo3bo$30bobo117bobobo$31b2o118bobo$152bo10b2o$163bobo$163b
o3$57bo$56b2o6bo$56bobo4b2o$63bobo!
Edit: Never mind, found that 9G synthesis.
Last edited by Freywa on April 15th, 2019, 9:32 am, edited 1 time in total.
Princess of Science, Parcly Taxel

dvgrn
Moderator
Posts: 7270
Joined: May 17th, 2009, 11:00 pm
Contact:

### Re: Soup search results

Freywa wrote:
Bullet51 wrote:Dimerized and Variation:
And then some...
Combining Bullet51's, Jormungant's and Freywa's variations gives a surprisingly simple agar. Might be a bit of a challenge to synthesize the larger finitizations of it, though:

Code: Select all

x = 40, y = 40, rule = LifeHistory
19.2A$18.B2AB$19.2B$17.3B$17.ABAB10.2A$15.A2B2AB9.B2AB$5.B9.3BA2B10.
2B$4.2AB.3B4.3AB10.3B$4.2A2B2AB5.3B10.ABAB$5.B.2B2A2B2.2B10.A2B2AB$7.
BA2BAB2.BAB9.3BA2B$9.2BA3B2A2B.3B4.3AB$9.ABA.B2A4B2AB5.3B$14.3B2.2B2A 2B2.2B$15.2B2.BA2BAB2.BAB$13.3B5.2BA3B2A2B.3B$13.ABAB4.ABA.B2A4B2AB$11.A2B2AB9.3B2.2B2A2B$.B9.3BA2B10.2B2.BA2BAB.B$2AB.3B4.3AB10.3B5.2BA 2B2A$2A2B2AB5.3B10.ABAB4.ABA.B2A$.B.2B2A2B2.2B10.A2B2AB9.B$3.BA2BAB2.
BAB9.3BA2B$5.2BA3B2A2B.3B4.3AB$5.ABA.B2A4B2AB5.3B$10.3B2.2B2A2B2.2B$
11.2B2.BA2BAB2.BAB$9.3B5.2BA3B2A2B.3B$9.ABAB4.ABA.B2A4B2AB$7.A2B2AB9. 3B2.2B2A2B$7.3BA2B10.2B2.BA2BAB.B$7.3AB10.3B5.2BA2B2A$8.3B10.ABAB4.AB
A.B2A$7.2B10.A2B2AB9.B$6.B2AB9.3BA2B$7.2A10.3AB$20.3B$19.2B$18.B2AB$19.2A! Was this really not a known variant of Coe's p8? All I seem to be able to find is a Random Agar experiment by Jason Summers in 2004, finding a simple twinned Coe's p8: Code: Select all #N Twinned Coe's p8 agar predecessor #O Jason Summers, 12 August 2004 #C "Twin Coe's-p8's. (Did we know they could be combined like this?)" #C Pattern adjusted to fit on a simple bounded-grid torus in Golly. x = 147, y = 49, rule = B3/S23:T147,49 bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4b o3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo$4b2obo3b5obobo2bo2bobob
5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo
2b2ob3o3bobo2bobob3ob2obo$b3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobob 5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo 2b2o$bo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o
3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bo$2bo4b2o2bo4bobo4b obo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob 2o4bob2ob3obobo2bobo3b3ob2o2bo$2obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bo
bo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob
2o4bob2obo$ob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo 4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bo$b2obo3b5obo
bo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo
2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo$o3bobo2bobob3ob2obo4b2obo3b5obobo 2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b 2o4bo3bo2b2ob2o$3bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2b
o2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo$4b2o2b o4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bob ob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo$obo2bobo3b3ob2o2bo3bo4b2o2bo
4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobo
b5o3bob2o4bob2ob3o$4o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo 4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobobo$bo
3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4b
obo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2o$bobo2bobob3ob2obo4b2obo 3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4b obo4bo2b2o4bo3bo2b2ob3o$o2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5o
bobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo$b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2b o2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo$2bobo3b3ob2o2bo3bo4b2o
2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2b
obob5o3bob2o4bob2ob3obobo$o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2b o4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bob ob4o$2b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4b
obo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo$o2bobob3ob2obo4b 2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bo bo4bobo4bo2b2o4bo3bo2b2ob3o3bo$2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo
3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4b
obo4bo$2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obo bo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o$bo3b3ob2o2bo3bo
4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo
2bo2bobob5o3bob2o4bob2ob3obobo2bo$bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo 4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b5obobo 2bo2bobob5o$4obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o
2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3bo$obob3ob2o bo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2b o4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo$3bo3bo2b2ob3o3bobo2bobob3ob2obo4b
2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bo
bo4bobo4bo2b2o$4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo 3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo$2b3ob
2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo
3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo$2o4bob2ob3obobo2bobo3b3ob 2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo 3b5obobo2bo2bobob5o3bo$obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o
2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b2obo3b
4o$b3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo 3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobo$o3bo2b2ob3o3bobo2bo
bob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo
3bo4b2o2bo4bobo4bobo4bo2b2o$bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3o b2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o2bo3bo4b 2o2bo$2ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2o
bo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3bo$3bob2ob3obobo2b obo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2ob o4b2obo3b5obobo2bo2bobob5o3bob2o$bo2bo2bobob5o3bob2o4bob2ob3obobo2bobo
3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob2obo4b
2obo3b5obo$ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3o b2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob2o$bo2b2ob3o
3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b
3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo$o4bobo4bo2b2o4bo3bo2b2ob3o3bobo 2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o 2bo3bo4b2o2bo4bo$2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bo
bob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3o$ob2ob 3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bob ob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o$bo2bobob5o3bob2o4bob2ob3obobo
2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3ob
2obo4b2obo3b5obobo$obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bob o3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo2bobob3obo$b2o
b3o3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo
3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo$2bobo4bo2b2o4bo3bo2b2ob3o 3bobo2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b 3ob2o2bo3bo4b2o2bo4bobo$bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bob
o2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bob2ob3obobo2bobo3b3ob2o
$ob3obobo2bobo3b3ob2o2bo3bo4b2o2bo4bobo4bobo4bo2b2o4bo3bo2b2ob3o3bobo 2bobob3ob2obo4b2obo3b5obobo2bo2bobob5o3bob2o4bobo! simsim314 Posts: 1766 Joined: February 10th, 2014, 1:27 pm ### Re: Soup search results @dvgrn The agars might be interesting for many reasons, one thought cross my mind is super fast computers. So if we ever hit the holy grail of something which has self replication and developed brain, fast computers might be very useful in this "smart self replication" CGOL universe. And I couldn't find the updated information about agars, like we have for conduits. Do we have a thread? Maybe we can open a thread about light speed and inside agar information passage where we would collect all the information from all the places about this topic? Maybe the topic is computers with wires (propagating signal in stable or oscillating environments). The latelly posted wires are also related to this topic I think. dvgrn Moderator Posts: 7270 Joined: May 17th, 2009, 11:00 pm Location: Madison, WI Contact: ### Re: Soup search results simsim314 wrote:@dvgrn The agars might be interesting for many reasons, one thought cross my mind is super fast computers. So if we ever hit the holy grail of something which has self replication and developed brain, fast computers might be very useful in this "smart self replication" CGOL universe. And I couldn't find the updated information about agars, like we have for conduits. Do we have a thread? There are a lot of agars out there, but none that I know of that allow for fast information transfer... repeatably, anyway. There are certainly lots of catastrophic-collapse signals that transmit information through an agar at or near lightspeed, once... but they tend to be difficult to clean up afterwards. The exceptions are just the obvious ones, not particularly interesting -- known telegraph or 2c/3 wires or whatever, stacked into agars. But there's an extremely huge lot I don't know about agars, so please don't take that as a definitive answer or anything. simsim314 wrote:Maybe we can open a thread about light speed and inside agar information passage where we would collect all the information from all the places about this topic? Maybe the topic is computers with wires (propagating signal in stable or oscillating environments). The latelly posted wires are also related to this topic I think. Never hurts to have a new collection thread. I just can't think of anything I'd want to put in it at the moment. What about these new Coe's p8 agars, for example? How might they be made into something that's useful in practice for transmitting signals? simsim314 Posts: 1766 Joined: February 10th, 2014, 1:27 pm ### Re: Soup search results dvgrn wrote: What about these new Coe's p8 agars, for example? How might they be made into something that's useful in practice for transmitting signals? We would obviously need more search tools than we have today, that will be directed to find signals inside agars. I think similar algorithms to those we're using to search signals inside static circuitry (like dr and bellman). This is doable in principle. To illustrate what can be done in principle as a visual illustration, wire crossing found/rediscovered latelly by me can demonstrate how signal can propagate inside NxN grid already inside CGOL: Code: Select all x = 273, y = 185, rule = B3/S23 161bo$161bo$161bo2$157b3o3b3o2$161bo$161bo$161bo3$196bo$196bo$159b3o
34bo2$157bo5bo28b3o3b3o$157bo5bo$157bo5bo32bo$196bo$159b3o34bo5$161bo
32b3o$161bo$161bo30bo5bo$192bo5bo$157b3o3b3o26bo5bo2$161bo32b3o$161bo$161bo3$196bo$196bo$159b3o34bo2$157bo5bo28b3o3b3o$157bo5bo$157bo5bo32bo$196bo$159b3o34bo5$161bo32b3o$161bo$161bo30bo5bo$192bo5bo$157b3o3b3o
26bo5bo2$161bo32b3o$161bo$161bo3$4bo47bo23bo23bo23bo23bo23bo23bo23bo
23bo23bo$4bo47bo23bo23bo23bo23bo23bo23bo23bo23bo23bo$4bo10b3o34bo10b3o
10bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b
3o10bo$27b3o$3o3b3o4bo5bo7bobo12b3o3b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b
3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b
3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o$13bo5bo7b3o12bobo16bo5bo17bo5bo17bo5bo 17bo5bo17bo5bo17bo5bo17bo5bo17bo5bo17bo5bo$4bo8bo5bo22b3o7bo8bo5bo8bo
8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo
8bo$4bo47bo23bo23bo23bo23bo23bo23bo23bo23bo23bo$4bo10b3o34bo10b3o10bo
10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo10b3o
10bo5$161bo32b3o$161bo$161bo30bo5bo$192bo5bo$157b3o3b3o26bo5bo2$161bo
32b3o$161bo$161bo3$196bo$196bo$159b3o34bo2$157bo5bo28b3o3b3o$157bo5bo$
157bo5bo32bo$196bo$159b3o34bo5$161bo32b3o$161bo$161bo30bo5bo$192bo5bo$157b3o3b3o26bo5bo2$161bo32b3o$161bo$161bo3$124bo23bo23bo23bo23bo47bo$
124bo23bo23bo23bo23bo47bo$124bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo34b 3o10bo$243b3o$120b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo 5bo4b3o3b3o3b3o12bobo7bo5bo4b3o3b3o$133bo5bo17bo5bo17bo5bo17bo5bo16bob
o12b3o7bo5bo$124bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo8bo7b3o22bo5bo8bo$
124bo23bo23bo23bo23bo47bo$124bo10b3o10bo10b3o10bo10b3o10bo10b3o10bo34b 3o10bo5$161bo32b3o$161bo$161bo30bo5bo$192bo5bo$157b3o3b3o26bo5bo2$161b o32b3o$161bo$161bo3$196bo$159b3o34bo$159bobo34bo$159b3o$192b3o3b3o2$196bo$196bo$196bo5$194b3o2$192bo5bo$160b3o29bo5bo$160bobo29bo5bo$160b
3o$194b3o5$196bo$196bo$196bo2$192b3o3b3o2$196bo$196bo$196bo4$194b3o$
194bobo$194b3o13$195b3o$195bobo$195b3o!

About the new thread - I hope to get to it with and explanation how agars, wires, wicks, light speed signals are all interconnected in some possibility which needs to collect data in order to allow for some futuristic projects for futuristic CGOL computers. The project will need some goals that will include searching utilities inside oscillators for the existing tools - dr and bellman, it will seek documentation similar to what we have in conduits. Probably best to start from golly, I think Jason also collected some agars right?

Even clearer illustration of agar based signals demonstration:

Code: Select all

x = 155, y = 123, rule = B3/S23
9$52b3o10bo10b3o10bo10b3o10bo10b3o10bo$65bo23bo23bo23bo$50bo5bo8bo8bo 5bo8bo8bo5bo8bo8bo5bo8bo$50bo5bo17bo5bo17bo5bo17bo5bo$50bo5bo4b3o3b3o 4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o2$52b3o10bo10b3o10bo10b3o10b
o10b3o10bo$65bo23bo23bo23bo$65bo23bo23bo23bo3$52bo23bo23bo23bo$52bo23b
o23bo23bo$52bo10b3o10bo10b3o10bo10b3o10bo10b3o$27b3o$27bobo12b3o3b3o3b 3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo$27b3o12bobo16bo5bo
17bo5bo17bo5bo17bo5bo$42b3o7bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo$52bo
23bo23bo23bo$52bo10b3o10bo10b3o10bo10b3o10bo10b3o5$52b3o10bo10b3o10bo
10b3o10bo10b3o10bo$65bo23bo23bo23bo$50bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo
8bo$50bo5bo17bo5bo17bo5bo17bo5bo$50bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b
3o3b3o4bo5bo4b3o3b3o2$52b3o10bo10b3o10bo10b3o10bo10b3o10bo$65bo23bo23b
o23bo$65bo23bo23bo23bo3$52bo23bo23bo23bo$52bo23bo23bo23bo$52bo10b3o10b
o10b3o10bo10b3o10bo10b3o$27b3o$27bobo12b3o3b3o3b3o4bo5bo4b3o3b3o4bo5bo
4b3o3b3o4bo5bo4b3o3b3o4bo5bo$27b3o12bobo16bo5bo17bo5bo17bo5bo17bo5bo$
42b3o7bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo$52bo23bo23bo23bo$52bo10b3o
10bo10b3o10bo10b3o10bo10b3o5$52b3o10bo10b3o10bo10b3o10bo10b3o10bo$65bo
23bo23bo23bo$50bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo8bo$50bo5bo17bo5bo17bo
5bo17bo5bo$50bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o2$
52b3o10bo10b3o10bo10b3o10bo10b3o10bo$65bo23bo23bo23bo$65bo23bo23bo23bo
3$52bo23bo23bo23bo$52bo23bo23bo23bo$52bo10b3o10bo10b3o10bo10b3o10bo10b 3o2$48b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo$61bo5bo 17bo5bo17bo5bo17bo5bo$52bo8bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo$52bo23bo 23bo23bo$52bo10b3o10bo10b3o10bo10b3o10bo10b3o5$52b3o10bo10b3o10bo10b3o 10bo10b3o10bo$65bo23bo23bo23bo$50bo5bo8bo8bo5bo8bo8bo5bo8bo8bo5bo8bo$
50bo5bo17bo5bo17bo5bo17bo5bo$50bo5bo4b3o3b3o4bo5bo4b3o3b3o4bo5bo4b3o3b 3o4bo5bo4b3o3b3o2$52b3o10bo10b3o10bo10b3o10bo10b3o10bo$65bo23bo23bo23b o$65bo23bo23bo23bo4$65b3o$65bobo$65b3o13$64b3o$64bobo$64b3o!

Last edited by simsim314 on April 15th, 2019, 12:54 pm, edited 1 time in total.

Freywa
Posts: 718
Joined: June 23rd, 2011, 3:20 am
Location: Singapore
Contact:

### Re: Soup search results

In response to a challenge from over three years ago on another thread, "minus zero" in 6 gliders from this soup:

Code: Select all

x = 52, y = 18, rule = B3/S23
8bo$8bobo29bo$8b2o31bo7bobo$39b3o7b2o$50bo2$37b2o$4bobo29bo2bo$5b2o30b 2o$2o3bo$b2o$o2$41b3o2$38b3o$40bo$39bo!
Princess of Science, Parcly Taxel

mniemiec
Posts: 1191
Joined: June 1st, 2013, 12:00 am

### Re: Soup search results

Freywa wrote:In response to a challenge from over three years ago on another thread, "minus zero" in 6 gliders from this soup:

Code: Select all

x = 52, y = 18, rule = B3/S23
8bo$8bobo29bo$8b2o31bo7bobo$39b3o7b2o$50bo2$37b2o$4bobo29bo2bo$5b2o30b 2o$2o3bo$b2o$o2$41b3o2$38b3o$40bo$39bo!
gmc_nxtman found a very similar 7-glider synthesis via 5-glider converter of 22.108237 on 2017-06-27 (that used a different 3-glider V-spark, rather than one from a phi). Because you used a phi-spark, you were able to optimize the starting constellation. The same trick constellation could be used to optimize the tub-version of this (20.27855) and presumably other similar ones (e.g. with boats, loaves, eaters, long boat, etc.) - those would give more 6-glider still-lifes.

Freywa
Posts: 718
Joined: June 23rd, 2011, 3:20 am
Location: Singapore
Contact:

### Re: Soup search results

mniemiec wrote:gmc_nxtman found a very similar 7-glider synthesis via 5-glider converter of 22.108237 on 2017-06-27 (that used a different 3-glider V-spark, rather than one from a phi). Because you used a phi-spark, you were able to optimize the starting constellation. The same trick constellation could be used to optimize the tub-version of this (20.27855) and presumably other similar ones (e.g. with boats, loaves, eaters, long boat, etc.) - those would give more 6-glider still-lifes.
My thought process went something like this: "There aren't any 2-glider collisions that produce a phi spark… I'll look in Martin's components file for a 3-glider one". I found such a component that required one glider and one blinker. Then, seeing there was plenty of room to drop the B, I ran a 3-glider search on the beehive + blinker constellation and picked one that just looked good.

Shinjuku is starting to get loaded with 17- and 18-bit still life syntheses. Some of these were raked from the many posts in this forum, but I made the one below myself. I just looked at your list of "difficult syntheses" and picked the one with the most gliders – 17.1201 at 160G. As usual, I pulled soups from Catagolue to find possible starting points, and eventually came up with this 10G synthesis from this soup:

Code: Select all

#C xs5_253>151 -5/82 0/13 -10 70 1 151 -5/-28 8 33 14@0L14 -15>xs23_696zz8o6picz01226
#C xs23_696zz8o6picz01226>1 0///@1b3 -2>xs17_4a9lmge2zx1
x = 134, y = 79, rule = B3/S23
2bo$obo$b2o14$42bo$42bobo$42b2o4$21bo$20bobo$21b2o2$114bo13b2o$115bo
11bo2bob2o$113b3o10bo2b2obo$117b2o8b2o3bo$116bo2bo9b3o$117b2o10bo6$28b o$26b2o$27b2o3$26b3o$26bo$27bo12$52b2o$51b2o$13bo39bo$13b2o$12bobo16$
66b2o$66bobo$66bo!
This is possibly the most drastic reduction anyone has ever made to a synthesis of any object.

Edit: 17.1101 from 184 gliders to 12 from this soup.

Code: Select all

#C >48 -3/44 1/-45 7 22 3 43 -17/42 -12>xp2_6996yf4a6zzy6e
#C xp2_6996yf4a6zzy6e+1>86 -37/-58 -2 -44 7 89 0/-75 41 -29 22/@0l30 -18>xs17_j9c0qmz0123
x = 127, y = 55, rule = B3/S23
bo$2bo3bo108b2o$3ob2o108bo2bo$5b2o107bo2bo$115b2o2$20bo$19bo$19b3o92bo$115b2o$22b2o90b2o10bo$22bobo101bo$22bo103bo2$117b2o$117bobo$102bobo7b
3o2bo$103b2o9bo$103bo9bo$100b2o$99bobo$101bo2$8bo$3b2ob2o108bo$2bobo2b
2o106bobo$4bo110b2o26$74bo$74b2o$73bobo!
Edit 2: 17.994 from 187 gliders to 8 from this soup. Now this is even more of a drastic reduction.

Code: Select all

#C >11 0//-11 5 12 -6/>xs10_33wcic
#C xs10_33wcic>81 -3/-67 37//64 -25 67 -32@0B5 14>xs24_69q3pcy36952zw121
#C xs24_69q3pcy36952zw121>1 0///@1R18 -1>xs17_69q3pczw121
x = 148, y = 37, rule = B3/S23
75bo4bo63bo$6b3o61bo5b2ob2o62bobo$obo3bo61bobo4b2o2bobo61bobo$b2o4bo 61b2o62bo8b2ob2o$bo62b2o66bobo7bo4bo$60bo3b2o65bo2bo9b2obo$b2o56bobo
70b2o9b2obo$2o57bobo66b3o$2bo57bo69bo$129bo25$39b2o$40b2o$39bo!
When adding the above synthesis to Shinjuku I also added systematic identifiers as comments to some syntheses. These identifiers are different from Niemiec's; they are obtained by sorting the apgcodes of all the still lifes of a given number of bits, and start from 0 (so, for example, 17.0 = xs17_01784czad113 and 18.0 = xs18_01784cz2lp13).

Edit 3: 17.6714 (lex-apg) / 17.1044 (Niemiec) from 195 gliders to 10:

Code: Select all

#C xp2_s01110szw222+1>1 0///@1r-4 2>xp2_70ggg07
#C xp2_70ggg07>24 -6//-7 3 18 -6/@0F15 -6>xp2_696zzxo02220oxezx1044401xs0111
#C xp2_696zzxo02220oxezx1044401xs0111+1>65 -24 85 -31/-27 -5 44 10//@0r-13 28>xs17_mc1raa4z11
x = 131, y = 54, rule = B3/S23
49bo$47b2o$48b2o$115bo$114bobo$114bobo$51bo63bo$50bo$50b3o$110bobo$
111b2o$50bo60bo$50b2o$49bobo68bo$9bo47bo50bobo9bo$9bo47bo51b2o9bo5b3o$
9bo47bo51bo$116b3o3b3o5bo$5b3o3b3o45b3o45b2o21bo$b2o105b2o10bo9bo$obo
6bo47bo49bo12bo$2bo6bo47bo62bo5b3o$9bo47bo29$89b3o$91bo$90bo! Princess of Science, Parcly Taxel googoIpIex Posts: 260 Joined: February 28th, 2019, 4:49 pm Location: Sqrt(-1) ### Re: Soup search results is there a way to synthesise this: Code: Select all x = 5, y = 5, rule = B3/S23 2bobo$bo2bo$o3bo$obo$o!  because if so, we can get a very efficent synthesis of a 24-bitter: Code: Select all x = 23, y = 12, rule = B3/S23 bo$2bo$3o2bo14b2o$5bobo12b3o$5b2o12bobo$18b3o$18bo$7b2o$6bo2bo$7b2o!

woomy on a vroomy

Posts: 1976
Joined: November 8th, 2014, 8:48 pm
Location: Getting a snacker from R-Bee's

### Re: Soup search results

googoIpIex wrote:is there a way to synthesise this:

Code: Select all

junk reaction

because if so, we can get a very efficent synthesis of a 24-bitter:

Code: Select all

junk reaction hits a bakery

The original soup should provide some clues, if you have it.
LifeWiki: Like Wikipedia but with more spaceships. [citation needed]


text:
## Learning and learning

Dec 19, 2021 - 5 minute read - simulation classical mechanics

# Sim 1: Two Body Central Force

Day one of building 99 simulations. We’ll reduce a problem that at first requires 6 parameters with coupling, to a problem with just 3 (or 2, depending on how you look at it) by exploiting the symmetry. “Nature does not care how we describe her”.

## Why 99 simulations

I’ve been doing the previous qualification exams on Yale’s website as practice for graduate school. And to be honest, I’m so bored. I really don’t enjoy sludging through problems. I think I’m a decent programmer, and I got that way because I truly do enjoy doing programming problems. And because I enjoy the programming challenges, I do them. But with physics problems I’m always dragging my feet. I think in a perfect world I’d have infinite motivation to sit down for 10 hours a day and do problems, but I’m not perfect.

So to compromise, instead I’m going to try to take all the topics on Yale’s qualifying exam, and try to simulate them, and also write a little blog post about some of the math. Hopefully this way I’ll at least enjoy learning some new physics topics. Eventually I’ll need to go back and actually practice solving problems, but I’ll pass that hurdle later. Until then, I’d just like to have fun learning in my free time.

For the first topic, I’m taking a look at two body central force problems.

## Two Body Central Force Problems

A number of important systems are two body central force systems. Examples include modeling hydrogen’s electron and proton (previous sim), modeling planetary bodies (earth-moon or sun-earth), and more.

Modeling these problems just using their position and velocity can get a little tricky. Writing a simple $$r_1(t)$$ requires knowledge of $$r_2(t)$$ which is also coupled to $$r_1(t)$$. The solution will not be simple. But instead if we abuse some symmetry and choice of coordinates, we can model the system in a much simpler way.

### Central Force

Two common central forces are gravity and electric charge (Coulomb). These forces are “conservative” (1. force only depends on $$\vec{r}$$ 2. the work between any two points is the same along any path. Friction is not a conservative force since not all paths are the same).

If we look at the potential for both gravity and coulomb’s law we’ll notice something peculiar about the r terms.

$$U_{gravity}(r_1, r_2) = \frac{G m_1 m_2}{ |r_1 - r_2|}$$

$$U_{coulomb}(r_1, r_2) = \frac{1}{4 \pi \epsilon_0} \frac{q_1 q_2}{ |r_1 - r_2|}$$

Both the equations only depend on the relative distance between the objects. So instead of modeling the potentials as $$U(\vec{r_1}, \vec{r_2})$$ we could instead model the potential with the relative position $$\vec{r} = |\vec{r_1} - \vec{r_2}|$$, so $$U(\vec{r})$$.

So now our Lagrangian has two parameters:

$$L = \frac{1}{2} m_1 \dot{r}^2_1 + \frac{1}{2} m_2 \dot{r}^2_2 - U(\vec{r})$$

But we can do better!

### Reference Frame, Center of Mass

We get to choose our frame of reference. So, we could be naive and imagine the two bodies moving through space and rotating around each other, or we could make it easy and define our coordinate system such that the two bodies are spinning around a constant point.

This constant point is the center of mass $$\vec{R} = \frac{m_1 \vec{r_1} + m_2 \vec{r_2}}{m_1 + m_2}$$.

We can now rewrite $$\vec{r_1}$$ and $$\vec{r_2}$$ in terms of $$\vec{R}$$ and $$\vec{r}$$.

$$\vec{r_1} = \vec{R} + \frac{m_2}{M} \vec{r} \qquad \vec{r_2} = \vec{R} - \frac{m_1}{M}\vec{r}$$

So now if we substitute this into our Lagrangian:

$$L = \frac{1}{2} m_1 \dot{r}^2_1 + \frac{1}{2} m_2 \dot{r}^2_2 - U(r)$$ $$L = \frac{1}{2} m_1 (\dot{R} + \frac{m_2}{M}\dot{r})^2 + \frac{1}{2} m_2 (\dot{R} - \frac{m_1}{M}\dot{r})^2 - U(r)$$ $$L = \frac{1}{2} (M \dot{R}^2 + \mu \dot{r}^2) - U(r)$$

Where we define $$\mu$$ as the reduced mass $$\mu = \frac{m_1 m_2}{m_1 + m_2}$$.

We can also just set our center of mass to be zero in the coordinate system, and then the lagrangian is even simpler!

## Solving the Lagrangian

We have two coordinates, $$R$$ and $$r$$. Plugging the first coordinate into the euler-lagrange equation we get:

$$\frac{d}{dt} \frac{\partial L}{\partial \dot{R}} = \frac{ \partial L}{\partial R}$$

$$\frac{d}{dt} M \dot{R} = 0$$

Momentum is conserved.

Plugging in the second coordinate:

$$\frac{d}{dt} \frac{\partial L}{\partial \dot{r}} = \frac{ \partial L}{\partial r}$$

$$\frac{d}{dt} \mu \dot{r} = -\frac{\partial U(r)}{\partial r}$$

Newton’s equation with reduced mass instead of mass for a single particle!!

We can reduce it even further, but I’ll save that for the next project. For now let’s build a simulation of what we have so far.

## Simulation

This simulation tracks the movements of two bodies under the influence of a central force. Under the hood the simulation uses semi-implicit euler. It calculates the center of mass, reduced mass, and relative position vector.

On the technical side it’s using paperjs for the canvas and angular for the UI.

### What went well

• paperjs was pretty simple to use. I’m only drawing circles, but it did what I needed it to do
• Tracking center of mass is pretty cool. I’m slightly cheating by just moving the viewport, but it wouldn’t be hard to actually change the frame of reference
• It’s a good base simulation for moving on to more exciting simulations! (tracking the potential and different conic sections)

## Random Thought

Converting the problem to center of mass and relative position really reminds me of doing the change of basis to normal modes when doing coupled oscilators. Maybe I’ll go back later and see if this can be represented as an eigenvalue problem and deduce the CM and relative position coordinates.

## Conclusion

A fun first project. I’m excited to build further on the simulation with conic sections and potential graphs.

format: plain


text:
# Can blend files be queued for animation rendering?

I would like to be able to render several files one after the other, when I am not using my computer, e.g. at night. Is there a way of doing this?

• possible duplicate of Is there a way to batch render multiple scenes? – Aldrik Jun 29 '13 at 9:55
• @Aldrik they are a bit different IMO. One is asking about different files, the other is about scenes in a file. – iKlsR Jun 29 '13 at 13:12
• @iKlsR I did notice that, and it's normally good to point out the difference. But the procedure is much the same and both are covered by answers in the other question. – Aldrik Jun 29 '13 at 14:48
• @Aldrik yes, we cannot help that, but for now, it's ok and best to keep them separate. We can't mark as dupe as the titles and intentions are different and we can't merge them because not all the answers apply to both questions. – iKlsR Jun 29 '13 at 14:50
• I'm actually working on an application to do this. – LetTheWritersWrite May 25 '17 at 0:06

Sounds like a job for Command Line Rendering. Sounds intimidating if you've never done it, but it's a simple matter of stealing someone's template and adjusting the parameters:

Windows: blender -b "C:\path\to\file.blend" -x 1 -a

Linux/Mac: blender -b "/path/to/file.blend" -x 1 -a

That's the simplest form of it which will use all the settings in the blend itself. To make a cue of it, simply put '&&' between the commands:

blender -b "C:\path\to\file.blend" -x 1 -a && blender -b "C:\some\other\project.blend" -x 1 -a && blender -b "C:\yes\another\one.blend" -x 1 -a

To adjust settings like start and end frames, path of the outputed images/video, whether to render the animation or a single frame, check out the wiki page on Command Line Rendering.

It's also useful to tell it to shutdown your computer when it's finished simply by adding this at the end:

Windows: && shutdown /s /t 0

Linux/Mac: && sudo shutdown -h now

And here's one with start/end frame set, output path and format and shutdown when done:

blender -b "C:\En Passant\08-08\shots\s1\awake\awake.blend" -x 1 -o "C:\En Passant\bear_render\awake\img_#" -F PNG -s 119 -e 150 -a && shutdown /s /t 0

Note that if it doesn't recognize the 'blender' command, you just need to cd into the directory of the blender executable before it'll understand you. E.g:

Windows: cd "C:\Program Files\Blender Foundation\Blender"

Linux/Mac: cd "/home/user/Downloads/Blender"

• All these commands are for Windows - if someone has the linux and mac versions please edit this answer. – Greg Zaal Jun 29 '13 at 8:00
• thanks for that, yes it's intimidating. :) I used to program in Basic back in the early '80s and now I only use a Mac! – SteveW Jun 29 '13 at 9:47
• I think the commands work on Unix systems too, except, instead "C:\path" you write somthing like "/Users/[yourusername]/Path/To/File.belnd". – Róbert László Páli Jun 29 '13 at 15:24
• Yes, almost the same except for the commands marked "windows only" when you run blender --help – gandalf3 Jun 29 '13 at 20:27
• This appears to be what I'm looking for, I'll have to do some experimenting. Thank you. – SteveW Jun 29 '13 at 22:03

The Brender renderfarm addon to Blender allows you to queue multiple renders, both from within the same file and from different .blend files. You can download the most recent version from this site.

The installation procedure is a little complicated, but once you have it set up, all you have to do is press the "New Job" button in the Render menu.

• This looks great, although I must admit it looks a bit too advanced for me at this stage! :) – SteveW Jun 29 '13 at 22:00

First see documentation on Blender from the command line

Once you can run blender --version. You can then setup a queue.

You only have to launch blender once, then pass it all the files you want to render.

blender --background foo.blend -a  bar.blend -a  baz.blend -a

This renders (foo.blend, bar.blend, baz.blend).

You can pass other arguments such as setting the output path or number of threads, be sure to position these after the blend file and before the -a.

This example uses the number system threads and reads to //path_to_render.

blender --background foo.blend -t 0 -o //path_to_render -a

I just finished writing a little Python app because I got sick of writing the same command line options over and over again to accomplish this. Feel free to use it.


text:
# Existence of solution for a system of quadratic diophantine equations / symmetric quadratic froms

I am interested in solving, or even just deciding the existence of a solution, for a system of quadratic diophantine equations.

Let $$p$$ be a prime congruent to 1 modulo 8, so $$p =17$$ is the first case. We want to solve the following equations inside the integers.

Let $$\alpha_1,\alpha_2,...,\alpha_p$$ and $$\beta_1,\beta_2,...,\beta_p$$ be unknowns. We understand the indices of the $$\alpha$$'s and $$\beta$$'s modulo $$p$$, so that e.g. $$\alpha_{-1} = \alpha_{p-1}$$. We have the linear dependence between the unknowns:

\begin{align} & \sum_{j = 1}^p \alpha_j = 0, \\ & \sum_{j = 1}^p \beta_j = 0 \end{align}

Moreover for all $$i$$ between $$1$$ and $$p-1$$ we have two quadratic equations given as: \begin{align} & \sum_{j=1}^p \alpha_j\beta_{j-i} + \alpha_{j-i}\beta_j = 0, \\ & \sum_{j=1}^p - \alpha_j\alpha_{j-i} + \beta_j\beta_{j-i} = \left\{ \begin{array}{ll} 2, & i = \pm 2 \\ 0, & i \neq \pm 2 \end{array}\right. \end{align} It is easy to see that the equations for $$\pm i$$ are actually the same. Additionally we have conditions on the parities: \begin{align} & \alpha_1 \equiv \alpha_{p-1} \equiv \beta_1 \equiv \beta_{p-1} \equiv 1 \mod 2, \\ & \alpha_i \equiv \beta_i \equiv 0 \mod 2, \ \ \text{if} \ \ i \neq \pm 1 \end{align}

Alternative formulation: The problem can also be formulated using symmetric quadratic forms. For this let $$A$$ be the $$p \times p$$-permutation matrix $$\begin{pmatrix} 0 & 0 & \cdots & 0 & 1 \\ 1 & 0 & \cdots & 0 & 0 \\ 0 & 1 & \cdots & 0 & 0 \\ \vdots & \vdots & \ddots & \vdots & \vdots \\ 0 & 0 & \cdots & 1 & 0 \end{pmatrix}$$

Note that $$A$$ has order $$p$$. Let $$B_i = A^i + (A^i)^T$$ for each $$1 \leq i \leq \frac{p-1}{2}$$. Writing in block form, in particular $$0$$ for a $$0$$-matrix, define for $$1 \leq i \leq \frac{p-1}{2}$$ the quadratic forms $$Q_i: \mathbb{Z}^{2p} \rightarrow \mathbb{Z}, \ \ x \mapsto x^T \begin{pmatrix} 0 & B_i \\ B_i & 0 \end{pmatrix}x$$ and $$R_i: \mathbb{Z}^{2p} \rightarrow \mathbb{Z}, \ \ x \mapsto x^T \begin{pmatrix} -B_i & 0 \\ 0 & B_i \end{pmatrix}x$$ Then we can formulate the equations as $$Q_i(x) = 0 \ \ \text{and} \ \ R_i(x) = 4\delta_{i,2}$$ for all $$1 \leq i \leq \frac{p-1}{2}$$ where $$\delta_{i,j}$$ is the Kronecker delta.

If this is of any help, we can completely solve the equations modulo $$4$$. This gives that \begin{align} & \alpha_1\beta_{p-1} + \alpha_{p-1}\beta_1 \equiv 0 \mod 4, \\ & \alpha_i + \beta_i + \alpha_{-i} + \beta_{-i} \equiv 0 \mod 4 \ \ \text{if} \ \ i \neq 0, \pm 1 \\ & \alpha_0 + \beta_0 \equiv 2 \mod 4 \end{align}

By the origin of the problem from a question on group rings, we also know that solutions exist when p is congruent to 3 modulo 4, but we have no clue when p is congruent to 1 modulo 8. We have tried some computer experiments, but found no solution and the system seems too big for a complete solution by the programs we tried.

• These equations are not exactly quadratic. Making some quantities independent can be reduced to a linear system of equations. As for solving nonlinear systems of equations, there is one way to solve them. There is no point in discussing it here because any discussion on this topic is blocked on this forum. May 2, 2022 at 5:38
• For some special cases, you can get a solution. The problem is that with an increase in the number of equations, the complexity of the calculation increases very much. And the formulas themselves become extremely cumbersome. Probably because of the complexity, few people use them. For some simple systems, you can write simple solutions. math.stackexchange.com/questions/1401110/… May 2, 2022 at 5:41
• Dear individ, how can the equations be made linear? Of course I have tried that, but without success. I am not a number theorist, so I might be missing even some point very clear to you. Could you give some more hints? Knowing there is a solution, would solve a research problem for me, so I would be very grateful. May 2, 2022 at 15:01
• If the unknown is not squared and there are many variables. Then you can set some variables as constant. This will reduce the degree of the equation. And then use the usual Gauss method for systems of linear equations. Well... or just imagine that this is a system of linear equations. May 2, 2022 at 16:18
• Ok, I see. I have tried something in this direction, but I have some new ideas now after your comment. Thanks. May 3, 2022 at 9:17

This sketch of a half-answer is based on and is developing the ideas of Max’ answer. He works with $$\mathbb Q[I,x]$$ with $$I^2=-1$$ modulo the cyclotomic polynomial $$\Phi_p(x)$$. Writing $$x$$ as $$z^4$$ and $$I$$ is $$z^p$$, this is identified with the $$4p$$-cyclotomic field $$K$$, i.e., $$\mathbb Q[z]$$ modulo $$\Phi_{4p}(z)$$. In particular, Max’ $$F$$ is identified with an element $$f\in K$$.

Since his $$F^\star(x) = x^{p-2}F(1/x)$$, his $$x^{2-p}F^\star$$ is identified with $$\sigma\cdot f$$ for a suitable involution $$\sigma$$ of $$K$$. One can see that $$σz=z^{2p-1}=-z^{-1}$$ (so $$σI=I$$, $$σx=1/x$$). Denote by $$N$$ the norm $$N(g)≔g·σg$$ of $$K$$ over the fixed points $$K_2$$ of $$σ$$. Conclusion: Max’ equation is equivalent to $$N(f) = -2(z^2+1/z^2)^2$$ (with integer $$f$$).

Since $$N(I)=N(z)=-1$$, $$N(1+I)=2I$$, and $$N(1+x)=(z^2+1/z^2)^2$$, it is enough to solve $$N(g)=\pm I$$. Recall that since $$4p$$ is not a power of a prime, cyclotomic units are generated (multiplicatively) by the units $$1-ζ$$ (for primitive roots $$ζ$$ of $$1$$ of degree $$4p$$), and roots of $$1$$ in $$K$$. Modulo roots of $$1$$, they form a lattice spanned by such $$1-ζ$$ with $$\Im ζ>0$$ and the only relation¹⁾ $$\prod (1-ζ)=I^{(p-1)/2}$$. (Their importance is in the fact that they have finite index in units of $$K$$.)

¹⁾ Indeed, if $$\Pi$$ is this product, then $$|\Pi|^2 = \Phi_{4p}(1) = 1$$ (since $$\Phi_{4p}(x)(x^2+1)(x^{2p}-1)=x^{4p}-1$$), and combining $$1-ζ$$ and $$1+1/ζ$$ together gives $$N(1-ζ)=1/ζ-ζ$$ with argument $$-π/2$$. Hence argument of $$\Pi$$ is $$(p-1)π/4$$.

Lemma: If $$p=2r+1$$, then $$U:≔\prod_{k=1}^r (1-z^{2k-1})$$ solves $$N(U)=±I$$ provided $$r$$ is odd. Update: moreover, if $$Λ$$ is the (multiplicative) lattice generated by $$(1-ζ)/(1-(-ζ^{-1}))$$ with primitive roots ζ in the first quadrant. then $$N(Λ)=1$$, and any solution modulo this lattice is $$U^s$$ with an odd $$s$$.

Indeed, the argument in the footnote above shows that $$U$$ is the product over primitive roots $$ζ$$ of $$1$$ of degree $$4p$$ in the first quadrant, hence $$N(U)$$ is $$\Pi$$. (Update: this also describes all the solutions to $$N(f)=\text{unit}$$ for any $$p$$. In particular, if $$4|p-1$$, then $$s∉ℤ$$, hence there is no solution in cyclotomic units.)

Update: here was a completely wrong “theorem” about the case $$4|p-1$$. The arguments above show only this:

If the index of cyclotomic units inside units of $$K$$ is odd, there is no solution. (While vol.1 of Lang’s Cyclotomic fields contains some info about the 2-part of this index, I’m not fluent enough to use this info. I do not even know how to find it in PARI/gp.)

• Thank you! I've also embedded the problem into $4p$-cyclotomic field, but then just proceeded with computing factorization (which is quite expensive and infeasible for large $p$). The idea of viewing the equation as a norm is very neat and fruitful! Btw, can't we simply take $\rho = z^4$? Sep 15, 2022 at 17:03
• I decided that writing ρ=z⁴ would be a bit more confusing than what I wrote. It seems that I was wrong! Sep 16, 2022 at 7:07
• Thanks a lot for the effort! The norm formulation is indeed elegant and it's great to see there is a solution for some primes. I don't understand the last part though, could you elaborate how you "cancel" and why you use exactly these factors? My first impression was you want to build a product like $\frac{\varepsilon_{2t}}{\varepsilon_{t}}\cdot \frac{\varepsilon_{4t}}{\varepsilon_{2t}}...$, but since $\zeta^2$ is not a primitive $4p$-th root of unity, why will $N(1-\zeta^2)$ have the right shape? Also as in the end you argue up to roots of unity, why is $N(S(\zeta)) = \pm I$ and not 1 or -1? Sep 16, 2022 at 14:23
• @IlyaZakharevich: I've tried to verify the second lemma numerically for $p=73$, where $P=2^8$ and $2P\equiv 1\pmod{73}$. However, while the lemma seems to imply $N(S(z))^4 = 1$, this equality does not hold numerically. What's wrong? Sep 16, 2022 at 18:28
• Thanks, margollo! Indeed, everything involving the norm of $1-ζ²$ is completely irreparably wrong. Oct 18, 2022 at 11:16

UPDATE. Using factorization $$-2(x+1)^2x^{p-3}$$ over the corresponding number field, I established that there are no solutions for $$p=17$$. Furthermore, I computationally verified that for primes $$p<30$$ we have solutions for all $$p\equiv 3\pmod{4}$$ and do not have any for $$p\equiv 1\pmod{4}$$.

This is just an extended comment, giving reformulation of the problem and reducing it to just $$p-1$$ unknowns and $$p-1$$ quadratic equations over the Gaussian integers.

Consider the generating polynomials: $$\begin{split} A(x) &:= \sum_{i=0}^{p-1} \alpha_i x^i, \\ B(x) &:= \sum_{i=0}^{p-1} \beta_i x^i. \end{split}$$

The linear equations $$\sum_j \alpha_j = \sum_j \beta_j = 0$$ are equivalent to $$A(1)=B(1)=0$$, i.e., both $$A(x)=(x-1)\bar A(x)$$ and $$B(x)=(x-1)\bar B(x)$$ are multiples of $$x-1$$.

Viewing indices modulo $$p$$ is equivalent to viewing the polynomials modulo $$x^p - 1 = (x-1)\Phi_p(x)$$, where $$\Phi_p(x) := 1 + x + \dots + x^{p-1}$$ is $$p$$-th cyclotomic polynomial.

For reciprocal polynomials (of fixed degree $$p-1$$) we have $$A^\star(x):=x^{p-1}A(x^{-1})\equiv x^{p-1}A(x^{p-1})\pmod{x^p-1}$$ and $$B^\star(x):=x^{p-1}B(x^{-1})\equiv x^{p-1}B(x^{p-1})\pmod{x^p-1}$$. Then the quadratic equations (under the condition $$A(1)=B(1)=0$$) translate into $$\begin{cases} A(x)B^\star(x) + A^\star(x)B(x) \equiv 0 \pmod{x^p-1},\\ -A(x)A^\star(x) + B(x)B^\star(x) \equiv -4x^{p-1} + 2x + 2x^{p-3} \equiv 2(x^2-1)^2x^{p-3} \pmod{x^p-1} \end{cases}$$ Dividing both congruences by $$(x-1)x(\frac1x-1)=-(x-1)^2$$, we get $$\begin{cases} \bar A(x)\bar B^\star(x) + \bar A^\star(x)\bar B(x) \equiv 0 \pmod{\Phi_p(x)},\\ -\bar A(x)\bar A^\star(x) + \bar B(x)\bar B^\star(x) \equiv -2(x+1)^2x^{p-3} \pmod{\Phi_p(x)}. \end{cases}$$

In terms of polynomials over Gaussian integers, we have $$F(x)F^\star(x) \equiv -2(x+1)^2x^{p-3}\pmod{\Phi_p(x)},$$ where $$F(x) := \bar B(x) + I\cdot \bar A(x)$$ is a polynomial of degree $$p-2$$ over the Gaussian integers.

The last congruence can be viewed as a system of $$p-1$$ quadratic equations on the coefficients of $$F(x)$$ as unknowns.

Alternatively, it can also be viewed as the identity of palindromic polynomials: $$F(x)F^\star(x) + 2(x+1)^2x^{p-3} = G(x)\cdot \Phi_p(x),$$ where the left-hand side, $$G(x)$$, and $$\Phi_p(x)$$ are palindromic polynomials of degree $$2p-4$$, $$p-3$$, and $$p-1$$, respectively.

• Great you could answer the question by computers! If it is ok for you, I will contact you by mail for the code to try it myself. I checked all the arguments and understand them all. Though it would be nice to have a theoretical argument, it is still very satisfying to know at least there is no solution for p=17. Sep 7, 2022 at 20:23
• There is a (relatively) simple algorithm giving (sometimes) an explicit solution of your last equation. It works for all $p≡3 \mod 4$; it does not work for all $p≡5 \mod 8$. Moreover, it works for some $p≡1 \mod 8$, for example for 73, 89, 233, 281, …. The key requirement is that there is an odd power of 2 which is $±1 \mod p$. Sep 13, 2022 at 10:44
• @MaxAlekseyev: Unfortunately, the part about the case $4|p-1$ seems to be irreparably wrong (as noticed by margollo above). Oct 18, 2022 at 11:14


text:
# Continuity definitions on non-compact subsets

At the top of the wikipedia articles on Hölder condition, Lipschitz Continuity and others, the chain of logic is as follows: On a compact subspace of a metric space: $$Continuously Differentiable \subseteq Lipschitz Continuous \subseteq \alpha-Hölder Continuous \subseteq Uniformly Continuous \subseteqq Continuous$$

There's a nice proof $Uniformly Continuous \subseteqq Continuous$ on compact metric spaces here.

$f(x) = x^2$ is a function which is continuous, but not uniformly continuous. It is however continuously differentiable, but not Lipschitz continuous.

My question is, do any of the inclusions above hold when we relax the imposition of compactness? (is, for example, the branch Lipschitz $\subseteq$ Hölder always true?)

• Well, LipschitzContinuous $⊆$ $α$-HölderContinuous $⊆$ UniformlyContinuous $⊆$ Continuous holds in general. Compactness gives you ContinuouslyDifferentiable $⊆$ LipschitzContinuous and Continuous $⊆$ UniformlyContinuous (note the order). – user87690 Oct 29 '14 at 17:06
• (I mean $α$-Hölder for $a ∈ (0, 1)$, for $α=1$ we got Lipschitz and for $α=0$, we got bounded. Note that continuous $⊆$ bounded on compact.) – user87690 Oct 29 '14 at 17:10


text:
Notes on Linear Algebra Part 4

R
Linear Algebra
A Taxonomy of Matrices
Author

Bryan Hanson

Published

September 26, 2022

Series: Part 1 Part 2 Part 3

Back in Part 2 I mentioned some of the challenges of learning linear algebra. One of those challenges is making sense of all the special types of matrices one encounters. In this post I hope to shed a little light on that topic.

A Taxonomy of Matrices

I am strongly drawn to thinking in terms of categories and relationships. I find visual presentations like phylogenies showing the relationships between species very useful. In the course of my linear algebra journey, I came across an interesting Venn diagram developed by the very creative thinker Kenji Hiranabe. The diagram is discussed at Matrix World, but the latest version is at the Github link. A Venn diagram is a useful format, but I was inspired to recast the information in different format. Figure 1 shows a taxonomy I created using a portion of the information in Hiranabe’s Venn diagram.1 The taxonomy is primarily organized around what I am calling the structure of a matrix: what does it look like upon visual inspection? Of course this is most obvious with small matrices. To me at least, structure is one of the most obvious characteristics of a matrix: an upper triangular matrix really stands out for instance. Secondarily, the taxonomy includes a number of queries that one can ask about a matrix: for instance, is the matrix invertible? We’ll need to expand on all of this of course, but first take a look at the figure.2

Touring the Taxonomy

Structure Examples

Let’s use R to construct and inspect examples of each type of matrix. We’ll use integer matrices to keep the print output nice and neat, but of course real numbers could be used as well.3 Most of these are pretty straightforward so we’ll keep comments to a minimum for the simple cases.

Rectangular Matrix $$m \times n$$

A_rect <- matrix(1:12, nrow = 3) # if you give nrow,
A_rect # R will compute ncol from the length of the data
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    2    5    8   11
[3,]    3    6    9   12

Notice that R is “column major” meaning data fills the first column, then the second column and so forth.

Row Matrix/Vector $$1 \times n$$

A_row <- matrix(1:4, nrow = 1)
A_row
     [,1] [,2] [,3] [,4]
[1,]    1    2    3    4

Column Matrix/Vector $$m \times 1$$

A_col <- matrix(1:4, ncol = 1)
A_col
     [,1]
[1,]    1
[2,]    2
[3,]    3
[4,]    4

Keep in mind that to save space in a text-dense document one would often write A_col as its transpose.4

Square Matrix $$n \times n$$

A_sq <- matrix(1:9, nrow = 3)
A_sq
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9

Upper and Lower Triangular Matrices

Creating an upper triangular matrix requires a few more steps. Function upper.tri() returns a logical matrix which can be used as a mask to select entries. Function lower.tri() can be used similarly. Both functions have an argument diag = TRUE/FALSE indicating whether to include the diagonal.5

upper.tri(A_sq, diag = TRUE)
      [,1]  [,2] [,3]
[1,]  TRUE  TRUE TRUE
[2,] FALSE  TRUE TRUE
[3,] FALSE FALSE TRUE
A_upper <- A_sq[upper.tri(A_sq)] # gives a logical matrix
A_upper # notice that a vector is returned, not quite what might have been expected!
[1] 4 7 8
A_upper <- A_sq # instead, create a copy to be modified
A_upper[lower.tri(A_upper)] <- 0L # assign the lower entries to zero
A_upper
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    0    5    8
[3,]    0    0    9

Notice to create an upper triangular matrix we use lower.tri() to assign zeros to the lower part of an existing matrix.

Identity Matrix

If you give diag() a single value it defines the dimensions and creates a matrix with ones on the diagonal, in other words, an identity matrix.

A_ident <- diag(4)
A_ident
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    0    1    0    0
[3,]    0    0    1    0
[4,]    0    0    0    1

Diagonal Matrix

If instead you give diag() a vector of values these go on the diagonal and the length of the vector determines the dimensions.

A_diag <- diag(1:4)
A_diag
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    0    2    0    0
[3,]    0    0    3    0
[4,]    0    0    0    4

Symmetric Matrices

Matrices created by diag() are symmetric matrices, but any matrix where $$a_{ij} = a_{ji}$$ is symmetric. There is no general function to create symmetric matrices since there is no way to know what data should be used. However, one can ask if a matrix is symmetric, using the function isSymmetric().

isSymmetric(A_diag)
[1] TRUE

The Queries

Let’s take the queries in the taxonomy in order, as the hierarchy is everything.

Is the Matrix Singular or Invertible?

A singular matrix is one in which one or more rows are multiples of another row, or alternatively, one or more columns are multiples of another column. Why do we care? Well, it turns out a singular matrix is a bit of a dead end, you can’t do much with it. An invertible matrix, however, is a very useful entity and has many applications. What is an invertible matrix? In simple terms, being invertible means the matrix has an inverse. This is not the same as the algebraic definition of an inverse, which is related to division:

$x^{-1} = \frac{1}{x} \tag{1}$

Instead, for matrices, invertibility of $$\mathbf{A}$$ is defined as the existence of another matrix $$\mathbf{B}$$ such that

$\mathbf{A}\mathbf{B} = \mathbf{B}\mathbf{A} = \mathbf{I} \tag{2}$

Just as $$x^{-1}$$ cancels out $$x$$ in $$x^{-1}x = \frac{x}{x} = 1$$, $$\mathbf{B}$$ cancels out $$\mathbf{A}$$ to give the identity matrix. In other words, $$\mathbf{B}$$ is really $$\mathbf{A}^{-1}$$.

A singular matrix has determinant of zero. On the other hand, an invertible matrix has a non-zero determinant. So to determine which type of matrix we have before us, we can simply compute the determinant.

Let’s look at a few simple examples.

A_singular <- matrix(c(1, -2, -3, 6), nrow = 2, ncol = 2)
A_singular # notice that col 2 is col 1 * -3, they are not independent
     [,1] [,2]
[1,]    1   -3
[2,]   -2    6
det(A_singular)
[1] 0
A_invertible <- matrix(c(2, 2, 7, 8), nrow = 2, ncol = 2)
A_invertible
     [,1] [,2]
[1,]    2    7
[2,]    2    8
det(A_invertible)
[1] 2

Is the Matrix Diagonalizable?

A matrix $$\mathbf{A}$$ that is diagonalizable can be expressed as:

$\mathbf{\Lambda} = \mathbf{X}^{-1}\mathbf{A}\mathbf{X} \tag{3}$

where $$\mathbf{\Lambda}$$ is a diagonal matrix – the diagonalized version of the original matrix $$\mathbf{A}$$. How do we find out if this is possible, and if possible, what are the values of $$\mathbf{X}$$ and $$\mathbf{\Lambda}$$? The answer is to decompose $$\mathbf{A}$$ using the eigendecomposition:

$\mathbf{A} = \mathbf{X}\mathbf{\Lambda}\mathbf{X}^{-1} \tag{4}$

Now there is a lot to know about the eigendecomposition, but for now let’s just focus on a few key points:

• The columns of $$\mathbf{X}$$ contains the eigenvectors. Eigenvectors are the most natural basis for describing the data in $$\mathbf{A}$$.6
• $$\mathbf{\Lambda}$$ is a diagonal matrix with the eigenvalues on the diagonal, in descending order. The individual eigenvalues are typically denoted $$\lambda_i$$.
• Eigenvectors and eigenvalues always come in pairs.

We can answer the original question by using the eigen() function in R. Let’s do an example.

A_eigen <- matrix(c(1, 0, 2, 2, 3, -4, 0, 0, 2), ncol = 3)
A_eigen
     [,1] [,2] [,3]
[1,]    1    2    0
[2,]    0    3    0
[3,]    2   -4    2
eA <- eigen(A_eigen)
eA
eigen() decomposition
$values [1] 3 2 1$vectors
[,1] [,2]       [,3]
[1,]  0.4082483    0  0.4472136
[2,]  0.4082483    0  0.0000000
[3,] -0.8164966    1 -0.8944272

Since eigen(A_eigen) was successful, we can conclude that A_eigen was diagonalizable. You can see the eigenvalues and eigenvectors in the returned value. We can reconstruct A_eigen using Equation 4:

eA$vectors %*% diag(eA$values) %*% solve(eA$vectors)  [,1] [,2] [,3] [1,] 1 2 0 [2,] 0 3 0 [3,] 2 -4 2 Remember, diag() creates a matrix with the values along the diagonal, and solve() computes the inverse when it gets only one argument. The only loose end is which matrices are not diagonalizable? These are covered in this Wikipedia article. Briefly, most non-diagonalizable matrices are fairly exotic and real data sets will likely not be a problem. In texts, eigenvalues and eigenvectors are universally introduced as a scaling relationship $\mathbf{A}\mathbf{v} = \lambda\mathbf{v} \tag{5}$ where $$\mathbf{v}$$ is a column eigenvector and $$\lambda$$ is a scalar eigenvalue. One says “$$\mathbf{A}$$ scales $$\mathbf{v}$$ by a factor of $$\lambda$$.” A single vector is used as one can readily illustrate how that vector grows or shrinks in length when multiplied by $$\lambda$$. Let’s call this the “bottom up” explanation. Let’s check that is true using our values from above by extracting the first eigenvector and eigenvalue from eA. Notice that we are using regular multiplication on the right-hand-side, i.e. *, rather than %*%, because eA$values[1] is a scalar. Also on the right-hand-side, we have to add drop = FALSE to the subsetting process or the result is no longer a matrix.7

isTRUE(all.equal(
A_eigen %*% eA$vectors[,1], eA$values[1] * eA$vectors[,1, drop = FALSE])) [1] TRUE If instead we start from Equation 4 and rearrange it to show the relationship between $$\mathbf{A}$$ and $$\mathbf{\Lambda}$$ we get: $\mathbf{A}\mathbf{X} = \mathbf{X}\mathbf{\Lambda} \tag{6}$ Let’s call this the “top down” explanation. We can verify this as well, making sure to convert eA$values to a diagonal matrix as the values are stored as a vector to save space.

isTRUE(all.equal(A_eigen %*% eA$vectors, eA$vectors %*% diag(eA\$values)))
[1] TRUE

Notice that in Equation 6 $$\Lambda$$ is on the right of $$\mathbf{X}$$, but in Equation 5 the corresponding value, $$\lambda$$, is to the left of $$\mathbf{v}$$. This is a bit confusing until one realizes that Equation 5 could have been written

$\mathbf{A}\mathbf{v} = \mathbf{v}\lambda$

since $$\lambda$$ is a scalar. It’s too bad that the usual, bottom up, presentation seems to conflict with the top down approach. Perhaps the choice in Equation 5 is a historical artifact.

Is the Matrix Normal?

A normal matrix is one where $$\mathbf{A}^{\mathsf{T}}\mathbf{A} = \mathbf{A}\mathbf{A}^{\mathsf{T}}$$. As far as I know, there is no function in R to check this condition, but we’ll write our own in a moment. One reason being “normal” is interesting is if $$\mathbf{A}$$ is a normal matrix, then the results of the eigendecomposition change slightly:

$\mathbf{A} = \mathbf{O}\mathbf{\Lambda}\mathbf{O}^{-1} \tag{7}$

where $$\mathbf{O}$$ is an orthogonal matrix, which we’ll talk about next.

Is the Matrix Orthogonal?

An orthogonal matrix takes the definition of a normal matrix one step further: $$\mathbf{A}^{\mathsf{T}}\mathbf{A} = \mathbf{A}\mathbf{A}^{\mathsf{T}} = \mathbb{I}$$. If a matrix is orthogonal, then its transpose is equal to its inverse: $$\mathbf{A}^{-1} = \mathbf{A}^{\mathsf{T}}$$, which of course makes any special computation of the inverse unnecessary. This is a significant advantage in computations.

To aid our learning, let’s write a simple function that will report if a matrix is normal, orthogonal, or neither.8

normal_or_orthogonal <- function(M) {
if (!inherits(M, "matrix")) stop("M must be a matrix")
norm <- orthog <- FALSE
tst1 <- M %*% t(M)
tst2 <- t(M) %*% M
norm <- isTRUE(all.equal(tst1, tst2))
if (norm) orthog <- isTRUE(all.equal(tst1, diag(dim(M)[1])))
if (orthog) message("This matrix is orthogonal\n") else
if (norm) message("This matrix is normal\n") else
message("This matrix is neither orthogonal nor normal\n")
invisible(NULL)
}

And let’s run a couple of tests.

normal_or_orthogonal(A_singular)
This matrix is neither orthogonal nor normal
Norm <- matrix(c(1, 0, 1, 1, 1, 0, 0, 1, 1), nrow = 3)
normal_or_orthogonal(Norm)
This matrix is normal
normal_or_orthogonal(diag(3)) # the identity matrix is orthogonal
This matrix is orthogonal
Orth <- matrix(c(0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0), nrow = 4)
normal_or_orthogonal(Orth)
This matrix is orthogonal

The columns of an orthogonal matrix are orthogonal to each other. We can show this by taking the dot product between any pair of columns. Remember is the dot product is zero the vectors are orthogonal.

t(Orth[,1]) %*% Orth[,2] # col 1 dot col 2
     [,1]
[1,]    0
t(Orth[,1]) %*% Orth[,3] # col 1 dot col 3
     [,1]
[1,]    0

Finally, not only are the columns orthogonal, but each column vector has length one, making them orthonormal.

sqrt(sum(Orth[,1]^2))
[1] 1

Appreciating the Queries

Taking these queries together, we see that symmetric and diagonal matrices are necessarily invertible, diagonalizable and normal. They are not however orthogonal. Identity matrices however, have all these properties. Let’s double-check these statements.

A_sym <- matrix(
c(1, 5, 4, 5, 2, 9, 4, 9, 3),
ncol = 3) # symmetric matrix, not diagonal
A_sym
     [,1] [,2] [,3]
[1,]    1    5    4
[2,]    5    2    9
[3,]    4    9    3
normal_or_orthogonal(A_sym)
This matrix is normal
normal_or_orthogonal(diag(1:3)) # diagonal matrix, symmetric, but not the identity matrix
This matrix is normal
normal_or_orthogonal(diag(3)) # identity matrix (also symmetric, diagonal)
This matrix is orthogonal

So what’s the value of these queries? As mentioned, they help us understand the relationships between different types of matrices, so they help us learn more deeply. On a practical computational level they may not have much value, especially when dealing with real-world data sets. However, there are some other interesting aspects of these queries that deal with decompositions and eigenvalues. We might cover these in the future.

An Emerging Theme?

A more personal thought: In the course of writing these posts, and learning more linear algebra, it increasingly seems to me that a lot of the “effort” that goes into linear algebra is about making tedious operations simpler. Anytime one can have more zeros in a matrix, or have orthogonal vectors, or break a matrix into parts, the simpler things become. However, I haven’t really seen this point driven home in texts or tutorials. I think linear algebra learners would do well to keep this in mind.

Annotated Bibliography

These are the main sources I relied on for this post.

• The No Bullshit Guide to Linear Algebra by Ivan Savov.
• Section 6.2 Special types of matrices
• Section 6.6 Eigendecomposition
• Linear Algebra: step by step by Kuldeep Singh, Oxford Univerity Press, 2014.
• Section 4.4 Orthogonal Matrices
• Section 7.3.2 Diagonalization
• Section 7.4 Diagonalization of Symmetric Matrices
• Wikipedia articles on the types of matrices.

Footnotes

1. I’m only using a portion because the Hiranbe’s original contains a bit too much information for someone trying to get their footing in the field.↩

2. I’m using the term taxonomy a little loosely of course, you can call it whatever you want. The name is not so important really, what is important is the hierarchy of concepts.↩

3. As could complex numbers.↩

4. Usually in written text a row matrix, sometimes called a row vector, is written as $$\mathbf{x} = \begin{bmatrix}1 & 2 & 3\end{bmatrix}$$. In order to save space in documents, rather than writing $$\mathbf{x} = \begin{bmatrix}1 \\ 2 \\ 3\end{bmatrix}$$, a column matrix/vector can be kept to a single line by writing it as its transpose: $$\mathbf{x} = \begin{bmatrix}1 & 2 & 3\end{bmatrix}^{\mathsf{T}}$$, but this requires a little mental gymnastics to visualize.↩

5. Upper and lower triangular matrices play a special role in linear algebra. Because of the presence of many zeros, multiplying them and inverting them is relatively easy, because the zeros cause terms to drop out.↩

6. This idea of the “most natural basis” is most easily visualized in two dimensions. If you have some data plotted on $$x$$ and $$y$$ axes, determining the line of best fit is one way of finding the most natural basis for describing the data. However, more generally and in more dimensions, principal component analysis (PCA) is the most rigorous way of finding this natural basis, and PCA can be calculated with the eigen() function. Lots more information here.↩

7. The drop argument to subsetting/extracting defaults to TRUE which means that if subsetting reduces the necessary number of dimensions, the unneeded dimension attributes are dropped. Under the default, selecting a single column of a matrix leads to a vector, not a one column vector. In this all.equal() expression we need both sides to evaluate to a matrix.↩

8. One might ask why R does not provide a user-facing version of such a function. I think a good argument can be made that the authors of R passed down a robust and lean set of linear algebra functions, geared toward getting work done, and throwing errors as necessary.↩

Citation

BibTeX citation:
@online{hanson2022,
author = {Bryan Hanson},
title = {Notes on {Linear} {Algebra} {Part} 4},
date = {2022-09-26},
url = {http://chemospec.org/Linear-Alg-Notes-Pt4.html},
langid = {en}
}


text:
Applications of the Ax Kochen Ershov (AKE) princicple - MathOverflow most recent 30 from http://mathoverflow.net 2013-05-23T22:59:36Z http://mathoverflow.net/feeds/question/108951 http://www.creativecommons.org/licenses/by-nc/2.5/rdf http://mathoverflow.net/questions/108951/applications-of-the-ax-kochen-ershov-ake-princicple Applications of the Ax Kochen Ershov (AKE) princicple elvis 2012-10-05T19:28:50Z 2013-03-15T16:11:05Z
The AKE priciple states that two finitely ramified Henselian field (this means that the field is either of residual caracteristic 0 or is of characteristic $p$ and there is only a finite number of elements x of the value group such that $0< x < v(p)$) are elementary equivalent if and only if their value groups are elementary equivalent (in the language of group) and their residue fields elementary equivalent (in the language of ring).

I'm looking for application of this principle to prove non trivial results.

I also have a side question which I fear is a dumb one. Being algebraically closed is a first order property. So it should be equivalent to properties on the residues field and on the value group. What could be these properties ?

Thanks to any one who might answer !
 http://mathoverflow.net/questions/108951/applications-of-the-ax-kochen-ershov-ake-princicple/109004#109004 Answer by Lilach Leibovich for Applications of the Ax Kochen Ershov (AKE) princicple Lilach Leibovich 2012-10-06T15:11:34Z 2012-10-06T15:11:34Z
AKE prinicpal alows us to deduce conclusions about the theory of the valuaed field from the theories of the residue field and value group. Via this you prove, for example, that such and such theories are model complete, which supplies you with the tool of transfer argument (as in the model theoretic proof for hilbert's Nullstellensatz).

As for your side question, if I have understood correctly, the answer is that the residue fiels is algebraically closed and the value group is divisible.
 http://mathoverflow.net/questions/108951/applications-of-the-ax-kochen-ershov-ake-princicple/124625#124625 Answer by Immi Halupczok for Applications of the Ax Kochen Ershov (AKE) princicple Immi Halupczok 2013-03-15T16:11:05Z 2013-03-15T16:11:05Z
The above AKE principle implies the transfer principle between $\mathbb{Q}_p$ and $\mathbb{F}_p((t))$, and that one has some "real" applications.

The transfer principle states that for every first order statement $\phi$ in the language of valued fields, there exists a bound $N$ such that for every $p > N$ we have $\mathbb{Q}_p \models \phi \iff \mathbb{F}_p((t)) \models \phi$. To prove it, suppose the equivalence is violated for an inifinite set $P$ of primes. Let $K$ be a (non-principal) ultraproduct of the $\mathbb{Q}_p$ with $p \in P$ and let $L$ be the corresponding ultraproduct of the $\mathbb{F}_p((t))$. Then $K$ and $L$ have characteristic $0$ and they have the same value group and residue field, so AKE implies $K \models \phi \iff L \models \phi$, which yields a contradiction to the choice of $P$.

Here is one important application of the transfer principle:

The "Fundamental Lemma of the Langlands program" (which, actually, was a conjecture for a long time) is a statement about linear algebraic groups over non-archimedean local fields $K$. Ngo [arXiv:0801.0446] proved this "Lemma" in the case $K = \mathbb{F}_p((t))$ (and obtained the Fields Medal for that proof). Cluckers-Hales-Loeser [arXiv:0712.0708] showed that the transfer principle can be applied to that result, yielding the Fundamental Lemma for $K = \mathbb{Q}_p$ when $p$ is big. (Moreover, Hales had already shown before that it is sufficient to know the Fundamental Lemma for big $p$.)

Note that the Fundamental Lemma is an equality of integrals of functions from definable sets in $K$ to $\mathbb{C}$, so a priori, it doesn't seem to be a first order statement where the transfer principle could be applied. To apply it nevertheless, one has to encode the functions appearing in the Fundamental Lemma using model theoretic objects living purely in $K$ and then check that integration can be carried out purely on these encodings. In this way, the equality of integrals becomes a first order statement. (This can be seen as a very short explanation of what motivic integration is about.)


text:
Lapses in perceptual judgments reflect exploration

In lab meeting this week, we discussed Lapses in perceptual judgments reflect exploration by Pisupati*, Chartarifsky-Lynn*, Khanal and Churchland. This paper proposes that, rather than corresponding to inattention (Wichmann and Hill, 2001), motor error, or $\epsilon$-greedy exploration as has previously been suggested, lapses (errors on “easy” trials with strong sensory evidence) correspond to uncertainty-guided exploration. In particular, the authors compare empirically-obtained psychometric curves characterizing the performance of rats on a 2AFC task, with predicted psychometric curves from various normative models of lapses. They found that their softmax exploration model explains the empirical data best.

Empirical psychometric curve

Psychometric curves are used to characterize the behavior of animals as a function of the stimulus intensity when performing, for example, 2AFC tasks. They are defined by four parameters:

$p(\hat{a}= Right|s) = \gamma + (1-\gamma - \lambda)\phi(s; \mu, \sigma)$

where $\phi(s; \mu, \sigma)$ is a sigmoidal curve (we will assume the cumulative normal distribution in what follows); $\mu$ determines the decision boundary and $\sigma$ is the inverse slope parameter. $\gamma$ is the lower asymptote of the curve, while $1- \lambda$ is the upper asymptote. Together, $\{\gamma, \lambda\}$, comprise the asymmetric lapse rates for the “easiest” stimuli (highest intensity stimuli).

While Bayesian ideal observer models have been able to motivate the cumulative normal shape of the psychometric curve (as the authors show in their Methods section), this paper aims to compare different normative models to explain the $\gamma$ and $\lambda$ parameters of the psychometric curve.

Inattention model

For their inattention model, the authors assume that, with probability $p_{attend}$, the rat pays attention to the task-relevant stimulus, while, with probability $1- p_{attend}$, it ignores the stimulus and instead chooses according to its bias $p_{bias}$. That is:

$p(\hat{a}=Right|s) = \phi(s; \mu, \sigma) p_{attend} + (1-p_{attend})p_{bias}$

or, equivalently, $\gamma = p_{bias}(1-p_{attend})$ and $\lambda = (1-p_{bias})(1-p_{attend})$.

Softmax exploration model

In comparison to the inattention model, which assumes that, when the animal is paying attention to the task-relevant variable, it chooses the action corresponding to the maximum expected action-value, $\hat{a} =\max_{a}Q(a)$; the softmax-exploration model assumes that the animal chooses to go right in a 2AFC task according to

$p(\hat{a} = Right|Q(a)) = \dfrac{1}{1+exp(-\beta(Q(R)-Q(L))}$

where $\beta$ is the inverse temperature parameter and controls the balance between exploration and exploitation and $Q(R) - Q(L)$ is the difference in the expected value of choosing Right compared to choosing Left (see below). In the limit of $\beta \rightarrow \infty$, the animal will once again choose its action according to $\hat{a} =\max_{a}Q(a)$; while in the low $\beta$ regime, the animal is more exploratory and may choose actions despite them not having the largest expected action values.

In the task they consider, where an animal has to determine if the frequency of an auditory and/or visual cue exceeds a predetermined threshold, the expected action values are $Q(R) = p(High|x_{A}, x_{V})r_{R}$, where $p(High|x_{A}, x_{V})$ is the posterior distribution over the category of the stimulus (whether the frequency of the generated auditory and/or visual stimuli are above or below the predetermined threshold) given the animal’s noisy observations of the auditory and visual stimuli, $x_{A}$ and $x_{V}$. $r_{R}$ is the reward the animal will obtain if it chooses to go Right and is correct. Similarly, $Q(L) = p(Low|x_{A}, x_{V})r_{L}$.

The authors show that the softmax exploration model corresponds to setting the lapse parameters as

$\gamma = \dfrac{1}{1 + exp(\beta r_{L})}$ and $\lambda = \dfrac{1}{1+exp(\beta r_{R})}$

Model Comparison

The authors compare the empirically obtained psychometric curves with those predicted by the inattention and exploration models for two experimental paradigms:

1. Matched vs Neutral Multisensory stimuli: in this experiment, rats are either presented with auditory and visual stimuli of the same frequency (‘matched’), or with auditory and visual stimuli, where one of the channels has a frequency close to the category threshold, so is, in effect, informationless (‘neutral’). The idea here is that both matched and neutral stimuli have the same ‘bottom-up salience’, so that the $p_{attend}$ parameter is the same for both matched and neutral experiments in the inattention model. By contrast, there is no such restriction for the softmax exploration model, and there is a different $\beta$ exploration parameter for the matched and neutral experiments. The authors find that the psychometric curves corresponding to the softmax model resemble the shape of the empirically obtained curves more closely; and that BIC/AIC are lower for this model.
2. Reward manipulations: whereas the reward for choosing left or right was previously equal, now the reward for choosing right (when the frequency is above the predetermined threshold) is either increased or decreased. Again, the authors find that the psychometric curves corresponding to the softmax model resemble the shape of the empirically obtained curves more closely; and that BIC/AIC are lower for this model.

Reflections on this paper

By demonstrating that lapse rates can be manipulated with rewards or by using unisensory compared to multisensory stimuli, this paper highlights that traditional explanations for lapses as being due to a fixed probability of the animal neglecting the task-relevant stimulus; motor-error or $\epsilon-$greedy exploration are overly-simplistic. The asymmetric effect on left and right lapse rates of modified reward is particularly interesting, as many traditional models of lapses fail to capture this effect. Another contribution that this paper makes is in implicating the posterior striatum and secondary motor cortex as areas which may be involved in determining lapse rates; and better characterizing the role of these areas in lapse behavior than has been done in previous experiments.

This being said, some lab members raised some questions and/or points of concern as we discussed the paper. Some of these points include:

1. We would have liked to see further justification for keeping $p_{attend}$ the same across the matched and neutral experiments and we question if this is a fair test for the inattention model of lapses. Previous work such as Körding et al. (2007) makes us question whether the animal uses different strategies to solve the task for the matched and neutral experiments. In particular, in the matched experiment, the animal may infer that the auditory and visual stimuli are causally related; whereas in the neutral experiment, the animal may detect the two stimuli as being unrelated. If this is true, then it seems strange to assume that $p_{attend}$ and $p_{bias}$ for the inattention model should be the same for the matched and neutral experiments.
2. When there are equal rewards for left and right stimuli, is there only a single free parameter determining the lapse rates in the exploration model (namely $\beta$)? If so, how do the authors allow for asymmetric left and right lapse rates for the exploration model curves of Figure 3e (that is, the upper and lower asymptotes look different for both the matched and neutral curves despite equal left and right reward, yet the exploration model seems able to handle this – how does the model do this?).
3. How could uncertainty $\beta$ be calculated by the rat? Can the empirically determined values of $\beta$ be predicted from, for example, the number of times that the animal has seen the stimulus in the past? And what were some typical values for the parameter $\beta$ when the exploration model was fit with data? How exploratory were the rats for the different experimental paradigms considered in this paper?