Жизнь VS Энтропия - страница 10
Откуда в клетках берутся нуклеотиды и аминокислоты, т. е. буквы алфавитов генетических текстов? Нуклеотиды синтезируются непосредственно в клетках в процессе обмена веществ. То же относится и ко многим аминокислотам, но у высших животных некоторые из них не синтезируются самим организмом. Те из них, которые необходимы для построения белков, называют незаменимыми. Такие «буквы» должны поступать извне с пищей в готовом виде. Для человека таких аминокислот насчитывают восемь, причем некоторые из них не содержаться в растительном мире. Поэтому чистое вегетарианство в принципе невозможно. Индийские брамины обходят этот принцип, употребляя молочные продукты от священных коров.
Что если третья буква в кодонах возникла вследствие естественного отбора более устойчивой системы передачи информации? Эта мысль не однажды возникала у генетиков. В книге Е.В. Кунина [3] читаем:
«…современный универсальный генетический код гораздо более надежен, чем был бы случайный, по отношению к мутационным и, вероятно также, к трансляционным ошибкам. Эта устойчивость проявляется и в очевидной неслучайности структуры кода, выражающейся в первую очередь в том, что серия кодонов, которые отличаются только третьей позицией, кодирует либо одну и ту же, либо две подобные аминокислоты, и в других особенностях соответствия кодонов аминокислотам (Koonin and Novozhilov, 2009). Примечательно, что предполагаемый предковый «дублетный» код, в котором третья позиция не несла никакой информации, мог быть даже более надежным, чем современный (Novozhilov and Koonin, 2009)».
Почему этот отбор не привел к коду, исправляющему хотя бы все одиночные ошибки? Что это за «предполагаемый предковый «дублетный» код»? Что по этому поводу может сказать информатика?
Для блоковых кодов в теории кодирования существует понятие расстояние Хэмминга [4]. Для пары слов (α, β) расстояние Хэмминга d(α, β) равно числу несовпадений букв в одинаковых позициях. Для того чтобы в блоковом коде была возможность исправить любую одиночную ошибку необходимо и достаточно, чтобы для любой пары слов выполнялось d(α, β)>2. Для двухбуквенного кода это невозможно. Для трехбуквенного кода это влечет вывод: код может состоять только из q слов, где q – объем алфавита. Например, можно взять слова-серии {xxx}. В четырехбуквенном алфавите таких слов всего четыре. Слишком скудной была бы такая жизнь. Она была бы гораздо разнообразней с четырехбуквенными кодонами в том же алфавите, но с исправлением любых однократных ошибок в любом кодоне. Покажем, как можно было бы решить такую задачу.
Еще в середине прошлого века были открыты алгебраические коды над алфавитами, содержащими 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 этого уже сказать нельзя. Например, для них