L-systems generate weevils, pizza toppings, and matriarchal lineages
L-systems generate weevils, pizza toppings, and matriarchal lineages
In Western mathematics, the Fibonacci sequence is famously linked to a puzzle presented in Fibonacci's 1202 publication, Liber Abaci.
The problem asks us to imagine a rabbit colony where a pair of newborns takes one month to reach maturity, and every adult pair produces a new pair of offspring every month thereafter.
The Mechanics of Growth
To model this, we can assign symbols to the rabbits:
arepresents an adult pairbrepresents a baby pair
The growth rules can be expressed as:
We can summarize these transformations in the following table:
| Starting Symbol | Resulting String | Meaning |
|---|---|---|
b | a | Baby becomes adult |
a | ab | Adult stays adult and has a baby |
This recursive replacement process is known as an L-system (specifically, the Fibonacci L-system). If we start with a single baby pair (b), the sequence evolves as follows:
Month 1: b
Month 2: a
Month 3: ab
Month 4: aba
Month 5: abaab
Month 6: abaababa
Month 7: abaababaabaab
Month 8: abaababaabaababaababa
Month 9: abaababaabaababaababaabaababaabaab
Month 10: abaababaabaababaababaabaababaabaababaababaabaababaababa
Interestingly, the Fibonacci sequence emerges in three ways here:
- The total length of the string.
- The total count of
asymbols. - The total count of
bsymbols.
Visualizing the L-System Flow
Unconventional Applications
When I encounter these patterns, I immediately think of how the Fibonacci L-system can be applied to linguistic strings. For instance, I recently mentioned Zyzzyva—a genus of weevils likely named by a biologist with a desire to be the very last entry in any dictionary.
I've used this logic to generate "growing" versions of various words:
-
Weevil Names:
- Yva
- Zva
- Zyva
- Zyzva
- Zyzzyva
- Zyzzyzyzva
- Zyzzyzyzzyzzyva
- Zyzzyzyzzyzzyzyzzyzyzva
- Zyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzzyva
- Zyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzzyzyzzyzyzzyzyzzyzyzva
-
Pizza Toppings:
- eroni
- proni
- peroni
- peproni
- pepperoni
- peppepeproni
- peppepeppepperoni
- peppepeppeppepeppepeproni
- peppepeppeppepeppepeppeppepeppepperoni
- peppepeppeppepeppepeppepeppeppepeppepeppeppeppepeproni
-
Matriarchal Lineages:
- Grandma
- Grandmam
- Grandmamma
- Grandmammamam
- Grandmammamammamma
- Grandmammamammammamammamam
- Grandmammamammammamammamammammamammamma
- Grandmammamammammamammamammammamammammamammammamammamam
Note: I cheated slightly with the "Grandma" sequence by ignoring the middle 'a' during substitution. If I hadn't, the result would be the unpronounceable Grmammandmammamammamma.
A brief search for other variations revealed results involving "mammaries" or "titties", but to avoid turning this into a display of juvenile sniggering, I will stop here.
Final Thoughts
It turns out there was already a previous article on a very similar subject.
As a side note, I attempted to enlist Claude's help in writing this piece, but the AI refused, claiming the entire premise was "too stupid." Consequently, I had to write it myself.
Gallery
