Reckoning

Reckoning / Code of life / The IUPAC letters

Code of life · shorthand

The IUPAC letters

Sequencers are not always sure which base they read, and many enzymes recognise a family of sequences rather than one. The IUPAC–IUB code gives every set of bases its own letter: R for “A or G”, N for “any”. Fifteen letters cover all fifteen non-empty sets of four bases.

Decoder

Find a pattern in a sequence (both strands)

The table

LetterMeansWhy that letterSetComplement
AadenineAdenine{A}T
CcytosineCytosine{C}G
GguanineGuanine{G}C
Tthymine (U, uracil, in RNA)Thymine{T}A
RA or GpuRine{A, G}Y
YC or TpYrimidine{C, T}R
SG or CStrong: three hydrogen bonds{C, G}S
WA or TWeak: two hydrogen bonds{A, T}W
KG or TKeto{G, T}M
MA or CaMino{A, C}K
BC, G or Tnot A: B comes after A{C, G, T}V
DA, G or Tnot C: D comes after C{A, G, T}H
HA, C or Tnot G: H comes after G{A, C, T}D
VA, C or Gnot T (not U): V comes after U{A, C, G}B
Nany baseaNy{A, C, G, T}N

Code: NC-IUB 1985. The sets live in one table in the site’s code; the meanings, the complements and the decoder are all generated from it, and the build checks that the complement of every letter’s complement is the letter itself, and that the meanings above say the same as the sets.

Why the complements come out this way

Complementing a set swaps A with T and G with C inside it. Purines become pyrimidines, so R ↔ Y. Strong stays strong and weak stays weak, so S and W are their own complements. Keto and amino swap (K ↔ M), and “not A” becomes “not T” (B ↔ V), just as D ↔ H.