Научная статья на тему 'Об инвертировании в конечных полях характеристики 2 с логарифмической глубиной'

Об инвертировании в конечных полях характеристики 2 с логарифмической глубиной Текст научной статьи по специальности «Математика»

CC BY
59
20
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Сергеев И.С.

Показано, что инвертирование в полиномиальном базисе конечного поля характеристики 2 может быть реализовано схемой логарифмической глубины с мультипликативной постоянной 6,44 при главном члене, а также схемой почти квадратичной сложности и логарифмической глубины

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Об инвертировании в конечных полях характеристики 2 с логарифмической глубиной»

Возводя обе части первого уравнения в квадрат, складывая полученное почленно со вторым уравнением и применяя формулу 1 — Л2£ = 1/еЬполучаем х2 = (ц — — 2)/(1 — ¿)2. Отсюда

хЬ = х- л/(М — 3)(м — 2), у—| = ^

и, подставляя эти выражения в первое уравнение (31), находим, что

Ш (х - ^(М - 3)(/х - 2)) = ^

ß — 3 ß-2'

И так как решение системы существует и единственно, то оно вычисляется по формуле (27). Теорема 2 доказана.

Работа выполнена при поддержке РФФИ (грант № 06-01-00326) и программы "Ведущие научные школы" (проект НШ-4564.2006.1).

СПИСОК ЛИТЕРАТУРЫ

1. Wiman A. Über die Nullstellen der Funktionen Ea(x) // Acta Math. 1905. 29. 217-234.

2. Джрбашян М.М. Интегральные преобразования и представления функций в комплексной области. М.: Наука, 1966.

3. Седлецкий А.М. Асимптотические формулы для нулей функции типа Миттаг-Леффлера // Anal. Math. 1994. 20.117-132.

4. Сидоров Ю.В., Федорюк М.В., Шабунин М.И. Лекции по теории функций комплексного переменного. М.: Наука, 1982.

5. Маркушевич А.И. Теория аналитических функций. Т.1. М.: Наука, 1967.

6. Седлецкий А.М. Несколько неасимптотических свойств корней функции типа Миттаг-Леффлера порядка одна вторая // Math. Montisnigri. 2001. 13. 75-81.

7. Ostrovskii I.V., Peresyolkova I.N. Nonasymptotic results on distribution of zeros of the function Ep (z, ß) // Anal. Math. 1997. 23. 283-296

Поступила в редакцию 17.02.2006

УДК 519.7

ОБ ИНВЕРТИРОВАНИИ В КОНЕЧНЫХ ПОЛЯХ ХАРАКТЕРИСТИКИ 2 С ЛОГАРИФМИЧЕСКОЙ ГЛУБИНОЙ

И. С. Сергеев

Показано, что инвертирование в полиномиальном базисе конечного поля ОЕ(2п) может быть реализовано схемой сложности 0(п4) и глубины 6, 44^2 п + о(1с^ п) либо при любом е > 0 схемой сложности 0(п2+е) и глубины 0(1с^ п).

1. Введение. Рассматривается задача реализации инвертирования в поле ОЕ(2п) схемами из функциональных элементов над базисом всех двуместных булевых функций. В работах [1,2] показано, что инвертирование может выполняться схемой с глубиной 0(1с^п). Ни показатель степени в оценке сложности п0(1), ни мультипликативный коэффициент в оценке глубины в [1,2] не указываются.

Подробное изложение теории конечных полей можно найти в [3], а понятий сложности и глубины схем из функциональных элементов — в [4].

Конечное поле ОЕ(2п) является векторным пространством размерности п над двухэлементным полем ОЕ(2) (с операцией умножения векторов). Мы будем рассматривать полиномиальное представление поля. При вычислениях в полиномиальном базисе элементы ОЕ (2п) интерпретируются как многочлены степени п — 1 над ОЕ(2), а арифметические операции выполняются по модулю некоторого неприводимого над ОЕ(2) многочлена тп(Ь) степени п.

Далее везде символ основания у двоичных логарифмов будет опускаться.

2. Глубина схемы инвертирования. Основным инструментом при построении схемы инвертирования служит схема, реализующая возведение в произвольную степень M в поле GF (2n). Приведем ее алгоритмическое описание.

Пусть элемент x задан в полиномиальном представлении, требуется вычислить xM, где M = 2ei + +2e2 + ... + 2em. Считаем, что M < \GF(2n) \ {0}| = 2n - 1, следовательно, m < n.

1. Вычислим x2ei,..., x2em . Пусть элементу x2<"'г соответствует многочлен fi(t) в представлении поля. Пусть далее f (t) = fi(t) • ... • fm(t). Положим p = m(n — 1) + 1, выберем поле GF(2k), содержащее не менее p элементов; в нем выберем набор элементов ai,...,ap.

2. Вычислим всевозможные fi(aj) £ GF(2k), где i = 1,...,m, j = 1,...,p.

3. Для всех j вычислим произведения fi(aj) • ... • fm(aj) = f (aj). Для этого в поле GF(2k) выберем примитивный элемент a. Если fi(aj) = 0 для всех i, то

1) вычислим дискретные логарифмы loga fi(aj);

2) вычислим Y,m=i loga fi(aj)mod (2k — 1) = loga f (aj);

3) вычислим f (aj) = aloga f(aj\

4. По значениям f (aj), j = 1,...,p, восстанавливается многочлен f (t) степени не выше p — 1.

5. Элементу xM соответствует многочлен f (t)mod mn(t).

Возведение в квадрат (и, следовательно, возведение в степень вида 2l) в поле характеристики 2 является линейной операцией в силу тождества Фробениуса (a + b)2 = a2 + b2 для a,b £ GF(2n).

Сложение двух элементов конечного поля GF(2k) также является линейной операцией относительно коэффициентов их разложения по базису. Поэтому значение многочлена с переменными коэффициентами в фиксированной точке поля GF(2k) находится при помощи линейного преобразования коэффициентов данного многочлена.

Также легко проверяется, что восстановление многочлена h(t), deg h < p (единственного в силу интерполяционной теоремы Лагранжа), по его значениям в p различных фиксированных точках ai,...,ap £ GF(2k) является линейной операцией (относительно значений h(ai)).

Аналогично коэффициенты многочлена, приведенного по модулю фиксированного многочлена, линейным образом зависят от коэффициентов исходного многочлена.

Таким образом, шаги 1, 2, 4, 5 алгоритма являются линейными операциями. Схема линейного преобразования может быть построена методом О. Б. Лупанова (см., например, [4]), а именно справедлива

Лемма 1. Умножение двоичной матрицы размера m х n на двоичный вектор длины n реализуется схемой сложности щр^ + и глубины |~logn~| + 1.

Матрица линейного преобразования, соответствующего композиции шагов 1, 2, имеет размер pmk х n. Аналогичная матрица для шагов 4, 5 имеет размер n х pk (процедура интерполяции подразумевает, вообще говоря, что коэффициенты многочлена принадлежат GF(2k), однако по построению они из GF(2), что учтено при указании размерности матриц). При k = logp + 0(1) = log(mn) + 0(1) (параметр k будет выбран ниже) получаем оценку для сложности подсхем, соответствующих шагам 1, 2, 4, 5, в виде 0(pmkn/ log(pmk)) = 0(m2n2), а вклад этих подсхем в глубину оценивается как log n + log(pk) + 0(1) = 2log n + log m + 0(log log n).

Перейдем к рассмотрению шага 3 — вычислению произведения m элементов поля GF(2k) — в предположении, что все сомножители отличны от нуля, так как вклад корректирующей подсхемы (вычисляющей, есть ли нули среди сомножителей, и обнуляющей результат в таком случае) в общие глубину и сложность алгоритма является несущественным.

В п. 3 будет показано, что для любого 5 > 0 существует поле характеристики 2, которое содержит не менее p элементов и в котором логарифмирование выполняется со сложностью ci(5)0p) и глубиной 5 logp + С2(5) +o(logp), где ci, C2 — некоторые ограниченные на любом отрезке интервала (0, 1] функции. Таким образом, шаг 3.1 реализуется со сложностью 0(m2+nl+) и глубиной 25 logn + o(logn), где 5 = const > 0.

Суммирование m штук k-разрядных чисел по модулю 2k — 1 можно реализовать сведением к сумме двух слагаемых с последующим сложением двух чисел по модулю. Из работ [5, 6] следует, что сокращение числа слагаемых до двух может выполняться схемой сложности 0(mk) и глубины 3, 44 log m + 0(1), при этом полученные два числа состоят из 0(k + log m) разрядов. Заключительное сложение может быть выполнено схемой линейной сложности и логарифмической глубины (см., например, [7]). Окончательно шаг 3.2 реализуется схемой сложности 0(m2n log n) и глубины 3, 44 log m + o(log n).

Возведение фиксированного элемента a £ GF(2k) в произвольную степень с использованием заранее

вычисленных а2, i = 0,...,k — 1, выполняется со сложностью O(kM(k)) и глубиной O(D(k)logk), где M(k) и D(k) — сложность и глубина умножения в поле. Из стандартного метода умножения следует, что M(k) = O(k2) и D(k) = O(log k). Таким образом, шаг 3.3 может быть выполнен со сложностью O(mn log2 n) и глубиной O(loglog n).

Проделанные рассуждения приводят к следующему результату.

Теорема 1. Пусть m — число единиц в двоичной записи числа M и 5 > 0. Тогда возведение в степень M в поле порядка 2n выполняется схемой сложности O(m2n2) и глубины (2 + 5)logn + 4, 44 log m + o(log n).

Следствием теоремы 1 является

Теорема 2. Инвертирование в поле GF(2n) реализуется с глубиной 6, 44 log n + o(log n) и сложностью O(n4).

Доказательство. В поле GF(2n) инвертирование совпадает с возведением в степень 2n — 2. Действительно,

_i 2n — 2 2 22 2n~1 ti/ - .Лу - .ЛУ ti-j ... tiy .

Далее, полагая m = n — 1, применяем теорему 1. Параметр 5 выбирается в пределах погрешности округления константы из [6] до 3,44.

3. Дискретное логарифмирование. Пусть а — основание логарифма. Будем строить схему, которая для элемента в = 0 поля GF(2k) вычисляет двоичное число b £ [0, 2k — 2], такое, что в = ab. Предлагаемый далее способ является реализацией алгоритма Сильвера-Полига-Хеллмана [8] в виде схемы из функциональных элементов.

Пусть задано разложение 2k — 1 на попарно взаимно простые сомножители: 2k — 1 = Ti ■ Г2 ■ ... ■ rw. Введем обозначение Oj = 2 . Заметим, что

eqi = (ab )qi = (aqi )bmod ri.

Рассмотрим следующую схему вычислений.

1. Вычислим все вг = eqi, i = 1,...,w.

2. Сравнивая вг со всеми ajqi, j = 0,...,Тг — 1, найдем число bi, удовлетворяющее вг = abiqi.

3. Число b восстанавливается по своим остаткам bi = bmod Тг. При помощи линейного преобразования вычислив все

в2', l = 0,...,k — 1,

и выполнив затем необходимые умножения, имеем для шага 1 оценку сложности O(k3/ log k) + wkM(k) = O(wk3) и оценку глубины O(log2 k).

Система из т штук k-разрядных компараторов (под компаратором здесь понимается схема, определяющая совпадение или несовпадение двух наборов) реализуется [4] со сложностью O(kr/log т) и глубиной logk + O(1). Шифратор с т входами (выходы компараторов) реализуется со сложностью O(r) и глубиной

log г. Таким образом, подсхема, соответствующая шагу 2, имеет сложность О + i0gV-)) и глубину

log k + logr + O(1), где r = max тг.

Стандартный метод восстановления k-разрядного числа по остаткам от деления на взаимно простые сомножители (Китайская теорема об остатках, см., например, [9]) допускает реализацию схемой сложности O(k2) и глубины O(log k). Итак, справедлива

Лемма 2. Пусть 2k — 1 = Т1Т2■.. ■■rw, где сомножители Тг попарно взаимно просты, r = max Тг. Тогда дискретное логарифмирование в поле GF(2k) может быть выполнено со сложностью О ^'wk3 + ^ ЩТ")

и глубиной log r + O(log2 k).

Рассмотрим поле GF(2kvг), где kv = pi ■ Р2 ■... ■ pv, {рг} — возрастающая последовательность простых натуральных чисел.

Лемма 3. Число 2kv 1 — 1 представим,о в виде произведения попарно взаимно простых сомножителей Ti, Т2,..., rs, при этом max Тг < cv2v(kv, где cv = const, а p(k) — функция Эйлера.

Доказательство леммы предварим несколькими вспомогательными утверждениями. Сначала обратимся к теории круговых многочленов (подробнее о круговых многочленах см. в [3]). Пусть d £ N. Многочлен Fd £ C[x] минимально возможной степени со старшим коэффициентом 1, такой, что его корнями являются все примитивные корни степени d из 1, называется d-м круговым многочленом. Известны следующие свойства круговых многочленов: (1) Fd £ Z[x];

(2) deg Рл =

(3) многочлены {Р^} попарно взаимно просты;

(4) - 1 = П^ ел{Х).

Очевидно, что Р<*(х) = О(х^)) при х Нам понадобится еще одна лемма о делимости чисел [10,

задача 12].

Лемма 4. Пусть ц — простое число, а £ Ъ, тогда

пд — 1 ад — 1

НОД (а - 1, -—) = НОД ((а - I)2, -—) = НОД (а - 1, д). а - 1 а - 1

Доказательство леммы 3. Разложим многочлен хк — 1 в произведение круговых многочленов: хк — 1 = ПРа (х). Количество сомножителей в этом произведении равно 2".

Подставив х = 21, получим разложение

2^1 — 1 = П РЛ(21) ()

числа 2к 1 — 1 на множители, не превосходящие О(2^к), так как ) — максимальная из степеней многочленов Р^. Преобразуем данное разложение в произведение попарно взаимно простых сомножителей, также не превосходящих О(2^к).

Обозначим у г = хк . Рассмотрим следующие представления многочлена хк —1 в виде произведения пары сомножителей:

хК — 1 = ур — 1 = (Уг — 1)(уГ-1 + ... + 1), (г)

где г = 1,...,ь. Из свойства (4) круговых многочленов следует, что

Уг — 1= П Р*(х), УР— + ... + 1= П (х),

¿к ,Рг\й ¿к ,Рг\й

поэтому любой многочлен Р^(х), d | к", целиком делит какой-либо из двух сомножителей в правой части каждой из формул (г). Покажем, что общими делителями значений двух круговых многочленов (при подстановке х = 21) могут быть только простые числа рг, г = 2,...,у.

Рассмотрим произвольную пару Р^1 (21) и Р^2 (21), dl < d2. Тогда найдется такое простое число рг, что Рг I d2 и рг \ dl. Рассмотрим разложение (г). Многочлен Р^1 (х) делит первый из сомножителей, а Р^2 (х) — второй. Из леммы 4 заключаем, что

НОД ((Уг — 1) |ж=2г, (Ур-1 + ... + 1) |ж=2г ) е {1,Рг},

откуда следует, что НОД (Р^ (21), Р^ (21)) е {1,Рг}.

Выделив в отдельные сомножители р?, г = 2,...,у, где ¡л,г — кратность рг в разложении числа 2кI — 1, получим разложение на взаимно простые множители. Осталось показать, что вновь образованные множители р? удовлетворяют оценке О(2^к).

Если рг делит только один из сомножителей разложения (*), то доказывать нечего. Рассмотрим случай, когда рг делит (21) и Р^2 (21), dl = d2. Из леммы 4 следует, что в любом разложении (]), где ] = г, многочлены Р^1 (х) и Р^2 (х) делят один и тот же сомножитель в правой части (иначе рг не может быть общим делителем). Далее, если бы в разложении (г) они делили один и тот же сомножитель, то они бы совпадали. Следовательно, в разложении (г) многочлены Р^1 (х) и Р^2 (х) делят различные сомножители. Рассуждая аналогично, заключаем, что никакой отличный от указанных двух сомножитель Р^3(21) разложения (*) не может делиться на рг.

Таким образом, рг может делить одновременно не более двух чисел из набора Ра(21), d | к". При этом если рг делит ровно два сомножителя разложения (*), то один из них (соответствующий делителю У г — 1) делится на р?г- согласно лемме 4. Следовательно, выделенный множитель р? может самое большее в рг раз превосходить любой из сомножителей Р^(21) разложения (*), для которого выполнено d | кь и рг \ d. В таком случае < ^(к")/(рг — 1). Окончательно имеем

р? < рг • О(2^)г) < рг • О(2^к-1)) = О(2^к)1).

Лемма доказана.

Теорема 3. Для любого 5 > 0 существует поле характеристики 2, которое содержит не менее p элементов и в котором логарифмирование выполняется со сложностью ci(5)O(ps) и глубиной 5 log p + С2 (5) + о (log p), где c\, C2 — некоторые ограниченные на любом отрезке интервала (0,1] функции. Доказательство. Известно (см., например, [11]), что

fli <р(К) _ TT Pi~ 1 < a2

log(v + 1) kv ^ pi log (г; + 1)'

где ai, a2 — постоянные. Выберем такое число v, что ^(kv)/kv < 5, и рассмотрим поле GF(2kvг), где 2kv(-1) < p < 2kv 1. Затем применим лемму 2 с разложением 2kv 1 — 1 на множители, существование которого гарантируется леммой 3.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4. Cложность схемы инвертирования.

Теорема 4. Пусть r Е N. Тогда инвертирование в поле GF(2n) реализуется схемой сложности O(rn2+2/r) и глубины O(r log n), если n

Доказательство. Пусть q = \у/п\ и п — 1 = [тг, тг-..., т\] в системе счисления с основанием q,

т.е.

n — 1 = qr-imr + qr-2mr-i + ... + qm2 + mi, mi < q.

Отсюда получаем

2n — 2 = Ni • ... • Nr-iMr + Ni • ... • Nr-2Mr-i + ... + NiM2 + Mi,

Ni = i + 2qi-1 + 22qi-1 +... + 2(q-i)qi-1, Mi = 2^mr »•••»mi+i»°»---»°]+i(i + 2qi-1 +... + 2(mi-i)qi-1),

где в квадратных скобках, как и выше, записывается r-разрядное число в q-ичной системе счисления. Число Ni имеет q единиц в двоичной записи, а Mi — mi единиц. Легко видеть, что инвертирование, согласно формуле

X-1 = X2"-2 = ((... ((xN )N ) . . )Nr-1 )Mr X ((... (ОXN1 )N ) . . .)Nr-2 У"-1 • ... • (xN1 )M • XM1,

выполняется при помощи 2r — 1 возведений в степень с числом единиц в двоичной записи, не превосходящим y/n + 1, и r — 1 умножений. Утверждение теоремы теперь следует из оценок теоремы 1 при т ~ {/п.

Несколько модифицированный алгоритм из п. 2 в сочетании с методом теоремы 4 позволяет построить схему для инвертирования сложности O(n1'67) и глубины O(logn).

Автор благодарен научному руководителю С. Б. Гашкову за постановку задачи, многочисленные идеи и обсуждения.

Работа выполнена при финансовой поддержке РФФИ (проект № 05-01-00994), программы "Ведущие научные школы" (проект НШ-5400.2006.1) и программы фундаментальных исследований Отделения математических наук РАН "Алгебраические и комбинаторные методы математической кибернетики" (проект "Синтез и сложность управляющих систем").

СПИСОК ЛИТЕРАТУРЫ

1. Davida G., Litow B. O(log n) parallel time finite field inversion // Proc. Aegean Workshop on Computing, Lect. Notes Comput. Sci. 319. Berlin, 1988. 74-80.

2. Gathen J. von zur. Inversion in finite fields using logarithmic depth //J. Symb. Comput. 1990. 9. 175-183.

3. Лидл Р., Нидеррайтер Х. Конечные поля. М.: Мир, 1988.

4. Лупанов О.Б. Асимптотические оценки сложности управляющих систем. М.: Изд-во МГУ, 1984.

5. Paterson M., Pippenger N., Zwick U. Optimal carry save networks. Cambridge: Cambridge University Press, 1992.

6. Grove E. Proofs with potential: Ph.D. Thesis, U.C. Berkeley, 1993.

7. Храпченко В.М. Об асимптотической оценке времени сложения параллельного сумматора // Проблемы кибернетики. 1967. Вып. 19. 107-120.

8. Коблиц Н. Курс теории чисел и криптографии. М.: ТВП, 2001.

9. Gathen J. von zur, Gerhard J. Modern computer algebra. Cambridge: Cambridge University Press, 1999.

10. Серпинский В. 250 задач по элементарной теории чисел. М.: Просвещение, 1968.

11. Rosser J., Schoenfeld L. Approximate formulas for some functions of prime numbers // 1ll. J. Math. 1962. 6. 64-94.

Поступила в редакцию 06.03.2006

УДК 519.6

О ВЫЧИСЛИТЕЛЬНОЙ УСТОЙЧИВОСТИ ОДНОГО МЕТОДА АСИМПТОТИЧЕСКОЙ СТАБИЛИЗАЦИИ

А. А. Корнев, А. В. Озерицкий

Рассматривается задача о численном проектировании элементов окрестности неподвижной точки гиперболического типа на устойчивое многообразие. Показывается, что нелинейный итерационный метод построения проекции устойчив относительно ошибок, возникающих при решении промежуточных задач. Приводятся формулировка соответствующего утверждения и результаты численных расчетов для решения задачи асимптотической стабилизации по начальным данным для уравнения типа баротропного вихря на полусфере.

Пусть в банаховом пространстве Н с нормой || • У задано достаточно гладкое отображение 5 : Н — Н. Обозначим через № -(в, О) устойчивое многообразие подмножества Ос Н:

№- (в, О) = {то еО: Зшг+1 е О, тг+1 = 5(тг), г = 0,1,2,...} .

Отметим, что устойчивое многообразие состоит из множества точек то, всегда остающихся в О при действии оператора 5. Если О является окрестностью неподвижной (периодической) точки либо окрестностью траектории гиперболического типа, то структуру устойчивого многообразия можно уточнить. Соответствующее утверждение принято называть обобщенной теоремой Адамара-Перрона (см. работу [1] и имеющийся в ней обзор).

Рассмотрим задачу проектирования заданной точки ао С О на многообразие №- в окрестности О нулевой неподвижной точки 5(0) = 0.

Будем считать, что для оператора 5 существуют операторы проектирования Р+,Р- : Н — Н, ограниченный линейный оператор Ь, непрерывное отображение Е(п) = 5(п) — Ьп, такие, что имеют место следующие (см. [1]) условия гиперболичности (А):

Р+ + Р- = I, УР+1|, УР-1| < С; Ь(Р+Н) = Р+Н, Ь(Р-Н) С Р-Н; ЦЬьЦ > у+||ь||, Уь е Р+ Н, > 1; ||Ьw|| < Уw е Р-Н, у- < 1;

||Д(щ) — Д(П2)|| < max{||ul||, ||п2||})||п1 — П2|, Ущ е Н

с непрерывной положительной неубывающей функцией $(•), 0(0) = 0. Так как подпространство Р+Н обычно конечномерно, а Р- Н имеет конечную коразмерность, то операторы проектирования Р± удобно задавать следующими наборами базисных векторов: Р+Н =< е+,...,е+ >, Р^Н =< е-,...,е- >, ||е±|| = 1 для г = 1,...,го.

Изложим основанный на работах [1-3] метод численного построения многообразия №Запишем оператор 5(п) = Ьп + Е(п) для п = V + w, V е Р+О, w е Р-О в виде 5(п) = 5+(п) + 5-(п), где в±(п) = Р±в(п). При этом

в+(ь + w) = Ь+ь + Е+(ь + w), Ь± = Р±Ь, 5-(ь + w) = Ь^ + Е-(ь + w), Е±(^) = Р±Е(•). Будем искать [2] устойчивое многообразие в виде

№ -(О) = {Р-П + / (Р-п), п еО}

i Надоели баннеры? Вы всегда можете отключить рекламу.