Information Complexity

Diagram of information complexity, copied from the text quoted below

Most of the proposed measures [of information complexity] differ from each other but share at least one important characteristic, in that strictly regular things as well as strictly irregular things are ‘simple’, while things that are neither regular nor irregular are ‘complex’… On one extreme we have the pure regularity found in Euclidean objects. Deterministic fractals, while not simple, have compact algorithmic descriptions but elaborate structures.  Fractals fail to be strictly simple because even though they are defined by short programs, these programs must be made to run forever in order to completely express the infinite self-similarity that they contain.  On the other extreme is pure noise.  Brownian motion is slightly more complex than pure noise because Brownian processes must have ‘memory’, in that every random injection is always made relative to the previous state; thus, a random walker’s position is not just a random location but the sum of an infinite number of random steps.  Hence, fractals, both deterministic and stochastic, while not simple, seem to be on the edge of being complex.

From: “The Computational Beauty of Nature” by Gary William Flake, pg 135.

Text as Number

 

I wrote a simple Processing sketch that returns binary values of characters from a split file (one letter per line), with an appended “0.” in front – this essentially makes this a single very complex number that holds all the information of the text.  Above is Shakespeare’s 51st sonnet stored as a number.

Based on a thought in Gary William Flake’s “The Computational Beauty of Nature” (pg 21).  As Flake describes it, “Now take a long number and put a zero and a decimal point in front of it.  We’ve just translated one huge number into a rational number between 0 and 1.  By placing this single point at exactly the right spot on the number line, we can store an unlimited amount of information.”

I think especially interesting is the idea that rather than the sonnet be translated to a number between 0 and a giant number (say 100 trillion, etc), the number is only between 0-1 but occupies a very specific point on the number line.  The resulting number is unique and no other text has that exact value.

Source code:

Painting, Sculpture, and Code

A nice description of software as art that will be perfect for my students:

There are two complementary images that we should consider before starting this chapter.  The first is how a painter of sculptor modifies a medium to create original structure from what was without form.  The second is how sound waves propagate through a medium to travel from one point to another.  Both images serve as metaphors for the motivation behind this and the next chapter.  As for the first image, just as a painter adds pigment to canvas and a sculptor bends and molds clay, so a programmer twiddles bits with silicon.  The second image relates to the way information within a computer is subject to the constraints of the environment in which it exists, namely, the computer itself.

The key word in both metaphors is “medium”, yet there is a subtle difference in each use of the word.  When a human programs a computer, quite often the underlying design of the program represents a mathematical process that is often creative and beautiful in its own right.  The fact that good programs are logical by necessity does not diminish the beauty at all.  In fact, the acts of blending colors, composing a fugue, and chiseling stone are all subject to their own logical rules, but since the result of these actions seems far removed from logic, it is easy to forget that the rules are really in place.  Nevertheless, I would like you to consider the computer as a medium of expression just as you would canvas or clay.

From “The Computational Beauty of Nature” by Gary William Flake, pg 11.