Інші сімейства кодів
Відтоді як торичний код було відкрито, минуло по над 25 років, і за цей час було проведено велику кількість досліджень у галузі квантових кодів виправлення помилок, включно з відкриттям інших топологічних квантових кодів, натхненних торичним кодом, а також кодів, заснованих на інших ідеях. Включити сюди вичерпний список відомих конструкцій квантових кодів виправлення помилок неможливо — але ми трохи торкнемося теми і коротко розглянемо кілька помітних прикладів.
Поверхневі коди
Виявляється, торичному коду не обов'язково мати periodical межі. Тобто можна вирізати лише частину торичного коду і розмістити її на двовимірній поверхні, а не тороїді, щоб отримати квантовий код виправлення помилок — за умови правильного визначення генераторів стабілізатора на краях. Те, що ми отримуємо, називається поверхневим кодом.
Наприклад, ось діаграма поверхневого коду, де решітка обрізана так, що зверху та знизу є так звані «грубі» краї, а з боків — «гладкі». Крайові випадки генераторів стабілізато ра визначаються природним чином: операції Паулі на «відсутніх» кубітах просто опускаються.
Поверхневі коди такої форми кодують один кубіт, а не два, як торичний код. Генератори стабілізатора в цьому випадку утворюють мінімальний набір генераторів без потреби прибирати по одному з кожного типу, як у торичному коді. Але, попри ці відмінності, важливі характеристики торичного коду зберігаються. Зокрема, нетривіальні невиявлені помилки для цього коду відповідають ланцюжкам помилок, що простягаються або від лівого краю до правого (для ланцюжків помилок ), або зверху вниз (для ланцюжків помилок ).
Можна також обрізати краї поверхневого коду по діагоналі, щоб отримати так звані повернуті поверхневі коди — вони так називаються не тому, що самі коди обернені в якомусь сенсі, а тому що діаграми повернуті (на 45 градусів). Наприклад, ось діаграма повернутого поверхневого коду з відстанню 5.
На такій діаграмі чорні клітинки (включно з округленими на краях) позначають генератори стабілізатора , де операції застосовуються до двох або чотирьох вершин кожної клітинки, а білі клітинки — генератори стабілізатора . Повернуті поверхневі коди мають властивості, схожі на (неповернуті) поверхневі коди, але є економнішими щодо кількості використовуваних кубітів.
Кольорові коди
Кольорові коди — ще один цікавий клас кодів, що також належить до загальної категорії топологічних квантових кодів. Тут вони будуть описані лише коротко.
Один зі способів думати про кольорові коди — розглядати їх як геометричні узагальнення 7-кубітного коду Стіна. Маючи це на увазі, повернемося до 7-кубітного коду Стіна і припустимо, що сім кубітів названо та впорядковано за нумерацією Qiskit як Нагадаємо, що генератори стабілізатора для цього коду такі.
Якщо зіставити ці сім кубітів з вершинами наступного графа, то виявиться, що генератори стабілізатора точно відповідають граням, утвореним ребрами графа.
Тобто для кожної грані є і генератор стабілізатора , і генератор стабілізатора , що нетривіально діють на кубіти у вершинах цієї грані. Таким чином, 7-кубітний код Стіна має геометричну локальність, тому в принципі не потрібно переміщувати кубіти на великі відстані для вимірювання генераторів стабілізатора. Той факт, що генератори стабілізатора та завжди нетривіально діють рівно на одні й ті самі набори кубітів, також корисний з причин, пов'язаних із відмовостійкими квантовими обчисленнями — це тема наступного уроку.
Кольорові коди — це квантові коди виправлення помилок (точніше, CSS-коди), що узагальнюють цей базовий шаблон, за винятком того, що базові графи можуть бути різними. Наприклад, ось граф з 19 вершинами, що підходить для цього. Він визначає код, що кодує один кубіт у 19 кубітів і має відстань 5 (тобто це стабілізаторний код ).
Це можн а зробити з багатьма іншими графами, включно з сімействами графів, що зростають у розмірі та мають цікаві структури.
Кольорові коди так називаються тому, що одна з необхідних умов на графи, що їх визначають, полягає в тому, що грані можна три-розфарбувати, тобто кожну грань можна призначити одному з трьох кольорів таким чином, щоб жодні дві грані одного кольору не мали спільного ребра (як у попередній діаграмі). Самі кольори насправді не важливі для визначення коду — для кожної грані завжди існують генератори стабілізатора та , незалежно від її кольору, — але кольори важливі для аналізу роботи кодів.
Інші коди
Виправлення квантових помилок — активна та стрімко розвивальна область досліджень. Тим, хто хоче поглибити знання, варто звернутися до Error Correction Zoo, де перераховані численні приклади та класифікації квантових кодів виправлення помилок.
Приклад: Код «гросс»
Код «гросс» — це нещодавно відкритий стабілізаторний код . Він подібний до торичного коду, за тим виключенням що кожен генератор стабілізатора нетривіально діє на ще два додаткові кубіти, трохи далі від відповідної клітинки або вершини (тобто кожен генератор стабілізатора має вагу 6). Перевага цього коду полягає в тому, що він здатний кодувати 12 кубітів, порівняно з лише двома у торичному коді.