Научная статья на тему 'О сложности реализации булевых функций вещественными формулами'

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

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

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

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

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

Текст научной работы на тему «О сложности реализации булевых функций вещественными формулами»

УДК 519.95

О СЛОЖНОСТИ РЕАЛИЗАЦИИ БУЛЕВЫХ ФУНКЦИЙ ВЕЩЕСТВЕННЫМИ

ФОРМУЛАМИ

С. Б. Гашков, Я. В. Вегнер

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

Базисом B назовем пару — произвольное множество непрерывных функций Wk : Rmk ^ R и множество констант С С R. По индукции определим формулу как строку конечной длины, состоящую из символов функций, перменных, констант, запятых и скобок, имеющую вид Wk(Ai,... ,Amk), где каждая величина Ai — либо переменная, либо константа, либо другая формула в базисе B. Стандартным образом определяется функция, реализуемая формулой. Под сложностью формулы понимаем число вхождений в нее символов функций.

2n

Лемма 1. Для произвольного булевого набора а = (ai,..., a2") число a = aa = ^ 2-2iai, 0 < a < 1/3,

i=1

удовлетворяет условиям:

aj = 0 ^ cos 22jan > 1/2, aj = 1 ^ cos 22jan < -1/2.

Лемма 2. Для кусочно-линейной функции l(x) = min(1, max(0,1/2 — x)) справедливо тождество l(cos 22jan) = aj, j = 1,..., 2n. Функцию l(x) можно реализовать в базисах {x + y,x — y, xy, |x|} U [0, 1] и {x + y, cos x,xy, |x|} U [0, 1] формулами, в которые переменная x входит два раза.

Лемма 3. В базисе {x + y,xy} U [0, 1] можно построить формулу Fn(X) сложности O(n), реа-

n+1 n

лизующую функцию 22+2W-2" , где IX| = ^ 2k-1xk. Эту формулу можно реализовать с линейной

k=i

сложностью в базисах {x + y,x * y}U [0, 1] и {min(x + y, 1),x * y}U [0, 1], где

x * y = max(—1, min(1, x)) max(—1, min(1, y)).

Функции этих базисов удовлетворяют условию Липшица с константой 1 относительно нормы ||(xi,...,xn)|| = Е xi

Теорема 1. Для любого натурального n в базисе {x + y,xy, cos x, |x|} U [0, 1] существует формула Фп сложности O(2n), зависящая от одного параметра Cf и переменных (xi,... ,xn) = X, такая, что:

1) каждой булевой функции f (X) можно сопоставить константу Cf Е [0, 1], такую, что формула $n(cf, X) будет реализовывать f;

2) константа Cf входит в формулу Фп два раза.

Доказательство. Для произвольной функции f (xi,... ,xn) построим последовательность ai длины 2n по формуле ai+|x| = f (X) и сопоставим функции f код Cf = aan/2 Е [0,1]. Для произвольного набора X положим j = 1 + X |, тогда

f (X) = ai+|X | = aj = l(cos(22j a«n)) = l(cos(22j+icf)) = = l (cos(22n+1+i22j-2n+1 Cf)) = l (cos(22"+1+iFn(X)cf)) = Фп^,X).

Доказано утверждение 1 теоремы. Функцию 22"+1+ix можно реализовать многократным умножением на константу 2, для этого потребуется O(2n) операций; подформула Fn вычисляется с линейной сложностью. Поскольку функция l(x) реализуется формулой конечной сложности с двумя вхождениями переменной, доказаны утверждение 2 теоремы и оценка сложности формулы. □

Теорема 2. Любую булеву функцию f(xi,...,xn) можно реализовать формулой в базисе {x + y,xy, cos x, |x|}U [0, 1] со сложностью O(2n/2).

Доказательство. Разложим f по первым m = \_n/2\ переменным:

f (X) = Фп(С(xi,.. .,xm),xm+i,.. .,xn),

где

1 1 1

С(xl, . Хт) У ^ Х11 У ^ Х22 . . . У ^ xm cfa1,...,am ,

21=0 22=0 2m =0

fai,...,2m = fai,...,2m (xm+1, ..., xn) = f (&1, . .., &m, xm+1, . .., xn),

x1 = x, x0 = 1 — x. Подформула С(x1,..., xm) реализует мультилинейный полином, сохраняющий отрезок [0, 1], и имеет сложность O(2m) = O(2n/2). Поскольку формула Фп реализуется со сложностью O(2n/2) и подформула С (X) подставляется в нее два раза, сложность всей формулы составляет O(2n/2). □

Замечание 1. Формулу С(x1,... ,xm) можно реализовать в полиномиальном базисе {x + y,xy, 1 — x} и в кусочно-полиномиальных базисах {x + y,x * y, 1 — x}, {min(x + y, 1),x * y, 1 — x}.

Замечание 2. Из теоремы 2 следует, что для базиса {x + y,xy, cos x, |x|} U [0,1] нижняя оценка теоремы 12 из [1] по порядку неулучшаема. Добавление функции x2 в этот базис приводит к базису, не удовлетворяющему условию теоремы 12 из [1], и для нового базиса утверждение теоремы 12 из [1] перестает быть верным.

Лемма 4. Существует кусочно-линейная 4-периодичная функция u(x), u(4k) = 1, u(4k + 2) = —1, u(2k + 1) = 0, k E Z, такая, что для числа aa из леммы 1 выполнены условия:

aj = 0 ^ u(22j+1a) > 1/3, aj = 1 ^ u(22j+1 a) < —1/3.

Следствие 1. Пусть 1{х) = min(l,max(0, ^ — |ж)). Справедливо тождество ¿(-u(22:,+1a)) = aj.

Лемма 5. Функцию l(x) можно реализовать формулой в следующих базисах с конечной сложностью и двумя вхождениями переменной:

{x + y,x — y,xy, |x|} U [0,1], {x — y,xy, |x|} U [0,1], {x — y,x * y, |x|} U [0,1].

Лемма 6. В конечном базисе {х — у, 2х, \х\, 1} можно реализовать функцию и(22"+1+1х),х Е [0, формулой сложности O(2n) с одним вхождением переменной.

Лемма 7. Функцию u(x) можно реализовать на отрезке [0, 22"+1 ] формулой сложности O(2n) с одним вхождением переменной в бесконечном базисе {|x|}U{x — c : c > 0}, имеющем липшицеву норму 1.

Теорема 3. Для любого натурального числа n в каждом из базисов {x + y,x — y, xy, |x|} U [0, {x — y, xy, 2x, |x|} U [0,1], {x — y,x * y, 2x, |x|} U [0,1] существует формула Фп(с/, X) сложности O(2n), такая, что:

1) каждой булевой функции f можно сопоставить такую константу Cf E [0, 1], что формула Фп(с/, X) будет реализовывать f;

2) константа cf входит в формулу два раза.

Доказательство. Доказательство производится аналогично доказательству теоремы 1, в котором вместо функции cos x используется функция u(x), а вместо п — константа 2. Для произвольной f (X) строим последовательность a1+|x| = f (X) и сопоставляем функции f код Cf = aa E [0,1]. Для произвольного набора X, полагая j = 1 + X |, получаем

f (X) = a1+|X | = aj = l(u(22j+1 a«)) = l(u(22j+1 Cf)) =

= l (u(22n+1+122j-2n+1 Cf)) = l (u(22"+1+F(X)cf)) = Фn(cf ,X).

Доказано утверждение 1 теоремы.

Для того чтобы равенство aj = l(u(22"+1+1 Fn(X)cf)) выполнялось при всех значениях X, достаточно,

чтобы функция u(x) реализовывалась на отрезке [0, 22 ] (поскольку cf = aa < 1/3, Fn(X) < 1). Она должна быть реализована со сложностью O(2n) и ограниченным числом вхождений переменной. В первом базисе это делается согласно лемме 7. Во втором и третьем базисе реализуем функцию u(22 +1x) по лемме 6. Поскольку Fn(x) реализуется во всех базисах с линейной сложностью, а l(x) — с фиксированной сложностью и двумя вхождениями переменной, получаем утверждение 2 теоремы и оценку сложности формулы. □

Теорема 4. В кусочно-полиномиальных базисах {x+y,x—y, xy, |x|}U[0, {x—y, xy, 2x, |x|}U[0,1],

{x—y, x*y, 2x, |x|}U[0,1] любую булеву функцию f (X) можно реализовать формулой сложности O(2n/2).

Доказательство повторяет ход доказательства теоремы 2 с формулой Фn(cf ,Х) из теоремы 3. □ Замечание 3. Во втором базисе нельзя обойтись без модуля, что видно из теоремы 11 из [1]. В третьем базисе нельзя обойтись без функции 2х, так как тогда в нем сложность формул была бы по порядку не меньше 2п/п согласно теореме 9 из [1]. В этом базисе достигается по порядку оценка теоремы 12 из [1].

Работа выполнена при частичной поддержке грантов РФФИ № 05-01-0099, 08-01-00863, НШ 1807.2003.1, ОМН РАН (проект "Оптимальный синтез управляющих систем").

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

1. Гашков С.Б. Сложность реализации булевых функций схемами из функциональных элементов и формулами в базисах, элементы которых реализуют непрерывные функции // Проблемы кибернетики. 1980. Вып. 37. 57-118.

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

УДК 512.628

КАНОНИЧЕСКИЕ ХАРАКТЕРИСТИЧЕСКИЕ МНОЖЕСТВА ХАРАКТЕРИЗУЕМЫХ

ДИФФЕРЕНЦИАЛЬНЫХ ИДЕАЛОВ

О. Д. Голубицкий, М. В. Кондратьева, А. И. Овчинников

1. Введение. Мы будем рассматривать дифференциальные идеалы в кольце к{у1,...,уп} дифференциальных многочленов в частных производных над полем нулевой характеристики. Все необходимые понятия и обозначения можно найти в [1-3].

Определение 1 [1, с. 82]. Авторедуцированное подмножество наименьшего ранга в идеале I называется характеристическим множеством идеала I.

Согласно [4, лемма 5.3], авторедуцированное множество А является характеристическим для неединичного дифференциального идеала I тогда и только тогда, когда каждый элемент идеала I редуцируется к нулю относительно А.

Характеристическое множество играет в компьютерной дифференциальной алгебре ту же роль, что базис Гребнера в теории алгебраических идеалов. Поэтому естественно стремление выделить среди характеристических множеств объект, обладающий свойством единственности (как редуцированный базис Гребнера). Идея канонического характеристического множества возникла в работах [5, 6]. Наше определение отличается тем, что оно годится для произвольного дифференциального идеала.

Определение 2 [7, определение 2.6]. Радикальный дифференциальный идеал I в к{у1,... ,уп} называется характеризуемым, если найдется характеристическое множество А идеала I, такое, что I = [А] :

ТТОО

НА.

Пусть С — авторедуцированное множество в к{у1,... ,уп} = к{У} и пусть к [Ж ][Ь] — кольцо многочленов, ассоциированное с С, где Ь — множество лидеров элементов из С и N — множество нелидеров, т.е. N = ВУ \ ВЬ. Заметим, что N может быть бесконечным, если А = 0.

Определение 3. Характеристическое множество С = С1,...,СР дифференциального идеала I называется каноническим, если для всех 1 < г < р выполнены следующие условия:

(1) инициал \о1 зависит только от множества нелидеров N;

(2) многочлен С1 не имеет делителей в I, кроме самого С;

(3) старший коэффициент С1 относительно индуцированного лексикографического упорядочения <1ех на мономах из N и Ь равен 1.

Предложение 1. Пусть С — такое характеристическое множество характеризуемого дифференциального идеала I, что его инициалы не зависят от лидеров С. Тогда С характеризует I, т.е. I = [С] : Н

Как показывает следующий пример, не во всяком дифференциальном идеале существует каноническое характеристическое множество. Но если такое множество существует, то оно зависит только от ранжира и идеала.

Пример. Пусть I = {х(х —1),ху} — идеал в кольце дифференциальных многочленов к{х, у}, ранжир исключающий и х < у. Тогда в идеале I никакое характеристическое множество не является каноническим.

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