Изменения

Перейти к: навигация, поиск

Теория сложности (старая трешовая версия)

2303 байта добавлено, 22:30, 4 июня 2012
Практика 7: Исправление ссылки
*'''DTIME'''(''f''(''n'')) = <tex>\{ L \mid \exists </tex> машина Тьюринга <tex>m : L(m)=L, Time(m,x) \le f(|x|) \}</tex>, где <tex>|x|</tex> &mdash; длина входа <tex>x</tex>.
*'''DSPACE'''(''f''(''n'')) = <tex>\{ L \mid \exists </tex> машина Тьюринга <tex>m : L(m)=L, Space(m,x) \le f(|x|) \}</tex>, где <tex>|x|</tex> &mdash; длина входа <tex>x</tex>.
Аналогичным образом введем классы '''[[NSPACE]]''' и '''[[NTIME]]''', использующие недетерминированную машину Тьюринга взамен детерминированной(в течении всего курса префикс '''D''' соответствует детерминизму, а '''N''' &mdash; недетерминизму).
Рассмотрим и докажем теоремы о емкостной и временной иерархии.
*[[Теорема о временной иерархии]] утверждает, что для любых двух [[Конструируемая по времени функция|конструируемых по времени функций]] <tex>f\,\!</tex> и <tex>g\,\!</tex> таких, что <tex> \lim \limits_{n \rightarrow \infty} \frac{t(f(n))}{g(n)} = 0</tex>, выполняется '''DTIME'''(''g''(''n'')) &ne; '''DTIME'''(''f''(''n'')).
Через понятия классов '''[[DSPACE]]''', '''[[DTIME]]''', '''[[NSPACE]]''' и '''[[NTIME]]''' будет дано определение многим сложностным классам, в том числе '''[[P]]''' и '''[[NP]]'''. ----
*Класс Через понятия классов '''PDSPACE''' — класс языков (задач), разрешимых на детерминированной машине Тьюринга за полиномиальное время. Формально: '''PDTIME'''=<tex>\bigcup_{i=0}^{\infty}</tex>, '''[[DTIME]]NSPACE'''<tex>(in^i)</tex>*В свою очередь, при разрешении языка из класса и '''NPNTIME''' используется недетерминированная машина: будет дано определение многим сложностным классам, в том числе '''NP[[P]]'''=<tex>\bigcup_{i=0}^{\infty}</tex> и '''NTIME[[NP]]'''<tex>(in^i)</tex>.
Класс '''P''' — класс языков (задач), разрешимых на детерминированной машине Тьюринга за полиномиальное время. Формально: *'''P'''=<tex>\bigcup_{i=0}^{\infty}</tex>'''DTIME'''<tex>(in^i)</tex> В свою очередь, при разрешении языка из класса '''NP''' используется недетерминированная машина: *'''NP'''=<tex>\bigcup_{i=0}^{\infty}</tex> '''NTIME'''<tex>(in^i)</tex>Дадим определение класса '''NP''' на языке сертификатов:*'''NP'''=<tex>\Sigma_1 = \{L|\exists R(x,y) \in P, p \in Poly | l \in L \Leftrightarrow \exists y, |y| \le p(x) | R(x,y)=1\}</tex> (первое равенство доказывается в статье '''[[NP]]'''). Поясним, что <tex>y</tex> является сертификатом принадлежности <tex>x</tex> языку <tex>L</tex>, если существует полиномиальное отношение (верификатор) <tex>R</tex>, такое что <tex>R(x,y)=1</tex> тогда и только тогда, когда <tex>x</tex> принадлежит <tex>L</tex>. Вместе со многими сложностными классами имеет смысл рассматривать и их дополнения (используется приставка '''co-'''). Например, класс '''[[Класс co-NP]]'''.*---- Введем в рассмотрение отношения между языками: [[Сведение сведение по Карпу]]*и [[Сведение сведение по Куку]].*Язык <tex>A</tex> сводится по Карпу к языку <tex>B</tex>, если существует функция <tex>f(x)</tex> такая, что <tex>x \in A</tex> тогда и только тогда, когда <tex>f(x) \in B</tex>.*Язык <tex>A</tex> сводится по Куку к <tex>B</tex>, если существует разрешающая язык <tex>A</tex> программа <tex>m</tex>, работающая полиномиальное время от длины входа, которая может использовать разрешающую программу <tex>m_B</tex> для языка <tex>B</tex> в качестве оракула. При этом время работы <tex>m_B</tex> не учитывается. В дальнейшем чаще будет рассматриваться сведение по Карпу.
== Практика 1 ==
== Практика, которой на самом деле не было ==
*[[NP-полнота задачи о раскраске графа]]
 
==Лекция 4==
*[[Схемная сложность]]
*[[P/poly]]
*[[Редкие языки]]
*[[Теорема Махэни]]
== Лекция 5 ==
== Практика 7 ==
*[[Вероятностная машина Тьюринга]]
*[[Класс Сложностный класс ZPP]]
*[[Сложностные классы RP и coRP]]
*[[Сложностный класс PP]]
*[[Теорема Шамира]]
*[[Семейство универсальных попарно независимых хеш-функций|Семейство универсальных попарно независимых хеш-функций]]
*[[Протокол Гольдвассера-Сипсера для оценки размера множества]]
*[[Теорема Голдвассера, Сипсера]]
322
правки

Навигация