Квантова корекція помилок навчилася перетравлювати вдвічі більший шум

Фізики розробили код корекції помилок у квантових обчисленнях, який працює при вдвічі більшому рівні шуму, ніж його попередник. Автори показали, як веде себе новий код при різних типах помилок і як з його допомогою можна зменшити число фізичних кубітів в системі, а експерименти підтвердили всі його переваги. Робота опублікована в журналі


Другим важливим завданням на шляху до втілення квантових обчислень крім створення довгоочікуваного пристрою, можна вважати розробку коду корекції помилок. Базові елементи квантових комп'ютерів (кубіти, вентилі) не ідеальні: кубіти можуть перебувати в неправильному стані, а вентилі - вносити помилку у вихідний кубіт. Тому вченим доводиться придумувати способи як з цим боротися. Відомий з класичної інформатики варіант - корекція виникаючих помилок. Тут є кілька різних способів - можна кілька разів вимірювати отриману інформацію і потім обробляти отриманий набір, або використовувати для кодування 1 кубіту (логічного) кілька фізичних кубітів. Для сучасних квантових пристроїв час життя кубітів не дозволяє використовувати перший метод, тому для реалізації обчислень без помилок потрібна більша кількість кубітів, ніж задіяна в самих обчисленнях. Використання декількох (часто трьох) кубітів замість одного дозволяє отримати правильну відповідь, навіть якщо один з кубітів виявився «битим», адже інші будуть вірними. Ймовірність того, що два кубіти одночасно помилкові, дуже мала.


Серед багатьох кодів коригування помилок існують так звані поверхневі коди. Для їх представлення використовується четверта решітка, на ребрах якої розташовані кубіти. Частина з них бере участь у обчисленнях, а інша частина допомагає виявляти і виправляти помилки. Вимірювання додаткових кубітів можна проводити в різних базисах: найчастіше, набір однокубітних вимірювань обмежений матрицями Паулі. У разі поверхневого коду використовують оператори XXXX і ZZZZ (називаються стабілізаторами), які діють відразу на 4 кубіти, а на решітці розташовуються у вигляді хреста. Поверхневі коди працюють при високому рівні шуму, тобто можуть отримати вірний логічний кубіт незважаючи на великий відсоток помилок у фізичних. Тим не менш, платять за це своєю розмірністю - потрібно багато додаткових кубітів, для реалізації такого коду.

Домашнє завдання студента з університету Сіднея щодо поліпшення поверхневих кодів для корекції помилок вилилося в повномасштабне дослідження. Разом з іншими вченими під керівництвом Бенджаміна Брауна (Benjamin J. Brown) йому вдалося розробити код, який виявився вдвічі ефективнішим за існуючий. Автори протестували його на невеликих системах з кубітів і показали, що новий код вимагає менше додаткових фізичних кубітів для корекції помилок і в деяких випадках перевершує теоретичну оцінку.

Цікаво, що до досягнення вагомих результатів призвело невелике і, здавалося б, незначна зміна в поверхневому коді: автори запропонували використовувати оператори XZZX замість звичних стабілізаторів. Такий підхід виявився більш інформативним в плані виявлення помилок системи. Автори порівнювали його не тільки з поверхневим кодом, а й з теоретичною межею (хешуванням). Вони розглянули загальну модель шуму, який може бути в системі: у ньому з певною ймовірністю p виникає помилка, джерелом якої може бути один з трьох операторів X, Y або Z. Кожен оператор вносить свій внесок r в загальну помилку, в крайніх випадках переважати може шум тільки від одного оператора (зміщений шум). Якраз у таких випадках для операторів X і Z XZZX-код має в п'ять разів вищий поріг помилки.

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

Вчені були зацікавлені в тому, щоб показати, як на практиці може бути корисний великий можливий поріг шуму. Вони кодували логічні кубити з двох різних кодів коригування помилок - XZZX і поверхневого. Після цього інтерпретували отриманий результат за допомогою методу максимального правдоподібності: якщо на виході виходить набір фізичних кубітів, який не відповідає жодному логічному (наприклад, логічна 1 - це 111, 0 - це 000, а на виході вийшло 110), то йому присвоюється ближнє значення логічного кубіту (тобто 110 - це логічна 1, а не логічний 0). Отримані результати допомагали авторам виявляти характер масштабованості решіток, збільшення його розмірності залежно від зміщення шуму і його порогу. Як і очікувалося, завдяки стійкості до шуму, XZZX коди виявляються перспективними для застосування у великих системах, де вони вимагатимуть значно менше додаткових кубітів.

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


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

COM_SPPAGEBUILDER_NO_ITEMS_FOUND