Класс Sharp-P

Класс Sharp-P
Правильный заголовок этой статьи — Класс #P. Он показан некорректно из-за технических ограничений.

В теории сложности, #P является классом проблем, решением которых является количество успешных, т.е., завершающихся в допускающих состояниях, путей вычислений для некой недетерминированной машины Тьюринга, работающей за полиномиальное время. Например, следующие проблемы принадлежат к #P:

  • Сколько различных гамильтоновых циклов существует в данном графе?
  • Сколько различных путей между двумя данными вершинами существует в данном графе?

Связь с известными классами сложности

Известно, что P#P, класс проблем, решаемых машиной Тьюринга за полиномиальное время с привлечением оракула для класса #P, содержит класс сложности PH[1]. Исходя из этого, считается, что #P-полные проблемы являются крайне сложными с точки зрения вычислительной сложности.

Известные #P-полные проблемы

Одной из наиболее известных проблем, принадлежащей к классу #P-полных, является проблема вычисления перманента матрицы[2]:

\mbox{Per}(A) = \sum_{\pi \in S_n} \prod_{i=1}^n a_{i, \pi_i} = \sum_{\pi \in S_n} a_{1, \pi_1} a_{2, \pi_2} \cdots a_{n, \pi_n},

Для сравнения, на первый взгляд очень похожая проблема вычисления детерминанта матрицы

\mbox{det}(A) = \sum_{\pi \in S_n} \sgn(\pi) \prod_{i=1}^n a_{i, \pi_i} = \sum_{\pi \in S_n} \sgn(\pi) a_{1, \pi_1} a_{2, \pi_2} \cdots a_{n, \pi_n},

решается за полиномиальное время.

Ссылки

  1. 1998 Gödel Prize. Seinosuke Toda
  2. Leslie G. Valiant (1979). «The Complexity of Computing the Permanent». Theoretical Computer Science (Elsevier) 8 (2): 189–201. DOI:10.1016/0304-3975(79)90044-6.



Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Полезное


Смотреть что такое "Класс Sharp-P" в других словарях:

  • Класс (Java) — Класс, наряду с понятием «объект», является важным понятием объектно ориентированного подхода в программировании (хотя существуют и бесклассовые объектно ориентированные языки, например, Прототипное программирование). Под классом подразумевается… …   Википедия

  • Класс (ООП) — Класс, наряду с понятием «объект», является важным понятием объектно ориентированного подхода в программировании (хотя существуют и бесклассовые объектно ориентированные языки, например, Прототипное программирование). Под классом подразумевается… …   Википедия

  • Класс (объектно-ориентированное программирование) — Класс, наряду с понятием «объект», является важным понятием объектно ориентированного подхода в программировании (хотя существуют и бесклассовые объектно ориентированные языки, например, Прототипное программирование). Под классом подразумевается… …   Википедия

  • Класс объекта — Класс, наряду с понятием «объект», является важным понятием объектно ориентированного подхода в программировании (хотя существуют и бесклассовые объектно ориентированные языки, например, Прототипное программирование). Под классом подразумевается… …   Википедия

  • Сравнение C Sharp и Java — Правильный заголовок этой статьи  Сравнение C# и Java. Он показан некорректно из за технических ограничений. Сравнения языков программирования Общее сравнение Основной синтаксис Основные инструкции Массивы Ассоциативные массивы Операции со… …   Википедия

  • C Sharp — У этого термина существуют и другие значения, см. C. Правильный заголовок этой статьи  C#. Он показан некорректно из за технических ограничений. C# Семантика: императивный Класс языка: мультипарадигменный: объектно ориентированный,… …   Википедия

  • Sing Sharp — Правильный заголовок этой статьи  Sing#. Он показан некорректно из за технических ограничений. Sing# Класс языка: мультипарадигменный: структурный, императивный, объектно ориентированный, событийно ориентированный, функциональный,… …   Википедия

  • Spec Sharp — Эта статья или раздел  грубый перевод статьи на другом языке (см. Проверка переводов). Он мог быть сгенерирован программой переводчиком или сделан человеком со слабыми познаниями в языке оригинала. Вы можете помочь …   Википедия

  • F Sharp — У этого термина существуют и другие значения, см. F (значения). Правильный заголовок этой статьи  F#. Он показан некорректно из за технических ограничений. F# Класс языка: мультипарадигменный: функциональное, объектно ориентированное,… …   Википедия

  • Смартбук — У этого термина существуют и другие значения, см. Smartbook. Wistron Pursebook с тактовой частотой 1 ГГц (апрель 2009) Смартбук (англ.  …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»