Abstract nonsense

23 Feb 2016

Suppose that we're trying to find patterns in linear descriptions of complex networks of ideas that connect together like tensegrity structures.

Kenneth Snelson Needle Tower.JPG
By Onderwijsgek - Own work, CC BY-SA 2.5 nl, https://commons.wikimedia.org/w/index.php?curid=2120206

Examples include mathematics textbooks, Christopher Alexander's pattern language book, some philosophy books, and many medium-large computer programs.

There are three major ways people convey a single idea-node. They're partially redundant, but often it is worthwhile to keep the redundancy rather than eliminating it.

The Description

A description is something between a sentence and a few pages of running natural-language text, often a paragraph. but a description is not a story or narrative ("How the Foo came to be designed and built"), nor an explanation ("How the Foo works"). It may enumerate qualities that the object being described has. It may describe the relationships that the object being described has with other objects or with the broader context generally.

In contrast to a definition, a description is not precise, it is vague and gestural. Vagueness is sometimes useful - it can provide a way for someone who starts out unfamilar with the object being described to get more familiar with it, where precision might instead remain a cipher. In contrast to an example, a description is not particular. Imprecise examples can and do occur inside of descriptions, but there are generalities (such as "All Foo are Bar") that can be conveyed with a description, that cannot be conveyed with a few concrete examples (unless we expect the reader to experience an inductive insight).

The book "Clear and Simple as the Truth" focuses on a particular writing style, so-called classic style, which is particularly suited to these descriptions. The book gives many examples of classic style, but each of these are also examples of descriptions.

The Definition

A definition is precise and general. Usually a text will have a single language for writing definitions in, either its own internal language, or a nominally-external language such as Python or Zermelo-Frankel with Choice. Usually, though, it is safer to start by imagining that the text is using its own internal language, because even if they claim to be using an external language, leaning on that claim can leave you open to misunderstandings.

For a simple example, imagine that you are reading a text, and it claims to be in Python, and you imagine that they mean Python 3, and they actually mean Python 2. Even tiny differences in semantics can become stumbling blocks that could easily be avoided.

The network of definitions can be circular, free-floating, and rigid. These are good things (it means that the text actually does capture something), but they also can make a text that leans solely on definitions unapproachable and cryptic.

I believe Bourbaki is a pseudonym of a group of french mathematicians who write in definition-heavy style, but math textbooks often use definitions to the exclusion of anything else.

The Example

An example is always particular, and often precise. Like descriptions, they can make it easier to approach and relate to a definition. Moreover, they can motivate a concept, explaining why someone, when they were confronted with this list of concrete objects, decided to create an abstraction.

Counterexamples are a variant of example, which can pin down the boundaries of an idea better than positive examples alone.

Examples are often shortchanged, and I don't know why. Possibly they are perceived to be insufficient to stand alone by themselves, leading people to attempt to create description+examples or definition+examples or description+definition+examples, and then they get tired before creating the examples. Possibly nontrivial examples are too large to write or to publish and trivial examples might make the writer look silly?