How Chordcat works – a chord naming algorithm

Context-free chord analysis & its limits

  • Many argue that analyzing chords in isolation is inherently weak.
  • Good chord notation is seen as contextual: it should reflect key, progression, voice leading, and even genre.
  • Baroque and modal examples are mentioned where vertical “chord at a moment” analysis fails; function comes from voice leading instead.

Slash chords, inversions, and bass context

  • The algorithm is said to mishandle slash chords (e.g., G/C), often relabeling them as suspensions.
  • Several comments stress that the bass line and voicing strongly affect how a chord should be named.
  • Debates arise over whether some voicings are better seen as slash chords (C/E, G/B) vs reinterpreted triads with altered intervals.

Chord naming ambiguity & enharmonics

  • A recurring criticism: mapping an unordered set of notes to “the” chord name is ill-posed.
  • The same pitch set (e.g., C–E–G–A or A–C–E–G) can legitimately be multiple chords (C6 vs Am7), with the “right” name depending on key and function.
  • Enharmonic spelling (e.g., B# vs C) matters for theoretical correctness and implied scales, but the algorithm ignores this.

Jazz, altered chords, and the “Hendrix chord”

  • Extended and altered chords expose notation ambiguities (e.g., #9 vs b10, or labeling the Hendrix chord).
  • Some prioritize scale implication and functional role (dominant vs minor) over conventional labels.
  • There’s disagreement on which chord symbols best communicate improvisational context.

Beyond chords built on thirds

  • Several point out that chords are not always tertian: cluster chords, quartal/quintal harmony, polychords, and barbershop-style 7ths complicate any “built on thirds” assumption.
  • Debate over whether thirds have a deep physical basis (via harmonic series) or are mainly historical/cultural.

Keys, scales, and 12-tone structure

  • Some suggest that at minimum the algorithm should infer or take a key to disambiguate roots and common spellings.
  • Side thread on why the 12-tone system and diatonic patterns (2212221) matter; some see largely historical reasons, others point to consonance patterns and global parallels.

Algorithmic extensions & tools

  • Ideas proposed: wrap the chord-namer in a Hidden Markov Model or similar probabilistic model to use chord-to-chord transitions.
  • Others suggest factoring in note spacing to detect bass notes and distinguish add9 vs sus2, etc.
  • Existing chord-identification libraries and curated chord sets are referenced as more robust or more narrowly-scoped alternatives.

Language and notation side-discussion

  • A long subthread debates punctuation and comma usage in the article; it morphs into descriptivist vs prescriptivist views on language and readability.