× among
The poem is sung letter by letter. Each letter is a note, by the French method: the alphabet is written in rows of seven under the notes A to G, so a, h, o and v are all A. S.I.M. used it in 1909 to spell Haydn’s name for his centenary, moving H to B; here H stays under A. Here each row is an octave above the one before, so no two letters share a pitch; the table in the corner is the key. Vowels are sung, m and n hummed, l, r and w glide into their note, fricatives are breath tuned to it and stops are plucked. A space, a comma and each tab are a step of rest: the poem’s indentation is heard as waiting.
One word is among another when all its letters appear in it, in order: most is among amongst, almost and at most. When a word is written, every earlier word among it returns. It is tied to the letters where it is found, in amber, from each of its newest three places, and its newest place sings with them in unison (up to four voices a letter, the longest words first, sharing one loudness). Each writing of a word returns once for every later word it is among. Counted in letters, the poem is right about itself: among returns the most, 45 letters, and most comes next with 40.
Graham Higman proved in 1952 that this cannot be avoided: in any endless run of words over a finite alphabet, some word is among a later one. A run in which nothing ever returns has to end, though nothing says how soon.
The p3r kernel finds every return. It hears each letter of a new word as two marks, the note it is written under and then its row, and compares them with the next letter that each earlier word is waiting for, one rule per waiting word. The page first leaves out any word that has more of some letter than the new word, which could not be among it. The page keeps each word’s place; when a word’s letters have all been found, in order, it has returned. Every finding is checked against the page’s own test. In the same way the kernel finds which earlier words a new word was already among. Those are tied back in blue and heard an octave above.
Amost was already among amongst, amonst and almost before the poem wrote it. After the poem, the machine goes on the same way, and only that way: it writes the longest runs of letters that two written words share in order (their longest common subsequences, up to eight a pair), with at least three letters and a vowel, which nobody has written yet. Each was already among the words it came from. It writes first the one that was among the most words, and says where it was, as the poem says amost would also exist amongst and with among. Every such word is inside a word already written, so there are only so many; when none is left, it stops. From the poem it finds fourteen. Some are words elsewhere: amo, thin, her, ant, oud. The machine cannot know that. It knows only the words written here.
Then the words are yours. Whatever you write is sung, answered the way the poem begins, and searched for what returns in it; the machine then writes up to three words that would also exist between yours and the rest. While you type, the page says what is already returning in it. Write a word in which nothing returns and the answer says so. Words are letters a to z; the machine keeps no dictionary.
Space waits or continues · W writes · P changes the pace (sung, slow, bird: faster and an octave higher) · M mutes · Escape leaves. Still reduces movement. Document downloads the poem and everything written after it, with its tabs.
The poem is the artist’s. Every sound here is synthesized in your browser; no recording, microphone or network service is used. Audio provenance ↗