{"article":{"slug":"l-systems-generate-weevils-pizza-toppings-and-matriarchal-lineages","title":"L-systems generate weevils, pizza toppings, and matriarchal lineages","subtitle":null,"summary":"Mark Jason Dominus explores Fibonacci words and L-systems—how the same rewrite rules generate rabbit genealogies, weevil patterns, pizza toppings, and matriarchal lineages.","content_type":"essay","language":"en","canonical_url":"https://blog.plover.com/misc/fibonacci-word-2.html","author":{"name":"Mark Jason Dominus","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"blog.plover.com","url":"https://blog.plover.com/","listing_slug":null,"listing":null},"topics":[{"name":"Mathematics","slug":"mathematics","url":"https://listedarticles.com/topics/mathematics"},{"name":"Programming","slug":"programming","url":"https://listedarticles.com/topics/programming"},{"name":"Essays","slug":"essays","url":"https://listedarticles.com/topics/essays"},{"name":"Research","slug":"research","url":"https://listedarticles.com/topics/research"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":360,"reading_minutes":2,"published_at":"2026-09-25T00:00:00.000Z","added_at":"2026-10-04T20:13:56.652Z","updated_at":"2026-10-04T20:13:56.652Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/l-systems-generate-weevils-pizza-toppings-and-matriarchal-lineages","markdown_url":"https://listedarticles.com/articles/l-systems-generate-weevils-pizza-toppings-and-matriarchal-lineages.md","example":false,"citation":"Mark Jason Dominus, blog.plover.com. \"L-systems generate weevils, pizza toppings, and matriarchal lineages.\" 25 Sept 2026. https://blog.plover.com/misc/fibonacci-word-2.html (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://blog.plover.com/misc/fibonacci-word-2.html"},"body_markdown":"Fri, 25 Sep 2026\n\nL-systems generate weevils, pizza toppings, and matriarchal lineages\n\n\nThe Fibonacci sequence is so-called because in Western mathematics is\nfirst appears in connection with a problem from Fibonacci's 1202 book\n*Liber Abaci*. Fibonacci asks us to consider a rabbit farm where a\npair of baby rabits grows to adulthood in one month, and an adult pair\nof rabbits gives birth to a new pair of babies after a month.\nRepresenting an adult pair with `a` and a baby pair with `b`, we could\nwrite this as:\n\n```\n    b → a\n    a → ab\n```\nStarting with one pair of baby rabbits, and performing the indicated substitutions month by month, we get:\n\n```\n    b\n    a\n    ab\n    aba\n    abaab\n    abaababa\n    abaababaabaab\n    abaababaabaababaababa\n    abaababaabaababaababaabaababaabaab\n    abaababaabaababaababaabaababaabaababaababaabaababaababa\n    …\n```\nThe total number of symbols (and pairs of rabbits) each month gives us\nthe Fibonacci sequence, as does the total number of `a`s, or the total\nnumber of `b`s, in each line.\n\nA structure like this one, in which there are symbols, in this case\n`a` and `b`, that are repeatedly replaced with strings of symbols, is\ncalled an “L-system”, and this L-system in particular is the “Fibonacci L-system”.\n\nYesterday I happened to mention *Zyzzyva*, which is a genus\nof weevils that I can only assume was named by a biologist who wanted\nto be last in the dictionary.  When I see a pattern like this I\ninstantly think of the Fibonacci L-system.  We can use the Fibonacci L-system to generate a sequence\nof increasingly long weevil names:\n\n```\n    Yva\n    Zva\n    Zyva\n    Zyzva\n    Zyzzyva\n    Zyzzyzyzva\n    Zyzzyzyzzyzzyva\n    Zyzzyzyzzyzzyzyzzyzyzva\n    Zyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzzyva\n    Zyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzyzva\n```\nOr pizza toppings:\n\n```\n    eroni\n    proni\n    peroni\n    peproni\n    pepperoni\n    peppepeproni\n    peppepeppepperoni\n    peppepeppeppepeppepeproni\n    peppepeppeppepeppepeppeppepeppepperoni\n    peppepeppeppepeppepeppeppepeppeppepeppepeppeppepeppepeproni\n```\nOr family matriarchs:\n\n```\n    Grandma\n    Grandmam\n    Grandmamma\n    Grandmammamam\n    Grandmammamammamma\n    Grandmammamammammamammamam\n    Grandmammamammammamammamammammamammamma\n    Grandmammamammammamammamammammamammammamammamammammamammamam\n```\nI had to cheat a little here because there's an `a` in the middle that\nI didn't substitute.  If we don't skip that we get the unpronounceable \n“Grmammandmammamammamma”.\n\nA quick computer search suggests several other variations, including both “mammaries” and “titties”, but to prevent this article from devolving into juvenile sniggering, I'm going to cut the scroll here.\n\nAmazingly, there was a previous article on a closely related topic.\n\n*[Other articles in category /misc] \npermanent link*","body_html":"<p>Fri, 25 Sep 2026</p>\n<p>L-systems generate weevils, pizza toppings, and matriarchal lineages</p>\n<p>The Fibonacci sequence is so-called because in Western mathematics is\nfirst appears in connection with a problem from Fibonacci&#39;s 1202 book\n<em>Liber Abaci</em>. Fibonacci asks us to consider a rabbit farm where a\npair of baby rabits grows to adulthood in one month, and an adult pair\nof rabbits gives birth to a new pair of babies after a month.\nRepresenting an adult pair with <code>a</code> and a baby pair with <code>b</code>, we could\nwrite this as:</p>\n<pre><code>    b → a\n    a → ab</code></pre>\n<p>Starting with one pair of baby rabbits, and performing the indicated substitutions month by month, we get:</p>\n<pre><code>    b\n    a\n    ab\n    aba\n    abaab\n    abaababa\n    abaababaabaab\n    abaababaabaababaababa\n    abaababaabaababaababaabaababaabaab\n    abaababaabaababaababaabaababaabaababaababaabaababaababa\n    …</code></pre>\n<p>The total number of symbols (and pairs of rabbits) each month gives us\nthe Fibonacci sequence, as does the total number of <code>a</code>s, or the total\nnumber of <code>b</code>s, in each line.</p>\n<p>A structure like this one, in which there are symbols, in this case\n<code>a</code> and <code>b</code>, that are repeatedly replaced with strings of symbols, is\ncalled an “L-system”, and this L-system in particular is the “Fibonacci L-system”.</p>\n<p>Yesterday I happened to mention <em>Zyzzyva</em>, which is a genus\nof weevils that I can only assume was named by a biologist who wanted\nto be last in the dictionary.  When I see a pattern like this I\ninstantly think of the Fibonacci L-system.  We can use the Fibonacci L-system to generate a sequence\nof increasingly long weevil names:</p>\n<pre><code>    Yva\n    Zva\n    Zyva\n    Zyzva\n    Zyzzyva\n    Zyzzyzyzva\n    Zyzzyzyzzyzzyva\n    Zyzzyzyzzyzzyzyzzyzyzva\n    Zyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzzyva\n    Zyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzzyzyzzyzyzzyzzyzyzzyzyzva</code></pre>\n<p>Or pizza toppings:</p>\n<pre><code>    eroni\n    proni\n    peroni\n    peproni\n    pepperoni\n    peppepeproni\n    peppepeppepperoni\n    peppepeppeppepeppepeproni\n    peppepeppeppepeppepeppeppepeppepperoni\n    peppepeppeppepeppepeppeppepeppeppepeppepeppeppepeppepeproni</code></pre>\n<p>Or family matriarchs:</p>\n<pre><code>    Grandma\n    Grandmam\n    Grandmamma\n    Grandmammamam\n    Grandmammamammamma\n    Grandmammamammammamammamam\n    Grandmammamammammamammamammammamammamma\n    Grandmammamammammamammamammammamammammamammamammammamammamam</code></pre>\n<p>I had to cheat a little here because there&#39;s an <code>a</code> in the middle that\nI didn&#39;t substitute.  If we don&#39;t skip that we get the unpronounceable \n“Grmammandmammamammamma”.</p>\n<p>A quick computer search suggests several other variations, including both “mammaries” and “titties”, but to prevent this article from devolving into juvenile sniggering, I&#39;m going to cut the scroll here.</p>\n<p>Amazingly, there was a previous article on a closely related topic.</p>\n<p>*[Other articles in category /misc] \npermanent link*</p>","headings":[]}}