Еще в середине прошлого века были открыты алгебраические коды над алфавитами, содержащими q = pm букв, где p – простое число. В нашем случае q = 4, p =m =2. Чтобы применить эти достижения информатики в нашем случае, достаточно приписать буквам алфавита (A, G, U, C) способность складываться и умножаться, какая присуща числам. Переобозначим их для удобства так: U≡0, C≡1, A≡a, G≡b (переобозначение может быть и любым другим). Введем таблицы сложения и умножения символов (0, 1, a, b)
Введением этих таблиц мы определили то, что в математике называется полем Галуа GF(22). Символы 0, 1 обозначают нуль и единицу этого поля. Из таблиц нетрудно увидеть, что они действительно ведут себя почти как обычные нуль и единица (только 1+1=0). Про символы a, b этого уже сказать нельзя. Например, для них
a+a=0, b+b=0, a+b=a – b=1, a2=b=a+1, b2=a=b+1, ab=1.
Несмотря на эти особенности, все основные соотношения алгебры в поле Галуа сохраняются. Можно определить код, как множество векторов x=[x1, x2, x3, x4], удовлетворяющих матричному уравнению
H· x = 0,
где H – матрица
Нетрудно найти, что все определители, составленные из пар столбцов этой матрицы не равны нулю в GF(4). Как доказано в теории алгебраического кодирования [4, с 48], это гарантирует, что для всех пар слов из {x} расстояние Хэмминга d >2. Это означает, что при любой одиночной замене букв в кодоне ошибка может быть исправлена по принципу максимального правдоподобия: «найдется только один правильный кодон, который можно получить одной обратной заменой». Более того, если произойдут две любые замены, то правильного кодона все равно не получится и ошибка будет обнаружена (H· x ≠0,). Правда, однозначно исправить ее по принципу максимального правдоподобия уже невозможно.
Полученный код имеет свойство: «в любых двух фиксированных позициях слова встречаются все возможные пары символов алфавита, которые однозначно определяют символы в другой паре». Это означает, что всего слов 16. В таблице 2 представлен гипотетический генетический код, первые две позиции букв в котором выбраны как в реальном коде таблицы 1 и сохранены те же его компоненты. Вместо третьей буквы кодонов в нем теперь стоит пара букв, обозначенная общим знаком #. Так как теперь слов только 16, а не 64, пяти аминокислотам не достается кодонов (написаны в таблице белым шрифтом).