next up previous
Next: Visualization and observations on Up: The Algorithmic Beauty of Previous: Visualization of truth tables

L-systems

L-systems were introduced in 1968 by Lindenmayer[3] as a formal approach to understanding growth processes in biological structures. The language used to generate L-systems is axiomatic in character thus providing a connection between our logic problem and our visual solution. It uses rewriting as its basic technique, hence creating complex objects by iterating sets of rules or productions to replace parts of a simple initial geometry. The initial geometry is called the initiator and the rules which give instructions of replacements are called generators.

L-systems have the unique property of generating productions in parallel. This means that any problem which relies on permutations for its solution can be calculated simultaneously instead of sequentially. For example, taking a straight line and splitting it in 2, doubles the number of segments. Succesive splitup redouble. This simultaneous splitting exemplify the kind of systematic apical growth which this research aims to map to traces' truth tables. The manner of transitions between 1's and 0's is suggestive of L-system-produced sequences. A more complete description of the analogy will be given in the following section.

By using a simple geometry to illustrate parallel results, it becomes possible to look at all values produced by an equation, at once. Consequently L-systems provide a usefull tool for evaluating results at a glance and to observe emerging patterns in the study of a given problem This is relevant to the trace problem because it is important to see whether emerging patterns of the truth tables are independent of special features of particular tables.

The language of production is quite simple; however, finding appropriate solutions can be challenge. For any given problem there is no unique solution. Annex A gives an example of the language used to produce L-systems as well as showing two different ways of generating a well known fractal like the Sierpinski Gasket[5]. These two examples use turtle geometry. The technique is to instruct something referred to as a turtle to go forward, draw a line, change direction, flip over, in the case of 3 dimensional rules, etc... using as its travlling ground a Cartesian grid. Because researchers found the simplicity of the language limiting, parameters were introduced as a way to increase the flexibility of the language. Annex B describes a recipe which uses parameters amidst its rules and shows the visual result. In this case a twig with self-similar leaves is generated.

However nature cannot define a geometry for traces. These theoretical objects provide complete freedom as to the type of L-system to be used in the process of exploring them. It is also very easy to go astray.

The obvious strategy is to use the traces' truth tables to inspire a particular geometry. By analyzing the morphology of the tables it is possible to map lines and angles to patterns of 0's and 1's.


next up previous
Next: Visualization and observations on Up: The Algorithmic Beauty of Previous: Visualization of truth tables
Thalie Prevost
11/19/1997