Працювати безпосередньо зі складністю часу або нижніми межами схеми страшно. Отже, ми розробляємо такі інструменти, як складність запитів (або складність дерева рішень), щоб отримати ручку в нижчих межах. Оскільки кожен запит займає щонайменше один крок одиниці, а обчислення між запитами зараховуються як вільні, складність часу становить щонайменше стільки ж, як і складність запиту. Однак чи можемо ми щось сказати про розділення?
Мені цікаво працювати в класичній чи квантовій літературі, але надаю приклади з КК, оскільки я більш знайомий.
Деякі відомі алгоритми, такі як пошук Гровера і пошук періоду Шора, складність часу знаходяться в межах полі-логарифмічних факторів складності запиту. Для інших, таких як проблема прихованої підгрупи, ми маємо складність поліноміального запиту , але алгоритми поліноміального часу не відомі.
Оскільки потенційно існує розрив між складністю часу та запиту, не ясно, що алгоритм оптимальної складності часу повинен мати ту саму складність запиту, що й алгоритм складності запиту.
Чи є приклади компромісів між складністю часу та запиту?
Чи є проблеми, коли найвідоміший алгоритм складності часу має іншу складність запиту, ніж найкращий алгоритм складності запитів? Іншими словами, чи можемо ми виконати більше запитів, щоб полегшити операції між запитами?
Або є аргумент, який показує, що завжди існує версія асимптотично оптимального алгоритму запитів, що має реалізацію з найкращою асимптотикою за часом?