User:DroneBetter
I contribute here as an editor, but am also an amateur programmer and mathematician, as such my edits reflect my interests somewhat.
I live in the UK, at present, where I was born also.
Art gallery
| Outer-totalistic rule map showing examples and disproofs of the existence of spaceships, as used in Spaceship#In other rules (see there for more details and file descriptions for programs) |
Sir Robin as rendered by gzip_swar_INT, like a long-exposure shot except each iteration is shifted by (2,1)/6 and the colour shifts π3 around the colour wheel, I thought perhaps white subpixels could be considered 36ths of stator cells to generalise volatility to spaceships (and strict volatility, because cells oscillating at subperiods appear grey), an idea which it seemed Connor Steppie also thought of after me in a forum post The doo-dah |
Programming
I began programming initially with Scratch, and eventually made a real-time raytracer (supporting Newtonian lower speeds of light and gravitational lensing) before moving onto Python. However, I only became what I would deem proficient at about the time I made my chess tablebase program, for generating, rendering and simulating state transition diagrams in 3D. It has springs and repulsion (to attempt to optimise Euclidean space to the distance metric of moves between nodes. I also added exhaustive oscillator searches in bounded regions in cellular automata (currently only feasibly up to 5*5, in INT rules without b0), with diagram-viewing for that also. It takes quadratic time to simulate physics because it doesn't implement the fast multipole method. It supports topological manifolds (in both chess and CA) but only reduces the number of states to search by considering only those nonequivalent under symmetry, not vertex-transitivity (as is allowed by some manifolds). Here is the discussion thread (in which I explained some of my other programming :-)
Its purposes for chess, though less elementary, may still be of interest here, being that it concerns recursive application of a simple function (albeit of checkmate regression on finite graphs instead of infinite planes), that give rise to phenomena like the KRvK DTM distribution with respect to board width. A358339 answers the question "How many nonequivalent positions on an n*n board are checkmate in k half-moves," and is surprisingly complex, I suspect it regularises at n > 24, whereupon the maximum DTM (A225552) appears to become linear-recurrent. The cellular automaton mode was initially implemented in a trivial manner, with states simulated as lists of booleans, until my dear friend Redstoneboi (from the forums here) told me about David Buchanan's Github gist, gzip_swar_life.py, which simulates Life with "(Single-Instruction Multiple-Data) Within A Register," representing bounded states as bigints with four bits per cell so its computations with bitwise operators are performed in the C implementation with a constant amount of Python interpreter overhead, the gzip is because it uses gzip to decompress to eight bits per cell, converting it to a YUV4MPEG video (which can be streamed at 1080p60fps, ie. 124416000 cells/second (!!)). I decided to begin modifying it for my program, and made a fork, gzip_swar_isotropic_non-totalistic (also detailed in my forum thread), supporting arbitrary OT rules, INT ones (in 9 bits per cell (in 3*3 squares) then 8 (in 8*1 rectangles) after I realised it can use the pre-mask int to check its own state, which will allow video streaming without the intermediate gzip), topological manifolds and some buggy support for infinite planes. It can now analyse oscillators (to automatically sort Catagolue censuses by volatility), which found a few previously-unknown ones of note at the lower periods, leading to extensions of some pages.
Articles
I wrote the articles Tutorials/Coding Life simulators/bitwise SWAR Life (regarding the program above), Pólya enumeration theorem, Tutorials/Coding Life simulators/eightfold reducer (concerning an application of the theorem to efficient indexing methods for emulating lists of states under symmetry), Modular congruence,[n 1] One-dimensional cellular automaton/Wolfram rule, OCA:Critters and OCA:Rule 225.
For the sake of completeness, I also created the pages for Grid's p16, Charity's p30 and Cribbage, but they're of the wiki's more standard style of short synoptic pages about elementary patterns, someone would have very shortly if not for me getting there first, and others improved them thereafter.
With gzip_swar_INT's census-sorting mode, I found some more entries for Highest volatility period-5 oscillators, and made equivalent pages for periods 3, 4, 6, 7 and 8.
I also made Other jacks, regarding a family of patterns of which one member had accidentally been given the same name as the Jack.
Most of my contributions are edits, I try to note facts and increase the total amount of information, rather than only reformat it, my program has allowed for the finding of many patterns that should constitute interesting notes.
I coined the name of the Blocktopus (found on June 25, 2021 by Jim Hortons, one of the highest-volatility period-8 oscillators and mentioned in Scrubber for its containment of an ephemeral one in some phases) as a whimsical joke, which David Raucci (HotdogPi) was so kind as to create a redirect for. I have been advised by iNoMed that due to its lack of sparkiness, it is not notable enough for a page, but I am happy nonetheless.
I found that the supposed logarithmic replicator rule's replicator in fact grows with Θ(√t), and found an explicit form for the generation at which it reaches each width.
Templates
The LifeWiki doesn't have a LaTeX extension, so I made {{frac}}, {{choose}}, {{sum}}, {{product}}, {{sqrt}} and {{lim}}, for expressing formulas in a somewhat more nicely-formatted way.
Userspace pages
- b3ai4s23 (regarding my rule, probably the most interesting to LifeWiki perusers)
- self-complementary outer-totalistic rules (lists all 47 with spaceships known and 11 that have not been disproven from containing spaceships)
- seminatural linear growth patterns (all those in the b3s23/all-soups census in particular, with a few annotations and links, to be more enjoyable and less hasslesome to go through than Catagolue itself)
I made a program for the more specific task of applying the Pólya enumeration theorem to determine numbers of transitions in neighbourhoods in a specific number of dimensions as closed-form equations in terms of the range, an OEIS sequence (A361870) and an article here about it. Later, I learned about characterisation of conjugacy classes of the hypercube symmetry group, and made a faster program.
If you are brave enough, my page miscellaneous curiosities is a veritable menagery of things I have found (in programming, maths and the intersection of the two), of varying degrees of interestingness, complexity and novelty. (Things are included there for the purposes of explaining them to others, as a reference for my future self, or as a cache for my intended future OEIS contributions, but you may glean something from it nonetheless.)
rule waiver
The LifeWiki etiquette policy says
- Do not edit other people's user pages without their permission
I'm not sure whether this also pertains to subpages (I hope not), but if you have a good-faith contribution to make to any of these, don't be dissuaded by the LifeWiki-wide rule. Like the great HotdogPi before me, I have edited various other people's userspace pages, so it would be hypocritical to disallow it.
Footnotes
- ↑ I know it seems off-topic for this wiki, but it was redlinked to in a few places by Confocal, which (I learned thereafter) was due to it being an appendix in Conway's Game of Life: Mathematics and Construction.
