SlideShare a Scribd company logo
1 of 23
Download to read offline
Структурная теория сложности

     Эдуард Алексеевич Гирш

http://logic.pdmi.ras.ru/~hirsch

            ПОМИ РАН


        26 октября 2008 г.




                                   1/9
Напоминание: полиномиальные схемы
L ∈ Size[f (n)], если существует семейство булевых схем {Cn }n∈N , т.ч.
    ∀n |Cn | ≤ f (n),
    ∀x (x ∈ L ⇔ C|x| (x) = 1).
Полиномиальные схемы:
                             P/poly =         Size[nk ].
                                        k∈N

  x1           x1       x2         x1         x2       x3


                    ⊕                   ⊕


                                               ⊕


выход           выход                     выход             ...       2/9
Теорема Карпа-Липтона
Теорема
NP ⊆ P/poly ⇒ PH = Σ2 P.

Покажем, что Σ3 P-полный язык
          QBF3 = {F   формула в КНФ | ∃x∀y ∃z F (x, y , z)}.
лежит в Σ2 P.




                                                               3/9
Теорема Карпа-Липтона
Теорема
NP ⊆ P/poly ⇒ PH = Σ2 P.

Покажем, что Σ3 P-полный язык
          QBF3 = {F       формула в КНФ | ∃x∀y ∃z F (x, y , z)}.
лежит в Σ2 P.
Проверка корректности схем для SAT:
                 ?
       C|G | (G ) = C|G [x1 :=0]| (G [x1 := 0]) ∨ C|G [x1 :=1]| (G [x1 := 1])
и проверка корректности для тривиальных формул.




                                                                                3/9
Теорема Карпа-Липтона
Теорема
NP ⊆ P/poly ⇒ PH = Σ2 P.

Покажем, что Σ3 P-полный язык
          QBF3 = {F      формула в КНФ | ∃x∀y ∃z F (x, y , z)}.
лежит в Σ2 P.
(∃x∀y ∃z(F )) ∈ QBF3 ⇔
∃ схемы C1 , . . . , C|F |
∃x
∀y
∀G    булевой формулы длины ≤ |F |
(семейство {Ci } корректно для G ) ∧ C|F | (F (x, y , z)) = 1.



                                                                  3/9
Схемы фиксированного полиномиального размера
Теорема
∀k Σ4 P    Size[nk ].

Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от
первых c · k · log n битов, для которой нет булевой схемы размера nk .
Сконструируем такую функцию в Σ4 P.
  y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk )         ∃x                    :
           f (x) = c(x)                                                .
       не принимается схемой




                                                                           4/9
Схемы фиксированного полиномиального размера
Теорема
∀k Σ4 P    Size[nk ].

Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от
первых c · k · log n битов, для которой нет булевой схемы размера nk .
Сконструируем такую функцию в Σ4 P.
  y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk )         ∃x                     :
           f (x) = c(x)                                  ∧ f (y ) = 1 .
       не принимается схемой                                значение




                                                                          4/9
Схемы фиксированного полиномиального размера
Теорема
∀k Σ4 P    Size[nk ].

Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от
первых c · k · log n битов, для которой нет булевой схемы размера nk .
Сконструируем такую функцию в Σ4 P.
  y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk ) ∀f ∃x∃c (схема. . . ) ∀x :
           f (x) = c(x)        ∧ ((f ≤ f ) ∨ f (x ) = c (x )) ∧ f (y ) = 1 .
       не принимается схемой             первая такая f           значение




                                                                               4/9
Схемы фиксированного полиномиального размера
Теорема
∀k Σ4 P    Size[nk ].

Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от
первых c · k · log n битов, для которой нет булевой схемы размера nk .
Сконструируем такую функцию в Σ4 P.
  y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk ) ∀f ∃x∃c (схема. . . ) ∀x :
           f (x) = c(x)        ∧ ((f ≤ f ) ∨ f (x ) = c (x )) ∧ f (y ) = 1 .
       не принимается схемой             первая такая f           значение

Остаётся превратить nk в O(nk ).




                                                                               4/9
Схемы фиксированного полиномиального размера
Теорема
∀k Σ4 P     Size[nk ].

Следствие
∀k Σ2 P ∩ Π2 P     Size[nk ].

Σ2 P ∩ Π2 P ⊆ Size[nk ] ⇒
NP ⊆ P/poly ⇒
PH = Σ2 P ∩ Π2 P ⊆ Size[nk ].




                                               4/9
Равномерные полиномиальные схемы
. . . и параллельные вычисления

Семейство схем {Cn }n∈N равномерно, если имеется полиномиальный
алгоритм A, т.ч. A(1n ) = Cn .

Ясно, что равномерные полиномиальные схемы задают P.

Logspace-равномерные: A использует память O(log n).




                                                                  5/9
Равномерные полиномиальные схемы
. . . и параллельные вычисления

Семейство схем {Cn }n∈N равномерно, если имеется полиномиальный
алгоритм A, т.ч. A(1n ) = Cn .

Ясно, что равномерные полиномиальные схемы задают P.

Logspace-равномерные: A использует память O(log n).

Глубина схемы ∼ время параллельного вычисления (см. доску).


                               для L есть logspace-равномерные
          NCi     =        L                                     .
                               схемы глубины O(logi n)

           NC =            NCi       ⊆ P.
                       i


                                                                     5/9
P-полнота


Свед´ния с O(log n) памяти.
    е


Теорема
Если L    P-полный, то
    L ∈ NC ⇐⇒ P = NC (всё параллелизуется);
    L ∈ DSpace[log] ⇐⇒ P = DSpace[log].

P-полный язык:

          CIRCUIT_EVAL = {(схема C , вход x) | C (x) = 1}.




                                                             6/9
NSpace



   NSpace[f (n)] = {L | L принимается НМТ с памятью O(f (n))}.

f (n) должна быть неубывающей и вычислимой с памятью O(f (n)) по 1n .

В определении с подсказкой лента подсказки читается слева направо!

                   NPSPACE =          NSpace[nk ].
                                k≥0




                                                                 7/9
STCON; NSpace vs DSpace
               STCON = {(G , s, t) | G     ор.граф, s    t}.

Лемма
STCON ∈ DSpace[log2 n].

     PATH(x, y , i) = ∃ путь из x в y длины не более 2i .
     PATH(x, y , i) =         (PATH(x, z, i − 1) ∧ PATH(z, y , i − 1)).
                          z

Теорема
NSpace(f ) ⊆ DSpace(f 2 ) для f (n) = Ω(log n).

Следствие
PSPACE = NPSPACE.


                                                                          8/9
STCON; NSpace vs DSpace
              STCON = {(G , s, t) | G      ор.граф, s    t}.

Лемма
STCON ∈ DSpace[log2 n].

    PATH(x, y , i) = ∃ путь из x в y длины не более 2i .
    PATH(x, y , i) =          (PATH(x, z, i − 1) ∧ PATH(z, y , i − 1)).
                          z

Лемма
STCON является NSpace[log n]-полной.




                                                                          8/9
STCON; NSpace vs DSpace
              STCON = {(G , s, t) | G      ор.граф, s    t}.

Лемма
STCON ∈ DSpace[log2 n].

    PATH(x, y , i) = ∃ путь из x в y длины не более 2i .
    PATH(x, y , i) =          (PATH(x, z, i − 1) ∧ PATH(z, y , i − 1)).
                          z

Лемма
STCON является NSpace[log n]-полной.

Факт: для неор.графов: USTCON ∈ DSpace[log n]              [Reingold, 2004].
Вопрос на засыпку: а кто DSpace[log n]-полная?


                                                                          8/9
Параллельные вычисления и логарифмическая память
Теорема
NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 .




                                                   9/9
Параллельные вычисления и логарифмическая память
Теорема
NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 .

Пусть logspace НМТ M принимает L ∈ NSpace(log).
    Интересует достижимость в графе конфигураций M.
    Для конкретной входной ленты их полиномиальное число k.




                                                              9/9
Параллельные вычисления и логарифмическая память
Теорема
NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 .

Пусть logspace НМТ M принимает L ∈ NSpace(log).
    Интересует достижимость в графе конфигураций M.
    Для конкретной входной ленты их полиномиальное число k.
    A матрица смежности (k × k).
    Достаточно вычислить Ak .




                                                              9/9
Параллельные вычисления и логарифмическая память
Теорема
NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 .

Пусть logspace НМТ M принимает L ∈ NSpace(log).
    Интересует достижимость в графе конфигураций M.
    Для конкретной входной ленты их полиномиальное число k.
    A матрица смежности (k × k).
    Достаточно вычислить Ak .
    Это log k последовательных умножений: A2 , (A2 )2 , . . .
    Умножение пары булевых матриц: схема глубины O(log k),
    см. на доску.




                                                                9/9
Параллельные вычисления и логарифмическая память
Теорема
NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 .

Лемма. Композиция двух logspace функций f2 (f1 (x)).
   Сделать выходную ленту f1 входной лентой f2 нельзя.
   Храним только счётчики позиций.
   Нужен очередной бит входа f2    продолжим работу f1 .
   (Если лента не write-once, можно доводить до конца каждый раз.)




                                                                9/9
Параллельные вычисления и логарифмическая память
Теорема
NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 .
 ?
x ∈ L ∈ NC1 . Строим композицию трёх logspace функций с
логарифмической памятью.
  1. Строим схему (семейство было logspace-равномерным).
  2. Преобразуем схему в формулу (dag → дерево):
          гейт → путь от выхода (битовая строка),
          поиск в глубину логарифмическая память,
          для возврата идём заново от корня.
 3. Вычисляем значение формулы на входе x.
          Снова поиск в глубину.




                                                           9/9

More Related Content

What's hot

20110515 systems of typed lambda_calculi_moskvin_lecture10
20110515 systems of typed lambda_calculi_moskvin_lecture1020110515 systems of typed lambda_calculi_moskvin_lecture10
20110515 systems of typed lambda_calculi_moskvin_lecture10Computer Science Club
 
Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...
Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...
Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...Mail.ru Group
 
Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...
Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...
Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...Nikolay Grebenshikov
 
практика 15
практика 15практика 15
практика 15student_kai
 
Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...
Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...
Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...Mail.ru Group
 
20110313 systems of_typed_lambda_calculi_moskvin_lecture05
20110313 systems of_typed_lambda_calculi_moskvin_lecture0520110313 systems of_typed_lambda_calculi_moskvin_lecture05
20110313 systems of_typed_lambda_calculi_moskvin_lecture05Computer Science Club
 
Fractal Geometry
Fractal GeometryFractal Geometry
Fractal GeometrySSA KPI
 
Лекция 15 Поиск подстрок
Лекция 15 Поиск подстрокЛекция 15 Поиск подстрок
Лекция 15 Поиск подстрокsimple_people
 
интегралы
интегралыинтегралы
интегралыtomik1044
 
Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...
Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...
Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...Nikolay Grebenshikov
 
Методы обучения линейных моделей
Методы обучения линейных моделейМетоды обучения линейных моделей
Методы обучения линейных моделейAlex
 
20110306 systems of_typed_lambda_calculi_moskvin_lecture03
20110306 systems of_typed_lambda_calculi_moskvin_lecture0320110306 systems of_typed_lambda_calculi_moskvin_lecture03
20110306 systems of_typed_lambda_calculi_moskvin_lecture03Computer Science Club
 
20110403 quantum algorithms_vyali_lecture03
20110403 quantum algorithms_vyali_lecture0320110403 quantum algorithms_vyali_lecture03
20110403 quantum algorithms_vyali_lecture03Computer Science Club
 
Мезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReduceМезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReducePavel Mezentsev
 
Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...
Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...
Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...Computer Science Club
 
5.2. курс лекций афу
5.2. курс лекций афу5.2. курс лекций афу
5.2. курс лекций афуGKarina707
 

What's hot (20)

20110515 systems of typed lambda_calculi_moskvin_lecture10
20110515 systems of typed lambda_calculi_moskvin_lecture1020110515 systems of typed lambda_calculi_moskvin_lecture10
20110515 systems of typed lambda_calculi_moskvin_lecture10
 
Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...
Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...
Сергей Герасимов (ВМК МГУ), Александр Мещеряков (Институт космических исследо...
 
Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...
Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...
Лекция №14. Графы: кратчайшие пути и максимальные потоки. Предмет "Структуры ...
 
практика 15
практика 15практика 15
практика 15
 
Funkciya y cos_ee_svojstva_i_grafik
Funkciya y cos_ee_svojstva_i_grafikFunkciya y cos_ee_svojstva_i_grafik
Funkciya y cos_ee_svojstva_i_grafik
 
Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...
Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...
Дмитрий Кропотов, ВМК МГУ, Группа Байесовских Методов, «Методы оптимизации бо...
 
20110313 systems of_typed_lambda_calculi_moskvin_lecture05
20110313 systems of_typed_lambda_calculi_moskvin_lecture0520110313 systems of_typed_lambda_calculi_moskvin_lecture05
20110313 systems of_typed_lambda_calculi_moskvin_lecture05
 
Fractal Geometry
Fractal GeometryFractal Geometry
Fractal Geometry
 
Лекция 15 Поиск подстрок
Лекция 15 Поиск подстрокЛекция 15 Поиск подстрок
Лекция 15 Поиск подстрок
 
интегралы
интегралыинтегралы
интегралы
 
Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...
Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...
Лекция №15. Методы программирования. Предмет "Структуры и алгоритмы обработки...
 
графы
графыграфы
графы
 
Методы обучения линейных моделей
Методы обучения линейных моделейМетоды обучения линейных моделей
Методы обучения линейных моделей
 
20110306 systems of_typed_lambda_calculi_moskvin_lecture03
20110306 systems of_typed_lambda_calculi_moskvin_lecture0320110306 systems of_typed_lambda_calculi_moskvin_lecture03
20110306 systems of_typed_lambda_calculi_moskvin_lecture03
 
20110403 quantum algorithms_vyali_lecture03
20110403 quantum algorithms_vyali_lecture0320110403 quantum algorithms_vyali_lecture03
20110403 quantum algorithms_vyali_lecture03
 
5
55
5
 
дбс1 1
дбс1 1дбс1 1
дбс1 1
 
Мезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReduceМезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReduce
 
Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...
Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...
Юрий Владимирович Матиясевич. Десятая проблема Гильберта. Решение и применени...
 
5.2. курс лекций афу
5.2. курс лекций афу5.2. курс лекций афу
5.2. курс лекций афу
 

Viewers also liked

автоматизация Ecom expo
автоматизация Ecom expoавтоматизация Ecom expo
автоматизация Ecom expoElle Nikiforova
 
Atlantida el continente perdido de Platón
Atlantida el continente perdido de PlatónAtlantida el continente perdido de Platón
Atlantida el continente perdido de PlatónChoi Ha Young
 
20100228 virtualization igotti_lecture03
20100228 virtualization igotti_lecture0320100228 virtualization igotti_lecture03
20100228 virtualization igotti_lecture03Computer Science Club
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...rit2011
 
Ficha 1 93 ruben cruz e stone costa
Ficha 1 93 ruben cruz e stone costaFicha 1 93 ruben cruz e stone costa
Ficha 1 93 ruben cruz e stone costanonoano_terceira
 
полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...
полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...
полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...rit2011
 
ANNA KARLA MOURA
ANNA KARLA MOURAANNA KARLA MOURA
ANNA KARLA MOURAgtci_rtd6
 

Viewers also liked (8)

автоматизация Ecom expo
автоматизация Ecom expoавтоматизация Ecom expo
автоматизация Ecom expo
 
Atlantida el continente perdido de Platón
Atlantida el continente perdido de PlatónAtlantida el continente perdido de Platón
Atlantida el continente perdido de Platón
 
20100228 virtualization igotti_lecture03
20100228 virtualization igotti_lecture0320100228 virtualization igotti_lecture03
20100228 virtualization igotti_lecture03
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
 
Bachelor degree
Bachelor degreeBachelor degree
Bachelor degree
 
Ficha 1 93 ruben cruz e stone costa
Ficha 1 93 ruben cruz e stone costaFicha 1 93 ruben cruz e stone costa
Ficha 1 93 ruben cruz e stone costa
 
полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...
полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...
полмиллиона юзеров в онлайне без падений оптимизация высоконагруженной Server...
 
ANNA KARLA MOURA
ANNA KARLA MOURAANNA KARLA MOURA
ANNA KARLA MOURA
 

Similar to 20081026 structuralcomplexitytheory lecture05-06

20081012 structuralcomplexitytheory lecture03-04
20081012 structuralcomplexitytheory lecture03-0420081012 structuralcomplexitytheory lecture03-04
20081012 structuralcomplexitytheory lecture03-04Computer Science Club
 
20110313 systems of_typed_lambda_calculi_moskvin_lecture06
20110313 systems of_typed_lambda_calculi_moskvin_lecture0620110313 systems of_typed_lambda_calculi_moskvin_lecture06
20110313 systems of_typed_lambda_calculi_moskvin_lecture06Computer Science Club
 
Лекция 13: Трудноразрешимые задачи. NP-полнота.
Лекция 13: Трудноразрешимые задачи. NP-полнота.Лекция 13: Трудноразрешимые задачи. NP-полнота.
Лекция 13: Трудноразрешимые задачи. NP-полнота.Mikhail Kurnosov
 
Use of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signatureUse of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signatureAndrei Poliakov
 
пугач му по матлогике 2015
пугач му по матлогике 2015пугач му по матлогике 2015
пугач му по матлогике 2015LIPugach
 
Лекция 11. Методы разработки алгоритмов
Лекция 11. Методы разработки алгоритмовЛекция 11. Методы разработки алгоритмов
Лекция 11. Методы разработки алгоритмовMikhail Kurnosov
 
20111202 machine learning_nikolenko_lecture03
20111202 machine learning_nikolenko_lecture0320111202 machine learning_nikolenko_lecture03
20111202 machine learning_nikolenko_lecture03Computer Science Club
 
Opredelennyj integral
Opredelennyj integralOpredelennyj integral
Opredelennyj integralDimon4
 
ДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССА
ДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССАДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССА
ДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССАGarik Yenoqyan
 
Скорость роста функций
Скорость роста функцийСкорость роста функций
Скорость роста функцийDEVTYPE
 
Лекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмовЛекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмовMikhail Kurnosov
 
20101125 proof complexity_hirsch_lecture08
20101125 proof complexity_hirsch_lecture0820101125 proof complexity_hirsch_lecture08
20101125 proof complexity_hirsch_lecture08Computer Science Club
 
Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...
Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...
Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...Tech Talks @NSU
 
решение тригонометрических уравнений
решение тригонометрических уравненийрешение тригонометрических уравнений
решение тригонометрических уравненийЛюдмила Щецова
 
ITMO RecSys course. Autumn 2014. Lecture 3
ITMO RecSys course. Autumn 2014. Lecture 3ITMO RecSys course. Autumn 2014. Lecture 3
ITMO RecSys course. Autumn 2014. Lecture 3Andrey Danilchenko
 
Лекция 12 Теоретико-числовые алгоритмы Часть 1
Лекция 12 Теоретико-числовые алгоритмы Часть 1Лекция 12 Теоретико-числовые алгоритмы Часть 1
Лекция 12 Теоретико-числовые алгоритмы Часть 1simple_people
 
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Technosphere1
 
Математическое обоснование S.O.L.I.D принципов
Математическое обоснование S.O.L.I.D принциповМатематическое обоснование S.O.L.I.D принципов
Математическое обоснование S.O.L.I.D принциповetyumentcev
 

Similar to 20081026 structuralcomplexitytheory lecture05-06 (20)

20081012 structuralcomplexitytheory lecture03-04
20081012 structuralcomplexitytheory lecture03-0420081012 structuralcomplexitytheory lecture03-04
20081012 structuralcomplexitytheory lecture03-04
 
20110313 systems of_typed_lambda_calculi_moskvin_lecture06
20110313 systems of_typed_lambda_calculi_moskvin_lecture0620110313 systems of_typed_lambda_calculi_moskvin_lecture06
20110313 systems of_typed_lambda_calculi_moskvin_lecture06
 
10474
1047410474
10474
 
Integral1
Integral1Integral1
Integral1
 
Лекция 13: Трудноразрешимые задачи. NP-полнота.
Лекция 13: Трудноразрешимые задачи. NP-полнота.Лекция 13: Трудноразрешимые задачи. NP-полнота.
Лекция 13: Трудноразрешимые задачи. NP-полнота.
 
Use of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signatureUse of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signature
 
пугач му по матлогике 2015
пугач му по матлогике 2015пугач му по матлогике 2015
пугач му по матлогике 2015
 
Лекция 11. Методы разработки алгоритмов
Лекция 11. Методы разработки алгоритмовЛекция 11. Методы разработки алгоритмов
Лекция 11. Методы разработки алгоритмов
 
20111202 machine learning_nikolenko_lecture03
20111202 machine learning_nikolenko_lecture0320111202 machine learning_nikolenko_lecture03
20111202 machine learning_nikolenko_lecture03
 
Opredelennyj integral
Opredelennyj integralOpredelennyj integral
Opredelennyj integral
 
ДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССА
ДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССАДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССА
ДИДАКТИЧЕСКИЕ МАТЕРИАЛЫ ПО АЛГЕБРЕ И НАЧАЛАМ АНАЛИЗА ДЛЯ 9 КЛАССА
 
Скорость роста функций
Скорость роста функцийСкорость роста функций
Скорость роста функций
 
Лекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмовЛекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмов
 
20101125 proof complexity_hirsch_lecture08
20101125 proof complexity_hirsch_lecture0820101125 proof complexity_hirsch_lecture08
20101125 proof complexity_hirsch_lecture08
 
Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...
Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...
Tech Talks @NSU: Теоретические основы программирования: проекции Футамуры-Тур...
 
решение тригонометрических уравнений
решение тригонометрических уравненийрешение тригонометрических уравнений
решение тригонометрических уравнений
 
ITMO RecSys course. Autumn 2014. Lecture 3
ITMO RecSys course. Autumn 2014. Lecture 3ITMO RecSys course. Autumn 2014. Lecture 3
ITMO RecSys course. Autumn 2014. Lecture 3
 
Лекция 12 Теоретико-числовые алгоритмы Часть 1
Лекция 12 Теоретико-числовые алгоритмы Часть 1Лекция 12 Теоретико-числовые алгоритмы Часть 1
Лекция 12 Теоретико-числовые алгоритмы Часть 1
 
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
 
Математическое обоснование S.O.L.I.D принципов
Математическое обоснование S.O.L.I.D принциповМатематическое обоснование S.O.L.I.D принципов
Математическое обоснование S.O.L.I.D принципов
 

More from Computer Science Club

20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugsComputer Science Club
 
20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugsComputer Science Club
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugsComputer Science Club
 
20140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture1220140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture12Computer Science Club
 
20140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture1120140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture11Computer Science Club
 
20140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture1020140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture10Computer Science Club
 
20140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture0920140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture09Computer Science Club
 
20140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture0220140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture02Computer Science Club
 
20140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture0120140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture01Computer Science Club
 
20140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-0420140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-04Computer Science Club
 
20140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture0120140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture01Computer Science Club
 

More from Computer Science Club (20)

20141223 kuznetsov distributed
20141223 kuznetsov distributed20141223 kuznetsov distributed
20141223 kuznetsov distributed
 
Computer Vision
Computer VisionComputer Vision
Computer Vision
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs
 
20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs20140531 serebryany lecture02_find_scary_cpp_bugs
20140531 serebryany lecture02_find_scary_cpp_bugs
 
20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs20140531 serebryany lecture01_fantastic_cpp_bugs
20140531 serebryany lecture01_fantastic_cpp_bugs
 
20140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture1220140511 parallel programming_kalishenko_lecture12
20140511 parallel programming_kalishenko_lecture12
 
20140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture1120140427 parallel programming_zlobin_lecture11
20140427 parallel programming_zlobin_lecture11
 
20140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture1020140420 parallel programming_kalishenko_lecture10
20140420 parallel programming_kalishenko_lecture10
 
20140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture0920140413 parallel programming_kalishenko_lecture09
20140413 parallel programming_kalishenko_lecture09
 
20140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture0220140329 graph drawing_dainiak_lecture02
20140329 graph drawing_dainiak_lecture02
 
20140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture0120140329 graph drawing_dainiak_lecture01
20140329 graph drawing_dainiak_lecture01
 
20140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-0420140310 parallel programming_kalishenko_lecture03-04
20140310 parallel programming_kalishenko_lecture03-04
 
20140223-SuffixTrees-lecture01-03
20140223-SuffixTrees-lecture01-0320140223-SuffixTrees-lecture01-03
20140223-SuffixTrees-lecture01-03
 
20140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture0120140216 parallel programming_kalishenko_lecture01
20140216 parallel programming_kalishenko_lecture01
 
20131106 h10 lecture6_matiyasevich
20131106 h10 lecture6_matiyasevich20131106 h10 lecture6_matiyasevich
20131106 h10 lecture6_matiyasevich
 
20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich
 
20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich20131027 h10 lecture5_matiyasevich
20131027 h10 lecture5_matiyasevich
 
20131013 h10 lecture4_matiyasevich
20131013 h10 lecture4_matiyasevich20131013 h10 lecture4_matiyasevich
20131013 h10 lecture4_matiyasevich
 
20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich
 
20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich20131006 h10 lecture3_matiyasevich
20131006 h10 lecture3_matiyasevich
 

20081026 structuralcomplexitytheory lecture05-06

  • 1. Структурная теория сложности Эдуард Алексеевич Гирш http://logic.pdmi.ras.ru/~hirsch ПОМИ РАН 26 октября 2008 г. 1/9
  • 2. Напоминание: полиномиальные схемы L ∈ Size[f (n)], если существует семейство булевых схем {Cn }n∈N , т.ч. ∀n |Cn | ≤ f (n), ∀x (x ∈ L ⇔ C|x| (x) = 1). Полиномиальные схемы: P/poly = Size[nk ]. k∈N x1 x1 x2 x1 x2 x3 ⊕ ⊕ ⊕ выход выход выход ... 2/9
  • 3. Теорема Карпа-Липтона Теорема NP ⊆ P/poly ⇒ PH = Σ2 P. Покажем, что Σ3 P-полный язык QBF3 = {F формула в КНФ | ∃x∀y ∃z F (x, y , z)}. лежит в Σ2 P. 3/9
  • 4. Теорема Карпа-Липтона Теорема NP ⊆ P/poly ⇒ PH = Σ2 P. Покажем, что Σ3 P-полный язык QBF3 = {F формула в КНФ | ∃x∀y ∃z F (x, y , z)}. лежит в Σ2 P. Проверка корректности схем для SAT: ? C|G | (G ) = C|G [x1 :=0]| (G [x1 := 0]) ∨ C|G [x1 :=1]| (G [x1 := 1]) и проверка корректности для тривиальных формул. 3/9
  • 5. Теорема Карпа-Липтона Теорема NP ⊆ P/poly ⇒ PH = Σ2 P. Покажем, что Σ3 P-полный язык QBF3 = {F формула в КНФ | ∃x∀y ∃z F (x, y , z)}. лежит в Σ2 P. (∃x∀y ∃z(F )) ∈ QBF3 ⇔ ∃ схемы C1 , . . . , C|F | ∃x ∀y ∀G булевой формулы длины ≤ |F | (семейство {Ci } корректно для G ) ∧ C|F | (F (x, y , z)) = 1. 3/9
  • 6. Схемы фиксированного полиномиального размера Теорема ∀k Σ4 P Size[nk ]. Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от первых c · k · log n битов, для которой нет булевой схемы размера nk . Сконструируем такую функцию в Σ4 P. y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk ) ∃x : f (x) = c(x) . не принимается схемой 4/9
  • 7. Схемы фиксированного полиномиального размера Теорема ∀k Σ4 P Size[nk ]. Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от первых c · k · log n битов, для которой нет булевой схемы размера nk . Сконструируем такую функцию в Σ4 P. y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk ) ∃x : f (x) = c(x) ∧ f (y ) = 1 . не принимается схемой значение 4/9
  • 8. Схемы фиксированного полиномиального размера Теорема ∀k Σ4 P Size[nk ]. Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от первых c · k · log n битов, для которой нет булевой схемы размера nk . Сконструируем такую функцию в Σ4 P. y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk ) ∀f ∃x∃c (схема. . . ) ∀x : f (x) = c(x) ∧ ((f ≤ f ) ∨ f (x ) = c (x )) ∧ f (y ) = 1 . не принимается схемой первая такая f значение 4/9
  • 9. Схемы фиксированного полиномиального размера Теорема ∀k Σ4 P Size[nk ]. Из соображений мощности имеется f : {0, 1}n → {0, 1}, зависящая от первых c · k · log n битов, для которой нет булевой схемы размера nk . Сконструируем такую функцию в Σ4 P. y ∈ L ⇐⇒ ∃f ∀c (схемы размера nk ) ∀f ∃x∃c (схема. . . ) ∀x : f (x) = c(x) ∧ ((f ≤ f ) ∨ f (x ) = c (x )) ∧ f (y ) = 1 . не принимается схемой первая такая f значение Остаётся превратить nk в O(nk ). 4/9
  • 10. Схемы фиксированного полиномиального размера Теорема ∀k Σ4 P Size[nk ]. Следствие ∀k Σ2 P ∩ Π2 P Size[nk ]. Σ2 P ∩ Π2 P ⊆ Size[nk ] ⇒ NP ⊆ P/poly ⇒ PH = Σ2 P ∩ Π2 P ⊆ Size[nk ]. 4/9
  • 11. Равномерные полиномиальные схемы . . . и параллельные вычисления Семейство схем {Cn }n∈N равномерно, если имеется полиномиальный алгоритм A, т.ч. A(1n ) = Cn . Ясно, что равномерные полиномиальные схемы задают P. Logspace-равномерные: A использует память O(log n). 5/9
  • 12. Равномерные полиномиальные схемы . . . и параллельные вычисления Семейство схем {Cn }n∈N равномерно, если имеется полиномиальный алгоритм A, т.ч. A(1n ) = Cn . Ясно, что равномерные полиномиальные схемы задают P. Logspace-равномерные: A использует память O(log n). Глубина схемы ∼ время параллельного вычисления (см. доску). для L есть logspace-равномерные NCi = L . схемы глубины O(logi n) NC = NCi ⊆ P. i 5/9
  • 13. P-полнота Свед´ния с O(log n) памяти. е Теорема Если L P-полный, то L ∈ NC ⇐⇒ P = NC (всё параллелизуется); L ∈ DSpace[log] ⇐⇒ P = DSpace[log]. P-полный язык: CIRCUIT_EVAL = {(схема C , вход x) | C (x) = 1}. 6/9
  • 14. NSpace NSpace[f (n)] = {L | L принимается НМТ с памятью O(f (n))}. f (n) должна быть неубывающей и вычислимой с памятью O(f (n)) по 1n . В определении с подсказкой лента подсказки читается слева направо! NPSPACE = NSpace[nk ]. k≥0 7/9
  • 15. STCON; NSpace vs DSpace STCON = {(G , s, t) | G ор.граф, s t}. Лемма STCON ∈ DSpace[log2 n]. PATH(x, y , i) = ∃ путь из x в y длины не более 2i . PATH(x, y , i) = (PATH(x, z, i − 1) ∧ PATH(z, y , i − 1)). z Теорема NSpace(f ) ⊆ DSpace(f 2 ) для f (n) = Ω(log n). Следствие PSPACE = NPSPACE. 8/9
  • 16. STCON; NSpace vs DSpace STCON = {(G , s, t) | G ор.граф, s t}. Лемма STCON ∈ DSpace[log2 n]. PATH(x, y , i) = ∃ путь из x в y длины не более 2i . PATH(x, y , i) = (PATH(x, z, i − 1) ∧ PATH(z, y , i − 1)). z Лемма STCON является NSpace[log n]-полной. 8/9
  • 17. STCON; NSpace vs DSpace STCON = {(G , s, t) | G ор.граф, s t}. Лемма STCON ∈ DSpace[log2 n]. PATH(x, y , i) = ∃ путь из x в y длины не более 2i . PATH(x, y , i) = (PATH(x, z, i − 1) ∧ PATH(z, y , i − 1)). z Лемма STCON является NSpace[log n]-полной. Факт: для неор.графов: USTCON ∈ DSpace[log n] [Reingold, 2004]. Вопрос на засыпку: а кто DSpace[log n]-полная? 8/9
  • 18. Параллельные вычисления и логарифмическая память Теорема NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 . 9/9
  • 19. Параллельные вычисления и логарифмическая память Теорема NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 . Пусть logspace НМТ M принимает L ∈ NSpace(log). Интересует достижимость в графе конфигураций M. Для конкретной входной ленты их полиномиальное число k. 9/9
  • 20. Параллельные вычисления и логарифмическая память Теорема NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 . Пусть logspace НМТ M принимает L ∈ NSpace(log). Интересует достижимость в графе конфигураций M. Для конкретной входной ленты их полиномиальное число k. A матрица смежности (k × k). Достаточно вычислить Ak . 9/9
  • 21. Параллельные вычисления и логарифмическая память Теорема NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 . Пусть logspace НМТ M принимает L ∈ NSpace(log). Интересует достижимость в графе конфигураций M. Для конкретной входной ленты их полиномиальное число k. A матрица смежности (k × k). Достаточно вычислить Ak . Это log k последовательных умножений: A2 , (A2 )2 , . . . Умножение пары булевых матриц: схема глубины O(log k), см. на доску. 9/9
  • 22. Параллельные вычисления и логарифмическая память Теорема NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 . Лемма. Композиция двух logspace функций f2 (f1 (x)). Сделать выходную ленту f1 входной лентой f2 нельзя. Храним только счётчики позиций. Нужен очередной бит входа f2 продолжим работу f1 . (Если лента не write-once, можно доводить до конца каждый раз.) 9/9
  • 23. Параллельные вычисления и логарифмическая память Теорема NC1 ⊆ DSpace(log) ⊆ NSpace(log) ⊆ NC2 . ? x ∈ L ∈ NC1 . Строим композицию трёх logspace функций с логарифмической памятью. 1. Строим схему (семейство было logspace-равномерным). 2. Преобразуем схему в формулу (dag → дерево): гейт → путь от выхода (битовая строка), поиск в глубину логарифмическая память, для возврата идём заново от корня. 3. Вычисляем значение формулы на входе x. Снова поиск в глубину. 9/9