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.