Белявский Г.И., Чернов А.В. Логические дифференциальные

advertisement
ЛОГИЧЕСКИЕ ДИФФЕРЕНЦИАЛЬНЫЕ ОПЕРАТОРЫ И УРАВНЕНИЯ НАД
КОНЕЧНЫМИ ПОЛЯМИ И ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ
Белявский Г.И., д.т.н., профессор
Южный Федеральный университет
email: bgi@aaanet.ru
Чернов А.В., к.т.н., доцент
Ростовский государственный строительный университет
email: avche@yandex.ru
1. ВВЕДЕНИЕ
Анализ тестопригодности и синтез интеллектуальных самотестируемых схем может быть основан на
аппарате логического дифференциального исчисления [1, 2]. Важным разделом теории логического
дифференциального исчисления являются методы описания цифровых систем в виде дифференциальных
операторов, логических дифференциальных уравнений [3, 4], и способы их решений. Такой подход к
описанию цифровых систем дает возможность анализа схем в динамике их функционирования, возможность
описывать системы как дифференциальные, и как следствие, анализировать свойства цифровых
динамических систем с целью оптимизации их характеристик. Становится возможным применение методов
событийно-управляемого анализа динамических цифровых систем. В процессе синтеза цифровых систем
методы логического дифференциального исчисления позволяют решать задачи исследования
чувствительности разрабатываемых систем и синтезировать системы, обладающие возможностями
самодиагностики.
Методы решения уравнений, в которых участвуют булевы функции, изучаются на протяжении
многих десятилетий, и в данной области получены значительные фундаментальные результаты. Тем не
менее, следует заметить, что результаты, говоря в терминологии аппарата алгебраических конечных полей,
получены для случаев, когда порядок конечного поля не превышает 2 (полей Галуа F2 ), то есть для
логических
функций
рассматриваются
частные
случаи
отображений
вида
f ( x1 ,..., xn )
f : Fpn  F2 , n  1, p  2 , таким образом накладываются значительные ограничения на исходные условия
решаемых задач.
В данной работе рассматриваются методы логического дифференциального исчисления для
логических функций над конечными полями вида f: FpnFpm, n  1, 1  m  n , что существенно расширяет
круг исследуемых задач. При решении задач динамического анализа цифровых структур существенное
влияние на применяемые методы оказывает размерность задач. В связи с этим в работе ставилась также цель
применимости разработанных методов к возможности их реализации методами параллельных вычислений.
2. ЛОГИЧЕСКИЕ ДИФФЕРЕНЦИАЛЬНЫЕ ОПЕРАТОРЫ НАД КОНЕЧНЫМИ
ПОЛЯМИ
Пусть F – конечное поле.
Определение 1. [5] Порядком поля F называется число элементов F, характеристикой поля F
называется наименьшее целое положительное число n, такое, что ne=0, e – единичный элемент поля.
Теорема 1. [5] Характеристикой конечного поля является простое число p, а порядком поля – степень
простого числа: q=pn. При этом всякое конечное поле характеристики p содержит простое подполе порядка
p, которое изоморфно полю Галуа Fp.
Всякое конечное поле можно рассматривать как векторное пространство над простым подполем,
причем размерность этого пространства равна n. Этот факт позволяет определить структуру любого
конечного поля.
Рассмотрим логические функции вида f: FpnFpm 1  m  n , p – простое число. В отличие от работ
[1,2] определим понятия о частных производных и дифференциалах логических функций над конечными
полями другим способом. Известно, что логическая функция над конечным полем линейно представима в
виде
n
f  x1 ,..., xn   a   ai xi .
i 1
Введем обозначение f i  f  x1 ,..., xi  i ,..., xn  , полагая, что в логической функции в таком случае
переменная xi заменяется на переменную  i .
Определение 2. Частной производной логической функции f(x1,x2,…,xi-1,xi,xi+1,…,xn) над конечным
полем Fpn по переменной xi будем называть
f i *
(1)
 x   f  x1 ,..., xi 1 , i , xi 1 ,..., xn   f  x*  ,
xi
где 1  i  n, x*   x1 ,..., xn  , Fpn.
Так же как и в работе автора [6], доказываются следующие свойства частных производных
логических функций f и g над конечными полями.
Утверждение 1.
k i
1.10
 0, k  const.
xi
1.20
1.30
1.40
  kf 
xi
  f  g 
  f  g 
i
xi
 f i i
1.60
1.70
1.80
1.90

xi
f i
gi
xi
, 1  i  n  .
gi
g f
xi
x j xi
  1
xi
xi

f i gi

, 1  i  n  .
xi xi
, i  j , 1  i  n, 1  j  n.
m 1
f i
xi
, m  1, 1  i  n.
 x1 ,..., xi 1 , i , xi 1 ,..., xn  
 m f i ,...,m
x
m
i
  1
 m f i ,...,k ,...,k
1
x x ...x
k1
j1
f i
 fi i

 m f i ...i
xi

, 1  i  n  .
2
xi x j
f i
xi

i
xi
2
1.50
f i
k
i
k2
j2
p
kp
jp
m 1
f m
xi
  1
m p
fi
xi
 x1 ,..., xi 1 , i , xi 1 ,..., xn   0.
, 1  i  n.
 p f k ,k
1
2
,...,  k p
x j1 x j2 ...x j p
, m  k1  ...  k p .
Определение 3. Дифференциалом df логической функции f:FpnFpm, Fpn над конечным полем
будем называть
n f

df    i dxi , где dxi  i  xi , 1  i  n, 1  m  n.
(2)

x
i 1
i
Из этого определения доказываются следующие свойства дифференциалов логических функций над
конечными полями.
Утверждение 2. Если f и g такие, что f:FpnFpm, g:FpnFpm, тогда для Fpn, k – const
выполняются следующие свойства.
2.10 df   0  f =const.
2.20 d  kf   kdf .
2.30 d  f  g   df  dg .
f  g
dxi .
i 1 xi xi
Пункты 2.10 – 2.30 утверждения 2 являются очевидными.
Доказательство 2.40
Используем свойство 1.40 утверждения 1, из которого следует, что
n  fg
n
 
 g

f
f g
d  fg   
dxi   f a  g a  a a dxi  

x

x

x

x

x
i 1
i 1 
i
i
i
i
i

n
n
n
g
f
f g
 f  a dxi  g  a dxi   a a xi .

x

x
i 1
i 1
i 1 xi xi
i
i
n
2.40 d  fg   fdg  gdf   
Определение 4. Дифференциалом порядка m (который будем обозначать как dmf1,…,j,  Fpn)
логической функции f:FpnFpm над конечным полем для 1,…,m,  Fpn будем называть
d m f 1 ...m  d (d (...d (dfi ...))m1 )m .
Таким образом,
d f 1 ...m 
m
1,..., n

i1 ,...,im
 m f 1 ...m
xi ...xim
.
(3)
Если 1  2  ...  m   , то (3) можно записать как
m
m
d f m
 



dxi  ... 
dxn  f m  x*  ,
xn
 xi


1  i  n  – частная производная от f .
xi
Пример
Если булева функция f : F4  F2 , то
где
m
 


d f m  
dx1 
dx2  f m  x1 , x2 
x2
 x1

– дифференциал порядка m 1  m  4   Fpn . Далее, на основании утверждения 1 пункта 1.5 и (2)
m
получим:
2 2
m 1
 f  m f  m 
m
 m   f
dx1 
dx2    1   
dx1m  k dx2k .


x

x
k

x

x
 1 2
k 1 
 1
2

Утверждение 3.
Если
*=(1,…,n)
–
элемент
m
d f 1 ... *  d (d (...d (df i ...))m1 )*  0, 1  m  n .
d m f m   1
m 1
поля
Fpn.
Тогда
m 1
Доказательство
Обозначим d m f 1 ...m1    x1 ,..., xn  . Тогда
d m f 1 ...
m 1
*

*
 *
 *
dx1   dx2  ...   dxn  0 .
x1
x2
xn
Из утверждения 1 пункта 1.70 следует, что для всех (1,…,i-1, i+1,…,n)Fpn
*
 1 ,..., i 1 , i 1 ,...,  n   0, 1  i  n .
xi
Определение 5. Полный дифференциал над конечным полем для логической функции f:FpnFpm
определяется как
f 
f 
f 
f  1 x*  2  1 , x2 ,..., xn   ...  n  1 ,...,  n 1 , xn  ,
x1
x2
xn
(1,…,n) Fpn.
Непосредственно из определения 5 следуют свойства, которые запишем в виде утверждения 4.
Утверждение 4. Если f и g такие, что f:FpnFpm, g:FpnFpm, тогда для Fpn, k – const, выполняются
следующие свойства.
4.10 f =0f =const.
4.20 (kf )=kf.
4.30 (f+g)=f +g.
n f
 g i
4.40   f  g   f g  g f   1
 1 ,..., i 1 , xi ,..., xn  .
i 1 xi xi
4.50 mf(-1)m+1f (1,…,i-1,xi,…,xn).
Пункты 4.10, 4.20, 4.30 очевидны, докажем оставшиеся два.
Доказательство 4.4
Из определения 4 и свойства 1.4 утверждения 1 следует, что
g2 f 2 g2 
 f 2
f
g
f
g
g f

  1 , x2 ,..., xn   ...
( f  g )   g (  1 )  f (  1 )  (  1 )(  1 )  x *  
x1
x1
x1
x1 
x2
x2 x2 

 x2
g n f n g n 
 f n
g f


  1 ,...,  n 1 , xn  
xn
xn xn 
 xn
n
 g f  f g  
f 1 g i
 1 ,..., i 1 , xi ,..., xn  .
xi xi
Доказательство 4.5
Если n=1, то 1f=(-1)2f ; это дает нам возможность предположить, что для n=k, kf=(-1)k+1f . Тогда
   k f 
  k f 
1
2
 k 1 f  
x* 
 1 , x2 ,..., xn   ... 

x1
x2

i 1


  k f 
xn
  k f 
2
x2
  1

n
k 1
 1 , x2 ,..., xn   ... 
  k f 
xn
n

 1 ,...,  n 1 , xn   

   k f 
  k f 
1
2

x* 
 1 , x2 ,..., xn   ...

x1
x2

  k f 
xn

   k f 
k 1
1

x* 
 1 ,...,  n 1 , xn     1 
x1


n

 1 ,...,  n 1 , xn     1
n2
f .

3. ОБ ОДНОМ РЕШЕНИИ ЛОГИЧЕСКИХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ
НАД КОНЕЧНЫМИ ПОЛЯМИ
В работе [1] доказывается теорема 2 [1] Логическое дифференциальное уравнение f/xi=g для
i 1,…,m имеет решение f=gxi+h тогда и только тогда, когда g, h не зависят от xi, f, g, h – логические
функции.
Рассмотрим дальнейшее развитие этого подхода. Обозначим xˆi*  ( xi ,..., xi 1 , xi 1 ,..., xn ) , то есть
набор переменных размерности (n-1), в котором нет переменной xi, и xˆ*i  ( xi ,..., xi 1 ,  i , xi 1 ,..., xn ) , то
есть набор переменных размерности n, в котором переменная xi заменяется на переменную i.
Утверждение 5
Логическое дифференциальное уравнение
f i...n
 g ( x * ) , i  1,..., n , x*   x1 ,..., xn 
xi ...x n
(4)
g ( xˆ* 1 )  0 ,
(5)
имеет решение тогда и только тогда, когда
Решением является
n
f ( x*)   ci ( xi )  (1) n g ( x*) ,
(6)
i 1
где
ci ( xi )  (1)i 1
где – логическая функция размерности  n  1 ,
f:FpnFpm, g:FpnFpm.
Доказательство 5
Вычислим
первую
частную
 n 1i i ... i 1 , i1 ... n
, i  1..n ,
(7)
конечным
полем
xi ...xi 1xi 1...xn
производную
n
над
*
f 1 x1   ci ( xˆi *)  (1) n 1 g ( x*) . Так как ci ( xˆ 1 )  0 , для i=2..n, данное соотношение является
i2
верным только при условии g ( xˆ 1 )  0 , что соответствует (5).
Вычислим вторую частную производную над конечным полем
*
n
 2 f 1 2 x1x2   ci ( xˆi *)  (1) n  2 g ( x*) , так как ci ( xˆ* 2 )  0 , для i=3..n, данное соотношение является
i 3
верным только при условии g ( xˆ* 2 )  0 , что соответствует (5). Вычисляя производные до n порядка,
получаем формулу (4).
Докажем теперь, что функция f имеет вид (6). По определению (2) соотношение (4) при подстановке
(n-1) имеет вид  n 1 f  2...n x2 ...xn  c1 ( xˆ1* )  g ( x * ) , причем по условию (5) g ( xˆ* 2 )  0 , а c1 ( xˆ1* ) должно
иметь вид (7), для i =1, при произвольной логической функции (x2,…,xn). Далее для производной порядка
 n  2 f 3 ...n
2
*
(n-2) получаем
 c2  xˆ2*   c1  xˆ1*    1 g  x*  , причем c1 xˆ2  0 и g ( xˆ* 2 )  0 , таким образом
x3 ...xn
 
получаем, что c2  xˆ2*  должно иметь вид (7). Вычисляя производные n раз получаем формулу (6).
4. ЗАКЛЮЧЕНИЕ
В докладе рассматриваются новые методы определения логических частных производных и
дифференциалов для логических функций, определяемых на конечными полями. Рассматривается один из
способов решения логических дифференциальных уравнений. Новизной и отличием предлагаемых методов
является сведение вычислений к операциям суммирования, что позволяет в дальнейшем реализовать их с
помощью параллельных вычислений.
Литература
1.
2.
3.
4.
5.
6.
Posthoff C., Steinbach B. Logic Functions and Equations. Binary Models for Computer Science. – Berlin: Springer, 2003.
Steinbach B., Posthoff C. Logic Functions and Equations. Examples and Exercises. – Berlin: Springer. – 2009.
Закревский А.Д. Логические уравнения. – М.: Эдиториал УРСС, 2003.
Brown F.M. Boolean Reasoning. The Logic of Boolean Equations. – Dover Publications, 2003.
Лидл Р., Нидерайтер Г. Конечные поля. – М.: «Мир», 1988.
Чернов А.В. Развитие аппарата логического дифференциального исчисления в применении к задачам
проектирования и диагностики телекоммуникационных систем// Научно-технические ведомости СпБГПУ. – 2008.
– №2. – С.118-126.
Download