This collection explores the generation of "all" 2D patterns of bitwise operators on a finite set of symbols.
The algorithm will randomly pick, based on the contract seed, one integer smaller than 9007199254740991, this integer uniquely defines a bitwise operator. The minter controls 4 independent parameters: the numeral system base(finite set of symbols), and the fractal roughness. Fractal roughness is controlled by two parameters: the base and the exponent of the coarse-graining operator. All these values are given as features once the NFT is minted.
Surprisingly no fine-tuning of the parameters was needed. Limiting the interval range of the allowed parameter values was the only aesthetic restriction imposed, mainly due to fxhash's variation algorithm. Because not all the parameters give good patterns some mild restrictions were needed. Other beautiful, but rare, spatial patterns exist on the far side of the parameters universe, but that's for another day.
The algorithm is deterministic because it is based on deterministic bitwise operations on a finite alphabet. The list of all bitwise operators is called magma, hence the name of this NFT collection.
One of the visually appealing parameters of the algorithm is the roughness exponent which is closely related to the fractal nature of the patterns produced. This roughness exponent shapes the resulting spatial pattern morphology, larger values of the exponent lead to coarser patterns, the inverse also happens, and lower values of the roughness exponent lead to finer detail. These mathematical structures, patchwork quilts, are fractals with self-affine properties arising from simple bitwise operations between numbers.
Colors are generated by converting the bitwise operator hyper-surface levels values to the 16777216 RGB color values in two ways.
Also implemented is a coarse grain operator(CGO) that permits to morphological zooming in and out of the pattern. The coarse grain operator has two parameters: a scale, parameter 'CGO scale', and an exponent, 'CGO exponent', that roughly specifies the magnitude of the coarse grain operator. 'CGO scale' equal to 1(one) disables the coarse operator.
Happy hacking!
Completeness and determinism in algorithms are aesthetical categories that push into the limit of what can be described, as fragile pedestals for our random existence.
Created by Tiago Charters