Подходы теории кодирования к дизайну нуклеиновых кислот - Википедия - Coding theory approaches to nucleic acid design

Построение кода ДНК относится к применению теория кодирования к дизайн систем нуклеиновых кислот для области Вычисления на основе ДНК.

Вступление

ДНК последовательности, как известно, появляются в виде двойные спирали в жизни клетки, в котором одна нить ДНК гибридизированный к его дополнительный прядь через серию водородные связи. В целях этой записи мы сосредоточимся только на олигонуклеотиды. ДНК-вычисления предполагает разрешение синтетический олигонуклеотидные цепи для гибридизации таким образом, чтобы выполнять вычисление. ДНК-вычисление требует, чтобы самосборка олигонуклеотидных цепей происходила таким образом, чтобы гибридизация происходила способом, совместимым с целями вычислений.

Область ДНК-вычислений была основана в основополагающей статье Леонарда М. Адельмана.[1] Его работа значима по ряду причин:

  • Он показывает, как можно использовать высокопараллельный характер вычислений, выполняемых ДНК, для решения проблем, которые трудно или почти невозможно решить традиционными методами.
  • Это пример вычислений на молекулярном уровне по принципу нанокомпьютеры, и это потенциально является серьезным преимуществом с точки зрения плотности информации на носителях данных, чего никогда не сможет достичь полупроводниковая промышленность.
  • Он демонстрирует уникальные аспекты ДНК как структуры данных.

Эта возможность для массового параллельное вычисление в ДНК-вычислениях могут быть использованы для решения многих вычислительных задач в чрезвычайно большом масштабе, таких как вычислительные системы на основе клеток для диагностики и лечения рака и носители данных сверхвысокой плотности.[2]

Этот выбор кодовых слов (последовательностей олигонуклеотидов ДНК) представляет собой серьезное препятствие само по себе из-за явления образования вторичной структуры (при котором нити ДНК имеют тенденцию складываться сами по себе во время гибридизации и, следовательно, становятся бесполезными в дальнейших вычислениях. Это также известно как самогибридизация). Нусинов-Якобсон[3] Алгоритм используется для прогнозирования вторичных структур, а также для определения определенных критериев проектирования, которые уменьшают возможность образования вторичной структуры в кодовом слове. По сути, этот алгоритм показывает, как наличие циклической структуры в коде ДНК снижает сложность проблемы тестирования кодовых слов для вторичных структур.

Новые конструкции таких кодов включают использование циклических обратимых расширенных Коды гоппы, обобщенный Матрицы Адамара, и бинарный подход. Прежде чем углубляться в эти конструкции, мы еще раз вернемся к определенной фундаментальной генетической терминологии. Мотивация теорем, представленных в этой статье, заключается в том, что они согласуются с алгоритмом Нусинова-Якобсона, поскольку наличие циклической структуры помогает снизить сложность и, таким образом, предотвращает образование вторичной структуры. т.е. эти алгоритмы удовлетворяют некоторым или всем требованиям к конструкции ДНК-олигонуклеотидов во время гибридизации (которая является ядром вычислительного процесса ДНК) и, следовательно, не страдают от проблем самогибридизации.

Определения

Код ДНК - это просто набор последовательностей в алфавите. .

Каждый пурин база это Дополнение Уотсона-Крика уникального пиримидин база (и наоборот) - аденин и тимин образуют дополнительную пару, как и гуанин и цитозин. Это соединение можно описать следующим образом - .

Такое соединение химически очень стабильно и прочно. Тем не менее, спаривание несовпадающих оснований иногда происходит из-за биологические мутации.

Основное внимание в кодировании ДНК уделялось построению больших наборов кодовых слов ДНК с заданными свойствами минимального расстояния. Для этого давайте заложим необходимую основу, чтобы двигаться дальше.

Позволять быть длинным словом по алфавиту . За , будем использовать обозначения для обозначения подпоследовательности . Кроме того, последовательность, полученная обращением будем обозначать . В Дополнение Уотсона-Крика, или обратное дополнение q, определяется как , куда обозначает Дополнение Уотсона-Крика базовая пара .

Для любой пары длины- слова и над , то Расстояние Хэмминга это количество позиций на котором . Далее, определим расстояние обратного Хэмминга в качестве . По аналогии, расстояние Хэмминга с обратным дополнением является . (куда означает обратное дополнение)

Еще одно важное соображение при разработке кода, связанное с процессом гибридизации олигонуклеотидов, касается Содержимое GC последовательностей в коде ДНК. В GC-контент, , последовательности ДНК определяется как количество индексов такой, что . Код ДНК, в котором все кодовые слова имеют одинаковое содержание GC, , называется постоянной Код содержания GC.

А обобщенный Матрица Адамара ) является квадратная матрица с элементами, взятыми из множества корни единства, = , = 0, ..., , что удовлетворяет = . Здесь обозначает единичную матрицу порядка , а * означает комплексное сопряжение. Мы будем заниматься только делом для некоторых премьер . Необходимое условие существования обобщенных матриц Адамара в том, что . В матрица экспонент, , из это матрица с записями в , получается заменой каждой записи в по показателю .

Элементы матрицы показателей Адамара лежат в Поле Галуа , и его векторы-строки составляют кодовые слова того, что мы называем обобщенным кодом Адамара.

Здесь элементы лежать в поле Галуа .

По определению обобщенная матрица Адамара в стандартном виде имеет только 1s в первой строке и столбце. В квадратная матрица, образованная оставшимися элементами называется основной из , а соответствующая подматрица матрицы показателей называется основной строительства. Таким образом, за счет исключения нулевого первого столбца возможны циклические обобщенные коды Адамара, кодовые слова которых являются векторами-строками выколотой матрицы.

Кроме того, строки такой матрицы показателей удовлетворяют следующим двум свойствам: (i) в каждой из ненулевых строк матрицы показателей каждый элемент появляется постоянное число, , раз; и (ii) расстояние Хэмминга между любыми двумя строками равно .[4]

Свойство U

Позволять - циклическая группа, порожденная , куда сложный примитив корень единства, и > фиксированное простое число. Далее, пусть , обозначать произвольные векторы над которые имеют длину , куда положительное целое число. Определите набор различий между показателями , куда это кратность элемента из который появляется в .[4]

Вектор считается, что удовлетворяет Собственности U если и только каждый элемент из появляется в точно раз ()

Следующая лемма имеет фундаментальное значение при построении обобщенных кодов Адамара.

Лемма. Ортогональность векторов над - Для фиксированных простых чисел , произвольные векторы длины , элементы которого взяты из , ортогональны, если вектор удовлетворяет Свойство U, куда это собрание различий между показателями Адамара, связанными с .

M последовательности

Позволять - произвольный вектор длины элементы которого находятся в конечном поле , куда это простое число. Пусть элементы вектора составляют первый период бесконечной последовательности который периодичен периода . Если наименьший период для представления подпоследовательности, последовательность называется M-последовательностью или последовательностью максимального наименьшего периода, полученной циклическим элементы. Если, когда элементы упорядоченного множества произвольно переставляются для получения , последовательность является M-последовательностью, последовательность называется M-инвариант.Теоремы, следующие за настоящими условиями, обеспечивающими инвариантность в M последовательность. В сочетании с определенным свойством однородности полиномиальных коэффициентов эти условия дают простой метод, с помощью которого могут быть построены комплексные матрицы Адамара с циклическим ядром.

Цель, изложенная в заголовке этой статьи, - найти циклическую матрицу элементы которого находятся в поле Галуа и чье измерение . Ряды будут ненулевыми кодовыми словами линейного циклического кода , тогда и только тогда, когда существует полином с коэффициентами в , который является собственным делителем и который порождает .Чтобы иметь ненулевые кодовые слова, должен иметь степень . Далее, чтобы сгенерировать циклическое ядро ​​Адамара, вектор (коэффициентов) при работе с циклическим сдвигом должен иметь период , а векторная разность двух произвольных строк (дополненный нулем) должен удовлетворять условию однородности Бутсона,[5] ранее назывался Недвижимость U.Одно необходимое условие для -периодичность заключается в том, что , куда является моник несводимый над.[6]Подход здесь заключается в замене последнего требования условием, чтобы коэффициенты вектора быть равномерно распределенным по , каждый остаток появляется столько же раз (Свойство U). Этот эвристический подход был успешным во всех опробованных случаях, и ниже приводится доказательство того, что он всегда дает циклическое ядро.

Примеры построения кода

1. Построение кода с использованием сложных матриц Адамара.

Алгоритм построения

Рассмотрим все унитарные неприводимые многочлены над которые имеют степень , и которые позволяют подходящему компаньону степени такой, что , где также вектор удовлетворяет Свойство U. Для этого требуется только простой компьютерный алгоритм для деления в столбик . С , идеал, порожденный , , будет циклический код . Более того, Свойство U гарантирует, что ненулевые кодовые слова образуют циклическую матрицу, каждая строка которой имеет период при циклической перестановке, которая служит циклическим ядром для матрицы Адамара . Например, циклическое ядро ​​для результаты от товарищей и . Коэффициенты при указывают, что - набор относительных разностей, .

Теорема

Позволять быть первым и , с а монический многочлен степени расширенный вектор коэффициентов которого являются элементами . Условия следующие:

(1) вектор удовлетворяет свойству U объяснено выше,

(2) , куда является моническим неприводимым многочленом степени , гарантируем наличие p-ary, линейный циклический код : размер блока , так что расширенный код - показатель Адамара для матрицы Адамара , с , где ядро - циклическая матрица.

Доказательство:

Прежде всего отметим, что поскольку монический, он делит , и имеет степень = . Теперь нам нужно показать, что матрица строки которого являются ненулевыми кодовыми словами, составляет циклическое ядро ​​для некоторой комплексной матрицы Адамара .

Данный: мы знаем это удовлетворяет собственность U. Следовательно, все ненулевые вычеты лежать в C. , получаем искомую матрицу экспонент где мы можем получить каждое кодовое слово в циклически повторяя первое кодовое слово. (Это потому, что последовательность, полученная циклическим является M-инвариантная последовательность.)

Мы также видим, что увеличение каждого кодового слова добавлением начального нулевого элемента получается вектор, удовлетворяющий свойству U. Кроме того, поскольку код является линейным, векторная разность двух произвольных кодовых слов также является кодовым словом и, таким образом, удовлетворяет свойству U. Следовательно, векторы-строки расширенного кода образуют показатель Адамара. Таким образом, стандартная форма некоторой комплексной матрицы Адамара .

Таким образом, из указанного выше свойства мы видим, что ядро это циркулянтная матрица состоящий из всех циклические сдвиги его первой строки. Такое ядро ​​называется циклическим ядром, где в каждом элементе появляется в каждой строке точно раз, а расстояние Хэмминга между любыми двумя строками равно точно . В ряды сердечника сформировать код постоянного состава - один, состоящий из циклические сдвиги некоторой длины по набору . Расстояние Хэмминга между любыми двумя кодовыми словами в является .

Следующее можно вывести из теоремы, как объяснено выше. (Для более подробного прочтения отсылаем читателя к статье Хенга и Кука.[4]) Позволять за премьер и . Позволять - монический многочлен над , степени N - k такие, что над , для некоторого монического неприводимого многочлена . Предположим, что вектор , с for (N - k) такое же количество раз. Затем циклические сдвиги вектора образуют ядро ​​матрицы показателей некоторой матрицы Адамара.

Коды ДНК с постоянным GC-содержимым, очевидно, могут быть построены из кодов постоянного состава (код постоянного состава над k-арным алфавитом имеет свойство, состоящее в том, что количество вхождений k символов в кодовом слове одинаково для каждого кодового слова) на отображая символы к символам алфавита ДНК, . Например, используя циклический код постоянной композиции длины над гарантируется теоремой, доказанной выше, и полученным свойством, и с помощью отображения, которое принимает к , к и к , получаем код ДНК с и GC-контент . Четко и на самом деле так как и нет кодового слова в не содержит символа , у нас также есть Это резюмируется в следующем следствии.[4]

Следствие

Для любого , существуют коды ДНК с кодовые слова длины , постоянный GC-контент , и в котором каждое кодовое слово является циклическим сдвигом фиксированного кодового слова генератора .

Каждый из следующих векторов генерирует циклическое ядро ​​матрицы Адамара (куда , и в этом примере):[4]

= ;

= .

Где, .

Таким образом, мы видим, как можно получить коды ДНК из таких генераторов путем сопоставления на . Фактический выбор отображения играет главную роль в формировании вторичной структуры в кодовых словах.

Мы видим, что все такие отображения дают коды с практически одинаковыми параметрами. Однако фактический выбор отображения оказывает сильное влияние на вторичную структуру кодовых слов. Например, проиллюстрированное кодовое слово было получено из через отображение , а кодовое слово был получен от того же генератора через отображение .

2. Создание кода с помощью двоичного отображения

Возможно, более простой подход к построению / разработке кодовых слов ДНК состоит в том, чтобы иметь двоичное отображение, рассматривая проблему проектирования как проблему построения кодовых слов как двоичных кодов. то есть сопоставить алфавит кодовых слов ДНК на набор двоичных слов длиной 2 бита, как показано: -> , -> , -> , ->.

Как мы видим, первый бит двоичного изображения четко определяет, к какой дополнительной паре он принадлежит.

Позволять быть последовательностью ДНК. Последовательность полученное применением приведенного выше отображения к , называется двоичное изображение из .

Теперь позвольте = .

Пусть теперь подпоследовательность = называть четной подпоследовательностью , и = называть нечетной подпоследовательностью .

Так, например, для = , тогда, = .

тогда будет = и = .

Определим даже компонент в качестве , и нечетный компонент в качестве .

При таком выборе бинарного картирования GC-содержание последовательности ДНК = Вес Хэмминга .

Следовательно, код ДНК является постоянным кодовым словом GC-содержимого тогда и только тогда, когда его четный компонент является кодом постоянного веса.

Позволять быть двоичным кодом, состоящим из кодовые слова длины и минимальное расстояние , так что подразумевает, что .

За , рассмотрим подкод постоянного веса , куда обозначает вес Хэмминга. такой, что , и рассмотрим код ДНК, , со следующим выбором для его четных и нечетных компонентов:

, <.

Где < обозначает лексикографический порядок. В < в определении гарантирует, что если , тогда , так что различные кодовые слова в не могут быть обратными дополнениями друг друга.

Код имеет кодовые слова длины и постоянный вес .

Более того, и ( это потому что является подмножеством кодовых слов в ).

Также, .

Обратите внимание, что и оба имеют вес . Отсюда следует, что и иметь вес .

И из-за ограничения веса на , мы должны иметь для всех ,.

Таким образом, код имеет кодовые слова длины .

Из этого мы видим, что (из-за того, что кодовые слова компонентов взяты из ).

По аналогии, .

Следовательно, код ДНК

с , имеет кодовые слова длины , и удовлетворяет и .

Из приведенных выше примеров можно задаться вопросом, каким может быть будущий потенциал компьютеров на основе ДНК?

Несмотря на огромный потенциал, этот метод вряд ли будет реализован на домашних компьютерах или даже на компьютерах в офисах и т. Д. Из-за абсолютной гибкости и скорости, а также из-за факторов стоимости, которые отдают предпочтение устройствам на основе кремниевых чипов, используемых сегодня в компьютерах.[2]

Однако такой метод может быть использован в ситуациях, когда единственный доступный метод - это и требует точности, связанной с механизмом гибридизации ДНК; приложения, которые требуют выполнения операций с высокой степенью надежности.

В настоящее время существует несколько программных пакетов, таких как пакет Vienna,[7] которые могут предсказать образование вторичных структур в одноцепочечных ДНК (т.е. олигонуклеотидах) или последовательностях РНК.

Смотрите также

Рекомендации

  1. ^ Адлеман, Л. (1994). «Молекулярное вычисление решений комбинаторной задачи» (PDF). Наука. 266 (5187): 1021–4. CiteSeerX  10.1.1.54.2565. Дои:10.1126 / science.7973651. PMID  7973651. Архивировано из оригинал (PDF) на 2005-02-06. Получено 2010-05-04.
  2. ^ а б Mansuripur, M .; Хульбе, П.К .; Kuebler, S.M .; Perry, J.W .; Giridhar, M.S .; Пейгамбарян, Н. (2003). «Хранение и поиск информации с использованием макромолекул в качестве носителей». Серия технических сборников оптического общества Америки.
  3. ^ Миленкович, Ольгица; Кашьяп, Навин (14–18 марта 2005 г.). О разработке кодов для ДНК-вычислений. Международный семинар по кодированию и криптографии. Берген, Норвегия. Дои:10.1007/11779360_9.
  4. ^ а б c d е Кук, К. (1999). «Полиномиальное построение комплексных матриц Адамара с циклическим ядром». Письма по прикладной математике. 12: 87–93. Дои:10.1016 / S0893-9659 (98) 00131-1.
  5. ^ Адамек, Иржи (1991). Основы кодирования: теория и приложения кодов с исправлением ошибок, с введением в криптографию и теорию информации. Чичестер: Вайли. Дои:10.1002/9781118033265. ISBN  978-0-471-62187-4.
  6. ^ Цирлер, Н. (1959). «Линейные повторяющиеся последовательности». J. Soc. Indust. Appl. Математика. 7: 31–48. Дои:10.1137/0107003.
  7. ^ «Пакет вторичной структуры Венской РНК».

внешняя ссылка