Look-and-Say Sequence

2016-03-05, post № 107

mathematics, programming, Python, #approx., #approximating, #approximation, #John Conway, #lambda, #number sequence, #sequence

An interesting nonmathematical sequence which yet has interesting mathematical properties is the Look-and-say sequence.
As every good sequence it starts with a 𝟣. From there you get each next entry by looking at the previous and saying it. The next entry will thus be “one 𝟣” or 𝟣𝟣. From there “two 𝟣” or 𝟤𝟣, then “one 𝟤; one 𝟣” or 𝟣𝟤𝟣𝟣, “one 𝟣; one 𝟤; two 𝟣” or 𝟣𝟣𝟣𝟤𝟤𝟣 and so on.

Generating the Sequence

The mathematical property, although, does not lie in the entry’s value, but rather in its length.

Calculating the Length of each Entry

The interesting thing about the length is, that it approximately grows by 𝜆 each time. $\big(\lambda=1.303577269034\dots\big)$
This constant 𝜆 can be calculated by getting the real root of a degree 𝟩𝟣 polynomial (see Nathaniel Johnston’s post for further information) or be approximated by dividing entries. $\big(\lambda=\frac{\text{entry}_{n+1}}{\text{entry}_{n}}\text{ for }n\rightarrow\infty\big)$

Approximating 𝜆

Source code: look-and-say-sequence.py

Haferman Carpet

2016-02-27, post № 106

mathematics, programming, Pygame, Python, #animated gif, #automation, #black, #black and white, #carpet, #cell, #cell simulation, #cellular, #cellular automation, #cellular simulation, #fractal, #generating, #generation, #gif, #iterations, #weave, #white, #woven

The Haferman Carpet is a fractal, which kind of looks like a woven carpet. To generate it, you start with a single black pixel and apply in each cycle a set of rules.
In each generation every pixel in the carpet will be replaced by nine pixels according to the rules. A black pixel is represented by a 𝟢, a white one by a 𝟣.

The Rules

Source code: haferman-carpet.py

J-Filters VI

2016-02-20, post № 105

programming, Pygame, Python, #angle, #around, #filter, #image, #image filter, #image manipulation, #manipulation, #spinning, #spun, #spun around, #stir, #vector

Using a vector and an angle, rotating each pixel’s position by an angle determined by its distance to the image’s center and a constant, this filter gives the image a unique spin.
For demonstration I used — once again — an image from my post Stacking Stones.

Source code: j-filters-vi_spin.py
Jonathan Frech's blog; built 2021/04/16 20:21:20 CEST