В.Н. Думачев,
кандидат физикоматематических наук
С.Б. Колесников
О КВАНТОВЫХ КОРРЕКТИРУЮЩИХ КОДАХ
1. Введение
В работе рассматривается теория построения совершенных кодов на многообразиях Грассмана [1]. Многообразием Грассмана О( N, К) назовем многообразие всех К-
мерных подпространств К-мерного векторного пространства Vм . Тогда ассоциированный с данным грассманианом О(N, К) код [п, к] над конечным полем Галуа О¥(с) строится по правилу
^ N"
К
п
к =
С - IV' - с )..(<," - чК)
с - *к - ч )..(?к - /-1) ■
( N Л = N1
К ~ 7
К !•(N - К)!'
Рассмотрим несколько ассоциированного с О (N5 К) кодов над О¥ (2) (табл. 1).
Таблица 1
с
О( N, К) Код [п, к ] О (N, К) Код [п, к ]
(2,1) [3,2] (4,1) [15,4]
(3,1) [7,3] (4,2) [35,6]
(3,2) [7,3] (4,3) [15,4]
Для того чтобы код мог исправить одну ошибку, минимальное кодовое расстояние должно быть равно ё = 2• 1 +1 = 3. Код называется совершенным, если он может исправить в слове все одиночные ошибки и не может исправить ни одной двойной ошибки. Двоичный [п, к ] код называется кодом Хемминга, если существует такое число г, что
[п, к] = [2г -1,2г - г -1].
Это означает, что коды, ассоциированные с грассманианом О(Ы, К), являются дуальными к коду Хемминга:
[п, к] ® [п, п - к].
Далее всегда при исследовании ассоциированных с грассманианом О (Ы, К) кодов мы будем подразумевать исключительно дуальные коды. Тогда, для ассоциированных кодов Хемминга получим
О ( N, К )
Код [п, к]
(2,1) [3,1]
(3,1) и (3,2) [7,4]
(4,1) и (4,3) [15,11]
Для того чтобы код мог исправить т ошибок, минимальное кодовое расстояние должно быть равно ё = 2т +1. В таком случае, код будет совершенным, если сможет исправить все ошибки порядка т и не сможет исправить ни одной ошибки порядка больше т .
Для поиска совершенных кодов над полем Галуа О¥(2), исправляющих т ошибок, используют выражение
i=0
2n
=о V у
Данная формула позволяет построить несколько полезных и огромное множество практически бесполезных совершенных кодов. Анализ формулы дает основание утверждать, что всегда существует совершенный код длины n, способный исправить n ошибок. Это код [n,0], т.е. код, состоящий исключительно из проверочной части и не передающий никакой информации. Такой код можно использовать для проверки помехоустойчивости канала.
Следующим интересным кодом является совершенный код повторения Pm = [2m +1,1], способный исправить все ошибки до порядка m включительно. Особенностью данного кода является то, что он имеет единственный информационный символ и 2m проверочных.
Совершенные коды Хемминга Hr = [n, к] = [2r - 1,2r - r -1], исправляющие единичные ошибки, также могут быть получены из данной формулы.
Данная формула дает также:
совершенный код, исправляющий 2 ошибки [n, к ] = [90,78];
совершенный код, исправляющий 3 ошибки [n, к ] = [23,12] (код Голея).
2. Квантовые коды
Основные понятия, которыми оперирует квантовая механика: состояние, наблюдение, динамика и измерение. Всякая физическая система описывается с помощью своего состояния, которое содержит всю информацию о системе. Состояние квантовой системы изменяется только двумя путями: взаимодействием с другой системой и измерением. Узнать что-либо о квантовом состоянии можно только ее измерением.
Одним из примеров квантовой системы является поляризованный свет (фотон). Для его описания вводятся два базисных квантовых состояния: горизонтальная |о) и
вертикальная Ц поляризация фотона. Поляризованный свет легко реализуется на практике и является одним из основных претендентов на роль носителя квантовой информации — кубита |y) (qubit — quantum bit):
IУ = cos j 0 + sin j 1
или
i y=a о+b 1.
Математическое описание кубитов предполагает, что
a2 + b2 = 1 (условие нормировки).
По существу, мы описываем квантовое состояние системы с помощью комплексного вектора гильбертова пространства H с базисными векторами 10) и 11) и
скалярным произведением (j|y). Два вектора являются ортогональными, если их скалярное произведение равно нулю:
(jy> = y \j = 0.
Отсюда следуют соотношения для скалярного произведения базисных векторов:
(°1°>=<>11=1 <1|°)=(i|0=а
Измерение квантового состояния математически осуществляется использованием проекционного оператора
п = \х)(х\,
где \%) — вектор ориентации поляризационной пластины или квантовое состояние прибора-измерителя. При прохождении через проектор-поляризатор квантовое состояние кубита У) проецируется на квантовое состояние прибора-измерителя |с). На выходе из поляризатора мы получим уже измененный кубит, т. е. его проекцию на С.
|У> = ny) = |c)(cy>.
Поскольку скалярное произведение СУ) ------- число, то выходной кубит имеет
состояние, параллельное квантовому состоянию прибора-измерителя | С .
В квантовой механике постулируется, что само состояние |y) физического
смысла не имеет (т.е. не может быть непосредственно измерено). Физическим смыслом обладает его квадрат модуля:
р = yy) = l У2 — это вероятность обнаружить кубит в данном квантовом состоянии.
3. Зацепленные квантовые состояния
Двумерное квантовое состояние может быть получено суперпозицией одномерных квантовых состояний. В этом случае кубит
I y=a 00)+ь 01+ci 10+а 11
может быть факторизован:
iY=y^ ®y2>.
Пространство таких квантовых состояний называется сепарабельным. Однако гильбертово пространство H ® H допускает и несепарабельные подпространства, т. е квантовые двумерные состояния, которые не могут быть разделены. Такие состояния называются зацепленными (запутанными) квантовыми битами, или забитами (equbit — entangled bit). Основными запутанными состояниями являются [2]:
| Y = ( 00) +111)) — состояние типа шредингеровского кота, и состояние
V 2
| Y = ( 01) +11^) — Эйнштейна — Подольского — Розена пара.
V 2
Квантовый оператор, позволяющий запутать два кубита х) и у), называется оператором CNOT (Controlled NOT) и дается выражением [3]:
Р12| х,у) = | х,х ® У,
где х © у — логическая операция сложение по модулю 2. Таблица истинности для оператора €N07 есть
Вход Выход
х у) х х © У
0 0 0 0
0 1 0 1
1 0 1 1
1 1 1 0
Графически действие оператора представляет собой систему, преобразующую входные кубиты в некоторые выходные состояния. При этом выход кубита |у) контролируется
состоянием кубита |х), поэтому кубит |Х называется контролирующим, а кубит |у) — контролируемым.
У
х
Р12
Очевидно, что оператор может действовать и в обратном порядке:
Р21І х,у) = | х © у,у).
В этом случае кубит |у) называется контролирующим, а кубит |х) — контролируемым.
4. Квантовое плотное кодирование
Использование операции €N07 позволяет ввести новые протоколы передачи информации эффективно использующие квантовые запутанные состояния. Рассмотрим протокол квантового плотного кодирования [4].
Перед процессом кодирования получателю и отправителю информации передается по одной части запутанного кубита (состояние типа шредингеровского кота):
М = ^2[(0°)+111) •
Каждому значению передаваемой последовательности ставится в соответствие однокубитовый оператор
I = s0, X = ах, У = іау, Ъ = аг,
которым отправитель действует на первый кубит забита.
Затем получателю по квантовому каналу отправляется первая, преобразованная часть забита. Получатель применяет операцию €N07 к полученному забиту, применяет оператор Адамара к первому кубиту: Н = -^(&х + &г) и измерением снимает ин-
л/2
формацию.
х
5. Квантовый корректирующий повторный код QP1
Рассмотрим квантовые аналоги QPm классических корректирующих повторных кодов кодов Pm. При передаче информации по каналам связи она может искажаться. Алгоритм квантовой коррекции ошибок аналогичен классическому и требует введения дополнительных кубитов для обнаружения и коррекции ошибки.
Рассмотрим внешнюю градуированную алгебру Г рассмана
G(V3) = Л = Л0 ®Л1 ®Л2 ®Л3,
где
Л0 з є0
Л1 з (є1,є2,є3} .
Л2 = *Л1 з
£Г є2 а є3
E2 > = . є3 а є1
E3 є1 а є2
Л3 з (є1 а є2 а є3} .
Здесь * — оператор Ходжа.
На вход канала связи подается расширенный код с 2 дополнительными, проверочными битами. Рассмотрим коррекцию ошибки из множества
Е = {і ® I ® I, X ® I ® I, I ® X ® I, I ® I ® X}.
Оператор выделения ошибки строится по правилу
Б|z1,z2,z3,0,0,0 ®\z1,z2,z3,Z1,Z2,Z3),
где
^1 z2 © z3'
Л2 з • Z2 > =. 3 z © z2
Z3 z1 © z2
Проверочные символы Л2 з {2Z2, Z3} строятся как элементы базиса Л2 алгебры Грассмана G(V3) относительно операции композиции © — сложения по модулю 2. Коррекция ошибки строится по элементам сопряженного базиса Л1 = *Л2:
х1' 2 z © z3'
Л1 = *Л2 з- X 2 . = * z3 © z1
х3 z1 © z2
Процедура коррекции одиночной ошибки показана в табл. 2.
Таблица 2
>
>
Инвертированный бит Синдром ошибки Коррекция ошибки
- 000) I ® I ® I
1 011) X ® I ® I
2 101 I ® X ® I
3 110 I ® I ® X
В качестве примера рассмотрим протокол исправления одной ошибки в коде QP1, который строится следующим образом.
Рассмотрим тривиальный корректирующий код QP1, отображающий
IО ® I ООО)
1 ® I111)
С помощью этого расширения мы можем корректировать единичную ошибку E отдельного кубита [5]. Допустим, по квантовому каналу информации с оператором ошибки
E = X ® I ® I
необходимо передать кубит
\¥o) = ao + bl).
Перед отправлением на исходный кубит |yo) действует корректирующий код P12P13, поэтому на входе квантового канала информации мы имеем
I y)\ ОО) ® P12P13 (a ООО) + b 1ОО)) = a ООО) + b 111) = \wm).
Действие оператора ошибки на передаваемый кубит есть
E|y) = X ® I ® I(aooo) + bll1).
Поэтому на выходе из квантового канала информации будет зарегистрировано состояние
y0Ut) = e| У”) = а\Щ + лр\ О11.
Оператор выделения ошибки есть
S = P12P13, S x, У,z) ®lx,x ® У,x ® z).
В рассматриваемом случае
S|y0ut) = S(aloo + boll ) = a|l1l) + boll = I yo >| 11.
Измеряя три последние бита этого состояния, мы получим | ll) — синдром ошибки, который позволяет восстановить исходный кубит.
6. Квантовый корректирующий код QP2
Рассмотрим внешнюю градуированную алгебру Грассмана
G(V5) = Л = ЛО ®Л1 ®Л2 ®Л3 ®Л4 ®Л5,
где
О
Л3 = *Л2 з
з (є1 , Є2, є3, Є4, Є 5}, Л
H' Є А Є4 А Є5
H2 Є2 А Є4 А Є5
H3 Є2 А Є3 А Є5
H 4 Є2 А Є3 А Є4
H5 Є1 А Є4 А Є5
H6 > = < Є А Є3 А Є5
H7 Є1 А Є3 А Є4
ОО Є1 А Є2 А Є5
H9 Є А Є2 А Є4
H1О Є1 А Є2 А Є3
11 21 31 41 52 3
Є А Є, Є А Є, Є А Є, Є А Є, Є А Є,
І 2 42 53 43 54 5
Є А Є , Є А Є , Є А Є , Є А Є , Є А Є
Л4 = *Л1 з
F1 Є2 А Є3 А Є4 А Є5
F2 Є1 А Є3 А Є4 А Є5
F3 > = < Є1 А Є2 А Є4 А Є5
F4 Є1 А Є2 А Є3 А Є5
F5 Є1 А Є2 А Є3 А Є4
Л5 3 [в1 А в2 А в3 А в4 А в5 } .
На вход канала связи подается расширенный код с 4 дополнительными, проверочными битами:
О
2
E:
Ща) =
= (а1, Ъ\, Ъ2, ьз, Ь4).
Рассмотрим тривиальный корректирующий код QP2, отображающий
|0 ® |ооооо) Ц ® |11111 .
С помощью этого кода мы можем корректировать как единичные, так и двойные ошибки. Рассмотрим коррекцию единичной ошибки из множества
[I ® I ® I ® I ® I '
X ® I ® I ® I ® I I ® X ® I ® I ® I I ® I ® X ® I ® I>.
I ® I ® I ® X ® I I ® I ® I ® I ® X
Оператор выделения ошибки строится по правилу
в| Уи У 2, Уз, У 4,‘ У5,0,0,0,0,0) ®| Уи У2, Уз, У4, У5,^1,Y2,Y3,Y4,Y5>,
где
^ = У 2 0 Уз 0 У4 © У5 ,
¥2 = У1 0 Уз 0 У4 0 У5 ,
¥3 = У1 0 У 2 0 У 4 0 У5 ,
¥4 = У1 0 У 2 0 Уз 0 У5 ,
^5 = У1 0 У2 0 Уз 0 У5.
Проверочные символы Л4 3 [У1,У2,Уз,У4,75} строятся как элементы сопряженного базиса Л1 3 [у1,у2,Уз,у4,у5} алгебры Грассмана G(V5) относительно операции композиции
0 — сложения по модулю 2.
Процедура коррекции одиночной ошибки сводится к использованию сопряженного базиса и показана в табл. з.
Таблица з
Инвертированный бит Синдром ошибки Коррекция ошибки
- 00000) I ® I ® I ® I ® I
1 01111) X ® I ® I ® I ® I
2 10111) I ® X ® I ® I ® I
3 11011 I ® I ® X ® I ® I
4 11101 I ® I ® I ® X ® I
5 11110 I ® I ® I ® I ® X
Рассмотрим коррекцию двойной ошибки из множества
I ® I ® I ® I ® I X ® X ® I ® I ® I X ® I ® X ® I ® I X ® I ® I ® X ® I X ® I ® I ® I ® X E = -Л®X®X®I®^ и Лз 3
I ® X ® I ® X ® I I ® X ® I ® I ® X I ® I ® X ® X ® I
I ® I ® X ® I ® X
I ® I ® I ® X ® X Оператор выделения ошибки строится по правилу
81 г1, г2, ^з, ^, 25,0,0,0,0,0,0,0,0,0,0) ®
® | 21, г2, 2з, г4, г5, 21, 22, 2з, 24, 25, 26, 27, 28, 29, 210
Проверочные символы Лз 3 [2',22,23,24,25,2б,27,28,29,210} строятся как элементы базиса Лз алгебры Г рассмана G(V5) относительно операции композиции 0 — сложения по модулю 2. Коррекция ошибки строится по элементам сопряженного базиса Л2 = *Лз:
71 г3 ® г4 ® z5
72 г2 ® г 4 ® г5
73 г2 © г3 ® г5
7 4 г2 © г3 © г4
75 г1 © г4 © г5
=• ^ •= >
76 г1 © г3 © г5
77 г1 © г3 © г4
78 г1 © г2 © г5
79 г1 © г2 © г4
710 г1 © г2 © г3
Л2 = *Л3 з
X 1 Xі © х2 г3 © г4 © г5
X2 х1 © х3 г2 © г4 © г5
X3 х1 © х4 г2 © г3 © г5
X 4 Xі © х5 г2 © г3 © г4
X5 х2 © х3 г1 © г4 © г5
> = < > = *.
X6 х2 © х4 г1 © г3 © г5
X7 х2 © х5 г1 © г3 © г4
X8 х3 © х4 г1 © г2 © г5
X9 х3 © х5 г1 © г2 © г4
Xк> х4 © х5 г1 © г2 © г3
Процедура коррекции двойной ошибки показана в табл.4.
Таблица 4
Инвертированные биты Синдром ошибки Коррекция ошибки
- 00000 00000) I ® I ® I ® I ® I
1-2 0111111000) X ® X ® I ® I ® I
1-3 10101 00111 X ® I ® X ® I ® I
1-4 11010 10101 X ® I ® I ® X ® I
1-5 11100 01011 X ® I ® I ® I ® X
2-3 11000 11110 I ® X ® X ® I ® I
2-4 10101 01101 I ® X ® I ® X ® I
2-5 10011 10011 I ® X ® I ® I ® X
3-4 0110110011 I ® I ® X ® X ® I
3-5 01011 01101 I ® I ® X ® I ® X
4-5 00110 11110 I ® I ® I ® X ® X
7. Выводы
В заключение отметим явную возможность обобщения полученных результатов на случай квантовых корректирующих кодов QPm . Форма построения Pm = [2m +1,1] выделяет только нечетномерные алгебры Грассмана, и поэтому для каждого подпространства размерности к < N = 2m +1 существует ему сопряженное. Это дает возможность, используя CkN дополнительных кубитов, обнаружить и исправить любые ошибки до к < m порядка включительно.
ЛИТЕРАТУРА
1. Ryan C.T. The Minimum Weight of the Grassmann Codes G(k,n) / C.T. Ryan, K.M. Ryan // Discrette Appl.Math.— 1990.— V.28.— P.149—156.
2. Валиев К. А. Квантовые компьютеры: надежды и реальность / К. А. Валиев, А. А. Кокин.— М.: РХД, 2001.— 352 с.
3. Dumachev V.N. Elementary quantum cloning machines / V.N. Dumachev // Quantum computers and computing.— 2005.— V.5.— N1.— P. 14—18.
4. Rieffel E. Quantum computing / E. Rieffel, W. Polak // ACM Computing Surveys.— 2000.— V. 32.— N3.— P. 4—57.
5. Dumachev V. N. Cloning of Qubits of a Quantum Computer / V.N. Dumachev,
S.V. Orlov // JETP Letters.— 2002.— V.76 — Issue 7 —Р. 481—483.