Symbolic dynamics is a great gateway to DS for computer scientists. You can start with dynamics on words and group actions on graphs; the basics of these fields don't have too many prerequisites and have an immediate computational component you can exploit to augment your study with interesting code.
A fairly accessible intro (needs Linear Algebra) is Lind's book, An Introduction to Symbolic Dynamics and Coding. For dynamics on graphs, you may begin with any book on Spectral Graph Theory.
A crucial theorem in symbolic dynamics is that entropy alone classifies Bernoulli systems (https://en.wikipedia.org/wiki/Bernoulli_scheme) up to isomorphism: if two Bernoulli systems have different entropies, they are structurally distinct. Starting from this fact, there are many problems trying to classify and distinguish symbolic systems based on computable invariants like entropy.
Perhaps the most famous problem associated to symbolic dynamics is the x2 x3 conjecture. It says that the only probability distribution on [0,1) with 0 identified to 1 (i.e. the flat circle) that is invariant under both multiplication by 2 mod 1 and multiplication by 3 mod 1 is the uniform distribution. This was formulated by H. Furstenberg after he proved an analogous topological statement.
I tried implementing search for "nice" random iterated function systems (IFS) using the Lyapunov exponent (and a generalisation where I histogram the exponents instead of just using the average), unfortunately with no good results: I couldn't find a way to characterise / filter out the crappy attractors from interesting ones. Womp womp
I thought to check the creation timestamps on the images, to see if I could bruteforce the RNG seed (which is just time(NULL)) and recreate the parameters. But the images currently shown on that page weren't created by the linked gen.c program; that only produces black-and-white images, as you can see in older versions of the page [0]. The current JPEGs were exported from Photoshop CS6 on January 23, 2019, according to their metadata. Presumably, the high-resolution curves came from some unpublished program, so one would presumably have to email Bourke to see if he still has it.
(Though if you do still want to mess with gen.c, I'd note that the bitmaplib.c and paulslib.c dependencies can be found in S2PLOT [1].)
11 comments
[ 2.8 ms ] story [ 45.4 ms ] threadI took a course or two by Prof. Robinson as an undergrad and found the material engaging.
A crucial theorem in symbolic dynamics is that entropy alone classifies Bernoulli systems (https://en.wikipedia.org/wiki/Bernoulli_scheme) up to isomorphism: if two Bernoulli systems have different entropies, they are structurally distinct. Starting from this fact, there are many problems trying to classify and distinguish symbolic systems based on computable invariants like entropy.
Perhaps the most famous problem associated to symbolic dynamics is the x2 x3 conjecture. It says that the only probability distribution on [0,1) with 0 identified to 1 (i.e. the flat circle) that is invariant under both multiplication by 2 mod 1 and multiplication by 3 mod 1 is the uniform distribution. This was formulated by H. Furstenberg after he proved an analogous topological statement.
(Though if you do still want to mess with gen.c, I'd note that the bitmaplib.c and paulslib.c dependencies can be found in S2PLOT [1].)
[0] https://web.archive.org/web/20180812154751/http://paulbourke...
[1] https://astronomy.swin.edu.au/s2plot/index.php?title=S2PLOT:...