Просторова складність

Матеріал з testwiki
Версія від 23:19, 24 березня 2022, створена imported>InternetArchiveBot (Виправлено джерел: 3; позначено як недійсні: 0.) #IABot (v2.0.8.6)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Просторова складність алгоритму чи комп'ютерної програми — обсяг пам'яті, необхідний для розв'язання екземпляра обчислювальної задачі як функція характеристик вхідних даних. Це пам'ять, необхідна алгоритму, поки він не завершиться повністю[1].

Подібно до часової складності, просторова складність часто виражається асимптотично у O-нотації, наприклад: O(n), O(nlogn), O(nα), O(2n), тощо, де Шаблон:Mvar є характеристикою вхідних даних, що впливають на просторову складність.

Класи просторової складності

Аналогічно класам часової складності DTIME(f(n)) та NTIME(f(n)), класи просторової складності DSPACE(f(n)) та NSPACE(f(n)) — це набори мов, які можна визначити детермінованими (відповідно, недетермінованими) машинами Тьюрінга, які використовують O(f(n)) простір. Класи складності PSPACE і NPSPACE дозволяють f бути будь-яким многочленом, аналогічно P і NP. Тобто,


𝖯𝖲𝖯𝖠𝖢𝖤=c+𝖣𝖲𝖯𝖠𝖢𝖤(nc)

і

𝖭𝖯𝖲𝖯𝖠𝖢𝖤=c+𝖭𝖲𝖯𝖠𝖢𝖤(nc)

Відношення між класами

Теорема про просторову ієрархію стверджує, що для всіх Шаблон:Не перекладено функцій f(n), існує задача, яку можна розв'зати машиною з f(n) простором пам'яті, але яка не може бути розв'язана машиною з асимптотично меншим за f(n) простором.

Мають місце наведені нижче обмеження між класами складності.[2]

𝖣𝖳𝖨𝖬𝖤(f(n))𝖣𝖲𝖯𝖠𝖢𝖤(f(n))𝖭𝖲𝖯𝖠𝖢𝖤(f(n))𝖣𝖳𝖨𝖬𝖤(2O(f(n)))


Крім того, теорема Савича дає зворотне обмеження, що якщо fΩ(log(n)),

𝖭𝖲𝖯𝖠𝖢𝖤(f(n))𝖣𝖲𝖯𝖠𝖢𝖤((f(n))2).


Як прямий наслідок: 𝖯𝖲𝖯𝖠𝖢𝖤=𝖭𝖯𝖲𝖯𝖠𝖢𝖤. Цей результат дивує, оскільки свідчить про те, що недетермінованість може зменшити простір, необхідний для розв'язання задачи, лише на невеликий об'єм пам'яті. На відміну від цього, гіпотеза експоненціального часу припускає, що для часової складності може існувати експоненціальний розрив між детермінованою та недетермінованою складністю.

Теорема Іммермана — Селепчєнні стверджує, що знову для fΩ(log(n)), 𝖭𝖲𝖯𝖠𝖢𝖤(f(n)) закрито на доповнення. Це свідчить про ще одну якісну різницю між класами часової і просторової складності, оскільки недетерміновані класи часової складності, як вважають, не закриваються від доповнення; наприклад, передбачається, що NP ≠ co-NP.[3][4]

Примітки

Шаблон:Reflist