Octohash database: Difference between revisions
draft for a mainspace wiki article about the databases; may need correction/expansion in history/technical details/etc |
m cat |
||
| (6 intermediate revisions by 2 users not shown) | |||
| Line 2: | Line 2: | ||
The octohash function is a hash function that returns the same value for any of the eight orientations of a [[pattern]] -- in other words, the octohash of any rotation or reflection of a pattern will always be the same as the octohash of the original pattern. | The octohash function is a hash function that returns the same value for any of the eight orientations of a [[pattern]] -- in other words, the octohash of any rotation or reflection of a pattern will always be the same as the octohash of the original pattern. | ||
Several databases implemented using the octohash function can be used to search for active reactions that produce a given pattern (which may be active or settled). The databases are designed to work with [[Golly]] and | Several databases implemented using the octohash function can be used to search for active reactions that produce a given pattern (which may be active or settled). The databases are designed to work with [[Golly]] and Python, without other dependencies. | ||
{|style="margin:16px;width:360px;float:right;" | |||
|{{EmbedViewer | |||
|rle = x = 79, y = 25, rule = B3/S23 | |||
10bo$9bobo$8bo2bo$9b2o6$74bo$75b2o$29bo24bo19b2o$28bobo22bobo$29bobo | |||
22bobo$24b2o4b2o17b2o4b2o17b2o$23bo2bo21bo2bo21bobo$24b2o23b2o24bo$2b | |||
3o2$o5bo$o5bo31bo$o5bo30b2o23b2o$37bobo21b2o13b3o$2b3o58bo14bo$77bo! | |||
|viewerconfig = #C [[ THEME Book ZOOM 6 X 4 Y 0 AUTOSTART GPS 12 T 0 PAUSE 5 T 22 PAUSE 3 T 119 PAUSE 2 LOOP 120 ]] | |||
|position = center | |||
|caption = For a [[Traffic light|TL]]+[[loaf]] constellation (left), the octohash database has two matches (middle), the octo3g database has one match (right), and the octo3obj database has 56 matches (not shown) | |||
}} | |||
|- | |||
|{{EmbedViewer | |||
|rle = x = 27, y = 22, rule = B3/S23 | |||
7$10b2o$10b2o2$5b2o$4bobo3b2o6b2o$6bo3b2o2b2o2b2o$14b2o2$11b2o$11b2o! | |||
|viewerconfig = #C [[ THEME Book ZOOM 16 X 2 Y 4 AUTOSTART GPS 12 T 0 PAUSE 3 T 22 PAUSE 3 T 44 PAUSE 2 LOOP 45 ]] | |||
|position = center | |||
|caption = For a pattern consisting of a [[Herschel]] and a [[block]], the octo3obj database has one match, with a glider hitting a constellation made of two half blockades and one other block | |||
}} | |||
|} | |||
The '' | The ''octohash database''<ref name="db_octohash" /><ref name="thread4660" />, published in August 2020, catalogues generations of 455380 collisions between a single [[glider]] and all possible [[constellation]]s of up to two well-separated objects (excluding [[pseudo still life]]s) fitting inside a {{times|12|12}} bounding box; the included objects are [[block]], [[tub]], [[boat]], [[beehive]], [[ship]], [[loaf]], [[eater]], [[pond]], [[long boat]], and [[blinker]]. | ||
The ''octo3g database''<ref name="post149677" /><ref name=" | The ''octo3obj database''<ref name="db_octo3obj" /><ref name="post147380" />, finished in June 2022, catalogues generations of 3421907 collisions between a single glider and all possible constellations of up to three well-separated patterns fitting inside an {{times|11|11}} bounding box; the included objects and constellations are [[blinker]], [[block]], [[beehive]], [[bi-block]], [[half blockade]], and [[teardrop]] ash (two beehives). | ||
The ''octo3g database''<ref name="db_octo3g" /><ref name="post149677" /><ref name="post150819" />, completed in August 2022, catalogues generations of 464746 collisions in a subset of [[three-glider collision]]s, making it possible to search 3G collisions in the same way as active patterns in the previous octo3obj and octohash databases. | |||
==See also== | ==See also== | ||
| Line 20: | Line 40: | ||
<ref name="db_octo3obj">[https://github.com/dvgrn/octo3obj {{filename|dvgrn/octo3obj}}] on GitHub</ref> | <ref name="db_octo3obj">[https://github.com/dvgrn/octo3obj {{filename|dvgrn/octo3obj}}] on GitHub</ref> | ||
<ref name="db_octo3g">[https://github.com/dvgrn/octo3g {{filename|dvgrn/octo3g}}] on GitHub</ref> | <ref name="db_octo3g">[https://github.com/dvgrn/octo3g {{filename|dvgrn/octo3g}}] on GitHub</ref> | ||
<ref name="thread4660">{{LinkForumThread | |||
|format = ref | |||
|t = 4660 | |||
|title = Octohash fingerprints | |||
}}</ref> | |||
<ref name="post147380">{{LinkForumThread | |||
|format = ref | |||
|p = 147380 | |||
|title = Re: Octohash fingerprints | |||
|author = Dave Greene | |||
|date = June 21, 2022 | |||
}}</ref> | |||
<ref name="post149677">{{LinkForumThread | <ref name="post149677">{{LinkForumThread | ||
| Line 27: | Line 61: | ||
|author = Dave Greene | |author = Dave Greene | ||
|date = August 17, 2022 | |date = August 17, 2022 | ||
}}</ref> | |||
<ref name="post150819">{{LinkForumThread | |||
|format = ref | |||
|p = 150819 | |||
|title = Re: NewLifeCA Back Issues | |||
|author = Dave Greene | |||
|date = September 10, 2022 | |||
}}</ref> | }}</ref> | ||
| Line 32: | Line 74: | ||
[[Category:Pattern collections and databases]] | [[Category:Pattern collections and databases]] | ||
[[Category:Search software]] | |||
[[Category:Software]] | |||
[[Category:Synthesis]] | |||
Latest revision as of 05:56, 8 December 2022
| This article is a stub. You can help LifeWiki by expanding it. |
The octohash function is a hash function that returns the same value for any of the eight orientations of a pattern -- in other words, the octohash of any rotation or reflection of a pattern will always be the same as the octohash of the original pattern.
Several databases implemented using the octohash function can be used to search for active reactions that produce a given pattern (which may be active or settled). The databases are designed to work with Golly and Python, without other dependencies.
| ||
|
The octohash database[1][2], published in August 2020, catalogues generations of 455380 collisions between a single glider and all possible constellations of up to two well-separated objects (excluding pseudo still lifes) fitting inside a 12 × 12 bounding box; the included objects are block, tub, boat, beehive, ship, loaf, eater, pond, long boat, and blinker.
The octo3obj database[3][4], finished in June 2022, catalogues generations of 3421907 collisions between a single glider and all possible constellations of up to three well-separated patterns fitting inside an 11 × 11 bounding box; the included objects and constellations are blinker, block, beehive, bi-block, half blockade, and teardrop ash (two beehives).
The octo3g database[5][6][7], completed in August 2022, catalogues generations of 464746 collisions in a subset of three-glider collisions, making it possible to search 3G collisions in the same way as active patterns in the previous octo3obj and octohash databases.
See also
References
- ↑ dvgrn/octohash on GitHub
- ↑ Octohash fingerprints (discussion thread) at the ConwayLife.com forums
- ↑ dvgrn/octo3obj on GitHub
- ↑ Dave Greene (June 21, 2022). Re: Octohash fingerprints (discussion thread) at the ConwayLife.com forums
- ↑ dvgrn/octo3g on GitHub
- ↑ Dave Greene (August 17, 2022). Re: Enumerating Three-Glider Collisions (discussion thread) at the ConwayLife.com forums
- ↑ Dave Greene (September 10, 2022). Re: NewLifeCA Back Issues (discussion thread) at the ConwayLife.com forums