Перейти до основного вмісту
Цей проєкт у бета-версії. Знайшов(-ла) помилку? Відкрити issue на GitHub. Є запитання чи ідея? Запитати в Discussions — будемо раді твоєму відгуку!
Яка якість перекладу на цій сторінці?

Код повторення переглянуто

Далі ми знову розглянемо 3-бітний код повторення, цього разу формулюючи його в термінах операцій Паулі. Це буде наш перший приклад стабілізаторного коду.

Спостережувані Паулі для коду повторення​

Пригадаємо, що при застосуванні 3-бітного коду повторення до кубітів заданий вектор стану кубіта α∣0⟩+β∣1⟩\alpha\vert 0\rangle + \beta\vert 1\rangle кодується як

∣ψ⟩=α∣000⟩+β∣111⟩.\vert\psi\rangle = \alpha\vert 000\rangle + \beta\vert 111\rangle.

Будь-який стан ∣ψ⟩\vert\psi\rangle такої форми є допустимим 3-кубітним кодуванням стану кубіта — але якщо б у нас був стан, у якому ми не впевнені, ми могли б перевірити допустимість кодування, перевіривши два рівняння:

(Z⊗Z⊗I)∣ψ⟩=∣ψ⟩(I⊗Z⊗Z)∣ψ⟩=∣ψ⟩\begin{aligned} (Z \otimes Z \otimes \mathbb{I}) \vert\psi\rangle & = \vert\psi\rangle\\[1mm] (\mathbb{I} \otimes Z \otimes Z) \vert\psi\rangle & = \vert\psi\rangle \end{aligned}

Перше рівняння стверджує, що застосування операцій ZZ до двох крайніх лівих кубітів ∣ψ⟩\vert\psi\rangle не має ефекту, тобто ∣ψ⟩\vert\psi\rangle є власним вектором Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} з власним значенням 11. Друге рівняння аналогічне, але операції ZZ застосовуються до двох крайніх правих кубітів. Ідея полягає в тому, що якщо розглядати ∣ψ⟩\vert\psi\rangle як лінійну комбінацію стандартних базисних станів, то перше рівняння означає, що ненульові коефіцієнти можуть бути лише у стандартних базисних станів, де два крайніх лівих біти мають парну парність (або рівні між собою), а друге рівняння — що ненульові коефіцієнти можуть бути лише у станів, де два крайніх правих біти мають парну парність.

Еквівалентно, якщо розглядати два оператори Паулі Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} та I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z як спостережувані і вимірювати обидва за допомогою схем, запропонованих у кінці попереднього розділу, то ми були б впевнені в отриманні результатів вимірювань, що відповідають власним значенням +1+1, оскільки ∣ψ⟩\vert\psi\rangle є власним вектором обох спостережуваних з власним значенням 11. Але спрощена версія (комбінованої) схеми для незалежного вимірювання обох спостережуваних, показана тут, є не що інше, як схема перевірки парності для 3-бітного коду повторення.

Схема перевірки парності для 3-бітного коду повторення

Два рівняння, наведені вище, тому означають, що схема перевірки парності виводить 0000, тобто синдром, що вказує на відсутність виявлених помилок.

Трикубітні оператори Паулі Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} та I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z називаються генераторами стабілізатора для цього коду, а стабілізатор коду — це множина, породжена генераторами стабілізатора.

⟨Z⊗Z⊗I,I⊗Z⊗Z⟩={I⊗I⊗I,Z⊗Z⊗I,Z⊗I⊗Z,I⊗Z⊗Z}\langle Z\otimes Z\otimes \mathbb{I}, \mathbb{I}\otimes Z\otimes Z\rangle = \{ \mathbb{I}\otimes\mathbb{I}\otimes\mathbb{I}, Z\otimes Z\otimes\mathbb{I}, Z\otimes\mathbb{I}\otimes Z, \mathbb{I}\otimes Z\otimes Z \}

Стабілізатор є фундаментально важливим математичним об'єктом, пов'язаним з цим кодом, і його роль обговорюватиметься далі в уроці. Наразі зауважимо, що можна було б вибрати генератори інакше і відповідно використати інші перевірки парності — зокрема, взявши Z⊗I⊗ZZ\otimes\mathbb{I}\otimes Z замість одного з вибраних генераторів, — але стабілізатор і сам код від цього не зміниться.

Виявлення помилок​

Далі ми розглянемо виявлення помилок перекидання біта для 3-бітного коду повторення, зосередившись на взаємодіях та співвідношеннях між залученими операторами Паулі: генераторами стабілізатора та самими помилками.

Припустимо, ми закодували кубіт за допомогою 3-бітного коду повторення, і помилка перекидання біта виникла на крайньому лівому кубіті. Це перетворює стан ∣ψ⟩\vert\psi\rangle відповідно до дії операції XX (або помилки XX).

∣ψ⟩↦(X⊗I⊗I)∣ψ⟩\vert\psi\rangle \mapsto (X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle

Цю помилку можна виявити, виконавши перевірки парності для 3-бітного коду повторення, як обговорювалось на попередньому уроці, що еквівалентно недеструктивному вимірюванню генераторів стабілізатора Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} та I⊗Z⊗Z\mathbb{I}\otimes Z\otimes Z як спостережуваних.

Почнемо з першого генератора стабілізатора. На стан ∣ψ⟩\vert\psi\rangle вплинула помилка XX на крайньому лівому кубіті, і наша мета — зрозуміти, як ця помилка впливає на вимірювання цього генератора стабілізатора як спостережуваного. Оскільки XX та ZZ антикомутують, а будь-яка матриця комутує з одиничною матрицею, з цього випливає, що Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} антикомутує з X⊗I⊗I.X\otimes\mathbb{I}\otimes\mathbb{I}. Водночас, оскільки ∣ψ⟩\vert\psi\rangle є допустимим кодуванням кубіта, Z⊗Z⊗IZ\otimes Z\otimes \mathbb{I} діє тривіально на ∣ψ⟩.\vert\psi\rangle.

(Z⊗Z⊗I)(X⊗I⊗I)∣ψ⟩=−(X⊗I⊗I)(Z⊗Z⊗I)∣ψ⟩=−(X⊗I⊗I)∣ψ⟩\begin{aligned} (Z \otimes Z \otimes \mathbb{I})(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle & = -(X \otimes \mathbb{I} \otimes \mathbb{I})(Z \otimes Z \otimes \mathbb{I})\vert\psi\rangle \\ & = -(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle \end{aligned}

Таким чином, (X⊗I⊗I)∣ψ⟩(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle є власним вектором Z⊗Z⊗IZ \otimes Z \otimes \mathbb{I} з власним значенням −1.-1. При вимірюванні, пов'язаному зі спостережуваним Z⊗Z⊗IZ \otimes Z \otimes \mathbb{I}, на стані (X⊗I⊗I)∣ψ⟩,(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle, результат обов'язково відповідає власному значенню −1.-1.

Аналогічне міркування можна застосувати до другого генератора стабілізатора, але на цей раз помилка комутує з генератором стабілізатора, а не антикомутує, і тому результат вимірювання відповідає власному значенню +1+1.

(I⊗Z⊗Z)(X⊗I⊗I)∣ψ⟩=(X⊗I⊗I)(I⊗Z⊗Z)∣ψ⟩=(X⊗I⊗I)∣ψ⟩\begin{aligned} (\mathbb{I} \otimes Z \otimes Z)(X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle & = (X \otimes \mathbb{I} \otimes \mathbb{I})(\mathbb{I} \otimes Z \otimes Z)\vert\psi\rangle\\ & = (X \otimes \mathbb{I} \otimes \mathbb{I}) \vert\psi\rangle \end{aligned}

З цих рівнянь випливає, що незалежно від вихідного стану ∣ψ⟩\vert\psi\rangle, пошкоджений стан є власним вектором обох генераторів стабілізатора, і те, чи є власне значення +1+1 чи −1-1, визначається тим, чи помилка комутує або антикомутує з кожним генератором стабілізатора. Для помилок, представлених операторами Паулі, завжди буде одне або інше, оскільки будь-які два оператори Паулі або комутують, або антикомутують. Водночас фактичний стан ∣ψ⟩\vert\psi\rangle не відіграє важливої ролі, крім того, що генератори стабілізатора діють тривіально на цей стан.

Тому загалом нам не потрібно перейматись конкретним закодованим станом, з яким ми працюємо. Важливо лише те, чи комутує або антикомутує помилка з кожним генератором стабілізатора. Зокрема, ось відповідні рівняння щодо цієї конкретної помилки для цього коду.

(Z⊗Z⊗I)(X⊗I⊗I)=−(X⊗I⊗I)(Z⊗Z⊗I)(I⊗Z⊗Z)(X⊗I⊗I)=(X⊗I⊗I)(I⊗Z⊗Z)\begin{aligned} (Z \otimes Z \otimes \mathbb{I})(X \otimes \mathbb{I} \otimes \mathbb{I}) & = -(X \otimes \mathbb{I} \otimes \mathbb{I})(Z \otimes Z \otimes \mathbb{I})\\[1mm] (\mathbb{I} \otimes Z \otimes Z)(X \otimes \mathbb{I} \otimes \mathbb{I}) & = (X \otimes \mathbb{I} \otimes \mathbb{I})(\mathbb{I} \otimes Z \otimes Z) \end{aligned}

Ось таблиця, де кожен рядок відповідає генератору стабілізатора, а кожен стовпець — помилці. Елемент таблиці — +1+1 або −1-1 залежно від того, чи комутують чи антикомутують помилка і генератор стабілізатора. Таблиця містить лише стовпці для помилок, що відповідають одному перекиданню біта, а також відсутності помилки, описуваної одиничним оператором, зведеним у тензорний добуток сам із собою тричі. Можна додати більше стовпців для інших помилок, але наразі зосередимось лише на цих.

I⊗I⊗IX⊗I⊗II⊗X⊗II⊗I⊗XZ⊗Z⊗I+1−1−1+1I⊗Z⊗Z+1+1−1−1\begin{array}{c|cccc} & \mathbb{I}\otimes\mathbb{I} \otimes\mathbb{I} & X \otimes \mathbb{I} \otimes \mathbb{I} & \mathbb{I}\otimes X\otimes\mathbb{I} & \mathbb{I} \otimes\mathbb{I} \otimes X \\ \hline Z\otimes Z\otimes\mathbb{I} & +1 & -1 & -1 & +1 \\ \mathbb{I}\otimes Z\otimes Z & +1 & +1 & -1 & -1 \end{array}

Для кожної помилки в таблиці відповідний стовпець показує, як ця помилка перетворює будь-яке задане кодування у власний вектор +1+1 або −1-1 кожного генератора стабілізатора. Еквівалентно, стовпці описують синдром, який ми отримали б від перевірок парності, що є еквівалентними недеструктивним вимірюванням генераторів стабілізатора як спостережуваних. Звичайно, таблиця має елементи +1+1 і −1-1, а не 00 і 11 — і прийнято розглядати синдром як двійковий рядок, а не стовпець з елементами +1+1 і −1-1 — але можна також розглядати ці вектори з елементами +1+1 і −1-1 як синдроми, щоб безпосередньо пов'язати їх із власними значеннями генераторів стабілізатора. Загалом синдроми дають нам деяку інформацію про те, яка помилка сталась, і якщо відомо, що сталась одна з чотирьох можливих помилок у таблиці, синдром вказує, яка саме.

Синдроми​

Кодування для 3-бітного коду повторення є 3-кубітними станами, тому вони є одиничними векторами у 8-вимірному комплексному векторному просторі. Чотири можливих синдроми фактично розбивають цей 8-вимірний простір на чотири 2-вимірних підпростори, де вектори квантових станів у кожному підпросторі завжди дають один і той самий синдром. Наступна діаграма ілюструє, як 8-вимірний простір розбивається двома генераторами стабілізатора.

Розбиття підпросторів для 3-бітного коду повторення

Кожен генератор стабілізатора ділить простір на два підпростори рівного виміру, а саме: простір власних векторів +1+1 і простір власних векторів −1-1 для цього спостережуваного. Наприклад, власні вектори +1+1 оператора Z⊗Z⊗IZ\otimes Z\otimes\mathbb{I} — це лінійні комбінації стандартних базисних станів, у яких два крайніх лівих біти мають парну парність, а власні вектори −1-1 — це лінійні комбінації стандартних базисних станів, у яких два крайніх лівих біти мають непарну парність. Ситуація аналогічна для іншого генератора стабілізатора, але для нього йдеться про парність двох крайніх правих бітів, а не двох крайніх лівих.

Чотири 2-вимірних підпростори, що відповідають чотирьом можливим синдромам, у цьому випадку легко описати завдяки простоті коду. Зокрема, підпростір, що відповідає синдрому (+1,+1),(+1,+1), — це простір, натягнутий на ∣000⟩\vert 000\rangle та ∣111⟩\vert 111\rangle, тобто простір допустимих кодувань (також відомий як кодовий простір), і загалом простори натягнуті на стандартні базисні стани, показані у відповідних квадратах.

Синдроми також розбивають усі 3-кубітні оператори Паулі на 4 рівних групи залежно від того, який синдром цей оператор (як помилка) спричинив би. Наприклад, будь-який оператор Паулі, що комутує з обома генераторами стабілізатора, дає синдром (+1,+1),(+1,+1), і серед 64 можливих 3-кубітних операторів Паулі у цій категорії є рівно 16 (включаючи, наприклад, I⊗I⊗Z,\mathbb{I}\otimes \mathbb{I}\otimes Z, Z⊗Z⊗Z,Z\otimes Z\otimes Z, та X⊗X⊗XX\otimes X\otimes X), і так само для інших 3 синдромів.

Обидві ці властивості — що синдроми розбивають як простір станів, де живуть кодування, так і всі оператори Паулі на цьому просторі на рівні групи — загалом справджуються для стабілізаторних кодів, які ми точно визначимо в наступному розділі.

Хоча це переважно є відступом на даному етапі, варто зазначити, що оператори Паулі, які комутують з обома генераторами стабілізатора, або еквівалентно, що дають синдром (+1,+1),(+1,+1), але самі не є пропорційними елементам стабілізатора, виявляються такими, що поводяться як однокубітні оператори Паулі на закодованому кубіті (тобто логічному кубіті) для цього коду. Наприклад, X⊗X⊗XX\otimes X \otimes X комутує з обома генераторами стабілізатора, але сам не є пропорційним жодному елементу стабілізатора, і справді дія цього оператора на кодування еквівалентна гейту XX на логічному кубіті, що кодується.

(X⊗X⊗X)(α∣000⟩+β∣111⟩)=α∣111⟩+β∣000⟩(X\otimes X \otimes X)(\alpha \vert 000\rangle + \beta \vert 111\rangle) = \alpha \vert 111\rangle + \beta \vert 000\rangle

Знову ж таки, це явище узагальнюється на всі стабілізаторні коди.