Классические и квантовые коды
Анионы (иллюстративный пример на основе торического кода).
На примере торического кода можно дать более точное представление об анионных системах, о которых говорилось во введении.
Итак, вновь рассмотрим квадратную сетку на торе (а можно и на плоскости — сейчас нас будет интересовать только ее центральная часть). Как и раньше, для каждой вершины и каждой грани
рассмотрим проверочные операторы




Рассмотрим возбужденные состояния с наименьшей ненулевой энергией, когда нарушено ровно два условия (например, вершинных). (Число нарушенных условий каждого типа четное, поскольку .) Тогда для двух вершин, в которых кодовые условия нарушаются, выполнено

















Любое состояние системы можно построить из элементарных возбуждений двух типов, одни из которых "живут" на вершинах, другие — на гранях. Элементарное возбуждение — это просто нарушенное кодовое условие, но теперь мы думаем о нем как о частице. Частицы-возбуждения можно двигать, создавать и уничтожать. Пара возбуждений первого типа получается из основного (кодового) состояния действием оператора , приведенного выше; пара возбуждений второго типа — действием оператора
, где
— путь, соединяющий две грани, как показано на рис. 14.3a). Как и раньше проверяется, что
.
Что случится, если двигать возбуждение одного типа (крестик) вокруг возбуждения второго типа (кружочка)? (См. рис. 14.3б).) Движение возбуждения описывается оператором , зависящим от контура обхода
(здесь
пробегает все грани внутри
). Очевидно, что
для всех
. В результате мы получим


На торе можно двигать частицы по двум различным циклам, образующим базис в группе гомологий. Например, можно создать из основного состояния пару возбуждений одного типа, обнести одно из возбуждений по циклу и проаннигилировать со вторым возбуждением. Этот процесс описывается некоторым оператором, действующим на кодовом подпространстве, — произведением вдоль пути на решетке, либо
вдоль пути на двойственной решетке. Поскольку существует два типа возбуждений, мы имеем 4 таких оператора:
и
соответствуют одному базисному циклу, а
и
— другому. Эти операторы действуют на два закодированных q-бита как
(
), потому что они обладают такими же коммутационными соотношениями:
(остальные пары коммутируют).