⚛️ Kwantowa korekcja błędów
Zobacz, jak kwantowe kody korekcyjne chronią kruche kubity przed dekoherencją i szumem.
O tej symulacji
Ta symulacja implementuje 3-kubitowy kod powtórzeniowy bit-flip, najprostszy kwantowy kod korekcyjny. Kubit logiczny |0⟩ lub |1⟩ jest kodowany jako |000⟩ lub |111⟩ za pomocą dwóch bramek CNOT, a następnie każdy kubit fizyczny przechodzi przez zaszumiony kanał, który odwraca go niezależnie z prawdopodobieństwem p. Dwie kontrole parzystości (stabilizatory) S1 = Z⊗Z⊗I i S2 = I⊗Z⊗Z są mierzone bez zapadania się informacji logicznej, a wynikowy syndrom (S1, S2) jest wyszukiwany w tabeli, by zlokalizować — i odwrócić z powrotem — pojedynczy błędny kubit. Głosowanie większościowe następnie dekoduje poprawioną trójkę z powrotem do bitu logicznego, a symulator śledzi, jak często cały ten proces mimo to zawodzi.
🔬 Co pokazuje
Żywy 5-etapowy schemat obwodu — Encode, Channel, Syndrome, Correct, Decode — dla 3-kubitowego kodu bit-flip, wraz z wykresem progowym porównującym współczynnik błędu logicznego p_L = 3p²(1-p) + p³ z fizycznym współczynnikiem błędu p. Poniżej progu ~0,5 kodowanie zawsze zmniejsza współczynnik błędu; powyżej niego kodowanie pogarsza sytuację.
🎮 Jak korzystać
Ustaw prawdopodobieństwo błędu na kubit p i typ błędu (bit-flip X lub phase-flip Z, choć ten kod naprawdę chroni tylko przed błędami X), wybierz stan logiczny |0⟩ lub |1⟩, następnie kliknij Run Round, by zobaczyć syndrom, lokalizację błędu i korekcję jednej próby na schemacie obwodu, lub 1000 Trials, by uzyskać statystycznie znaczący współczynnik błędu logicznego naniesiony na wykres wraz z teorią.
💡 Czy wiesz, że?
Tabela syndromów użyta tutaj to dokładnie klasyczna logika parzystości w stylu Hamminga: S1=1,S2=0 oznacza, że kubit 1 się odwrócił; S1=1,S2=1 oznacza kubit 2; S1=0,S2=1 oznacza kubit 3; S1=0,S2=0 oznacza brak błędu. Ten kod może naprawić tylko pojedyncze odwrócenie bitu na blok — jeśli dwa lub trzy z trzech kubitów odwrócą się jednocześnie, głosowanie większościowe zostaje oszukane, a błąd logiczny przechodzi niezauważony, co dokładnie przedstawia człon 3p²(1-p)+p³ na wykresie progowym.
Najczęściej zadawane pytania
Czym jest 3-kubitowy kod bit-flip?
To najprostszy kwantowy kod korekcyjny, kodujący jeden kubit logiczny w trzech kubitach fizycznych poprzez |0⟩→|000⟩ i |1⟩→|111⟩ za pomocą dwóch bramek CNOT od pierwszego kubitu. Chroni przed niezależnymi błędami odwrócenia bitu (X) na dowolnym pojedynczym kubicie w bloku, kosztem użycia trzech kubitów fizycznych na jeden kubit logiczny.
Jak działa pomiar syndromu bez zniszczenia zakodowanej informacji?
Stabilizatory S1 = Z⊗Z⊗I i S2 = I⊗Z⊗Z to kontrole parzystości porównujące pary kubitów (q1 z q2 oraz q2 z q3) bez pomiaru ich indywidualnych wartości. Ponieważ komutują z operatorami logicznymi, ich pomiar ujawnia jedynie, czy nieparzysta liczba kubitów różni się od sąsiadów — syndrom błędu — pozostawiając zakodowany stan logiczny nienaruszonym.
Jak symulator decyduje, który kubit poprawić?
Odczytuje dwubitowy syndrom (S1, S2) ze stałej tabeli odnośników: (1,0) wskazuje błąd na kubicie 1, (1,1) na kubicie 2, (0,1) na kubicie 3, a (0,0) oznacza, że nie wykryto błędu. Zidentyfikowany kubit jest następnie odwracany z powrotem, po czym głosowanie większościowe wśród wszystkich trzech kubitów dekoduje poprawiony blok do pojedynczego bitu logicznego.
Czym jest próg błędu pokazany na wykresie?
Współczynnik błędu logicznego po korekcji wynosi p_L = 3p²(1-p) + p³, prawdopodobieństwo, że dwa lub trzy z trzech kubitów się odwrócą (czego kod nie może naprawić), podczas gdy fizyczny, niekodowany współczynnik błędu wynosi po prostu p. Obie krzywe przecinają się przy p ≈ 0,5: poniżej tego progu kod zmniejsza efektywny współczynnik błędu, a powyżej korekcja przynosi odwrotny skutek.
Dlaczego opcja phase-flip zachowuje się tak samo jak bit-flip w tym symulatorze?
Zademonstrowany tu 3-kubitowy kod powtórzeniowy jest zbudowany specjalnie do korekcji błędów X (odwrócenie bitu) — jego stabilizatory są typu Z, które wykrywają odwrócenia tylko w bazie obliczeniowej. Prawdziwy błąd Z (odwrócenie fazy) wymagałby kodu zbudowanego w bazie obróconej Hadamardem. Symulator zachowuje tę samą logikę syndromu dla przełącznika phase-flip w celach porównawczych, dlatego prawdziwe architektury odporne na błędy, jak 9-kubitowy kod Shora, łączą kod bit-flip z kodem phase-flip.