Listen Apps Services About Contact Studio EN / TR
← String Logic
String Logic app icon
Reference · ruled 5 August 2026

The Chord Naming Law

How String Logic writes a chord, and why.

String Logic names a chord from the set of pitches you built — not from a template you picked off a list. For a long time it did that by an inherited habit: a convention carried over from an earlier version of the app, never written down, held in place only by a test that proved the app agreed with itself. Agreeing with itself is not the same as agreeing with the music.

On 5 August 2026 the habit was replaced by fifty-two rulings. This page is what they came to. Several of the questions below are settled in more than one way by the sources a working musician actually reads; those points are marked, with the positions named, so that nothing the app prints arrives as a surprise.

The fourth The gate Glyphs Parentheses sus · add · 6 · alt The bass The root What it will not write Where writing varies Reading How it is set Sources

The fourth, over a major third

Over a major third the natural eleventh is an avoid note. The third and the fourth do not coexist in the chord. So an eleventh over a major third is always a raised eleventh — and four separate questions that are usually answered one at a time are answered here, at once, by that single sentence.

A written 13 carries the ninth and no eleventh.
C13isC · E · G · B♭ · D · A

The seventh and the ninth are in the name. The eleventh is not, because over that third it cannot be.

Where an eleventh does sound over a major third, it is the raised one — and it is written.
C13(♯11)CΔ13(♯11)C6/9(♯11)

Only F♯ can be there, so ♯11 is the only eleventh the major family ever prints. The same holds under a major seventh and over a sixth-nine.

Over a minor third the clash never existed, so nothing is dropped.
Cm11isC · E♭ · G · B♭ · D · F
Cm13isC · E♭ · G · B♭ · D · F · A

The minor eleventh keeps its eleventh and so does the minor thirteenth. It looks like an inconsistency beside the line above, and it is the same rule read on the other side of the third.

Half-diminished has a minor third too, so it grows the whole way.
Cø9Cø11Cø13

All three exist and all three are printable.

This is the one place in the law where a naming rule comes straight out of how the chord sounds rather than out of how it is written. Everything after it is grammar.

The gate

A name is printed only if the app's own parser reads it back as the very set it was printed for. Every rule on this page passes through that gate. It is what makes editing a chord as text honest: what you read is what you can type back in.

It has already earned its keep. A dominant carrying both its third and a natural eleventh wanted to print C11 — and in the app's own vocabulary C11 has no third. So it prints the longer form instead.

setC · D · E · F · G · B♭printsC7(9,11)notC11

An unreadable name is a nuisance. A name that reads back as a different chord is a lie. The gate runs the other way as well: the app may not print anything it cannot read, which is what a blank chord symbol always turns out to be.

And it never prints nothing. A set it cannot name shows a visible marker, because a blank symbol is indistinguishable from a bar that simply has no chord in it.

The glyphs

Four marks carry the qualities. Each is narrow on purpose: a chord symbol here is read on a phone or a tablet at instrument's length, and horizontal room is the scarcest thing on the page.

Δ is the major seventh — everywhere in the app, not only on the staff.
CΔ7CΔ9CmΔ7CΔ7♯5notCmaj7CM7

The saving is in the name itself, so it holds in every font, not only where Bravura draws the triangle.

The triangle is never printed bare. The number is always there.
printsCΔ7accepts typed

A bare triangle is currently read both ways — as a major seventh, and as a plain major triad with no seventh implied. Printing the number costs one character and leaves nothing to infer. Typing the bare form still works.

ø is the half-diminished, printed bare. The seventh is inherent in the glyph.
notCø7Cm7♭5
° alone is the diminished triad. °7 is the four-note chord.
isC · E♭ · G♭
C°7isC · E♭ · G♭ · B♭♭

A number appears when a note appears. C°Δ7 — a diminished triad carrying a major seventh — stays in the vocabulary too: the app can build that set, so it must be able to say it.

+ is the augmented triad only. With a seventh, the fifth is spelled out.
C+C7♯5CΔ7♯5notC+7Caug7

One spelling of the raised fifth throughout the app.

Minor is m.
Cm7Cm9CmΔ7

With Δ carrying the major seventh, no capital M appears anywhere in the printed vocabulary.

Parentheses

Parentheses mark alterations and additions — the things that arrive on top of a complete chord. A chord's own stack is absorbed into the base number instead.

A natural extension is absorbed into the number, never parenthesised beside a 7.
C9CΔ9Cm9C6/9notC7(9)
An altered fifth rides bare. An altered 9, 11 or 13 goes inside.
C7♯5C7♭5andC7(♯9)C9(♯11)

The fifth belongs to the triad, so altering it belongs to the base name; the ninth, eleventh and thirteenth arrive on top of a chord that is already complete, and the parenthesis marks the arrival.

Several alterations sit on one line, in one pair of round parentheses, comma-separated.
C7(♭9,♯9)notC7(♭9)(♯9)a two-line stack

A second line would take its height out of the staff underneath it.

Inside the parentheses, low to high: 9, then 11, then 13.
C7(♭9,♯11)C7(♯9,♭13)notC7(♯11,♭9)

Chords build upward in thirds; flattened onto one line, upward becomes left to right.

The accidental always precedes the numeral.
♭9♯11never printed9♭+9−5
One number per rung. The raised fourth degree is ♯11; the lowered fifth is ♭5.
CΔ7(♯11)C7♭5notCΔ7♯4C7+4
Round parentheses.
C7(♭9)notC7[♭9]

The bracket, where publishers use it, marks an editorial addition. String Logic makes none, so it needs one shape only.

sus · add · 6 · alt

sus4 is always written in full. sus2 is writable.
C7sus4Csus2read, not printedC7sus

With sus2 in the vocabulary the bare word would be a guess, so it is read on the way in and never printed on the way out.

The sus dominant with a ninth is C9sus4.
setC · D · F · G · B♭printsC9sus4

This form names the fourth in place of the third explicitly.

A chord holding both the third and the fourth is not a sus chord.
setC · E · F · G · B♭printsC7(11)notC7sus4(add3)

The word means the third has gone, so String Logic names that set by what it contains instead.

A tension with nothing under it on the seventh tier reads add, in parentheses.
C(add9)notC9Cadd9C(9)
6 belongs to triads. Over a seventh, that pitch is a thirteenth.
C6Cm6C6/9notC7(6)

The sixth and the thirteenth are the same pitch class doing two different jobs, and the app's build matrix keeps them on the same tier, so the rule is structural before it is editorial.

C5 keeps its name.
C5notC(omit 3)
C7alt is written.
C7alt

What alt contains has never settled into one answer — the sources that define it differ about the notes rather than about the symbol. The symbol itself is long-established, it is what charts are full of, and String Logic prints it.

The bass

The diagonal slash means a chord over a single bass note, and only that.
C7/E♭nevertwo chords stacked on a horizontal line

String Logic writes no polytonal symbol; one root, one chord, one separator with one meaning.

The slash comes after the whole quality, glyphs included.
CΔ7/ECø/E♭C7(♭9)/EnotC/EΔ7

Root, quality, alterations, bass — one reading order, so any symbol can be split at its last slash.

A bass inside the chord and a bass outside it are written identically.
C7/EandC7/D♭same grammar

The symbol states what sounds. It does not editorialise about whether the bass belongs to the chord.

The bass is a letter with at most one accidental — never a chord, never a degree.
C7/E♭notC7/E♭mC7/♭III
A rootless voicing keeps the chord's name.
F · A · C · E over a D bassisDm7notFΔ7/D

A voicing realises a chord; the symbol names it. The bass tells you the inversion, not the chord — and this is the line that stops the app renaming your voicings behind your back.

The root

A typed root keeps its spelling. Forever.
you typeA♭7it staysA♭7neverG♯7

Re-spelling what a musician wrote would be the app overruling him about his own chart.

A derived root takes the Degree-Spelling Law's answer.

String Logic already has one rule that decides whether a pitch reads ♯4 or ♭5 in the set it belongs to, and the note letters follow the degrees. A chord symbol spelling its root by a second rule would be a fifth table to keep in step with the other four.

Roots are capital letters, and never carry a double accidental.
B♯neverF♯♯c for minor

Inside the chord a degree still may: the doubly-flattened seventh of C°7 really is B♭♭.

What it will not write

No omissions.
neverC9(omit 3)C13(no 11)insteadthe set's own name

The app's substrate is the pitch set, so every set already has a name or is honestly refused. And the notes are drawn on a staff and on a fretboard beside the symbol, which is a luxury a printed page does not have.

No scale name in a chord slot.

A set the matrix cannot decompose is not given the name of the pitch-set it matches. That would look like a symbol, could not be played from, and could not be typed back.

No length cap, and no silent simplification.

Past a certain density a shorthand stops being short. String Logic draws the notes anyway, so it can afford the long name — and a long name is a signal worth seeing, not a target to hit.

Never an empty symbol.

One visible marker, always drawn. A blank would be indistinguishable from silence.

Where writing varies

There is no single standard for chord symbols. The one book that set out to be one — Carl Brandt and Clinton Roemer's Standardized Chord Symbol Notation, 1976 — remains the closest thing to it: Sher's New Real Book states on its own legend page that it follows that system, with some exceptions, and notation programs ship it as one named preset among several rather than as a default. Several named presets is a fair picture of the situation.

So on the points below, more than one respected answer exists, each arrived at for good reasons, and a working musician reads all of them. They are set out here for one purpose: so you know which answer String Logic's output uses.

Does a thirteenth contain the eleventh?

Brandt & Roemer write of the dominant thirteenth that the ninth is included and the eleventh omitted. Christopher Dobrian (UC Irvine) says the same: on a thirteenth chord the eleventh is assumed not to be present and must be specified.

Bret Pimentel states that a C13 chord implies the presence of the eleventh and the ninth. Open Music Theory reaches the same reading through its general rule, that an extension in a symbol implies every extension below it.

String Logic writes C13 as C · E · G · B♭ · D · A. Where the eleventh does sound over that major third it is written C13(♯11), which follows from the avoid note at the top of this page.

Parentheses, or none?

Dobrian sets altered tones without them, on the grounds that an altered note is an integral part of the chord. Berklee, in its own published account of lead-sheet practice, describes setting tensions such as 9, 11 and 13 in parentheses as common practice there. Open Music Theory notes what the parenthesis shows: that the accidental applies to the extension and not to the root — the distinction between B(♭9) and B♭9.

String Logic writes parentheses around alterations and additions, and none around a plain extension: C9, C7(♭9), C(add9). An altered fifth stays outside them.

Does ° alone carry its seventh?

Brandt & Roemer are categorical that the small circle identifies the complete diminished seventh chord, the seventh tacitly assumed and the numeral therefore omitted — and for them the three-note chord is described as a minor triad with a flat fifth rather than as a diminished chord at all. Current chart formats and notation programs generally take the circle as the triad and add the 7.

String Logic writes for the triad and C°7 for the four-note chord. It is worth saying plainly that this sits at an angle to the line above it, where ø does carry its own seventh: the two glyphs are read here by different logics, and both are set out on this page so that neither surprises you.

What marks the minor?

Mark Levine writes of his own liking for the minus sign. The original Real Book writes F−7; Sher's New Real Book writes FMI7. Brandt & Roemer set small-capital MI and warn against the dash, which had meant minor, diminished seventh and flat by turns. Berklee lists mi, min and the dash together and leaves the choice open.

String Logic writes m. Whichever of the others you grew up writing, the app reads it — it prints one form so that its own output stays consistent with itself.

Read loosely, write strictly

The law above governs what String Logic writes. What it reads is deliberately wider, because charts arrive from every one of the traditions above and they should arrive intact.

−7, mi7, min7, MI7 and m7 all come in as minor. A bare sus comes in as sus4 and a bare Δ as a major seventh. C7(9) comes in as C9, m7♭5 and ø land on the same set, C11 and C9sus and C9sus4 on another, and −5 and −9 on their flattened rungs.

One form goes back out. That is the whole asymmetry, and it is deliberate: consistency is the thing a program can offer that a hand, writing quickly on a gig, reasonably cannot.

How it is set

One baseline. Nothing in a String Logic chord symbol is superscripted. The app is read with an instrument in the way, a metre or two from the eye, so every part of the symbol is set at full size — including the part that carries the information.

In the app, the glyphs are Bravura, the SMuFL reference font: Δ is csymMajorSeventh (U+E873), ø is csymHalfDiminished (U+E871), ° is csymDiminished (U+E870). The accidentals are taken from SMuFL's chord-symbol range (U+ED60–U+ED62) rather than the staff's: those are drawn for standing beside letters, with the flat given the proportions of a lower-case b and the counters of the sharp and natural opened up. It is invisible in a description and obvious on the page.

On this page, the symbols are set in ordinary Unicode text rather than in Bravura, so that you can select and copy them — CΔ7(♯11) pastes as itself. A music font holds no Latin letters at all, so every chord symbol would become a composite of two faces; loading one for a single web page would cost more than it returned. The glyphs are sized and spaced by hand instead.

Sources

Everything above was written against these, and against String Logic's own source — the namer, the parser and the builder were read line by line rather than described from memory.

  1. Carl Brandt & Clinton Roemer, Standardized Chord Symbol Notation: A Uniform System for the Music Profession (Roerick Music Co., 1976) — read in full. scan
  2. Christopher Dobrian (UC Irvine), List of jazz chord symbols — a compact modern academic statement. page
  3. Berklee Today, “Why Lead Sheets?” (Summer 2018) — Berklee's own published account of lead-sheet practice, including its observation that the conventions are far from universal. article
  4. Open Music Theory (Gotham and others) — the implied-extensions rule and the parenthesis argument. Bret Pimentel — the other reading of the thirteenth.
  5. iReal Pro — chord symbols and the custom chart protocol — the quality alphabet String Logic's importer is built against. symbols · protocol
  6. SMuFL (W3C Music Notation Community Group) — chord-symbol glyphs U+E870–U+E87C and the separate chord-symbol accidentals U+ED60–U+ED66. chord symbols · accidentals
  7. Mark Levine, The Jazz Theory Book, and Sher's New Real Book legend page — both consulted at second hand, through transcriptions rather than the pages themselves, and treated accordingly.
  8. Dorico, MuseScore and Sibelius — consulted for what the tools assume, and for the fact that they ship named presets rather than one default.

Intervals before shapes.

String Logic builds a chord as a set of intervals and then finds it a name. This page is the naming half.

Disagree with a ruling, or know a source that settles one of the open points? Write to us — we read everything and respond personally.