О локальности информационных систем
( About Local Information Systems
Preprint, Inst. Appl. Math., the Russian Academy of Science)

Брошкова Н.Л., Попов С.В.
(N.L.Broshkova, S.V.Popov)

ИПМ им. М.В.Келдыша РАН

Москва, 2005

Аннотация

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

Abstract

Binary matrixes which unequivocally are under construction on булевским to the formulas representing information models are considered. Property of matrixes investigated in work is their so-called localness. Substantially it is possible to illustrate it on an example anaphoric references when references are resolved only within the limits of the limited piece of the text. Shows, that the establishment of feasibility of local matrixes is carried out for a polynomial of steps. On the other hand, the class of not local matrixes which represent rather complex from the substantial point of view information models is resulted.


A realibus ad realiora.

От реального к реальнейшему (лат.).

 

Введение. Мы исходим из представления формальной модели физической системы, описанной в работе [1]. Напомним, что физическая система есть ограниченная детерминированная функция, а ее информационная модель (ИМ) – это характеристическая логическая функция в расширенном базисе. В связи с этим признаки объектов мыслится как последовательности булевских переменных.

Анализ реальных физических систем обнаруживает их характерное свойство, которое легко формулируется в рамках предлагаемой модели. Это свойство мы назвали локальностью и его легко пояснить на примере анафорических ссылок в содержательных суждениях: ссылки в связном тексте допустимы только в пределах определенной, достаточно ограниченной окрестности. Ею, чаще всего, является предложение или абзац. Тем самым обеспечивается семантическая связность текста. В итоге, ссылки тот, этот, такие, который  и т.п. воспринимаются без потери смысла.

Пример 1. Локальность содержательных предметных областей (ПО) легко проиллюстрировать структурой любой организации. Так в ВУЗе эта структура строго иерархична: ректорат взаимодействует с факультетами, последние с соответствующими кафедрами, а кафедры - с преподавателями.

 

Исследование локальности ПО позволяет увидеть ряд их интересных свойств, важных для разработки ИМ, так как позволяет оценить необходимые ресурсы. В частности – это многозначность характеристики классов объектов, когда один и тот же класс можно описать несколькими способами. Из этого вытекает ограниченность числа различных классов объектов.

Пример 2. В содержательной речи это свойство связано с синонимичностью. При проектировании ИМ оно заметно при синтезе банков данных, когда одно отношение обладает несколькими ключами.

 

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

1. Бинарные матрицы. Бинарные матрицы служат для представления к.н.ф. Пусть D есть множество {D1, D2, ..., Dm} дизъюнктов, зависящих от переменных х1, х2, ..., хn. Изобразим его в виде матрицы MD, столбцы которой занумерованы от 1 до m,  а строки - от 1 до n. Ее элемент aij = 1, если переменная хi входит в дизъюнкт Dj, aij = 0, если в Dj входит литера`хi, и aij = _, если ни переменная хi ни ее отрицание не входят в Dj. Символы 0 и 1 назовем значащими, символ _ - не значащим. Матрицу, не содержащую значащих символов, обозначим L.

Будем мыслить бинарные матрицы, как конечные множества векторов, элементы которых суть: 0, 1, _. При этом каждый вектор есть в точности один столбец. Размерность матриц будем обозначать в виде [n, m],  что значит, что она имеет n строк и m столбцов. Назовем n - глубиной, а m - шириной матрицы.

Множество {0, 1, _}  обозначим Е. Таким образом, матрица размерности  [n, m] представляет собой  m векторов из  Еn.

Введем операции сложения матриц.

Пусть М1 и М2 суть матрицы, строкам которых поставлены в соответствие переменные, образующие множества соответственно Var(М1) и Var(М2). Тогда сумма М1 + М2 есть матрица, содержащая Var(М1) È Var(М2) переменных, получающаяся объединением их столбцов.

Пример 3. Пусть матрицы М1 и М2 выглядят соответственно, как на рис.1а и 1б. Их сумма изображена на рис. 1в.

М1

x

0

0

1

М2

x

1

1

0

 

М1+ М2

x

0

0

1

1

1

0

 

 

y

 

1

0

 

y

 

1

 

0

 

y

 

1

0

 

1

 

0

 

z

1

 

0

 

u

0

 

1

0

 

z

1

 

0

 

 

 

 

 

 

 

 

w

 

0

0

1

 

u

 

 

 

0

 

1

0

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

0

0

1

Рис. 1а

Рис. 1б

Рис. 1в

 

Пусть М есть матрица и d1 и d2 - ее столбцы такие, что d1 есть собственный подстолбец d2. В этом случае говорим, что d1 поглощает d2.  Из логической эквивалентности X Ù (X Ú Y) = X следует, что если в матрице М вычеркнуть столбец d2, то получим эквивалентную матрицу. Поэтому полагаем, что в рассматриваемых нами матрицах вычеркнуты все поглощаемые столбцы.

Назовем строку матрицы М фиктивной, если она содержит оба значащих символа, и всякий столбец, содержащий в этой строке 0, в оставшихся компонентах, совпадает с некоторым столбцом, который содержит в этой строке 1. И наоборот, всякий столбец, содержащий в этой строке 1, в оставшихся компонентах, совпадает с некоторым столбцом, который  содержит в этой  строке  0. Из  логической  эквивалентности (X Ú Y) Ù (`X Ú Y) = Y следует, что если в матрице М вычеркнуть фиктивную строку, то получим эквивалентную матрицу. Поэтому полагаем, что в рассматриваемых матрицах вычеркнуты все фиктивные строки.

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

 

 

d0           d1

 

 

M1

 

     L

 

x

 

0         1

 

 

     L

 

 

M2

 

 

Рис.2

2. Свойства означиваний переменных. Пусть М есть бинарная матрица. Будем говорить, что матрица М1  есть результат означивания переменных Х матрицы М путем присвоения им значений соответственно sХ, когда она получена из М следующим образом: если означивание превращает некоторый столбец из М в ложь, то М1 - тождественно ложная матрица; в противном случае М1 получается из М вычеркиванием всех строк, соответствующих переменным Х, и всех столбцов, которые на пересечении с этими строками имеют значащие символы, совпадающие с соответствующими компонентами из sХ.

Различные означивания переменных определяют различные матрицы.

Пример 4. Пусть матрица М выглядит, как на рис.2. Тогда в случае присвоение  переменной x единичного значения, из М2 удаляется верхняя строка и столбец d1; если же этой переменной присвоить нулевое значение, то - столбец d0. Таким образом, эти означивания порождают разные матрицы.

 

Введем отношение эквивалентности @ на множестве наборов, означивающих переменные матрицы М: два набора s1 и s2 находятся в отношении s1 @ s2, если матрицы М1 и М2, полученные из М при означиваниях соответственно s1 и s2, эквивалентны.

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

Пусть Х = {x1, x2, ..., xn} есть множество литер. Бинарным деревом над Х называется конечное дерево с единственным корнем; его каждый не висячий узел N имеет в точности двух потомков N0 и N1, дуга NN0  помечено литерой`xi, а NN1 - литерой xi, i Î {1, 2, ..., n}.

Каждому простому пути tN из корня в некоторый узел N соответствует единственный вектор sN из Еn когда в tN  нет дуг, помеченных контрарными литерами: если в tN  входит дуга с меткой xi (`xi), то i-ый компонент вектора sN  есть 1 (0), в противном случае i-ый компонент есть _. Таким образом, каждое бинарное дерево однозначно определяет множество векторов из Еn.

Бинарное дерево называется полным, если его простые пути из корня в висячие узлы определяют все 2n бинарных векторов длины n.

Нетрудно увидеть, что если векторы s1 и s2 эквивалентны, то их одинаковые продолжения s1s  и s2s  также эквивалентны. Установим некоторые свойства фактор-множества À/@. Для этого введем необходимые определения и докажем ряд утверждений.

Назовем класс [s] означиваний переменных матрицы М 1-константным (0-константным), если при означивании s она превращается в тождественную истину (ложь).

Очевидно, что если [s] есть константный класс, то всякое продолжение означивания s  также принадлежит этому классу.

Через sх, где s Î {0, 1} и х - переменная, обозначим, что переменной х  присваивается значение s.

Лемма 1. Класс [s] включает набор s1х тогда и только тогда, когда он включает набор s0х.

Назовем класс [s], не включающий набор s1х (s0х), альтернативным (по х).

Лемма 2. Если наборы s1х и s0х эквивалентны, то оба принадлежат классу [s].

Доказательство. Напомним, что мы рассматриваем матрицы, в которых вычеркнуты все поглощаемые наборы. Поэтому совпадение матриц, полученных при означиваниях s1х и s0х означает, что в матрице М*, полученной при означивании s, в строке х различные значащие символы 0 и 1 располагаются в столбцах, не отличающихся своими другими компонентами. Поэтому строка х в матрице М* фиктивная. И матрица, которая получается из М* вычеркиванием этой строки, эквивалентна М*.

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

М

0

1

0

1

1

М0

_

_

М1

_

_

 

 

0

1

1

1

0

 

1

0

 

0

1

 

 

1

0

0

0

1

 

0

1

 

1

0

 

 

1

0

0

0

1

 

0

1

 

1

0

 

 

 

Рис.3а

Рис.3б

Рис.3в

Пример 5. Пусть матрица М выглядит как на рис.3а. Тогда матрицы М0 и М1, полученные различным означиванием первой переменной, выглядят соответственно, как на рис.3б и 3в.

 

Построим ор-граф ГМ следующим образом: его узлами являются классы эквивалентности @, и два узла [s1] и [s2] соединены дугой от [s1] к [s2], если [s1] альтернативный класс по переменной х и s1sx Î [s2], где s Î {0, 1}.

Легко увидеть, что граф ГМ есть дерево с корнем, которому приписано пустое означивание, и его висячими узлами являются два константных класса.

Представление фактор-множества в виде графа ГМ позволяет сопоставить матрице М логическую формулу, используя равенство f(x) = x f(1) Ú`x f(0). В результате, если для М удается построить простое фактор-множество, то соответствующая логическая функция также проста.

Исследуем число классов эквивалентности в зависимости от вида анализируемой матрицы. С этой целью докажем следующее утверждение.

 

     

 

М2

 

 

 

Х

 

  М1

 

 

     

 

 

 

Рис.4

Теорема 4. Пусть матрица М есть сумма М1 + М2 матриц,  как на рис.4, и Х-слой содержит k строк. Тогда означивания всех переменных из М1  порождает не более  2k  классов эквивалентности.

Доказательство. Пусть N1 = {s1, s2, ..., sq} есть множество всех единичных означиваний матрицы М1. Каждое из них включает Х-проекцию, т.е. подвектор, означивающий только переменные Х. Число таких проекций не более 2k. Каждое означивание из N1 превращает М в некоторую подматрицу матрицы М2 в результате вычеркивания ее столбцов. Пусть единичное означивание si = sХs¢i  принадлежит множеству N1, где sХ  есть ее Х-проекция и s¢i - остальная часть, i = 1, 2, ..., q. При означивании переменных матрицы M2 вектором sХs¢i в ней вычеркиваются в точности те столбцы, Х-составляющие которых не ортогональны вектору sХ хотя бы в одном компоненте. Но все столбцы, которые таким образом вычеркиваются при всех означиваниях из N1, образуют не более 2k различных одновременно вычеркиваемых семейств.

Теорема доказана.

4. Вертикальная локальность матриц. Назовем два непересекающихся фрагмента матрицы М смежными по столбцу d, если d имеет непустое существенное пересечение с этими фрагментами. Например, когда этими фрагментами служат горизонтальные слои Н1 и Н2, в столбце d есть существенные компоненты из обоих слоев. Частным случаем этого определения является смежность строк, когда они имеют существенные пересечения с одним столбцом.

Определим по М нагруженный граф GM: его узлы однозначно соответствуют строкам матрицы, каждый узел помечен номером соответствующей строки; два узла i1 и i2 графа GM смежны, если в матрице строки i1 и i2 также смежны. Назовем множество ребер одной компоненты связности графа GM сечением, если выбрасывание этих ребер приводит к увеличению числа компонент связности.

Матрица М называется вертикально k-связной, если в любом сечении графа GM имеется не более k ребер.

                 G            М1

 

               D            М2

           

Рис.5а

Теорема 5. Для всякой вертикально k-связной матрицы с n строками размерность фактор-множества, определяемого некоторым полным бинарным деревом, не превосходит величины (n/2) 22k.

Доказательство. Пусть M есть вертикально k-связная матрица. Выделим максимальное сечение в графе GM  и все столбцы, соответствующие сечению, переставим влево, как на рис.5а.

 

    G

 

 

    М1

 

    L

 

    D

 

 

L

 

   М2

 

Рис. 5б

Матрицы M1 и M2 не имеют смежных строк, одна из которых принадлежит M1, а другая - M2. Поэтому исходная матрица только за счет перестановки столбцов преобразуется к виду, как на рис.5б.

Затем только перестановкой столбцов получим матрицу, как на рис.5в.

Далее все строки из верхней половины матрицы, смежные со строками из нижней половины, переставим вниз, к горизонтальной разделительной линии, а все строки из нижней половины матрицы, смежные со строками из верхней половины, - вверх, к горизонтальной разделительной линии.

От противного покажем, что матрица M1 представима, как на рис. 5г. Действительно, пусть в матрице M1 имеется столбец, определяющий смежность строк, одна из которых имеет пересечение с матрицей G*, а другая – с матрицей M12.

 

    L 

 

 

   G

 

    М1

 

   М2

 

 

D

 

    L

 

Рис. 5в

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

Аналогично рассуждая, получим, что матрица M2 представима, как на рис. 5г. Понятно, что строк в матрице G*  * не более k.

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

    L

L

L

L

М12

 

 

     L

L

G*

М11

 

L

 

    L

М21

 

D*

L

L

 

М22

 

L

L

L

L

 

 

Рис. 5г

4. Горизонтальная локальность матриц. Рассмотрим еще один класс локальных матриц. Для этого введем следующие определения.

Пусть М есть бинарная матрица. Назовем два непересекающихся фрагмента матрицы М смежными по строке i, если строка i имеет с ними непустое пересечение. Например, для столбцов d1 и d2 это значит, что в дизъюнкты, соответствующие d1 и d2, входит переменная, которой в матрице соответствует строка с номером i).

Определим по матрице М нагруженный граф GM: узлы его однозначно соответствуют столбцам матрицы, каждый узел помечен номером соответствующего столбца; два узла графа смежны, если соответствующие им столбцы также смежные.

 

L

L

L

М21

 

 

 

L

L

М22

 

L

 

 

L

 

G*

D*

L

 

 

L

М12

 

L

L

 

 

М11

 

L

L

L

 

 

Рис. 6

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

Матрица М называется горизонтально k-связной, если в любом сечении графа GM имеется не более k ребер.

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

Теорема 6. Для всякой горизонтально k-связной матрицы с n строками размерность фактор-множества, определяемого некоторым полным бинарным деревом,  не превосходит величины (n/2)22k.

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

Введем следующие определения.

Определим по матрице М нагруженный граф GM:

- узлы его однозначно соответствуют не пересекающимся подматрицам этой матрицы;

- сумма всех выделенных подматриц равна рассматриваемой матрице; каждый узел помечен соответствующей подматрицей;

- два узла графа смежны, если соответствующие им подматрицы  имеют общие переменные; ребро инцидентное двум узлам М1 и М2 графа помечено множеством Х общих переменных.

Матрица М называется k-локальной, если GM есть дерево и подматрицы, являющиеся метками его узлов, имеют не более k строк каждая.

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

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

Пусть М есть k-локальная матрица. Рассмотрим подграф графа GM, как на рис.7. Для выполнимости M необходима выполнимость всех матриц М2, М21, ..., М2q. Выполнимость суммы М2 + М21 + ... + М2q, имеет место, когда имеется непустое пересечение единичных означиваний для М2 и М21, ..., М2q по компонентам, определяемым множествами Y1, Y2, ..., Yq переменных.

Рассмотрим, как выглядит единичное означивание для всей матрицы М, учитывая, что граф GM есть дерево, узлами которого служат выделенные подматрицы. При этом анализ каждого подграфа, как на рис.7, сводится к построению всех Х-проекций единичных означиваний для М2, каждая из которых может быть продолжена до единичного означивания матрицы, включающей все подматрицы М2, М21, ..., М2q.

М21

 
                                

Y1

 
                                

X

 

М2

 

М1

 
                        

Yq

 
                            

                              

М2q

 
                                    

 

Рис. 7

В результате, если описаны все Х-проекции, то при переходе от матрицы М2 к М1 излишне анализировать остальные компоненты единичных означиваний, определяемые переменными множества  Y1 È...È Yq.

Покажем, что справедлива следующая теорема.

Теорема 7. Для всякой k-локальной матрицы с n строками размерность фактор-множества, определяемого некоторым полным бинарным деревом, не превосходит величины n2k.

Доказательство проведем индукцией по величине графа GM.

Базис индукции. Если матрица М имеет не более k строк и ей соответствует граф GM, состоящий из одного узла, то утверждение элементарно.

Индукционный переход. Пусть в графе GM выделен подграф, как на рис.7, где узлы М21, ..., М2q висячие в GM. Каждая матрица М2i  имеет не более k переменных, которые включают переменные множества Yi. Строим совокупность N  единичных означиваний для матрицы М*2 = М21 + ... + М2q + М2. Пусть NХ есть множество всех Х-проекций N.

Каждое означивание из N представляет собой вектор sXsY, где sX - это Х-проекция и sY - компоненты, соответствующие всем переменным матриц М21, ..., М2q. Эти Х-проекции определяют логическую функцию f(X) от переменных Х, которая истинна в точности на этих наборах переменных. Заменим матрицу М*2 на МХ, которая однозначно определяется функцией f(X) и соответствующим образом перестроим граф GM. Затем вместо матриц М2, М21, ..., М2q, в матрице M оставляем единственную матрицу МХ. Пусть M* есть результирующая матрица.

Покажем, что построение единичных означиваний для результирующей матрицы М* влечет построение единичных означиваний для исходной матрицы. Действительно, если s есть ее единичное означивание, то s = sXsZ, где sX - ее Х-проекция. Но Х-проекция sX расширяется  до единичных означиваний матрицы М*2. Таким образом, построение всех единичных означиваний для матрицы М* влечет построение единичных означиваний для исходной матрицы.

Отметим, что с каждым перестроением подграфа получается не более 2k классов эквивалентности.  Действительно, всевозможные означивания всех переменных матрицы М*2 разбиваются на не более, чем 2k классов, так как множества переменных матриц М21, ..., М2q не пересекаются, а мощность множества Y1 È...È Yq не превосходит k.

Теорема доказана.

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

Пусть å: Si = si, i = 1, 2, ..., m, si Î {0, 1}, есть система булевских уравнений от n переменных {x1, x2, ..., xn}, каждое из которых имеет в точности ki £ k различных переменных, переменные входят только положительно и каждая переменная входит в точности в два уравнения.

Верно утверждение.

Лемма 8. Система уравнений å совместна  тогда  и  только тогда, когда s1 + s2 +…+sm = 0.

Доказательство. Сложим по модулю 2 правые и левые части уравнений этой системы. Получим S1+S2+…+Sm =s1 + s2 +…+sm. Так как каждая переменная входит в сумму S1+S2+…+Sm дважды, то она равна 0. Поэтому, если s1 + s2 +…+sm ¹ 0, то система решений не имеет.

Пусть теперь s1 + s2 +…+sm = 0. Доказательство проведем индукцией по числу переменных в системе. Система, содержащая в точности одну переменную, совместна.

Пусть теперь в системе имеются два уравнения: x + S¢i = si, x + S¢j = sj. Подставим значение x = 0. В результате получим, что эти уравнения превратятся в такие: S¢i = si, S¢j = sj. В силу индукционного предположения результирующая система совместна. Отсюда следует совместность исходной системы.

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

Лемма 9. В системе å уравнений  каждая переменная существенная.

Доказательство. Пусть в системе å уравнения, включающие не существенную переменную x, имеет вид: x + S¢i = si, x + S¢j = sj. Но тогда исходная система и система å¢, полученная из нее заменой этих уравнений на S¢i = si, S¢j = sj, имеют одинаковое множество решений. Но это не так потому, что решение, включающее единичное значение переменной x и любое решение системы å¢, не будет являться решением исходной системы. Противоречие.

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

Поставим в соответствие системе å граф GS, содержащий m узлов, каждый его узел Ni помечен меткой si и ему соответствует уравнение Si = si, i = 1, 2, ..., m. Узлы Ni  и Nj соединены ребром с меткой x Î {x1, x2, ..., xn}, если x есть переменная общая для уравнений Si = si и Sj = sj. Очевидно, что в графе GS метки всех ребер покрывают все множество {x1, x2, ..., xn} переменных и метки разных ребер различны. 

При различных распределениях меток узлов графа GS  решения системы å различны.

Поставим в соответствие системе å матрицу М приведением каждой суммы Si  в уравнении  Si = 1 к к.н.ф. и представлением ее в виде столбцов; аналогично к к.н.ф. приводится выражение ØSi , если в å имеется уравнение Si = 0, i = 1, 2, ..., m.

Опишем преобразование графа GS, когда некоторая переменная х принимает фиксированное значение sх Î {0, 1}. Допустим, что эта переменная входит в уравнение х + S¢i = s. Если  sх = 0, то уравнение превращается в S¢i = s, если sх = 1, то в S¢i = 1 - s. Пусть переменная х есть метка некоторого ребра, как на рис.8. Тогда ребро  NiNj  стирается, при sх = 0 метки узлов Ni  и Nj не меняются, при sх = 1 – обе метки инвертируются.

Ni

x

Nj

si

 

sj

 

Рис.8

Соответствующие преобразования матрицы М состоят в следующем. Если sх = 0, то в матрице М вычеркиваются все столбцы, которые на пересечении со строкой х имеют 0, и после этого вычеркивается сама строка х. Аналогично, при sх = 1, вычеркиваются все столбцы, которые на пересечении со строкой х имеют 1, после этого вычеркивается строка х.   

Таким образом, означивание переменной приводит к соответствующим изменениям в системе å, графе GS и матрице М. В итоге результирующая система, граф и матрица остаются связанными подобно исходным. Обозначим их соответственно åsх, Gsх и Мsх. Аналогичными обозначениями будем пользоваться, когда рассматривается означивание sх  совокупности х  переменных.

Пусть х есть совокупность переменных, |х| = h, и Àх  = {s1, s2, ..., sq} - множество различных означиваний этих переменных. Множество х выделяет подграф Gх, узлы которого образуют множество Nх, а ребра - множество Dх: метка каждого ребра из Dх помечена переменной из х, каждый узел из Nх инцидентен по меньшей мере одному ребру из Dх.  

Назовем узел N Î Nх внутренним, если ему инцидентны ребра только из множества Dх, в противном случае назовем узел N Î Nх - граничным. Таким образом, каждый граничный узел смежен с некоторыми узлами, вне Nх.  Пусть число граничных узлов, определяемых переменными х,  равно k.

Выделим в множестве х те переменные, которыми помечены ребра, инцидентные граничным узлам. Допустим, что N1, N2, ..., Nk  суть все граничные узлы графа Gх  и подмножества Y1, Y2, ..., Yk  Í х переменных, которыми помечены ребра, инцидентные соответственно узлам N1, N2, ..., Nk. Так как метки ребер графа GS не пересекаются, то для не смежных граничных узлов эти множества различны.

Пусть s есть означивание переменных х. Сформируем по s бинарный вектор s = (s1, s2, ..., sk)  длины k, где si, i = 1, 2, ..., k, есть сумма по модулю 2 компонентов из s, определяемых множеством Yi. Назовем этот вектор ассоциированным с s.

Из определения ассоциированного вектора следует, что если si = 1, то означивание s приводит к инвертированию метки граничного узла Ni. Если же si = 0, то инвертирования нет. А так как различные инвертирования приводят к различным логическим функциям, то справедлива

Лемма 10. Если два различных вектора s1 и s2, означивающие переменные х, обладают различными ассоциированными векторами, то s1 и s2 принадлежат разным классам эквивалентности.

Лемма 11. Если мощность множества Àх равна 2h, то оно разбивается на не менее, чем  различных классов эквивалентности.

Доказательство индукцией по числу h = |х|.

Базис индукции, когда h = 1, соответствует в точности двум граничным узлам. В этом случае лемма верна.

Индукционный переход. Пусть мощность множества х равна h + 1. Полагаем, что (h+1)-я переменная – это x и множество x – {x}  определяет k граничных узлов. Возможны следующие случаи.

1. Пусть ребро с меткой x Î x инцидентно двум граничным узлам. Присвоим переменной x значение sx = 0. Это соответствует тому, что ребро x стирается и метки граничных узлов не меняются. Но тогда выполняются условия индукционной гипотезы, т.к. значения ассоциированных векторов определяются только остальными переменными x – {x}.

2. Пусть теперь ребро x инцидентно в точности одному граничному узлу, из тех, которые определяются множеством x – {x} переменных. Это означает, что число граничных узлов, определяемых множеством x, увеличилось на один по сравнению с множеством граничных узлов, определяемых множеством x – {x}, и новому граничному узлу инцидентно ребро x. При фиксированном значении sx = 0 и при всех означиваниях остальных переменных из x – {x} получается не менее  различных ассоциированных векторов, которые имеют вид (s1, s2, ..., sk, 0). При фиксированном значении sx = 1 в точности один граничный узел из тех, которые определяются множеством x – {x}, приобретет инвертированную метку. Но при всех означиваниях переменных x – {x}  получается не менее  различных ассоциированных векторов. С фиксированным значением sx = 1 они будут иметь вид (s1, s2, ..., sk, 1). Отсюда вытекает, что число всех ассоциированных векторов, определяемых множеством x, будет не менее 2 = >.

3. Пусть теперь ребро x не инцидентно ни одному граничному узлу, из тех, которые определяются множеством x – {x} переменных. Это означает, что число граничных узлов, определяемых множеством x, увеличилось на два по сравнению с множеством граничных узлов, определяемых множеством x – {x}, и новым граничным узлам инцидентно единственное ребро x с меткой из множества x. По индукционной гипотезе всевозможные означивания переменных x – {x} приводят к  различным ассоциированным вектором (s1, s2, ..., sk). При различных значениях sx = 0 и sx = 1 переменной x и при всех означиваниях остальных переменных из x – {x} получаются различные ассоциированные векторы вида (s1, s2, ..., sk, 0, 0) и (s1, s2, ..., sk, 1, 1) длины k + 2. При этом вектор (s1, s2, ..., sk) из первых k компонентов пробегает не менее  различных значений. Но тогда при всех означиваниях переменных x порождается 2 =  различных ассоциированных векторов.

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

Следствие. Множество переменных х определяет не менее  классов эквивалентности.

Пусть степень вершин графа GS ограничена некоторой константой и для него существуют константы 0 < c1, c2 < 1 такие, что любой подграф, обладающий c1n ребрами, имеет c2n граничных узлов. Такие графы называются расширителями.

Из указанного свойства расширителя и следствия вытекает

Теорема 11. Существуют матрицы с n строками, мощность фактор-множеств которых для любого полного бинарного дерева не менее  2сn, где c -  некоторая положительная константа.

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

Лемма 12. Пусть переменные x выделяют граф Gx, в котором никакая пара граничных узлов не соединена ребром. Тогда все означивания переменных x разбивается на классы эквивалентности с одинаковыми долями.

Доказательство. В этом случае ребра с метками Yi  x, инцидентные любому граничному узлу Ni, не имеют общих меток с ребрами, инцидентными остальным граничным узлам N1, N2, …,Ni-1, Ni+1, …, Nk. Следовательно, классы эквивалентности, определяемые переменными x, представимы в виде (Y1, Y2, …, Yk),  при i j. Здесь Yi есть сумма по модулю 2 значений переменных Yi при соответствующем означивании. Отсюда следует, что классов эквивалентности ровно 2k и доля каждого 2-k.

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

В общем случае справедлива

Теорема 13. Все означивания переменных x разбиваются на классы с одинаковыми долями.

Доказательство проведем индукцией по |x|.

Базис индукции. Если |x| = 1, то x = {x} и граф Gx представляет собой два узла, пусть N1 и N2, соединенных ребром с меткой x. При x = 0 метки узлов N1 и N2 не меняются, при x = 1 обе метки – инвертируются. Тем самым, получаем в точности два класса эквивалентности с одинаковыми долями.

Индукционный переход. Пусть теорема верна для всякого множества  переменных x, для которого |x| = m-1. Добавим еще одну новую переменную x.

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

Базис индукции. Если в графе  никакая пара граничных узлов не соединена ребром, то теорема верна в силу Леммы 12.

Индукционный переход. Допустим теперь, что ребро x соединяет два граничных узла Ni и Nj. Если присвоить переменной x значение 0, то выполняются условия индукционной гипотезы, т.к. метки узлов N1 и N2 не меняются. Поэтому все классы, определяемые переменными x, имеют одинаковые доли. Все означивания переменных x разбиваются на 4 вида: O1( = 0,  = 0), O2( = 0,  = 1), O3( = 1,  = 0), O4( = 1,  = 1), где  - это результирующая метка узла Ni и  - узла Nj, полученные после всех инвертирований.

Рассмотрим теперь, что произойдет, когда переменная x принимает значение 1. В этом случае метки узлов Ni и Nj  инвертируются, а все означивания классов O1( = 0,  = 0), O2( = 0,  = 1), O3( = 1,  = 0), O4( = 1,  = 1) будут характеризоваться иначе – соответственно O1( = 1,  = 1), O2( = 1,  = 0), O3( = 0,  = 1), O4( = 0,  = 0).

В итоге порождаются новые классы эквивалентности, обладающие также равномерным распределением. Отсюда и из того, что при x = 0 мы получили равномерное распределение классов эквивалентности, следует, что доли всех классов эквивалентности, порожденных переменными множества x  {x}, совпадают.

Теорема доказана.

Заключение. Показано, что свойством локальности обладают достаточно простые ИМ, для которых легко обнаружить аналогию среди содержательных ПО. Их характерная черта состоит еще в том, что один класс эквивалентности обладает относительно большой мощностью. На содержательном уровне это соответствует многозначности описания объектов ПО. С другой стороны, не локальные ИМ не имеют аналогов среди содержательных ПО из-за их сложного описания.

Литература

1. Брошкова Н.Л., Попов С.В. О проектировании информационных систем, Препринт ИПМ РАН, 2005.