BQP
BQP (ang. bounded-error quantum polynomial time, dosł. „kwantowy czas wielomianowy z ograniczonym błędem”) – klasa złożoności w teorii złożoności obliczeniowej obejmująca problemy decyzyjne, które mogą być rozwiązywane przez komputer kwantowy w czasie wielomianowym z prawdopodobieństwem błędu ograniczonym stałą mniejszą niż . W standardowej definicji przyjmuje się próg błędu co najwyżej dla każdej instancji, czyli prawdopodobieństwo poprawnej odpowiedzi co najmniej . BQP jest kwantowym odpowiednikiem klasy BPP, zdefiniowanej dla klasycznych obliczeń probabilistycznych[1][2]. Do najważniejszych problemów należących do BQP zalicza się rozkład liczb całkowitych na czynniki i logarytm dyskretny, rozwiązywane algorytmem Shora[3]. Zachodzą zawierania , natomiast relacja BQP z klasą NP pozostaje otwarta[2][4].
Klasa BQP służy do formalnego opisu tego, co uważa się za efektywnie rozwiązywalne w modelu obliczeń kwantowych z niewielkim, kontrolowanym prawdopodobieństwem pomyłki. Nie jest to klasa „wszystkich problemów, które komputer kwantowy rozwiązuje szybko” w sensie praktycznym. Podobnie jak w definicjach klas P czy NP, chodzi o asymptotyczny czas działania względem długości wejścia. Definicja nie uwzględnia konkretnych kosztów sprzętowych, liczby odpornych na błędy kubitów ani stałych ukrytych w notacji asymptotycznej[5].
Definicja
[edytuj | edytuj kod]
| Algorytm BQP (1 przebieg) | ||
|---|---|---|
| Poprawna odpowiedź / uzyskana | tak | nie |
| tak | ≥ 2/3 | ≤ 1/3 |
| nie | ≤ 1/3 | ≥ 2/3 |
| Algorytm BQP (k przebiegów) | ||
| Poprawna odpowiedź / uzyskana | tak | nie |
| tak | ||
| nie | ||
| dla pewnej stałej c > 0 | ||
Formalnie BQP można definiować jako klasę języków , dla których istnieje wielomianowo jednolita rodzina obwodów kwantowych działających na wejściach długości , taka że obwód kończy się pomiarem dającym jeden bit odpowiedzi. Jeżeli , to akceptuje z prawdopodobieństwem co najmniej . Jeżeli , to odrzuca z prawdopodobieństwem co najmniej [1][2].
Równoważnie można używać modelu kwantowej maszyny Turinga działającej w czasie wielomianowym. Pomysł, że mechanika kwantowa mogłaby dać maszynom obliczeniowym moc przewyższającą klasyczne maszyny Turinga, wysunął w 1982 Richard Feynman. Jego pierwotną motywacją była wydajna symulacja układów kwantowych, a pierwszą definicję kwantowej maszyny Turinga podał w 1985 David Deutsch[5]. Dopracowane sformułowania, dzięki którym obliczenia kwantowe ugruntowały się jako dziedzina teorii złożoności, podali następnie Andrew Yao oraz Bernstein i Vazirani. Ci dwaj ostatni wprowadzili ten model w teorii złożoności kwantowej i wykazali jego podstawowe własności, w tym związek z obliczeniami przez jednolite rodziny obwodów kwantowych[2][5]. W praktyce współczesne sformułowania BQP najczęściej używają obwodów kwantowych, bo dobrze odpowiadają one opisowi algorytmów przez kubity, bramki kwantowe i pomiar[2][6].
Definicja klasy nie zależy przy tym od wyboru skończonego uniwersalnego zestawu elementarnych bramek kwantowych. W literaturze używa się na przykład zestawu bramki Hadamarda, bramki CNOT i bramki T. Uniwersalny obliczeniowo jest również zestaw złożony z bramki Hadamarda i bramki Toffoliego, mimo że wszystkie generowane przez niego amplitudy są liczbami rzeczywistymi[7]. Z argumentu zliczającego wynika zarazem, że istnieją przekształcenia unitarne wymagające do realizacji wykładniczo wielu bramek elementarnych[5].
Stała w definicji nie ma szczególnego znaczenia. Jeżeli algorytm ma prawdopodobieństwo sukcesu oddzielone od niezerową stałą, można uruchomić go wielokrotnie niezależnie i przyjąć odpowiedź większościową, zmniejszając błąd wykładniczo względem liczby powtórzeń. Dlatego ta sama klasa powstaje przy wielu innych stałych progach błędu, o ile są one odseparowane od losowego zgadywania[5].
Relacje z innymi klasami
[edytuj | edytuj kod]
Każdy klasyczny algorytm deterministyczny czasu wielomianowego można zasymulować jako obliczenie kwantowe, więc . Także klasyczne obliczenia probabilistyczne z ograniczonym błędem mieszczą się w modelu kwantowym, dlatego zwykle zapisuje się . Nie wiadomo jednak, czy którekolwiek z tych zawierań jest właściwe. W szczególności nie udowodniono, że BQP zawiera problem niewykonalny w klasycznym czasie wielomianowym[2][1].
Znane są natomiast klasyczne górne ograniczenia na moc BQP. Bernstein i Vazirani pokazali zawieranie , a późniejsze prace dały silniejsze relacje z klasami probabilistycznymi: jest zawarta w AWPP, a tym samym w PP. W szczególności wyniki te nie mówią, że komputery kwantowe mogłyby rozwiązywać dowolne problemy z PSPACE. Wskazują jedynie znane ograniczenia górne wynikające z klasycznej symulacji amplitud kwantowych[2][4][8][6]. Oszacowanie to można dodatkowo wzmocnić: klasa BQP jest „niska” względem PP, to znaczy użycie jej jako wyroczni nie zwiększa mocy obliczeniowej PP, gdyż . Poprawia to wcześniejsze oszacowanie uzyskane przez Leonarda Adlemana i współpracowników[4]. Szczególnie ścisły związek BQP z klasą PP ujawnia się przy dopuszczeniu postselekcji: Scott Aaronson pokazał, że rozszerzenie BQP o warunkowanie wyniku na zajściu zdarzenia o niezerowym prawdopodobieństwie (klasa PostBQP) daje dokładnie klasę PP. Charakteryzacja ta dostarczyła m.in. prostszego dowodu, że PP jest zamknięta ze względu na przecięcie języków[9].
Relacja między BQP a NP pozostaje otwarta. Nie wiadomo, czy , czy , ani czy klasy te są nieporównywalne. Choć formalnie kwestia ta pozostaje nierozstrzygnięta, powszechnie przypuszcza się, że , ponieważ na problemach NP-zupełnych komputery kwantowe zdają się dawać jedynie kwadratowe przyspieszenie (poprzez algorytm Grovera), a nie wykładnicze[5]. Wyniki relatywizowane dają przesłanki, że BQP może zachowywać się inaczej niż klasyczne hierarchie niedeterministyczne. Aaronson uzyskał separację dla problemu relacyjnego i wskazał problemy typu Forrelation/Fourier Checking jako kandydatów do separacji decyzyjnej. Raz i Tal później udowodnili separację wyroczniową BQP od PH. Takie separacje nie są dowodem bezwarunkowym, ale pokazują ograniczenia wielu klasycznych metod porównywania klas złożoności[10][11].
BQP jest też zamknięta na użycie własnych podprocedur jako wyroczni w czasie wielomianowym. Zapisuje się to jako . Intuicyjnie wynika to z faktu, że wielomianowo wiele wywołań algorytmów działających w czasie wielomianowym nadal daje czas wielomianowy, a błędy można obniżyć tak, aby całe obliczenie zachowało ograniczone prawdopodobieństwo pomyłki[2].
Przykłady problemów i algorytmów
[edytuj | edytuj kod]Najbardziej znanym przykładem problemów mieszczących się w BQP są zadania rozkładu liczb całkowitych na czynniki oraz obliczania logarytmu dyskretnego, dla których Peter Shor podał algorytmy kwantowe działające w czasie wielomianowym. Wyniki te są ważne dla kryptografii, ponieważ wiele klasycznych systemów opiera bezpieczeństwo na założeniu praktycznej trudności takich zadań. Nie dowodzą one jednak, że faktoryzacja lub logarytm dyskretny leżą poza klasą P deterministycznych obliczeń wielomianowych[3]. Algorytm faktoryzacji pozostaje zarazem najsilniejszą przesłanką, że klasa BQP wykracza poza BPP: rozkład na czynniki to jeden z najstarszych i najlepiej zbadanych problemów obliczeniowych, dla którego mimo to nie jest znany wydajny algorytm klasyczny[5]. Innym często przywoływanym przykładem jest algorytm Grovera dla przeszukiwania nieuporządkowanej przestrzeni, dający kwadratowe przyspieszenie względem klasycznego przeszukiwania[12]. Algorytm Simona pokazuje z kolei przyspieszenie wykładnicze, a nie tylko kwadratowe. Rozwiązuje on w czasie wielomianowym problem, dla którego wszystkie znane algorytmy klasyczne wymagają czasu wykładniczego, a w modelu wyroczni (czarnej skrzynki) każdy algorytm klasyczny potrzebuje rzędu zapytań. Uogólnienie problemu Simona stało się punktem wyjścia kwantowego algorytmu faktoryzacji Shora[5].
Do BQP należą również inne problemy naturalnie wynikające z obliczeń kwantowych, zwłaszcza zadania związane z symulacją ewolucji układów kwantowych oraz problemami z obietnicą formułowanymi przez obwody kwantowe. Ujęcie to wyjaśnia, dlaczego BQP jest centralną klasą kwantowej teorii złożoności: opisuje nie tylko konkretne algorytmy, lecz także granicę tego, co da się efektywnie oszacować poprzez kontrolowaną ewolucję amplitud i pomiar[1][13][14].
Nie każdy problem, dla którego znany jest szybki algorytm kwantowy, musi być problemem decyzyjnym wprost. W teorii złożoności wersje decyzyjne, zadania z obietnicą albo problemy estymacji przekłada się na języki i progi akceptacji, aby porównywać je z klasami takimi jak BQP. Z tego powodu hasło „problem w BQP” często oznacza precyzyjnie dobraną wersję decyzyjną lub obietnicową szerszego zadania obliczeniowego[13][5].
Problemy z obietnicą
[edytuj | edytuj kod]Wiele technicznych wyników o zupełności formułuje się nie dla samej klasy BQP języków całkowitych, lecz dla wersji obietnicowej, zwykle oznaczanej Promise-BQP. Problem z obietnicą określa zachowanie algorytmu tylko na wejściach spełniających jeden z dwóch rozłącznych warunków, pozostawiając wejścia pośrednie poza zakresem problemu. Jest to naturalne w obliczeniach kwantowych, gdzie często trzeba rozróżnić, czy prawdopodobieństwo pomiaru jest co najmniej , czy co najwyżej , przy obietnicy luki [13].
Typowym problemem zupełnym dla Promise-BQP jest wariant przybliżonego problemu obwodu kwantowego: mając opis obwodu kwantowego i dwa progi , należy rozstrzygnąć, czy pomiar wskazanego kubitu daje wynik z prawdopodobieństwem co najmniej , czy co najwyżej . Każde obliczenie z BQP można sprowadzić do takiego testu przez zakodowanie algorytmu jako obwodu i ustawienie progów, np. oraz [13][2].
Znane są też problemy zupełne dla Promise-BQP o charakterze czysto algebraicznym, niewymagające wprost języka obwodów kwantowych. Janzing i Wocjan wykazali, że zupełne dla tej klasy jest oszacowanie wybranego elementu diagonalnego potęgi rzadkiej symetrycznej macierzy rzeczywistej z dokładnością do , gdzie ogranicza normę macierzy. Problem pozostaje trudny dla Promise-BQP nawet wtedy, gdy macierz ma wyłącznie wyrazy , i . Wynik ten daje algebraiczną charakteryzację Promise-BQP, niewyrażoną bezpośrednio językiem obwodów kwantowych[13].
Znaczenie
[edytuj | edytuj kod]
BQP jest jednym z podstawowych punktów odniesienia w ocenie potencjalnej przewagi obliczeń kwantowych nad klasycznymi. Jeżeli dla pewnego naturalnego problemu uda się pokazać, że należy do BQP i jednocześnie nie należy do odpowiednich klas klasycznych, byłby to formalny dowód separacji modeli obliczeń. Na razie najważniejsze separacje mają charakter relatywizowany albo dotyczą szczególnych modeli i zadań, dlatego ostrożnie odróżnia się dowody przewagi w modelach ograniczonych od pełnego rozdzielenia klas , i [10][11].
Znaczenie BQP nie zależy wyłącznie od przyszłej budowy dużych komputerów kwantowych odpornych na błędy. Klasa ta porządkuje pytania o algorytmy kwantowe, symulację układów fizycznych, wpływ kwantowości na kryptografię oraz granice klasycznej symulacji procesów kwantowych. Dzięki temu stanowi wspólny język dla teorii złożoności, informatyki kwantowej i części fizyki obliczeniowej[1][2].
Zobacz też
[edytuj | edytuj kod]Przypisy
[edytuj | edytuj kod]- 1 2 3 4 5 Michael A. Nielsen, Isaac L. Chuang, Quantum Computation and Quantum Information, 10th Anniversary Edition, Cambridge University Press, 2010, ISBN 978-1-107-00217-3 (ang.).
- 1 2 3 4 5 6 7 8 9 10 Ethan Bernstein, Umesh Vazirani, Quantum Complexity Theory, „SIAM Journal on Computing”, 26 (5), 1997, s. 1411–1473, DOI: 10.1137/S0097539796300921 (ang.).
- 1 2 Peter W. Shor, Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer, „SIAM Journal on Computing”, 26 (5), 1997, s. 1484–1509, DOI: 10.1137/S0097539795293172, arXiv:quant-ph/9508027 (ang.).
- 1 2 3 Lance Fortnow, John Rogers, Complexity Limitations on Quantum Computation, „Journal of Computer and System Sciences”, 59 (2), 1999, s. 240–252, DOI: 10.1006/jcss.1999.1651, arXiv:cs/9811023 (ang.).
- 1 2 3 4 5 6 7 8 9 Sanjeev Arora, Boaz Barak, Computational Complexity: A Modern Approach, Cambridge University Press, 2009, ISBN 978-0-521-42426-4 (ang.).
- 1 2 John Watrous, Quantum Computational Complexity, „Encyclopedia of Complexity and Systems Science”, 2009, s. 7174–7201, DOI: 10.1007/978-0-387-30440-3_428, arXiv:0804.3401 (ang.).
- ↑ Yaoyun Shi, Both Toffoli and Controlled-NOT need little help to do universal quantum computation, „Quantum Information and Computation”, 3 (1), 2003, s. 84–92, DOI: 10.26421/qic3.1-7, arXiv:quant-ph/0205115 (ang.).
- ↑ Leonard M. Adleman, Jonathan DeMarrais, Ming-Deh A. Huang, Quantum Computability, „SIAM Journal on Computing”, 26 (5), 1997, s. 1524–1540, DOI: 10.1137/S0097539795293639 (ang.).
- ↑ Scott Aaronson, Quantum computing, postselection, and probabilistic polynomial-time, „Proceedings of the Royal Society A”, 461 (2063), 2005, s. 3473–3482, DOI: 10.1098/rspa.2005.1546, arXiv:quant-ph/0412187 (ang.).
- 1 2 Scott Aaronson, BQP and the Polynomial Hierarchy, „Proceedings of the 42nd ACM Symposium on Theory of Computing”, 2010, s. 141–150, DOI: 10.1145/1806689.1806711, arXiv:0910.4698 (ang.).
- 1 2 Ran Raz, Avishay Tal, Oracle Separation of BQP and PH, „Journal of the ACM”, 69 (4), 2022, s. 1–21, DOI: 10.1145/3530258 (ang.).
- ↑ Lov K. Grover, A fast quantum mechanical algorithm for database search, „Proceedings of the 28th Annual ACM Symposium on Theory of Computing”, 1996, s. 212–219, DOI: 10.1145/237814.237866, arXiv:quant-ph/9605043 (ang.).
- 1 2 3 4 5 Dominik Janzing, Paweł Wocjan, A Simple PromiseBQP-complete Matrix Problem, „Theory of Computing”, 3 (4), 2007, s. 61–79, DOI: 10.4086/toc.2007.v003a004 (ang.).
- ↑ Scott Aaronson, The Limits of Quantum Computers, „Scientific American”, 298 (3), 2008, s. 62–69, DOI: 10.1038/scientificamerican0308-62 (ang.).
Bibliografia
[edytuj | edytuj kod]- Sanjeev Arora, Boaz Barak, Computational Complexity: A Modern Approach, Cambridge University Press, 2009, ISBN 978-0-521-42426-4 (ang.).
- Michael A. Nielsen, Isaac L. Chuang, Quantum Computation and Quantum Information, 10th Anniversary Edition, Cambridge University Press, 2010, ISBN 978-1-107-00217-3 (ang.).