# math The mathematics of Mrly: design codes, their symmetries, counts, tiles, automata and renderings. A small integer code picks the filled corners of a hypercube, that seed grows level by level into a fractal design, and the same code always unfolds into the same shape, so a design can be named, counted and drawn again from its number alone. Half the crate generates: bang enumerates the codes and their symmetry classes, the dimension pipelines build designs and random tiles in the plane, the cube and the hexagon, and `mrlyrs::life` steps grids through their generations. The other half measures: censuses count fills, voids and exposed faces, graphs trace cores, edges and tunnels, and formulas gives the same counts in closed form. Everything rests on the tensors and cells of `mrlyrs::core` and the sequences, censuses and graphs of `mrlyrs::num`, and name pins one canonical JSON object on every design, rule, tile and word. ## Modules - **bang** enumerates the design codes, their symmetries and their counts; **rules** marks the cells of a hypercube whose coordinate residues satisfy a rule. - **dim** holds the N-dimensional cell and the pipeline the fixed dimensions share. - **two**, **three** and **six** run that pipeline for flat cells, cubes and hexagons: designs, tiles, censuses, graphs and renderings. - **formulas** counts fills, grids and surfaces in closed form, without rendering. - **name** prints and parses the one canonical JSON object of every bang, rule, tile and word, and cuts its url, file and prose views. - **space** holds the vector and the packed wire format of 3d scenes. ## Running - `cargo test -p mrlyrs` runs the tests. - `cargo run -p mrlyrs --example paints` prints one painted tile per edition as json.