Книга
Книга
1. ВВЕДЕНИЕ
В последнее время некоторые вычислительные системы .были спроектированы или задуманы так, чтобы одновременно можно было выполнять много арифметических операций; в связи с этим важно изучать способы организации вычислений с тем, чтобы наилучшим образом использовать такую возможность. Одна из сторон данной проблемы, привлекшая к себе внимание многих исследователей, это перестроение с помощью алгебраических тождеств арифметического выражения с целью получить дерево вычислений минимальной глубины и, следовательно, ми-
9 Muller D. Е., Preparata F. Р., Restructuring of arithmetic expressions for parallel evaluation, J. ACM, 23, № 3 (1976), 534-543.
© 1976, Association for Computing Mashinery, Inc., translated by permission. © Перевод на русский язык, «Мир», 1979-
нимальное время вычисления. Можно либо предполагать, что число процессоров не ограничено, либо рассматривать проблему как соотношение между стоимостью дополнительных процессоров и выгодами от увеличения скорости. В этой статье мы выбрали первое, поскольку именно в этом случае применимы развитые нами математические методы, однако мы понимаем важность получения более общего соотношения между числом процессоров и скоростью и полагаем, что использованные здесь методы могут быть приспособлены также и к общему случаю.
В ранней работе Бэра и Бовета [1] использовались ассоциативность и коммутативность арифметических операций, чтобы ограниченно перестроить дерево вычислений. Позднее Мураока [2] и Брент, Кук, Маруяма [3] использовали также дистрибутивность. В последней работе показано, что любое арифметическое выражение без операции деления, содержащее п различных переменных, может быть вычислено не более чем за 2,465 log2n + 0(1) шагов. Потом Препарата и Мюллер [4] показали, что коэффициент при log2n можно уменьшить до 2,1507. Его дальнейшее уменьшение до 2,08 достигнуто в настоящей статье, и авторы предполагают, что это минимально возможное значение.
Частный случай, а именно вычисление многочлена, рассматривали Маруяма [5], Манро и Патерсон [6], которые показали, что многочлен n-й степени можно вычислить за log2n + + O(Vl°g2^) шагов. Кроме того, Кук и Маруяма [7], помимо других интересных результатов, доказали, что непрерывная дробь с п членами может быть вычислена не более чем за 21og2n + O(l) шагов.
Арифметические выражения общего вида, которые наряду с другими арифметическими операциями могут содержать деление, рассматривали Виноград [8] и Брент [9]. Целью Брента была минимизация времени вычисления при неограниченном числе процессоров, поэтому его результаты непосредственно сравнимы с нашими. В его методе выражение общего вида преобразуется к рациональному виду, что позволяет его вычислить, используя лишь одно деление, выполняемое в самом конце после того, как числитель и знаменатель уже вычислены без использования деления. Брент показал, что любое арифметическое выражение, содержащее п переменных, может быть вычислено таким способом не более чем за 41og2n 4-0(1) шагов. В настоящей статье используется тот же самый метод «деления в конце», при этом коэффициент 4 уменьшается до 2,880. Авторы приводят также серьезные доводы в пользу своей гипотезы о том, что существуют арифметические выражения, для вычисления которых требуется именно такое время, а зна^ Чит, это минимально возможное значение.
В разд. 2 анализируются арифметические выражения общего вида и устанавливаются верхние оценки для времени параллельного вычисления их, а также для числа требующихся процессоров. В разд. 3 аналогичный анализ проводится для арифметических выражений без операции деления.
АРИФМЕТИЧЕСКИЕ ВЫРАЖЕНИЯ ОБЩЕГО ВИДА
Время вычисления. Пусть Е— выражение с операциями сложения, вычитания, умножения и деления, содержащее действительные переменные. Выражение Е будем называть простым, если каждая переменная встречается в нем ровно один раз. Переменные, встречающиеся в простом выражении, будут двух видов: атомные переменные оь ..., а, и свободные переменные хь ..., х$. Весом выражения Е (обозначение |Е|) назовем число атомных переменных в выражений Е. Вместо свободных переменных в процессе выполнения алгоритма будут подставляться выражения. .
Хорошо известно, что выражение Е можно преобразовать к рациональному виду Р/Р', где Р и Р'— взаимно простые многочлены. Если к тому же выражение Е простое, то каждая переменная входит в Р и Р' в степени не выше первой.
Представим Р и Р' в виде ряда Маклорена по свободным переменным: Р = Е^ + ... + EmXm, Р' = Е'^ + • • • + Е'щХщ, где каждое выражение Xi это либо 1, либо произведение различных свободных переменных, а каждый из коэффициентов Ei и E'i это либо 0, либо 1,либо выражение, содержащее лишь атомные переменные. Данные выражения для Р и Р' единственны с точностью до перестановки членов и алгебраических преобразований коэффициентов.
Определим ЦЕ{) как минимальное время, требующееся для вычисления Ei, и аналогично определим ЦЕ'^, i=l, ..., tn. Предполагается, что можно пользоваться любыми алгебраическими тождествами и что доступно столько независимых процессоров, сколько требуется для одновременного выполнения различных операций. Пусть тс обозначает время, требующееся для выполнения сложения или вычитания, а ту— время, требующееся для выполнения умножения. Будем считать, что при подсчете оценок для /(Ег) и /(Е;) времена тс и ту известны. Знания времени деления тд при этих подсчетах не требуется, поскольку Ei и E'i деления не содержат, и мы считаем, что деление искусственно не вводится, даже если это ускоряет вычисление Ei и E't. -
Определим теперь ЦЕ) как максимум величин ЦЕх), ... ..., ЦЕт), ЦЕ'), ..., /(Em). Как отмечалось выше, суммы Р и Р' имеют единственное представление, поэтому для простого выражения Е величина ЦЕ) определяется однозначно.
Пусть А и В — простые выражения с разными переменными, и пусть Xi — произвольная свободная переменная из А. Определим композицию А и В по отношению к Xi как простое выражение, полученное подстановкой в выражение А вместо свободной переменной Xi выражения В. Такую композицию будем обозначать А^х^В. Если ясно, о какой свободной переменной xi идет речь, мы будем просто писать А°В. Очевидно, что |ДоВ| = |Д| + |В|.
Лемма 1. Пусть А и В — простые выражения с разными переменными и пусть t\ и t2 — конструктивные верхние оценки соответственно для ?(Д) и t(B). Тогда
? (Д о В) < тс + ту + max (ti, t^, причем эта оценка конструктивная.
Доказательство. Преобразуем Д и В к рациональному виду:
А — (Д iZi + ... + ДтХт)/(Д(Л1 + ... + AmXm)>
В = (ВМ + . . . + Вт'Хт')/(В1М + . . . + Bm'Xm').
Далее, построим рациональную форму их композиции А «В по отношению к некоторой свободной переменной Xi из А. Пусть Xj и Хь— два таких произведения в рациональной форме выражения А, что Xj = xiXk, a Xi — какое-нибудь произведение в рациональной форме выражения В. Тогда в числителе рациональной формы выражения ДоВ есть член (AjBi + AkB't) Х^Хь а в знаменателе — член (Д/В; + А^В;) ХцХь Поскольку времена вычисления коэффициентов ограничены сверху оценками, приведенными в условии леммы, доказательство на этом заканчивается. ■
Лемма 2. Пусть А и В — простые выражения с разными переменными, и пусть ti и t2— конструктивные верхние оценки соответственно для ?(Д) и t(B). Тогда
i (Д ± S) ^ тс + ту + max fa, t2),
^(Д-ВХту + тах^, /2),
t (Д/ВХ Ту + max (<ь У, причем эти оценки конструктивные.
Доказательство. Пусть рациональные формы выраже^ ний Д и В имеют тот же вид, что в лемме 1, и пусть X/ и Xt — произвольные произведения соответственно в рациональной форме выражения А и выражения В. Тогда
в числителе рациональной формы выражения Д ± В есть член (AjB'k ± A'/Bk) Хр4, а в знаменателе — член A'jB'kXjXV,
в числителе рациональной формы выражения А • В есть член AjBkXjXk, а в знаменателе — член Л/В^ХД^;
в числителе рациональной формы выражения A/В есть член AjBkXjXk, а в знаменателе — член Л/ВД/М. Поскольку времена вычисления коэффициентов ограничены сверху оценками, приведенными в условии леммы, доказательство на этом заканчивается. ■
Сформулируем теперь без доказательства лемму, которая является незначительным обобщением леммы из работ [3, 9].
Лемма 3. Пусть Е — произвольное простое выражение, у которого |£|>1, и пусть q— действительное число, удовлетворяющее условию 1 < ^^|£|. Тогда Е можно представить в виде A(Xr) (BQC), где А, В и С — простые выражения, не имеющие общих переменных, хг — свободная переменная выражения А, являющаяся единственной переменной из А, В и С, не входящей в Е, а В9С обозначает одно из выражений В + С, В-С, В/С или С/В, причем А, В и С можно выбрать так, чтобы ШС|<?, но |В| + |С| ^г. ■
Лемма 4. Пусть тс + ту = 1, и пусть а — положительный корень уравнения z2 = z+l. Тогда для всякого простого выражения Е, у которого | Е | ^ 1, справедлива верхняя оценка
log|E|,
' 7 log а & 1 • причем эта оценка конструктивная.
Доказательство. Сделаем индуктивное предположение о том, что для некоторого целого п утверждение леммы справедливо при |£|<п. Рассматривая несколько первых случаев, легко показать, что индукцию можно начинать с п = 4.
Пусть теперь Е— произвольное простое выражение, удовлетворяющее условию |В| = п. Пользуясь леммой 3, находим простые выражения А, В и С, такие, что £ = До(В0С), где композиция и операция 0 удовлетворяют лемме 3, и |В|^ ^ | С| < а-2п, но | В | + | С | ^ а?п. Поскольку п ^ 4 и а « «1,618, имеет место неравенство ат^п > 1 и, следовательно, можно взять а~2п в качестве числа q из леммы 3.
Поскольку jC|< п, в силу индуктивного предположения рациональная форма выражения С может быть конструктивно преобразована так, чтобы
г (С) ^ log] С |/loga < loga"2n/loga = logn/loga — 2.
Поскольку |В|^|С|, такая же оценка справедлива для f(B). Следовательно, по лемме 2 рациональная форма выражения
BQC может быть конструктивно преобразована так, чтобы
t (В9С) ^ log n/log а — 1.
Далее, в силу определяющего уравнения для а
| A | = |£|-|B|-|CKn-a-2n = a-‘n.
Поскольку ]Д]<п, снова по индукции получаем
t (Л) ^ loga~*n/loga = log и/log a — 1, причем эта оценка конструктивная. Следовательно, по лемме 1 существует конструктивный путь'получения оценки
/(£) = / (Л о (ВОС)) < log л/log a,
и лемма доказана. ■
Хотелось бы подчеркнуть, что использование в доказательстве этой леммы большего, чем у предыдущих исследователей (см. [9]), числа а стало возможным потому, что мы допускали появление свободных переменных выражения Е где угодно, а не ограничивали их положение единственным путем в первоначальном дереве вычислений выражения Е, как это было сделано в [9].
Теорема 1. Пусть Е — простое выражение, не содержащее свободных переменных, и пусть тс, ту и тд — времена выполнения соответственно сложения — вычитания, умножения и деления. Тогда для t(E)— времени вычисления выражения Е— справедлива верхняя оценка
^Ъ^" log IВI + тд « 1,44 (тс + ту) log21 В | + тд,
причем эта оценка конструктивная.
Доказательство. Поскольку выражение Е не содержит свободных переменных, эквивалентная ему рациональная форма Р/Р' есть просто EJ Е{ (подразумевается, что М = 1). Поэтому t (£) = шах (/ (£1), / (£{)) и I (£) < t (Е) + тд.
Ввиду того что лемма 4 применима ко всем простым выражениям с весом не меньше 1, она применима и к.частному случаю, когда Е не содержит свободных переменных. Таким образом, чтобы получить указанный результат, нужно просто умножить нормализованное значение ?(£) на Тс + ^у- Это завершает доказательство теоремы. ■
Хотя проведенное доказательство наводит на мысль, что верхняя оценка теоремы 1 может достигаться, в особых случаях
время вычисления в действительности может быть уменьшено. Дело в том, что алгоритм из леммы 4 можно модифицировать так, что параметр q может выбираться произвольно в диапазоне а~2п ^ q ^ оНп. Несмотря на то что оценка при этом не изменяется, дополнительную гибкость можно использовать для получения других разложений выражения Е и выбора на основе |Л|, |В| и |С| того из них, которое дает наименьшее время вычисления.
Кроме того, если для заданного целого к можно указать такую положительную константу 6, что f (В) ^ log|£|/loga — 6 всегда, когда ar2k ^ |Е| < к, то по индукции в точности, как в лемме 4, можно показать, что данное неравенство верно и при IBI^A. Для небольших значений к отыскание самых «быстрых» форм для всех выражений Е, удовлетворяющих условию | Е\<<к, возможно с помощью вычислительных машин.
Обратим внимание на то, что для справедливости верхней оценки теоремы 1 не требуется, чтобы процессоры могли выполнять самостоятельные программы; так что она сохраняется и для таких вычислительных систем, в которых все процессоры выполняют одну и ту же операцию в любое время. Это связано с тем, что каждая из основных формул, используемых в леммах 1 и 2, есть либо произведение, либо сумма двух произведений. Поэтому для всего множества процессоров последовательность вычислений состоит из чередующихся умножений и сложений— вычитаний (быть может, фиктивных). Деление выполняется только один раз — в конце всего вычисления.
В заключение этого раздела мы высказываем гипотезу о том, что существуют такие простые выражения Е, для вычисления которых требуется время не меньше чем (тс + + Ту) log| S'|/log сх — с, где с — некоторая константа. Чтобы подкрепить эту гипотезу, мы предлагаем на рассмотрение бесконечную последовательность То, Тх, ... выражений, определяемых индуктивно следующим образом:
То = a, Ti = Ь, где а и b— атомные переменные;
Т/ = Т/_2 + a^bj + Tj-x^ 1*^2, причем все атомные переменные, как входящие в Tj-x и Ту—2, так и переменные а^, bj, различны.
Заметим, что при всех / имеет место |Т/| ^ 2,180^, так что J ^ log|T/|/loga —log2,18/loga. При условии, что тд ^ ту, мы не можем перестроить Tj так, чтобы сделать время его вычисления меньше чем (/—1) (тс + ту) + тд, что в свою очередь ограничено снизу величиной
(тс + ту) [log IT; |/loga — log2,18/loga — 1Ц-тд.
2.2. Число процессоров и время компиляции. Теперь мы хотели бы получить верхние оценки для времени компиляции
(перестроения) выражения и для числа процессоров, требующихся для его параллельного вычисления. Для получения этого результата и последующих связанных с ним нам потребуется лемма, доказательство которой мы опускаем, так как его можно провести, применяя стандартную аналитическую технику [10].
Лемма 5. Пусть f(x)— функция действительной переменной, выпуклая вниз, и пусть g = a\f(x\)-Y- ... +^rf(xr), где х\, ..., хг — действительные переменные, принимающие неотрицательные значения, а а\, ..., ат — положительные константы. Тогда, если область определения функции g является выпуклой оболочкой некоторого множества крайних точек, все максимумы функции g достигаются в крайних точках.
Обозначим число операций, выполняемых перестраивающим алгоритмом при преобразовании заданного простого выражения Е, через W (EY Для краткости W(E) будем называть «работой по компиляции». Будет удобно различать в компиляции два процесса, хотя они в действительности перемежаются. Первый процесс относится к разложению заданного выражения Е на три такие выражения А, В и С, что Е = А о (B0C) (см. лемму 3); соответствующую работу обозначим через И^ДЕ). Второй процесс относится к указанию процессоров для выполнения операции 0 в выражении В^С (см. лемму 2) и композиции выражений А и В^С (см. лемму 1); соответствующую работу обозначим через W2(E).
Рассмотрим сначала Wx^EY Соответствующий алгоритм (набросок которого дан в [3]) содержит два основных шага. На первом шаге для каждой вершины дерева T^EY изображающего Е, подсчитывается вес выражения, соответствующего его поддереву. На втором шаге строится путь, выходящий из корня дерева T^EY который из каждой вершины идет по направлению к вершине с большим весом. Построение этого пути продолжается до тех пор, пока не будут найдены В и С. Работа по выполнению этих двух шагов вместе оценивается сверху величиной 61|Е|, где кх — некоторая положительная константа. Действительно, поскольку свободные переменные не влияют на вес, алгоритмом должны рассматриваться лишь такие вершины дерева T^EY которым соответствуют поддеревья с положительным весом, а число таких вершин равно |Е| — 1.
Алгоритм, соответствующий лемме 4, применяет рекурсивно предыдущий алгоритм. Поэтому
TTj (.Е) ^ TFj (Л) ч-VFi (В) + TFi (С)-ь Й! | ^ |. (1)
Рассмотрим теперь W^EY Основной операцией является указание операндов для процессора. Обращаясь к алгоритмам,
соответствующим леммам 1 и 2, мы видим, что число таких указаний не более чем в три раза превосходит число членов в числителе и знаменателе рациональной формы результата (ибо для вычисления wx + yz по операндам w, х, у, z требуются три указания).
Пусть р, pAl рв и рс — числа свободных переменных соответственно в Е, Л, В и С. Таким образом, при формировании В9С число таких указаний не больше чем 6 • 2PB^PCl а при формировании композиции Л и В9С — не больше чем б-2р. Отсюда следует, что соответствующая работа по компиляции оценивается сверху величиной k2(.2PB^PC + 2Р\ где к2— некоторая положительная константа.
Алгоритм, соответствующий лемме 4, опять рекурсивно применяет два предыдущих алгоритма. Поэтому
Г2 (Е) < Г2 (Л) + Г2 (В) + Г2 (С) + к^°в"РС + 2Р). (2)
Поскольку веса |Л|, |В| и |С|, рассматриваемые как действительные переменные, принимают значения из дискретных выпуклых множеств, оба неравенства (1) и (2) можно использовать для получения с помощью леммы 5 верхних оценок для W\^E^ и ^г^Еу. Подробный анализ, проведенный в [11], показывает, что W^E^^. ^i|E|log2|E| и W2(E) ^ &2|£р> где hi и к2— константы, a g = l/log2 а « 1,44. Комбинируя эти два результата, мы можем написать
I^ = r1(^ + r2(B)<&1|B|log2|B|+ £2|В|$.
Поскольку g> 1, с ростом \Е\ основную роль начинает играть второй член, и W^ растет как If]1’441).
Обратимся теперь к такой же важной задаче получений верхней оценки числа процессоров, требующихся для вычисления выражения, полученного в результате перестроения выражения Е алгоритмом, соответствующим лемме 4. Поскольку глубина дерева для этого выражения не превосходит 2,881og2|£'|, нетрудно сообразить, что требуется не более О (22,88 log2 Е *) = О (| Е |2,88) процессоров. Более тщательный анализ показывает, однако, что эта задача тесно связана с предыдущей, вернее, с получением верхней оценки для W2 (£). Само собой разумеется, что общее число процессоров не может превосходить числа W2(£) процессоров, указанных компилирующим алгоритмом. Отсюда следует, что верхней оценкой для числа
процессоров будет ^[fl’44, где й3—некоторая константа1). Данная оценка не учитывает того, что процессор может использоваться повторно, однако маловероятно, чтобы этим можно было воспользоваться для уменьшения порядка верхней оценки— во всяком случае самое большее, что можно было бы сделать, это поделить ее на,верхнюю оценку для /(£), которая растет только как log2|E|.
3. АРИФМЕТИЧЕСКИЕ ВЫРАЖЕНИЯ БЕЗ ОПЕРАЦИИ ДЕЛЕНИЯ
1. Время вычисления. В этом разделе мы рассмотрим параллельное вычисление выражений с операциями сложения, вычитания и умножения, т. е. выражений без операции деления, содержащих действительные переменные.
Будем пользоваться обозначениями, введенными в разд. 2. В силу леммы 3 любое простое выражение Е можно представить в виде Д(х)(В0С), где Д, В и С — простые выражения, не имеющие общих переменных, х— свободная переменная выражения Д, не входящая в £, а 0 обозначает либо «+», либо «•». Выражение Е можно разложить в ряд Маклорена по переменной х и затем заменить х на В^С. Поскольку выражение Е не содержит операции деления, мы получим
. £ = Д'(В0С) +Д".
Заметим, что в отличие от общего случая, А' и Д" являются простыми выражениями и |Д'|^|Д|, |Д,Х| ^ | Д |).
9 Аналогичный анализ можно провести для алгоритма перестроения выражений без операции деления, описанного в [3]. Этот анализ показывает, что число требующихся процессоров растет не быстрее чем ^|В|4’23, где к — некоторая положительная константа, тогда как Брент с соавторами оценивал это число как О(|£Р’71) (заметим, что 1,23 « 1/(2 log2 V)» гДе ? —положительный корень уравнения z3 = z + 1).
Такое разложение уже встречалось в работе [3]. Чтобы убедиться в его справедливости, достаточно представить А в виде
А = (... (((хАо + ЛО Л2 + Лз) Л4 + Л5) ...) Айш + Л2т-ц
(возможно, Ло = 1, а A2m+i = 0), и в аналогичном предсгавлении для Е
В дальнейшем анализе понятие свободной переменной не является необходимым, хотя понятие композиции (которое с этого момента упрощается тем, что свободная переменная не указывается) остается удобным.
Дадим теперь конструктивную верхнюю оценку для времени параллельного вычисления выражений без операции деления. Как и в общем случае, мы опишем алгоритм, перестраивающий заданное простое выражение в эквивалентное ему таким образом, чтобы дерево вычислений последнего имело ограниченную глубину. К сожалению, как заметит читатель, в дереве выражения, полученного в результате перестроения, сложения и умножения не чередуются, как это было для выражений общего вида. По этой причине мы будем считать, что для выполнения сложения и умножения требуется одинаковое время, которое мы и примем за единицу времени. Обозначим минимальное время, требующееся для вычисления выражения Е, через HE^.
Лемма 6. Пусть р — положительный корень уравнения z4 = 2z+E и пусть Е— простое выражение без операции деления, причем |^| >: 1. Тогда
Доказательство. Сделаем индуктивное предположение о том, что для некоторого целого п справедливы следующие утверждения (легко видеть, что они верны при ц ^ 4):
Р1. Если |£| < п, то
/(EXlog|E|/logp.
Р2. Пусть Е\ и £2 — простые выражения без операции деления, причем |Е1|>1 и |£2|>1, и пусть г = (р3/(1 + + P))max(|Ei|,p|E2|)- Тогда, если г < п, то
/ (Ei + Е2)< Tog r/log р.
Доказательство будет конструктивным, в его основе будет лежать процесс перестроения выражений без операции деления.
Этот процесс состоит из двух частей, алгоритмов Р1 и Р2, которые дают нам доказательство возможности индуктивного перехода соответственно в Р1 и Р2. Подразумевается, что на каждом шаге, когда установлено, что некоторое выражение удовлетворяет условию утверждения Р1 или Р2, происходит обращение к соответствующему алгоритму для выполнения перестроения. Как мы увидим ниже, оба алгоритма взаимно обращаются друг к другу. Будем следовать той форме шаг — рассуждение, которая использовалась в разд. 2. Начнем с доказательства возможности индуктивного перехода в Р1.
Доказательство Р1. Пусть |£*| = /г.
Алгоритм Р1.
Шаг 1. Найдем в выражении Е такую его часть (B0C), что Е = До(В9С), | вес |> и (1-Р~2), |В|<|С|<п(1-р"2).
Рассуждение. Имеем | А |=| Е |—| В9С |^п —п(1 — р~2) = = пР~2. Кроме того, | В |^| С | < п(1 — р-2) < «р-2. Следовательно, в силу Р1
ЦА'У t(A"), ЦВ), /(С)< logn/logp-2. (3)
Шаг 2. Если |С|^пР~3, то воспользуемся разложением Е = Д'(В0С) + А".
Рассуждение. В силу Р1 из неравенства | В | ^ | С | ^пр-3 следует, что /(B9C)^logn/logp — 2. Это вместе с (3) дает /(Д'(В9С)) ^ logn/logP — 1 и /(Е) ^logn/logp.
Шаг 3. (|С|>пр~3). Если 9 есть „+“. то воспользуемся разложением Е = А'С + А о В.
Рассуждение. Имеем |Д°В| = |Е| —|С|<п— пр-3 < < пр-1, откуда в силу Р1 следует, что /(Д о В) ^logn/logp — 1. Это вместе с (3) дает t (Е)^ logn/logp.
Шаг 4. (|С|>пР-3 и 9 есть „•“.) Найдем в выражении С такую его часть (Bi9'Ci), что С = Ах ° (В^'С^, | B^'Ci [^п(1—р-1), I Ei |^| Ci I < п(1 — р-1), и воспользуемся разложением Е = = А'ВА'х (BiB'Ci) + А ° ^ВАхУ
Рассуждение. Заметим, что | А ° В А" |^| Е | — | Bi9'Ci |^ ^п —п(1 — Р“1) = пР“1, откуда в силу Р1 следует, что ЦА о В А") ^ log n/logP — 1. Для завершения доказательства надо показать, что произведение Е'= Д'ВД{ (Bi9'Ci) можно вычислить за время, не превосходящее logn/logP—1. Мы приступим к преобразованию выражения Д[(В19'С0 к произведению вида ЕД.
Ш а г 5. Если | Ci | > пР-4 и 0' есть „•“, то положим Si = Л[Вь S2 = Ci (случай 1). В противном случае положим Si = Л( и S2 = (B10,C1) (случай 2).
Рассуждение. Покажем, что во всех случаях
/ (SiXlogn/logP — 4, /(S2Xlogn/logp —3.(4)
Случай 1. Имеем | Л(В11^| С | — |CJ<n(l—р~2) — пр-4 < пр-4, откуда в силу Р1 следует, что / (Л1В1Х logn/logp — 4. Кроме того, | Ci Х« (1 — Р-1) < пр-3, и, таким образом, в силу Р1 /(CtXlogn/logp —3.
Случай 2. Прежде всего заметим, что | Л11 = | С1 — 1 Bi0'Ci | < < п (1 — р-2) — п (1 — р- *)=п (Р~1 — Р-2) < «р-4, откуда в силу Р1 следует, что /(Л(Х logn/logp — 4. Теперь следует рассмотреть два подслучая:
(О Xl^np-4, откуда в силу Pl /(BiG'CJ^logn/logp — 3;
(ii) | Ci | > nP~4 и 0' есть „+“. В этом случае| Сх | < п (1 — р-1)< <пр-6(1+Р) и |В1|<1зС|-|С1|<п(1-р-2)-/гр-4<пр-7(1+Р); отсюда следует, что (р3/(1 + Р))тах( |С, |, PI Bi |) < пр"3, и, таким образом, в силу Р2 /(Bi + С^^logn/logP — 3.
Шаг 6. Если |ВХпр~4, то воспользуемся разложением Е'= Л'((BSi) S2) (случай 1); если пр~4 < | В X пр~3, то воспользуемся разложением Е' = (Л'В) (SiS2) (случай 2); если же пр-3 < | В |, то воспользуемся разложением Е' = ((Л'51) S2) В (случай 3).
Рассуждение. Случай 1. В силу Р1 из неравенства |ВХпр-4 следует, что / (В)^ logn/logP —4. Это вместе с (3) и (4) дает t (Е') ^ logn/logp — 1. Случай 2. В силу Р1 из неравенства пр-4 < | В Xпр-3 следует, что /(В) ^logn/logp — 3 и |Л | = | ЕI — | В | — | С | < п — пр-3 — пр-4 = пр-3. Это в свою очередь дает / (Л') ^ logn/logp— 3, и, таким образом, t^E'^^. ^logn/logp— 1. Случай 3. Из неравенства | В |> пр-3 следует, что | Л | < п — 2пр~3 = пр-4, и, таким образом, /(Л'Х ^logn^ogp — 4. Это вместе с (3) и (4) дает / (E'Xlogn/logP—1. На этом доказательство Р1 закончено.
Доказательство Р2. Сначала мы рассмотрим выражение Ei отдельно и покажем, что его можно преобразовать в сумму (Fx + GJ, удовлетворяющую следующему условию: если при п ^ Г < п + 1
' |El|^rp-3d+p)=r(p-2 + p-3),
ТОТО/(BiXlogr/logp — 1,КпКгр-^Ц-р).
ТО
ТО
Алгоритм Р2.
Шаг 1. Найдем в выражении Ех такую его часть (В16С1), что Ех = Д1 о (В^СО, | В.0С, | > г (Г2 + р-3) - г (р-4 4- р-5), I Вх К < I Сх | < г (р-2 + р-3) - г (р~4 + Р"5).
Рассуждение. Имеем | Ах |=| Ех |—| В^С] Хг (р-2 + р-3)— - г (р-2 + Р-3) + г (р-4 + р"5)=Г (р-4 + р-5) = гр-5 (1 + Р) < Гр"2. Кроме того, |В1Х|С1|<г(р_2 + р“3-р"4-р_5)<гр-2. Поскольку гр-2 < и, в силу Р1 получим
/(Д(), t^, t<M t^^^rAo^-^.(5)
Шаг 2. Если XX гр 3, то положим FX = A'X (В16С1) и Gx = Ах.
Рассуждение. В силу Р1 из неравенства | Вх XI Ct Х^р-3 следует, что t(BxQCx) ^ log r/logp — 2. Это вместе с (5) дает /(ВО = /^((B16Ci))^logr/logP — 1. Согласно доказанному выше, |С1|<|Д1|<гр-5(1+р).
Шаг 3. (| Ci | > гр 3.) Если 9 есть „•“, то введя D = A'XBX, положим Fx = DCX и Gx = А". ■
Рассуждение. Заметим, что | АХВХ XI Ех | — | Ci | < < г (р-2 + р-3) — гр-3 = гр-2, и, таким образом, в силу Р1 / (Д(В1) ^ logr/logp— 2. Это вместе с (5) дает ЦЕХ) = Ц1)СХ)^. <logr/logp— 1.
Шаг 4. (| С, |> гр-3 и весть „+“.) Если | В] X г (р~5 + р"6), то положим Fx = Ах (Bi + Ci) и Gi = А".
Рассуждение. Поскольку р 2 + Р 3<2(р 4 + Р 5), имеет место | Сх | < г (р~4 + р-5) = гр-5(1 + р). Кроме того, I В( X <г(р-5+р-6)=гр"6(1+р). Положивг'=(р7(1+р)) тах( 1^ |,Р1 Вх |), получим г' ^(р3/(1+Р))гр 5(1+р) = гр 2, откуда в силу Р2 следует, что tkBx + CJ ^ logr/logp — 2, и, следовательно, t^F^= = ЦАх (Вх 4-С])Х log r/logp — 1.
Шаг 5. (lCtl>rp-3, 0 есть „+“ и | В, | > г (р~5 + р-6).) Найдем в выражении Вх такую его часть Хв^'С^, что Вх = = А3 о (В^'С^, | В^'С^ | > гр-4, | Вг XI Cz I < гр-4. Аналогичны^
образом найдем в выражении Сх такую его часть (В30"Сз), что G = Л3 о (В30"С3), |В3е"Сз1>гр"4, |В3|<|С3|<гГ4. Введя Ds = Av As и Da = А[Аз, положим Fx = (£>2 (B20'C2) + Da (В30"С3)) и Gi = Л1 о (Д + А^.
Рассуждение. Прежде всего заметим, что | Л( Аз | ^ | Ei | — - I В, | - | В36"С31 < г (Г2 + Р"3) - г СР"5 + р"6) - гр"4 < гр"3. В силу Р1 отсюда следует, что / (£>3) ^ log r/log р — 3. Аналогичным образом t (D2) К logr/logр — 3. Далее заметим, что в силу Р1 из неравенства I В21^| С21 < гр-4 следует, что / (Вгб'Сг)^ log r/log р —3, и, аналогичным образом, /(В30"С3Ж < log r/log р — 3. Но тогда t (О2 (B20'C2) + Da (ВЛЪ"С$) < ^logr/logр — 1. Наконец, мы видим, что| Gi | = | А ° (А'+Аз) |К <1^1-1 Bj¥Ca | -1 В30"С3 Кг (р™2 + р-3)-2гр“4<г (р-4+р”5)= = гр-5(1+Р).
Во всех случаях выражение Ех можно преобразовать в сумму вида (Ei + GJ, где /(EiXlogr/logр— 1 и | G, |<гр-5(1 + р). Аналогично, выражение Е2 можно преобразовать к виду (f2+G2), где f(F2)<logr/logp-2 и | G2 |<rp“6(l + Р). Заметим, что г" = (р3/(1 + Р)) max( |Gi |, P|G2|)<rP“2. Таким образом, сумму Ех + Е2 можно преобразовать к виду Ех + Е2 = = FX-V (^2 + (Gi + G2)), где в силу Р2 / (Gj + G2) < logr"/logp< < log r/log р —2, что дает t (£1 + Е^ ^ log r/log р. На этом доказательство леммы закончено. ■
Непосредственным следствием леммы является следующий результат.
Теорема 2. Пусть Е— простое выражение без операции деления. В предположении, что и сложение, и умножение выполняются за единицу времени, выражение Е можно вычислить параллельным способом не более чем за
-j^-p-log| Е |« 2,0806log2| Е | единиц времени.
В заключение сформулируем гипотезу о том, что существуют простые выражения Е, для вычисления которых требуется не меньше чем log|E|/logp—С' единиц времени, где С' — некоторая константа. Чтобы подкрепить эту гипотезу, мы предлагаем на рассмотрение бесконечную последовательность То, Ту ..., выражений, определяемых индуктивно следующим образом: .
То = а, 7'1 = 6-|-с, Т2 = de 4- f, Ta = g(/i 4* k) 4- l, где a, b, ..., /—атомные переменные;
(И) Г/= Г/-з(Г/-зТ/-4+ «/) + &/, />4, где Г/-з — выражение, изоморфное Г/.з, причем все атомные переменные, как входящие в Т/-з, T'j-з и Tj-t, так и переменные ij, Ь/, различны.
Заметим, что при всех / имеет место | Г/| ^ 2,09р/', так что /> log] Tj |/logP — log2,09/logP. Мы не можем перестроить Т( так, чтобы сделать время его вычисления меньше / единиц времени, что в свою очередь ограничено снизу величиной
logirj/logP-log^Og/logp.
Число процессоров и время компиляции. Поскольку /(£) ^ 2,08 log2| Е|, число N(E) процессоров, требующихся для вычисления выражения Е, ограничено сверху величиной 22,08 iog21£| _ । £ 12,08 Однако более тщательный анализ, приводимый ниже, показывает, что эту оценку можно понизить.
Сделаем индуктивное предположение о том, что для некоторых констант С\ > 0, <?2 > 0 и g > 1 справедливы следующие утверждения:
Если Е— простое выражение и |Е|<п, то число NxlE^ процессоров, требующихся для вычисления выражения, полученного в результате перестроения выражения Е алгоритмом Р1, не превосходит Ci|£|^.
Если Е— простое выражение и | £ | р3/( 1 Ч~ Р) <2 «» то число N^(E') процессоров, требующихся для вычисления выражения, полученного в результате перестроения выражения Е алгоритмом Р2, не превосходит Сг|Е|К
В данном случае анализ значительно сложнее, чем для выражений общего вида (см. разд. 2.2), из-за большого числа случаев и взаимодействия двух алгоритмов. Поэтому мы опустим детали и дадим набросок принятого подхода.
Каждый из двух алгоритмов характеризуется числом перестроенных образов, т. е. выражений вида О(ЕхEs), где Ех, ..., Es сами являются выражениями, причем без ограничения общности можно считать, что ЕхЕт получены в результате перестроения алгоритмом Р1, а Е^+ь •••, Es— в результате перестроения алгоритмом Р2. Далее, для каждого образа неотрицательные веса |Ei|, ..., |ES| принимают значения из выпуклой оболочки конечного множества крайних точек. В отличие от того, что мы обнаружили для выражений общего вида, перестроенные деревья вычислений для выражений без операции деления не имеют внутренних ветвлений, и по этой причине число процессоров, требующихся для вычисления Ej, зависит только от |Е/|, причем никакой ощутимой пользы нельзя извлечь из того, что Ej может иметь общие буквы с другими членами из множества Е\, ..., Е$. Если выражение Е перестроено алгоритмом Pi (i=l,2) в выражение
G(E\,..., Es), то имеет место оценка (msх
Nx^^Nx^H I N^L i=l, 2. (6) /=1/=т+1/
Каждый образ алгоритма Р1 нужно объединить в пару с образом алгоритма Р2, чтобы получить систему из двух неравенств вида (6), а константы d, с2 и £ следует выбрать так, чтобы для каждой такой пары неравенств выполнялось Ni^ t^. d\E\V Этот анализ дает g = 1,82, т. е. число требующихся процессоров Ni^E) равно O^fl1’82).
Верхнюю оценку работы по компиляции можно получить точно тем же путем, что в разд. 2.2. В результате можно заключить, что работа по компиляции имеет в худшем случае ту же самую скорость роста О(|Ер’82).
4. ЗАКЛЮЧИТЕЛЬНЫЕ ЗАМЕЧАНИЯ
В этой статье мы предложили улучшенные верхние оценки времени, требующегося для параллельного вычисления арифметических выражений общего вида и арифметических выражений без операции деления. В предположении, что каждая операция выполняется за единицу времени, мы показали, что выражение, содержащее п букв, можно вычислить за 2,881og2|£'| шагов или за 2,081og21 ^ | шагов в зависимости от того, встречается или нет в выражении деление. Кроме того, мы предложили на рассмотрение два семейства выражений, для вычисления которых, по нашему предположению, требуется время, с точностью до аддитивной константы совпадающее с соответствующей верхней оценкой.
Мы исследовали также скорость роста времени компиляции (перестроения) выражений и скорость роста числа процессоров, требующихся для вычисления, вскрыв интересную связь между этими двумя величинами.
Список литературы
Baer J. L, Bovet D. Р. Compilation of arithmetic expressions for parallel computations, Proc. IFIP Cong. 1968, North-Holland Pub. Co., Amsterdam, 340—346.
Muraoka Y. Parallelism exposure and exploitation in programs, Ph. D. th., Dep. of Comput. Sci. Rep. No 424, U. of Illinois at Urbana-Champaign, Urbana, Ill., Feb. 1971.
Brent R. P., Kuck D. J., Maruyama K. The parallel evaluation of arithmetic expressions without division, IEEE Trans, on Computers, C-22, № 5 (1973), 532—534.
Preparata F. P., Muller D. E. The time required to evaluate division-free arithmetic expressions, Inform. Processing Letters 3, № 5 (1975), 144—146.
Maruyama К. On the parallel evaluation of polynomials, IEEE Trans, on Computers, C-22, № 1 (1973), 2—5 (originally, Rep. 437, Dep. of Comput. Sci., U. of Illinois at Urbana-Champaign, Urbana, Ill., March 1971).
Munro I., Paterson M. Optimal algorithm for parallel polynomial evaluation, Proc. IEEE 12-th Ann. Symp. on switching and automata theory, Oct. 1971, 132—139.
Kuck D. J., Maruyama K. Time bounds on the parallel evaluation of arithmetic expressions, SIAM J. Comput., 4, № 2 (1975), 147—162.
Winograd S. On the parallel evaluation of certain arithmetic expressions, J. ACM, 22, № 4 (1975), 477—492.
Brent R. P. The parallel evaluation of general arithmetic expressions, J. ACM, 21, № 2 (1974), 201—206.
Блекуэлл Д., Гиршик M. А. Теория игр и статистических решений. — М.: ИЛ, 1958.
Muller D. Е., Preparata F. Р. Restructuring of arithmetic expressions for parallel evaluation, Rep. R-676, Coordinated Sci. Lab., U. of Illinois at Urbana-Champaign, Urbana, Ill., April 1975.
Нижняя оценка 2,5/г для комбинационнойсложности булевых функций1)
В. Й. Пауль
Department of Computer Science, Cornell University, Ithaca, New York 14853
Рассматривается комбинационная сложность L(f) булевых функций над базисом Q = \f\f\ {О, 1}2->{0, 1}}. Предложен новый метод получения линейных нижних оценок вида 2п. Комбинируя его с методами из работ [13] и [18], автор для специальной последовательности функций fn; {0, 1}п+2 1о^2 n+1-> {О, 1 получил оценки: 2,5/i £ (f) 6п. Получен также результат о соотношении между сложностью схем и формул.
ВВЕДЕНИЕ
Интерес к нижним оценкам для комбинационной сложности булевых функций возник по двум обстоятельствам:
(i) из практики — в связи стем, что оборудование вычислительной машины в значительной мере состоит из переключательных схем;
(и) из теории алгоритмов —в связи с тем, что получение нижних оценок для времени работы алгоритма сводится к задаче получения нижних оценок для комбинационной сложности булевых функций [2, 15, 17]. Однако для этого требуются нижние оценки более высокие, чем О (и log п).
Известны [8, 20] функции с экспоненциальной комбинационной сложностью. Если сложность задания последовательности функций fn: {0,1}"—{0,1} определить как сложность машины Тьюринга, которая распознает множество последовательностей {х|/Длина(х)(х) = 1}, то тогда все функции, для которых можно установить экспоненциальную комбинационную сложность, будут задаваться машинами Тьюринга с экспоненциальной сложностью.
Тем не менее большой интерес представляют нелинейные нижние оценки и для тех функций, которые задаются машинами Тьюринга с полиномиальной временной сложностью или даже со сложностью порядка n\ogn (например, умножение). С другой стороны, если с помощью нижней оценки для сложности схемы пытаться, например, решить в отрицательном
*) Paul W. J., A 2,5n-lower bound on the combinational complexity of boolean functions, SIAM J. Comput. 6, N 3 (1977), 427—443.
© 1977 by SIAM. .
© Перевод на руский язык, «Мир», 1979,
смысле проблему Р = NPt [1, 4], то тогда надо доказывать для последовательности функций, определимых в классе NP, такую нижнюю оценку, которая растет быстрее любого полинома. Наилучшие известные нижние оценки для последовательности функций, определимых в классе NP, в случае базиса из всех элементов с двумя входами и одним выходом имеют величину 2га [18].
Вначале приводятся некоторые основные понятия и факты. В теореме 1 с помощью известной техники получается нижняя оценка 2га для функции, описывающей чтение из памяти, содержащей га одноразрядных ячеек.
Для получения нижней оценки выше 2га требуются новые методы, которые, в отличие от известных, устанавливают существование элементов, расположенных вовсе не обязательно вблизи от входов схемы. Теорема 2 доказывается именно таким методом. Однако применение одного только этого метода дает нижнюю оценку 2га.
В теореме 3 новый метод в сочетании с известной техникой, получившей здесь дальнейшее развитие, используется для доказательства нижней оценки 2,5га. Доказательство оказывается значительно более трудным, чем при получении нижних оценок вида 2га.
В последнем разделе устанавливается связь с критерием Нечипорука [9] и доказывается результат о соотношении между сложностью схем и формул.
ОСНОВНЫЕ ПОНЯТИЯ И ФАКТЫ
Пусть К = {0, 1), и пусть базисом является множество Q = {f |f: К2-* KY Переключательная схема N представляет собой ориентированный ациклический граф, в котором входная степень каждой вершины равна 0 или 2. Вершина с входной степенью 0 является входной, а вершина с выходной степенью О — выходной. Входным вершинам схемы N взаимно однозначно приписаны переменные из множества Хп = {xi,..., хпу Каждой вершине с входной степенью 2 приписана функция f из Q.
Каждой вершине С схемы N естественным образом сопоставляется функция гездг(С): К”-*К и совершенно аналогично каждому ребру е — функция resw(e). В случае, когда ясно, о какой схеме идет речь, индекс N будет опускаться. По определению, схема N реализует функцию f: Кп->К, если в схеме N есть такая вершина С, что res(C) = f.
Комбинационная сложность функции f определяется как минимально возможное число вершин с входной степенью 2 В схеме, реализующей функцию f, и обозначается через L(f).
Подставляя константы 0, 1 вместо переменных из дополнения некоторого подмножества 3 а Хп, мы можем рассматривать подфункции, а также подсхему схемы N, состоящую только из путей, идущих из xt е 3 в выходную вершину. Всякую систему подстановок вида а = {хг. = с/|с, е К, i е J е [1 : п]} будем называть частичной подстановкой (Ч. П.). Для заданной функции f: К п -^ К Ч. П. а естественным образом определяет ее подфункцию fa: К^^-^К. Особый интерес будут представлять функции res(C)a.
Выражение (С^С') будет обозначать путь из вершины С в вершину С'. Множество вершин произвольного пути р вида (С^С') будем обозначать через [С, С']р, причем в тех случаях, когда существует единственный путь ■ вида (С=>С'), индекср будет опускаться. aD
Положим^Л
[С, С')Р==[С,С']Р\{С'},11
(С, С1Р = [С,С1Р\{С},вхЕ
(С, С')Р = [С,С1Р\{С, сг4!
Пусть 3 и 3' — два множества вершин/-
Будем говорить, что существует путь сF
(3=ф3'), если для некоторых CeS и р . C'eS' существует путь (С^С').с" '
Пример. В схеме, приведенной на рис. 1, существует путь (Д => С) и существует путь ([Д, C]=>[D, Е]).
Логические операции И, ИЛИ, НЕ и -{-mod 2 будем обозначать соответственно через &, V,- и ф. Понимая под х булеву переменную или функцию и подразумевая, что а е К, введем обозначение
„( х, если а — 1,
х = S _
( х, если а = 0.
Перечислим некоторые простые факты, которыми мы в дальнейшем будем пользоваться, часто даже не упоминая об этом.
Лемма 1
a®b = a®b = a®b.
В оптимальной схеме вершинам могут быть приписаны лишь функции вида
или видаили видаО^&УгУ (элемент типа И)([Л^УаУ1. (элемент типа ф),
или вида
или вида
где а, Ь, с, de К. (Все остальные элементы реализуют тривиальные функции и их можно «поглотить» соседними нетривиальными элементами.)
Таким образом, можно считать, что оптимальная схема состоит из элементов &, ф и ", но при подсчете L учитывается лишь число элементов & и ф.
Функцию от двух переменных, реализуемую элементом типа И (типа ф), будем называть функцией типа И (типа ф).
Никакая функция типа И не является функцией типа ф и наоборот..
В оптимальной схеме, реализующей единственную функцию /, имеется ровно одна выходная вершина t, причем res (0 = f.
Начиная с этого места, буквой t всегда будем обозначать выходную вершину той схемы, которая рассматривается.
Если выход элемента остается постоянным при любых подстановках констант вместо входных переменных схемы, то этот элемент можно удалить из схемы.
В оптимальной схеме нет ребер, которые выходили бы из одной вершины и входили бы тоже в одну вершину.
При любой Ч. П. а из равенства функций f = g еле* дует равенство fa = ga. ■
В последующих рисунках будут использоваться обозначения, показанные на рис. 2. Точки ветвления путей мы будем себе представлять как вершины схемы с нулевой сложностью1). Отрицание на рисунках изображаться не будет.
ДВЕ НИЖНИЕ ОЦЕНКИ ВИДА 2 п
Первая теорема имеет практический аспект. Она отвечает на вопрос: во что обходится чтение из памяти? С другой стороны, в процессе ее доказательства возникает техника, которая будет использоваться в дальнейшем.
Каждому набору а = а\ ... си^К присвоим номер |й|, получающийся прибавлением единицы к числу, двоичной записью которого является а.
Теорема 1. Пусть функция fn; ^^^ -> к. удовлетворяет соотношению
fn^v «log,»' хрO = *iar
Тогда
2n-2^L Qn) < 3n — 3.
Доказательство. Сначала докажем нижнюю оценку. Для этого докажем следующее утверждение.
£$(1 ^ s ^ п). Пусть f— произвольная функция вида f: K"+Iog2 "—>/(, для которой существует такое множество Se G[1; п] мощности s, что при всех |5|eS
Ца, xv .... х„) = х|5|.
Тогда
'L(f)>2s-2.
Доказательство Е\ тривиально. Покажем, что Es-\ влечет за собой Es. С этой целью рассмотрим оптимальную схему N для функции f, удовлетворяющей условию утверждения Es (s > 2).
Случай 1: существует i е S, такое, что выходная степень входной вершины х, не меньше 2. Тогда, подставив вместо X/ константу, мы сможем удалить из схемы по крайней мере два элемента. Полученная схема реализует функцию f, к которой применимо утверждение Es_i с множеством S' = S\{i} в качестве S. Это значит, что L(f) ^ 2(s—1) — 2 и £(f)^2s— 2.
отличное от i.отличное от i.УУРис. 3.Рис. 3.Случай 2: существует i е S, такое, что выходная степень входной вершины xt равна 1 и единственное ребро, выходящее из xt, входит в элемент типа И. Обозначим этот элемент через С. Пусть res (С) = (х? & уьу, где а, Ь, с е К, а у — некоторая функция от остальных входных переменных. Покажем, что С =/= t (/—выход схемы). Поскольку s ^ 2, существует / е S, " “' чим через а такую Ч. П., при которой |а| = /, причем фиксируются (заменяются константами) лишь переменные из а. Из определения функции f следует, что fa = res(f)a = xj. Однако теперь при подстановке xi = а получается функция (res fPf^x й = с, не зависящая от Xj. Следовательно, С ^ ^ t. Сделав подстановку xt = а, мы можем удалить элемент С и элемент, следующий за ним.
отличное от i.
отличное от i.
У
У
Рис. 3.
Рис. 3.
Случай 3: существует i е S, такое, что выходная степень входной вершины Xi равна 1 и единственное ребро, выходящее из xt, входит в элемент типа ф. Обозначим этот элемент через С. Для Ч. П. а из случая 2 res(/)a не зависит от xi. В то же время res(C)a зависит от хи Следовательно, С ф t.
Обратимся к рис.Обратимся к рис.Отождествим Xi с у. В полученной схеме N' функция resW'(C) равна константе. Это позволяет удалить элемент С и элемент, следующий за ним. Функция resW' (/) удовлетворяет условию утверждения Es-\ с множеством S' = = S\ {i} в качестве S.'
Обратимся к рис.
Обратимся к рис.
На этом доказательство нижней оценки заканчивается.
Переходя к доказательству верхней оценки, заметим прежде всего, что в случае, когда п не является степенью 2, функция fn не полностью определена. Мы укажем, как реализовать полностью определенную функцию, которая совпадает с функцией fn везде, где f„ определена.
Пусть n = Mi + гц, где пх является степенью 2 и 2пх ^ п. Далее, пусть ^ = Г lo^^-1- Тогда
fn(«p «log,»' XV Хп^ =
= йЛкЛа^ аюг2п’ xv О V
V ai & fra7(aiog2n-fc + P«log,»' Xn, + P ХпУ
Таким образом, L (Jn^ < L (Jn^ + L (Jn^ + 3. Кроме того, L (fi) = 0. Поэтому по индукции
L (fn) < 3nv - 3 + Зм2 - 3 + 3 = Зп - 3. ■
В то время как при доказательстве теоремы 1 рассматривалась лишь верхняя часть схемы (вблизи входных вершин), в следующем доказательстве будет установлено существование точек ветвления, которые могут быть расположены глубоко в схеме.
Теорема 2. Пусть для функции f; Кп~>К существует такое множество Ss[l:n], что каждой паре I, jeS, i^j. можно сопоставить две Ч. П. а^ и а^, фиксирующие все переменные, кроме Xi и х;, и обладающие следующими свойствами;
f i (*р х/) = Q^ & х^ ,
fa2 ^хр xj) = (xi®xj) ’ а
где a, b, с, d ^ К. Тогда
L(f)>2\S\-2.
Сначала докажем две леммы.
Лемма 2. Пусть G — ориентированный ациклический граф, удовлетворяющий следующим условиям;
число входных вершин графа G равно п;
(И) число выходных вершин графа G равно пг;
(Ш) входная степень каждой внутренней вершины графа G (т. е. вершины, не являющейся входной) не больше 2;
(iv) число вершин графа G с выходной степенью не менее 2 равно р.
Тогда число внутренних вершин графа G не меньше п— m-V р.
Доказательство. Начнем строить граф G с входных вершин, добавляя вершину за вершиной. Вначале имеется п «висящих линий» от входных вершин. Добавление внутренней вершины уменьшает число «висящих линий» не более чем на единицу, причем в р случаях уменьшения на самом деле не происходит. В конце процесса это число равно т. Отсюда следует, что в графе не меньше п — т + р внутренних вершин. ■
Лемма 2 будет неоднократно применяться к определенным подграфам схем. Существование точек ветвления в схеме, реализующей функцию f, в предположении, что f удовлетворяет условию теоремы 2, поможет установить следующая лемма.
Лемма 3. Каждой паре i, j е$, i #= /, соответствуют такие пути (х; =т> 0 и ^х, =^ 0, что до их первого пересечения хотя бы один из них разветвляется.
Доказательство. Предположим, что утверждение леммы для некоторой пары I, j по отношению к некоторой схеме неверно. Пусть С—вершина, в которой впервые пересекаются пути (х/^0 и (х,=^/), а 61, е2— ребра, входящие в С (рис. 4).
Функцию, реализуемую схемой, обозначим через res(/). Можно показать, что в том случае, когда С — элемент типа И, все подфункции res(0, зависящие лишь от xt и х/, являются либо функциями типа И, либо переменными или их отрицаниями, либо константами, а в том случае, когда С — элемент типа ф, все такие подфункции являются либо функциями типа ф, либо переменными или их отрицаниями, либо константами. В то же время функция f имеет подфункции обоих типов.
Точнее, рассмотрим произвольную Ч. П. а, фиксирующую все переменные, кроме Xi и х/. Поскольку по сделанному предположению ни один из путей (х^=>С) и (х;=>С) не разветвляется (до вершины С),
res (е,)о = х“>, или 0, или 1,
res (е2)а = х“2, или 0, или 1,
res (/)„ = (res (С)а)а\ или 0, или 1.
Пусть С — элемент типа И. Тогда при любой Ч. П. а
res (/)а — (х“* & х^)а“, или х^’, или х^8, или 0, или I
и в силу леммы 1 п. (iii)
res(0 2 ¥=f 2.и и
Аналогичным образом доказывается, что С не может быть элементом типа ф. ■
Доказательство теоремы 2. Заметим, что в любой схеме, реализующей функцию f, имеется |5|—1 таких входных вершин Xi, i е S, что путь (Xi =ф Г) разветвляется. Действительно, в противном случае для некоторых i0, /о е S существовало бы только по одному пути (хг =>/) и (х; =>/), а это противоречит лемме 3. Если в каждом из |3|—1 путей вида (xi ^ /) взять первую вершину с выходной степенью не менее 2, то они будут попарно различны, что снова следует из леммы 3. Теперь теорема следует из леммы 2. ■
На рис. 5 показано, что точки ветвления не обязаны находиться непосредственно под входными вершинами.
Пример. При любом се[1:п—1] для функции fc: Кп-*
К, такой, что fc(xi,..., хл) = 1 тогда и только тогда, когда п
У, Xi —с, справедливо неравенство
L(fc)>2n-2(rt>3).
НИЖНЯЯ ОЦЕНКА 2,5л
Введем обозначение
Й^йр .... a10gi„,
^2 = aiog2n+P ^2 log2n^)"
Теорема 3. Пусть функция f: кп+21о&п+1 _>.]^ удовлетворяет соотношениям
Г Х|-^ & Xj ~2р если q=\,f (ар .021og2n, q, хр ..., х^ I х|аЧ ® х|а2р если 9 = 0-Тогда
S^n-S^Ltf^Sn+c, где с — константа.
Доказательство. Заметим, что каждая из теорем 1 и 2 дает для функции f нижнюю оценку вида 2п.
Верхняя оценка теоремы 3 является простым следствием теоремы 1. При доказательстве нижней оценки, так же как в теореме 1, мы сначала устраняем зависимость от входных
переменных всегда, когда это позволяет удалить 3 элемента (случаи 1—4). В тот момент, когда это становится невозможным, мы совершенно точно знаем строение «верхней» части получившейся схемы. Для оставшихся $ входных переменных мы устанавливаем существование 5s/2— 2 элементов, не прибегая к индуктивному рассуждению.
Рис. 6.Рис. 7.Рис. 6.Рис. 7.
Рис. 6.Рис. 7.
Рис. 6.Рис. 7.
Для доказательства теоремы будем доказывать следующее утверждение.
Es (1 ^ s ^ п). Пусть f — произвольная функция вида f: /("+210g="+1_)./() для которой существует такое множество S s [1 : п] мощности s, что при всех | а11> I а21 е S
/(а1, а2, xt, Тогда/(а1, а2, xt, Тогдах№&Х1а«1’ 6СЛИ 4= !>■*ia>i® xia«i» если 9 = 0.х№&Х1а«1’ 6СЛИ 4= !>■*ia>i® xia«i» если 9 = 0.£(f)>2,5s-2.£(f)>2,5s-2.
/(а1, а2, xt, Тогда
/(а1, а2, xt, Тогда
х№&Х1а«1’ 6СЛИ 4= !>
■*ia>i® xia«i» если 9 = 0.
х№&Х1а«1’ 6СЛИ 4= !>
■*ia>i® xia«i» если 9 = 0.
£(f)>2,5s-2.
£(f)>2,5s-2.
Доказательство Ех тривиально. Покажем, что Es_x влечет за собой Es. С этой целью рассмотрим оптимальную схему N
для функции f, удовлетворяющей условию утверждения Es (s ^ 2).
Случай 1: существует ieS, такое, что выходная степень входной вершины xi не меньше 3. Этот случай аналогичен случаю 1 из доказательства теоремы 1.
Случай 2: существует i е S, такое, что выходная степень входной вершины х, равна 2 и одно из ребер, выходящих из хц входит в элемент типа И. Этот случай почти не отличается от случая 2 из доказательства теоремы 1. Небольшое затруднение может возникнуть в ситуации, показанной на рис. 6.
Если бы между элементами gi и g2 не было бы ветвления, то схема N не была бы оптимальной. Следовательно, такое ветвление есть. Но тогда работает прием из случая 2 доказательства теоремы 1 независимо от того, какой из элементов gv или ga относится к типу И.
Случай 3: существует i е S, такое, что выходная степень входной вершины xi равна 2 и оба ребра, выходящие из хь входят в элементы типа ©. Обозначим эти элементы через Д1 и Д2 и рассмотрим рис. 7. Пусть В — первая вершина пути (Д1=>0, являющаяся элементом типа И или точкой ветвления, а С — первая такая вершина пути (Д2 => /). Ниже будет показано, что В или С существует. Обозначим через ft, ..., fp и gi, ..., gq
функции, соответствующие входам элементов начальных участков рассматриваемых путей (см. рис. 7). Согласно определению вершин В и С, существует единственный путь (Аг^В') и единственный путь (Д2=^>С), причем в силу леммы 1 п. (i) можно считать, что все элементы в пути (Av^B'') ив пути (Д2фС') являются элементами © (все встретившиеся отрицания можно устранить, вводя, если нужно, отрицание над fx или над gi или над обеими функциями сразу).
Лемма 4. [Дь В'] П Иг, С'] = 0.
Доказательство. Предположим противное. Тогда имеет место ситуация, показанная на рис. 8. Отсюда следует, что res(D) = A® ... Ф^фх^х^Л® ... ®gq.
Поскольку никакие другие пути из [ЛЬВ) и [Л2, В) не выходят, функции /ь ..., gq не зависят от xt и, следовательно, функция res (В) также не зависит от хь По той же причине функция res(/) зависит от xi только через res (В). Но тогда res(/) не зависит от хь а поскольку iе S, это противоречит тому, что / зависит от хь ■-
Следствие 1. Элементы В' и С' различны.
Следствие 2. Либо В, либо С существует.
Доказательство. Предположим противное.Тогда
В' = С' = t, а это противоречит лемме 4.
Лемма 5. Если существуют оба элемента В и С, то либо не существует пути {В =т- [Л2, С']), либо не существует пути (С=>[Л1,В']); если же существует, скажем, только элемент С, то не существует пути (В' ^ [Л2, С'^).
Доказательство. Пусть существуют оба элемента В и С. Тогда, если бы существовали оба названных пути, граф N содержал бы цикл.
Пусть существует только элемент С. Тогда, если бы существовал путь (В' =ф [ А2, С']), существовал бы и элемент В. ■
Начиная с этого места, будем считать (не теряя при этом в общности), что существует элемент С, а если существует и элемент В, то не существует пути (В ф[Л2, С']).
Лемма 6. С =# /.
Доказательство. Предположим, что С = t. Тогда С — элемент типа И и существует путь (Л1=>С). Отсюда следует, что существует и элемент В. Далее, поскольку | S | ^ 2, существует jeS, отличное от I. Пусть а — какая-либо Ч. П., при которой |аЧ = |а2| = /, q = 1 и произвольным образом фиксируются все остальные переменные, кроме х, и Xj. Тогда fa(xz,x/) = х/. Мы покажем, что, подставляя вместо х, соответствующую константу, можно получить неправильное значение на выходе схемы.
Поскольку не существует пути (В => [Л2, С']), функции gb - • •, Ед не зависят от хь Следовательно,
res (С')а = xz ф h (х/),
где h — некоторая булева функция от одной переменной. Кроме того, поскольку С — элемент типа И,
res (С)а = (res (С')“ & у (х,, х^У,
где а, Ь, се К, а у — некоторая булева функция. Положим X] = с, а затем Xi = d, где d — такая константа, что
ТОада=о.
Тогда’
res(C)o(d, c) = (O&y(t/, c^c = Oc = c=#U^d, с). ■
Шаг, приводящий к удалению элементов. Изменим схему N следующим образом. Добавим подсхему, реализующую (gi®... ...©5»)° при некотором аеК, и ее выход соединим с вершиной Xi, которая перестает быть входной. Число элементов при этом увеличивается на q— 1. Новый граф М' не содержит циклов благодаря тому, что в схеме N нет пути (В' =ф [Л2, О']). Поскольку геЗд,, (С') = а, можно удалить q элементов, образующих множество [Л2, С']. Если С — точка ветвления, то можно удалить еще по крайней мере два элемента. Если же С — элемент типа И, то выберем а так, чтобы функция res^, (С) стала константой. При этом можно удалить элемент С и следующий за ним элемент, который по лемме 6 существует.
Случай 4: существует i е S, такое, что выходная степень входной вершины Xi равна 1 и единственное ребро, выходящее из хи входит в элемент типа ®. Этот случай представляет собой упрощенный вариант случая 3. Надо только элементы типа ®, образующие путь из вершины хи трактовать как множество [Л2, С'], не думая о множестве [ЛьВ'].
Если ни один из случаев 1—4 не имеет места, то за счет уменьшения S мы не можем удалить достаточное число элементов. Зато в этом случае нам известно, что при любом i е S из входной вершины xi выходит единственное ребро, которое входит в элемент типа И. Обозначим этот элемент через Gt. Положим G=(GI|teS}..
Лемма 7. При любых i и ], i ^ j.
Gt ^ G}.
Доказательство. Утверждение леммы непосредственно следует из леммы 3. ■
Определение. Путь С->С\-* ... -*Ct-*C' называется свободным, если СфО при всех I. Индекс f в выражениях вида [С, С']f будет означать, что путь, соответствующий данному множеству вершин, является свободным.
Лемма 8. При любом i е S существует свободный пить (Gi^t).
Доказательство. Предположим, что при некотором i'eS не существует свободного пути (Gi=^>f). Это значит, что все пути (Gi=^f) проходят через элементы вида О/, j #= i (рис. 9).
Пусть a — такая Ч. П., при а все остальные переменные,Пусть a — такая Ч. П., при а все остальные переменные,которой |a4 = |a2| = t, q = 1, кроме хь фиксируются таким образом, что res(G/)a— константа при всех / =# L Тогда fa = xt, но поскольку нет свободного пути (G, =^), функция res(/)a не зависит от Хь ■
Пусть a — такая Ч. П., при а все остальные переменные,
Пусть a — такая Ч. П., при а все остальные переменные,
X;]пX;]пВ дальнейшем, когда будет говориться, что «свободный путь разветвляется (не разветвляется)», это следует понимать в том смысле, что он разветвляется (не разветвляется) хотя бы на два свободных пути.
X;
]п
X;
]п
Обозначим через Е множе- / xj2 /ство всех таких элементов е,
/что е является вершиной неко-
'ч /торого свободного пути (0/=^
^^ и 5 е G.
ЦуЯсно, что Е П G = 0. Если
Iбы мы смогли показать, что
множество Е содержит |S| — РиСе 91— 1 вершин, в которых раз
ветвляются свободные пути вида (G/ф/), то применение леммы 2 к подсчету мощности Е дало бы нижнюю оценку Зп. Однако рис. 10 показывает, что возможен случай, когда ни один из свободных путей вида (G/ФО не разветвляется.
Поместив в схеме элементы на такие места, как а, и подав на их вторые входы подходящие функции от а\ а2 и q, все еще можно при всех i и / реализовать как xi&xb так и Xi^x;. Однако такие элементы вносят свой вклад в сложность. Хотя
мы и не можем указать точное положение этих элементов в схеме, мы можем найти некоторое число, скажем п, различных мест, где начинаются пути, ведущие к таким элементам. Отсюда мы можем заключить, что должно быть не менее п/2 таких элементов (ибо у каждого элемента только два входа).
Следующая лемма дополняет лемму 3.
Лемма 9. Пусть паре I, j е S соответствуют такие свободные пути (Gi^t) и {Gj^t), которые до своего первого пересечения не разветвляются. Обозначим вершину, в которой они впервые пересекаются, через С. Тогда
либо существует свободный путь ^Gt^G^, либо существует свободный путь (Gj^GiY,
каждый такой путь содержит некоторый элемент №1,су\Л0ьсу.
Рис. 10
Доказательство. Рассмотрим рис. 11. Прежде всего заметим, что в силу условия не существует свободных путей ([G„ C]f =^(GZ, С)1) и ([G/,C)^(Gz,C)f).
Пусть а — такая Ч. П., при которой |54 = i, ] а21 = /, а все остальные переменные, кроме х,, xj и q, фиксируются таким образом, что res(G*)a— константа при всех £e{i,/}.
Оба пути (G/^G/) и (G/=^G,) одновременно существовать не могут, так как тогда в графе был бы цикл. Предположим, что в схеме нет ни одного из этих путей либо все такие пути не являются свободными. Тогда подобно тому, как в доказательстве леммы 3, мы установим, что С не может быть ни элементом типа И, ни элементом типа ф.
Не теряя в общности, будем считать, что существует свободный путь (Gi=^G/). Предположим, что какой-нибудь из таких путей не содержит элемента g ф [Gz, С)f U [G/, С]f. Пусть D — последняя вершина этого пути, общая со свободным путем
(Gt^C) (возможно, что D совпадает с О^. Тогда имеется ребро от D к Gj. Положим q = 0.
Рис 1 I
Поскольку функция (res(G) а) ,=0 зависит только от хи (res(D)ct)<7„o=*“, или 0, или 1.
Если бы было
(res(D)a)?=o = O или 1,
то функция (res (/)a)9-o не зависела бы от Xj. Значит, (res(Z))a)9=0 = x“
Положим теперь xt = c с таким расчетом, чтобы функция (res (G;)a)?=o, хг=с не зависела от Xj. Тогда и функция (res(/)a)9_o, хг=с не будет зависеть от Xj. В то же время
(/a)?=0, х^с == Xj ф С. ■
Если паре i, jeS соответствуют такие свободные пути (С,=^0 и (G/=>Z), которые до своего первого пересечения не разветвляются, то будем писать: IRj.
Лемма 10. R является отношением эквивалентности.
Отношение R разбивает множество S на некоторое число к классов эквивалентности: S = Si U ... U Sa. Очевидно, что свободные пути вида (G,^/), соответствующие r-му классу, до
своей первой общей точки пересечения tr не разветвляются. Таким образом свободные пути вида (Gz^f) при i^Sr определяют дерево с корнем tr. Будем называть его свободным деревом r-го класса.
Если Sr = {/}, то считаем, что свободное дерево состоит из одной вершины Gi и Gi = tr.
Обозначим через А множество всех таких вершин g, для которых нет свободного пути вида (g=>/). Вспоминая лемму 8 и определение множества Е, мы видим, что
GRA = E(\A = 0.
Обозначим через к число классов эквивалентности мощности не менее 2, а через Т — множество чисел i е S, принадлежащих этим классам.
Лемма 11. Справедливо неравенство |Л|>(|Г|~^)/2.
Доказательство. Ниже будет доказано следующее утверждение: любое свободное дерево с m концевыми вершинами (/и ^ 2) содержит не менее m— 1 вершин D, из которых выходят ребра вида D->A, покидающие свободное дерево. Поскольку для разных деревьев множества таких вершин D не пересекаются, суммированием по всем свободным деревьям устанавливается, что имеется не менее |Г| — к ребер, ведущих в Л, и, следовательно, |Л|^(|Г| — 6)/2.
Для доказательства утверждения заметим, что в свободном дереве r-го класса эквивалентности есть такая вершина С, что свободные пути (Gz^f) и (0/=^/) впервые пересекаются в С, а любой другой свободный путь (д/=ф/) через С не проходит. Применяя к i и / лемму 9, находим, что существуют вершина Z)e[Gz, C]f (не теряя в общности, можно считать, что имеет место именно этот случай), элемент g ф [Gz, С]f U [G/, С]f и ребро D-^g, При этом, поскольку iRj, не существует свободного пути (g^tyy Следовательно, g^A.
Пометим теперь в свободном дереве вершины множества [Gz, С) и повторим предыдущее рассуждение для непомеченной части дерева. Благодаря разделению путей на помеченные и непомеченные все новые вершины будут отличаться от старых.
Повторив это рассуждение m—1 раз, мы докажем утверждение. ■
Окончание доказательства теоремы 3. Рассмотрим свободные пути вида (/,=>/) и предположим, что существуют такие свободные пути (/г=>0 и (/г^/), которые до сво-
Из леммы 9 следует, что g е G. - Прим, перев.
его первого пересечения не разветвляются. Тогда в принципе возможны два случая.
(0 Свободные пути (/г=>/) и (/№»-/) впервые пересекаются в вершине, отличной от tr и tr-. Но тогда, поскольку ни один из этих свободных путей не разветвляется, в силу определения отношения R ни одна из вершин tr и tr' не может быть корнем свободного дерева.
) Существует либо свободный путь ^,=5-1^, либо свободный путь (t^^tr). В одном случае вершина tr не может быть корнем свободного дерева, в другом — вершина Z^1).
Отсюда следует, что все свободные пути вида (6- ф /), за исключением самое большее одного, разветвляются.
Заметим, что число корней tr свободных деревьев равно s — |7| + й. Как и при доказательстве теоремы 2, заключаем, что существует s— |7| + &—1 первых вершин, в которых разветвляются свободные пути вида (^ФО-
Применим лемму 2 к графу, в котором множеством входных вершин является G, множеством внутренних вершин является Е, а ребрами — ребра свободных путей. По лемме 7 число входных вершин этого графа равно s. Далее, очевидно, что t является его единственной выходной вершиной. Следовательно, по лемме 2
|£|>2s-|7| + A-2.
Наконец, в силу лемм 7 и 11
7(/)^|С| + |Е| + |Д|>35--^^--2.
Поскольку [7|^ s, теорема доказана. ■
5. РЕЗУЛЬТАТ О СООТНОШЕНИИМЕЖДУ СЛОЖНОСТЬЮ СХЕМ И ФОРМУЛ
Определение. Схема называется древовидной, если все ее внутренние вершины имеют выходную степень, равную 1.
Древовидные схемы изоморфны булевым формулам. Для булевой функции f определим сложность при реализации формулами как минимально возможное число вершин с входной степенью 2 в древовидной схеме, реализующей функцию f, и обозначим ее через 7(f).
Если допускать только элементы типа И, то для линейной функции Х1ф...фх„ сложность при реализации формулами
*) Тем самым доказано, что из двух свободных путей (/г=>/) и (^'“^О непременно хотя бы один разветвляется до их первого пересечения. — Прим, перев.
будет равна л2—1 [5], а комбинационная сложность будет равна Зп— 3 [18]. Мы докажем аналогичный результат для сложности, когда допускаются также и элементы типа ф.
Определение. Пусть 5— произвольное подмножество множества Хп. Внутреннюю вершину С схемы N будем называть S-вершиной, если для вершин Ci и С2, соединенных с вершиной С ребрами Ci->C и Сг-*С (Ci #= С^, существуют пути (5 ф Ci) и (5 ф Сг) (в частности, возможно, что Ci е S или C2eS). Число 5-вершин в схеме N будем обозначать через Ps.
Следующая лемма доказывается довольно похоже на лемму 3.
Лемма 12. Пусть f: Кп-*К— произвольная булева функция, N — схема, реализующая f, и пусть аь ..., ам — такие Ч. П., фиксирующие все переменные из Хп \ 5, что
fa, * faf при i^KX^ i, j < му
Тогда.
Ps>(log2M)/4-l,
(Нечипорук [9].) Если N — древовидная схема, то
У outdegree Х]f0^ М— 1.
ieS
Доказательство, (ii) следует из (i) и определения древовидной схемы.
Обозначим через N' подсхему схемы N, состоящую из путей (5 Ф 0 • В схеме N' вершины с входной степенью 2 это в точности 5-вершины схемы N.
Пусть a — произвольная Ч. П., фиксирующая все переменные из Хп \ 5. Тогда res(C)a— константа для всех вершин С, не принадлежащих N'.
Пусть Л е5 либо А это 5-вершина, пусть В = t либо В это 5-вершина, и пусть существует путь (ДфВ), не содержащий других 5-вершин. Такой путь (ДфВ) будем называть программируемым ребром схемы N'.
Это название выбрано по следующей причине. Обозначим через е ребро рассматриваемого пути, входящее в В. Выясним, как res(e)a зависит от гез(Д)а при различных Ч. П. а. Независимо от числа элементов в этом пути выбор а позволяет «запрограммировать» эту зависимость не более чем 4 способами:
res (e)a = res (Д)о, или res (Д)а, или 0, или I (ср. с доказательством леммы 3).
Очевидно, что схема N' содержит не более 2Ps + 1 программируемых ребер. Следовательно, различные Ч. П. а позволяют «запрограммировать» не более 42₽s+1 различных подфункций fa. По условию 2Ps+1"^M. Лемма доказана. ■
Применим лемму 12 к функции f; К"-* К, которая определяется следующим образом. Пусть п = log2 s — log2 log2 s + 2s ($ = 22Т, где t — натуральное). Разобьем переменные на группы:
(°р •••• ^og^-iogjog,.), (^р О> (Ур У8\
Пусть
Я аРai0g2S-10g210g2S’
^ = xia|iog2s+P x(lai + i)iog2s»
а значение f задается равенством
t^av ..., У^ = У^\.
Теорема 4. Справедливы неравенства
T(/)^O(n2/log2n),
L^=O^Y
Доказательство, (i) Для каждого i из диапазона О i s/log2 s — 1 определим
^Z = {Xt log2s+P ’^(Z + l) log2s}e
Сделаем подстановку, фиксирующую а таким образом, что |й| = /, и фиксирующую произвольным образом переменные Xj^Si. Тогда 2s различных подстановок констант вместо переменных ух, ..., ys дают 2s различных подфункций функции /, зависящих лишь от переменных из S/.
Применяя лемму 12 п. (ii), получим при любом i
У outdegree х$ ^ ~ — 1.
xiGSi
Поскольку 3/ n Sr = 0 при I ф V,
ПЛ > £ X outdesree Я/ > (7 - 1) 7^7 = О (rt2/log2 п\ i Xj^Si
Схему, реализующую функцию f, построим следующим образом: при 1 ^^^ log2s реализуем функции
^. ^-s/log2s + log2S~log2log2s > ^
^(я> xfe» ^log.s+fc’ Х2\о§28Л-к> Xs-log2s+^) xl a I logs s+fe-
По теореме 1, каждую функцию^ можно реализовать со сложностью 3s/log2s.
Пусть с = ср ..., cl0g2S ~ множество новых переменных. Построим схему для функции
По теореме 1 сложность этой схемы не больше 3s. При каждом к из диапазона 1 ^ к ^ log2 s соединим выходную вершину схемы для функции fk с входом Ск схемы для функции f. В результате получится схема для функции f сложности 6s. Теорема доказана.
Автор приносит благодарность профессору Дж. Хопкрофту, доктору П. ван Емде Боас и Д. Пауль за поддержку, помощь и обсуждение результатов. Автор благодарит также 3. Галил за указание, позволившее улучшить первоначальную нижнюю оценку 2,25п теоремы 3 [11] до 2,5п.
Список литературы
Cook S. A. The complexity of theorem proving procedures, Proc. 3rd Ann. Symp. on theory of computing, 1971, 151—158. (Русский перевода Кук С. А., Сложность процедур вывода теорем, Кибернетический сборник, новая серия, вып. 12. — М.: Мир (1975), 5—15.)
Fischer М. J. Lectures on network complexity, University of Frankfort, 1974.
Hotz G. Schaltkreistheorie, de Gruyter, Berlin, 1974.
Karp R. M. Reducibility among combinatorial problems, Complexity of computer computations, Proc. Symp. (1972), 85—104. (Русский перевода Карп P. M. Сводимость комбинаторных проблем, Кибернетический сборник, новая серия, вып. 12. — М.: Мир (1975), 16—38.)
Храпченко В. М. О сложности реализации линейной функции в классе П-схем, Матем. заметки 9, № 1 (1971), 35—40.
Лупанов О. Б. О сложности реализации функций алгебры логики формулами: Сб. «Проблемы кибернетики», вып. 3. — М.: Физматгиз (1960), 61—80.
Melhorn К., Galil Z. Monotone switching circuits and boolean matrix product, preprint, 1974.'
Meyer A., 6 853 Lectures notes, Dept, of Electrical Engineering, Mass. Inst, of Tech., Cambridge, MA, 1974.
Нечипорук Э. И. Об одной булевой функции, ДАН СССР 169, № 4 (1966), 765—766.
Paterson М. S. Complexity of monotone networks for boolean matrix product, Tech. Rep. University of Warwick, 1974. (См. русский перевод: Патерсон M. С. Сложность монотонных схем для булева умножения матриц, Кибернетический сборник, новая серия, вып. 15. — М.: Мир (1978), 28—37.)
Paul W. 2t25N-lower bound on the combinatorial complexity of boolean functions, Tech. Rep. TR 74-222, Cornell University, Ithaca, 1974.
Pratt V. R. The power of negative thinking in multiplying boolean ^matrices, 6th Ann. Symp. on theory of computing, 1974.
Savage J. E. The complexity of computing, draff, 1974.
Savage J. E. Lamagna E. A., Combinational complexity of some monotone functions, 15th Ann. Symp. on switching and automata theory, 1974,
Savage J. Е. Computational work and time on finite machines, J. ACM, 19, N 4 (1974), 660—674.
Shannon С. E. The synthesis of two-terminal switching circuits, BSTJ, 28, N 1 (1949), 59—98. (Русский перевод: Шеннон К. Э. Синтез двухполюсных переключательных схем, в сб. Шеннон К. Э. Работы по теории информации и кибернетике. — М.: ИЛ (1963), 59—101.)
Schnorr С. Р. Lower bounds for the product of time and space requirements of Turing machine* computations, Proc. MFCS (1973), 153—163.
Schnorr С. P. Zwei lineare untere Schranken fuer die Komplexitaet Boole- scher Funktionen, Computing, 13 (1974), 155—171.
Schnorr С. P. The combinational complexity of equivalence, GI-Fachtagung Automatentheorie und Formale Sprachen, Kaiserslautern, Springer-Verlag, Berlin, 1974. (См. русский перевод: Шнорр К. П., Комбинационная сложность эквивалентности, наст. сб. стр. 74—81.)
Stockmeyer L. J. The complexity of decision problems in automata theory and logic, Project MAC TR 133, Atass. Inst, of Tech., Cambridge, MA, 1974.
Strassen V. Berechnung und Programm 1, Acta Informatica (1972), 320— 335.
О комбинационной сложности некоторых симметрических булевых функций1)
Л. Дж. Стокмейер
Mathematical Sciences Department IBM Thomas J. Watson Research CenterYorktown Heights. New York 10598
РЕЗЮМЕ
Описано одно свойство таблицы истинности симметрической булевой функции, из которого можно вывести нижнюю оценку минимального числа двуместных булевых операций, необходимого для вычисления этой функции. Для некоторых функций от п переменных могут быть получены нижние оценки, лежащие приблизительно между 2п и 5п/2. В частности, при каждом т^ 3 получается нижняя оценка вида 5п/2 — 0(1) для функции от п переменных, принимающей значение 1 тогда и только тогда, когда число единиц среди значений ее переменных кратно пг. При щ = 4 эта нижняя оценка является наилучшей из возможных с точностью до аддитивной константы.
ВВЕДЕНИЕ
В настоящей работе устанавливаются оценки комбинационной сложности некоторых булевых функций — это делается в том же духе, что и в работах [1, 4, 6, 7]. Комбинационная сложность булевой функции Д которую мы обозначаем через C(f), есть минимальное число операций (или «элементов»), требующихся для реализации функции f ациклической логической схемой, причем в качестве операций могут использоваться любые булевы функции от двух переменных, т. е. двуместные И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ и т. д. (Полные определения приведены в разд. 2.) Хорошо известен результат Лупанова [2], утверждающий, что комбинационная сложность большинства булевых функций от п переменных асимптотически равна ^[п. Вместе с тем прогресс, достигнутый в решении проблемы получения точных оценок комбинационной сложности конкретных булевых функций, относительно невелик. В частности, известно мало методов доказательства нижних оценок.
Для произвольной булевой функции f от п переменных, существенно зависящей от всех своих переменных, имеется очевидная нижняя оценка C(f)^ п- 1. При дополнительных предположениях об функции f Шнорр [6] повысил эту нижнюю
9 Stockmeyer L. J., On the combinational complexity of certain symmetric Boolean functions, Mathematical Systems Theory, 10 (1977), 323—336.
© 1977 by Springer-Verlag New York Inc.
© Перевод на русский язык, «Мир», 1979.
оценку до 2га — 3. Например, для симметрической булевой функции t^ (хр ..., х„), принимающей значение 1 тогда и только тогда, когда по меньшей мере две из ее переменных xj, ..., хп принимают значение 1, его методы дают оценку С (4П)) ^ 2га— 3. Пауль [4] описал одно семейство функций /(Л)(Х1,... ,хп) (га = 1,2,3,...) и доказал оценку С (/<л)) ^ 5га/2 — с, где с — константа, не зависящая от п; вместе с тем C(fW)^ 6га. Это — наилучшая из известных на сегодняшний день нижних оценок сложности реализации конкретного семейства функций, имеющих линейную сложность,.В настоящей работе нижняя оценка 5га/2, данная Паулем, не улучшена, но показано, что она имеет место для класса функций более широкого, чем рассмотренный в [4].
Основной результат настоящей работы (теорема 1) позволяет получать нижние оценки комбинационной сложности произвольной симметрической булевой функции (СБФ) исходя из одного простого и легко распознаваемого свойства «таблицы истинности» этой функции. Например, обозначим через с^ (%р • • • ’ х^ СБФ, принимающую значение 1 тогда и только п
тогда, когда У хг сравнимо с нулем по модулю /га; для этой z=i
функции мы можем получить оценку
C(cW)>5n/2-m/2-4
при любых целых тип, таких, что 3 ^ т <. п. При т = 4 эта нижняя оценка является оптимальной с точностью до аддитивной константы, поскольку, как будет показано, С (с^п)) ^ 5га/2 при всех п.
Кроме того, из основной теоремы извлекается информация, касающаяся плотности тех СБФ, сложность которых превосходит определенные значения. Из работ Шнорра [6, 7] следует, что все, кроме восьми, из 2Л+* СБФ от п переменных имеют комбинационную сложность не ниже 2га— 3. (Из этих восьми исключений два — константы, а шесть остальных имеют сложность, равную п—1.) Здесь будет показано, что по крайней мере половина СБФ от п переменных имеет комбинационную сложность не ниже 5га/2— 5. (С другой стороны, используя методы Мюллера и Препараты [3], можно показать, что C(f)^ ^ 6га для любой СБФ f от п переменных.)
Формулировка теоремы 1 вместе с примерами ее применения приведена в разд. 3. Раздел 4 посвящен доказательству теоремы 1. Хотя это доказательство опирается на технику, использовавшуюся Шнорром [6] и Паулем [4], настоящая работа не предполагает предварительного знакомства с [4, 6].
ПРЕДВАРИТЕЛЬНЫЕ СВЕДЕНИЯ
Пусть {0,1}х" обозначает множество n-ок из нулей и единиц, {0,1}" обозначает множество двоичных слов длины п, STn — множество булевых функций от п переменных:
S\ = Wh {о, 1}х"-*{0, 1}},
а ^„ — множество СБФ от п переменных:
^n = {f е ^ |f — симметрическая}.
Функция f е STn является симметрической тогда и только тогда, когда существуют фо, ®i., ..., Фпе{0,1}, такие, что для любого набора (xi хп) е {О,1}х”,
Жxn) = wh где / = ф{{|хг=1}..
(41=5 обозначает мощность множества S.) В этом случае мы связываем с функцией f двоичное слово
Ф (/) = ФоЩ>1 . . . Ф„.
Если ®е{0,1}* и к — положительное целое число, то положим о/= сою ... <о (^ раз); ®° = е (пустое слово); |со| обозначает длину о, в частности |в| = 0.
Пример 1. Пусть I, m и п— такие целые числа, что m, п 5$ 1 и 0 ^ I < т, и пусть c^z е ^„ обозначает функцию «сравнимо с / по модулю т»:
с^г(хр .... xj=l<^#{t|xz=l} = /(modm).
Тогда w(cmj) есть префикс слова (0z10m~z"'1)fc для каждого ^^(«+ 1)//и.
Пусть Л, V, ф, *-* обозначают двуместные булевы функции конъюнкцию, дизъюнкцию, исключающее «или» и эквивалентность соответственно; — обозначает одноместную функцию отрицание. Пусть х обозначает булеву переменную или функцию и se{0, 1}, тогда
„( х, если е = 1
хе = S( х, если е = 0.
Константа — это такая симметрическая функция f, что w(f)e e0*U1*.
Нас будет интересовать сложность комбинационных логических схем, реализующих заданную булеву функцию f. Понятие схемы, рассматриваемое в настоящей работе, имеет тот же смысл, что и в работах [4, 6, 7]. А именно, (комбинационная логическая) схема v — это ориентированный ациклический
граф, удовлетворяющий следующим условиям: (i) входная степень каждой вершины А схемы v равна либо 0 либо 2 (входной степенью вершины А в схеме v называется число ребер схемы, входящих в Д); (ii) некоторым п вершинам, имеющим входную степень 0, однозначно приписаны булевы переменные xiхп; эти вершины называются входными вершинами; (ш) каждой из оставшихся вершин, имеющих входную степень 0, приписана какая-нибудь из констант 0 или 1; такие вершины называются вершинами-константами; (iv) каждой вершине, имеющей входную степень 2, приписана функция из #"2; такие вершины называются элементами; (v) каждому ребру приписан номер 1 или 2 таким образом, что у каждого элемента два входящих в него ребра имеют разные номера. В дальнейшем мы будем использовать для обозначения вершин заглавные латинские буквы. Иногда мы будем именовать входные вершины приписанными им переменными xt, Xj и т. п. Ребро, ведущее из вершины А в вершину В, будем обозначать через <А, В).
Пусть схема v имеет п входных вершин; каждой вершине А схемы v сопоставим естественным образом [ср. 5, 6, 7] функцию res (Д; v) е ЗГп" если А — входная вершина xt, то res (Д; v) = = Xi; если А есть вершина-константа и ей приписана константа бе {0,1}, то res(A;^= Ь; и по индукции для каждого элемента А гез(Д; v) = g(res(B; v), res (С; v)), где {В, Д> и <С, Д>— ребра, входящие в Д и имеющие соответственно номера 1 и 2, a g—функция, приписанная элементу А. Будем говорить, что схема v реализует функцию fegrn, если v содержит п входных вершин и такую вершину Т, что res(T;v) = f. Число элементов в схеме v обозначим через size(v). Определим комбинационную сложность функции f равенством
С (f) = min {size (v) |v реализует f}.
ФОРМУЛИРОВКИ РЕЗУЛЬТАТОВ
В дальнейшем мы будем обозначать через Ж множество двоичных слов из {0,1}4, содержащих три различных подслова длины два:
Ж ={0100, 0010, ОНО, ООН, 1011, 1101, 1001, 1100}.
Мы получим нижние оценки вида 5п/2— 0(1) для комбинационной сложности тех функций f е Уп, у которых в слово w(f) поблизости от его середины входит в качестве подслова какое-нибудь слово из множества Ж. Имеет место следующая теорема, являющаяся основным результатом этой статьи. Для неотрицательного целого к положим
{0, l^-loefO, 1}’||со|>й}.
Операция конкатенации распространяется на множества слов естественным путем.
Теорема 1. Пусть п и к — неотрицательные целые числа, и пусть f еУп такова, что
1}>,!.Г -{О, 1}>й.
Тогда
С(Г)>2п + к-3.
Теорема 1 будет доказана в разд. 4. Сначала мы покажем на нескольких примерах ее применение и обсудим оптимальность получающихся нижних оценок.
Пусть t'^ обозначает функцию «порог р», определенную соотношением
(*1*„)= 1* \i |хг = 1} > р.
Следствие 1. Пусть р и п —такие целые числа, что ^^р^п—Х. Тогда
С ^t^ > 2n + min {р — 2» п — р — 1} — 3.
Доказательство. Если заметить, что w ^ = орГ-р+1 = 0р-2.0011 . Г-”-1, то результат непосредственно следует из теоремы 1. g
В частности, для „функции голосования" получаем С (/&)> 5п/2 -5.
Вспомним семейство функций с^ t из примера 1.
Следствие 2. Пусть 0^1< m < п и пг^З. Тогда
С (с% ,) > 5га/2 - т!2 - 4.
Доказательство. Положим к = [(га — т — 1)/2] и заметим, что
а/ (с% /) е {0, 1}>6 • {0100, 0010} • {0, l}>ft. g
Для функций «сравнимо с / по модулю 4» нижняя оценка следствия 2 является наилучшей из возможных с точностью до фиксированной аддитивной константы:
5п/2-6<С(^>г)<5п/2.
Нижняя оценка дается следствием 2. Для получения верхней оценки рассмотрим схемы, изображенные на ри,с. 1 и 2. (Для облегчения изложения мы отступаем от нашего формального
определения схемы; так, например, мы используем символы ух и уо для некоторых входных вершин.) Для того чтобы облегчить описание функционирования этих схем, определим отображение р множества целых чисел в множество {0,1} х2;
'(0,0)при2 = 0(mod 4)
'(1,1)приz = l(mod 4)
p(z)—q,q)ПрИz — 2(mod4)
-(0,1)при2 = 3(mod 4).
Для те{0,1}х2 определим р~’(т) как такое целое ze е{0, 1, 2, 3}, что р(г) = т. Функционирование схемы у0 опи
сывается соотношением (иь «о) = р (-«i + хг + х3) • Функционирование схемы у/ при / ^ 1 описывается аналогично:
(“ь «о) = Р (р-1 кУь У^ + х4/ + Ху+1 + Х4/+2 + Х4/+3.
(Для того чтобы помочь читателю, желающему проверить это утверждение, заметим, что ребра, помеченные в схеме у/ символами У1 и Уо, вычисляют соответственно старшую и младшую цифры двоичного представления числа
Р-1 (Уь Уо) + хм + х4/+1 (mod 4).)
Используя эти схемы, последовательно соединив выходы «1 и и0 каждой схемы у/ со входами у\ и у» схемы у/+ь легко увидеть, что С (с^ ^ 5п/2 при любых I и п.
Оказывается, существует семейство функций, для которых нижняя оценка теоремы 1 является точной. Пусть I — положительное целое число, п = 8/ + 3 и функция &<"> е Уп определена соотношением
wW = (0110/ -0110- (ОНО/.
Тогда С (/t(n)) = 5п/2 — 9/2. Нижняя оценка величины C(/i<n)) непосредственно следует из теоремы 1. Схема, дающая верхнюю оценку, строится из схем уо, 71tai так же, как описано выше. Выход «1 схемы у2» реализует функцию hw. Далее, элемент, помеченный * на рис. 2, можно удалить из схемы ^аь поэтому число элементов в построенной схеме равно 4 + 20i — — 1 = 5га/2 —9/2.
Как упомянуто во введении, теорема 1 дает следующую информацию плотностного характера.
Следствие 3. Для каждого п^З,
^^еУп\Ст>5п/2-^>2п.
Доказательство. При к = ((п— 3)/2] и т=] (п—3)/2[ множество (0,1р-Ж-{0,1}т содержит 8-2*+'п = 2'1 различных слов. Отсюда следует требуемое заключение. ■
Аналогично, заметив, что для каждого Z ^ 5 в множестве {0,1}’ имеется ровно десять слов, не содержащих подслов из Ж, можно доказать, что при 5 ^ I ^ п + 1,
* {f еР„|С(f)> 5п/2 - Z/2 - 3} > (1 - 10 • Т^ • 2"+1.
ДОКАЗАТЕЛЬСТВО ТЕОРЕМЫ 1
Говорят, что схема v минимальна для булевой функции /, если v реализует / и size(v) = C(f). Если v минимальна для f и f существенно зависит по меньшей мере от двух из своих переменных, то v содержит в точности один элемент Т с выходной степенью 0 (выходной степенью вершины А схемы v называется число ребер схемы, исходящих из А, обозначение — outdeg(A; v)), Т называется выходным элементом v. Кроме того, res(T;v)=f, и без потери общности можно считать, что в схеме v нет вершин-констант и нет параллельных ребер. Для произвольной вершины А схемы v определим множества вершин — (непосредственных) преемников и предшественников вершины А. А именно, scr(A;v) — множество всех вершин В, которые в схеме v соединены с А ребром <А,В>, ведущим из А в В, и pred(A;v) — множество всех вершин В, которые в схеме v соединены с А ребром <В,А>, ведущим из В в А. В тех случаях, когда не может возникнуть путаницы, мы пишем просто oiltdeg(A), scr(A) и т. д.
Для й^0ип^2& + 3 положим
F„, k = {/ е »п | w (f) е (0, \^к • Г • (0, 1}>й},
И
с (п, k) = min (С (f) | f е Fn.by
Мы доказываем индукцией по к, что С(п, к) ^ 2п + к— 3 для всех & ^0и/г^2^4-3.
Доказательство для й —О дано Шнорром [6]. Для полноты мы дадим набросок этого доказательства; некоторые его части (в частности, леммы 1 и 2) используются также и при доказательстве шага индукции.
Введем следующие полезные обозначения. Пусть (еУп, причем и ^ 3, и w(f) = wowxtown-\wn, где со е {0, I}”-3. Будем обозначать через Ло, Ль Ло и Л1 функции из ^„-2, определенное) = awiO), гу(/О1)=1У(Ло)= дакоаУл-ь w(Л1) = (own-iwn, а через Л и Л — функции из ^n-ь определенные соотношениями W(fo) = W0WitoWn-i и ' W (Л) = W\toWn-\Wn.
Замечание. Пусть f е ^n; 1 ^ I, j ^ п; i Ф j; a d, се {0,1} — произвольные константы. Если geS"n_2 получается из f подстановкой констант d вместо Xi и е вместо х;, то g = fde- Аналогично, fd получается ие из f подстановкой константы d вме
сто Xi.■
Слова из множества Ж выделяются среди слов множества {0,1}4 по причинам, изложенным в лемме 1.
Лемма 1. (1) Если jeF„,t при некотором к"^0, то функции Ло, Ль Л1 попарно различны. (2) Если feFn,k при некотором 6^1, то ни одна из функций Ло, Ль Ль Л> Л не равна константе.
Доказательство. Утверждение леммы есть непосредственное следствие определений, и его проверка предоставляется читателю. К примеру, если abed g Ж, то три слова ab, be, cd различны, откуда следует справедливость (1). ■
Следующая лемма дает ограниченную, но полезную информацию о строении схем, реализующих функцию из Fn, к.
Лемма 2. (Шнорр [6].) Пусть feFn,k при некотором k^O, v — минимальная схема для f. Тогда в схеме v существуют такие различные входные вершины xi и xj (i #= /) и такой элемент А, что (i) pred(A) = {х,,х^, и (ii) outdeg(x,)^ ^ 2 (см. рис. 3).
Доказательство. Поскольку v ациклична и минимальна, нетрудно убедиться в существовании Xi, xj и А, удовлетворяющих (i). Для завершения доказательства мы покажем,
что степени вершин xt и Xj нс могут одновременно равняться 1. Пусть g—функция из ^2, приписанная элементу А. Два из значений g(0,0), g(0,1), g(l,l) должны быть равны. Если бы оказалось, что outdcg(xz) = outdeg(x;) = 1, то, следовательно, и две из функций f00, fob fn также были бы равны. Однако по лемме 1 (1) это противоречит предположению, что f^Fn,k. ■
Теперь можно доказать базис индукции.
Лемма 3. (Шнорр [6].) С(п, 0)^2п —3 для всех п^З.
Доказательство. Обозначим через F^q множество отличных от констант функций из ^2 и положим С(2, 0) = = min {С(f) | f е F^ о}- Мы докажем индукцией по п, что С (/г, 0) > 2и— 3 для всех п ^ 2. При п = 2 утверждение очевидно (базис индукции).
Для доказательства возможности проведения шага индукции предположим, что f^Fn,Q и п ^ 3. Из определений следует, что найдется такая константа ее {0,1}, что feeFn_i,0. Пусть v — минимальная схема для f, и пусть Xi и Xj будут такими, как в лемме 2. Полагая х} равным е, мы получаем схему V, реализующую fei причем size (vz) ^ size (v)—2, так как outdeg(xy; v) ^ 2 (ср. [4, 6]). (Болес формально, мы должны были бы заменить вершину Xj вершиной-константой, которой приписана константа е, переименовать оставшиеся входные вершины символами хь ..., хп-\ и затем исключить (естественным путем) все элементы, имеющие среди своих предшественников вершины, реализующие константы.) Поэтому мы заключаем, что С(/г, О)^С(/г—1,0)+2 для всех п ^ 3, и шаг индукции леммы 3 доказан. ■
Шаг индукции доказательства теоремы 1 сформулирован в виде леммы 4.
Лемма 4. Пусть пик — такие целые числа, что к ^ 1 и п ^ 2к + 3. Тогда
(Цп, &)>min{C(n- 1, к- 1) + 3, С(п-2, к- 1) + 5}.
Для того чтобы убедиться, что из лемм 3 и 4 следует теорема 1, зафиксируем некоторое ^1 и допустим, что С^п, /)^ ^2и + / — 3 для всех / < к и и^2/ + 3. Тогда для всех п ^ 2k + 3 С^п, к) ^ min{2(n — 1) + (6 — 1)— 3 + 3, 2(м — 2) + + (&— 1)_ 3 + 5}= 2п + к — 3.
Оставшаяся часть статьи посвящена доказательству леммы 4. Пусть функция f^Fn>k произвольна, a v — схема, реализующая f. Основной метод, используемый при доказательстве,
состоит в том, чтобы преобразовывать схему v таким образом, чтобы при этом получалась некоторая схема V, такая, что или
size (v') ^ size (v)— 5 и V реализует fOi, или
size (v') ^ size (v)— 3 и V реализует fe при некотором ee{0,1}.
Так как f^Fn>k и &^1, то очевидно, что foi е Fп-2, *_i и fo, fi g Fn-i, й-ь
Без потери общности предположим, что схема v минимальна для f. Обозначим через Т (единственный) выходной элемент схемы v. Для произвольной схемы у, имеющей п входных верп
шин, обозначим через xdeg(y) величину У, outdeg(xz; у). Пусть z=i
х deg (v) = min {х deg (у) |у — минимальная схема для f}.(1)
(Условие (1) используется ниже только при доказательстве факта 5.)
В минимальной схеме каждому элементу приписана какая- либо из десяти функций, принадлежащих одному из описанных ниже двух классов. Функция типа суммы {s-функция) имеет вид {ух^уй)®, где ее {0,1}. Функция типа «или» {г-функция) имеет вид (y^V yc2)d, гДе Ь, с, de{0,1}. В дальнейшем нас не будет интересовать точный вид функций, приписанных элементам схемы v; мы будем иметь дело лишь с классами, которым эти функции принадлежат. Элемент, которому приписана s-функция (r-функция), называется s-элементом {г-элементом)-, на рисунках такие элементы помечены символом s (г).
Доказательство распадается на несколько случаев. Первые два случая совпадают со случаями I и II из [4].
Случай 1. В схеме v существует такая входная вершина хЛ что outdeg(x/) ^ 3.
Подставляя вместо X/ константу 0, получаем схему V, реализующую fo, для которой size (v') ^ size (v)— 3 (так как элементы, принадлежащие scr(x;), могут быть удалены — ср. с доказательством леммы 3).
Случай 2. Существует такая входная вершина х/, что outdeg(x/; v) = 2 и множество scr(x/;v) содержит г-элемент.
Пусть 5сг(х/) = {Л,С}, элементу А приписана функция (У1 V y0d и ребро <х/, Л> имеет номер 2 (см. рис. 4). Пусть V обозначает схему, полученную из v заменой вершины х/ на вершину-константу, реализующую константу с и соответствующим переименованием входных вершин. Тогда res^;v') есть константа и res {Т; V) = fc. Заметим, что А ^ Т, так как по лем-
ме 1 (2) fc отлична от константы. Но предположение scr(A;v) = = {С} противоречило бы минимальности схемы v, так как тогда Д и С могли бы быть заменены одним элементом. Поэтому из V можно удалить по крайней мере три элемента (а именно, Д, С и по крайней мере один элемент из зсг(Д) — -{С}).
В оставшейся части доказательства будем считать, что хь X/ и Д таковы, как в лемме 2 (и на рис. 3).
Случай 3. Случаи 1 и 2 не имеют места и outdeg(xz; v) = 2.
Замечание. Случаи outdeg(x,)=l и outdeg(x;)=2 довольно схожи/ поэтому мы могли бы доказывать их параллельно. Для определенности мы будем полагать, что outdeg(x,) = 2,
Рис. 4. Часть схемы V, отвечающая случаю 2.Рис. 4. Часть схемы V, отвечающая случаю 2.кроме того, в этом случае возникают некоторые осложнения, отсутствующие в случае outdeg(x,) = 1. А так как мы не даем отдельного доказательства для случая outdeg(x,) = 1, то мы позаботились о том, чтобы использовать условие outdeg(x,) = 2 так, чтобы наше доказательство проходило и для случая outdeg(xz) = 1.
Рис. 4. Часть схемы V, отвечающая случаю 2.
Рис. 4. Часть схемы V, отвечающая случаю 2.
Как заметил Пауль [4], в рассматриваемом случае не ясно, можем ли мы исклю-
чить из схемы три элемента, лежащие
вблизи входов xi и Xj. Поэтому он использовал следующий метод, позволяющий обнаружить элементы, которые допускают исключение и которые, возможно, лежат глубоко внутри схемы. Для удобства изложения мы опишем его метод в виде процедуры locate, которая применяется к элементу X схемы v и вырабатывает последовательность элементов Уь ..., Ур.
locate (X): /*-1; У[*-Х;■
цикл: если outdeg(yz) ^ 2, или scr (yz) содержит г-элемент, или У/ = Т, то работа заканчивается; в противном случае положить yz+i равным (единственному) элементу из scr(yz).
(Заметим, что yz+i— s-элемент.); /*-/4-1; перейти на цикл.
Пусть Bi обозначает (единственный) элемент из scr(x/,v) — — {Д}, a Ci—элемент из scr(x/;v)—{Д}. Так как случаи 1 и 2 не имеют места, Д, Bi и Cz — s-элементы; поскольку v минимальна, эти три элемента различны. Пусть locate (Bi) вырабатывает последовательность элементов Вь ..., Вр, a locate (Ci) вырабатывает Сг, ..., Cq. Пусть (Bi} = pred(Ci)— {хД и {£„,}= pred(Cm) — {Cm_i} при 1<т<9 (см. рис. 5).
Факт 1. Bi^ Ст при любых turn, l^l^p и 1 ^ tn ^ q.
Доказательство, Нетрудно видеть, что равенство Bi = Cm при каких-либо I и m влекло бы f00 = fn, что противоречит лемме 1 (1). ■
Так как v ациклична, то одновременно не могут существовать (ориентированная) цепь из вершины Вр в вершину Cq
и цепь из Cq в Вр. Без потери общности сделаем допущение, что не существует цепи из Вр в Cq.
Факт 2. При любых I и m, 1 ^ I ^ р и \ ^ т ^ q, Bi =# + Етине существует цепи из Bi в Ет.
Доказательство. Предположим, что Bi = Em при некоторых / и пг. Если / < р, то B/+i = Cm, что противоречит факту 1. Если же I = р, то существует цепь из Вр в С^ что противоречит сделанному выше допущению. Теперь, поскольку Bi ^ Епг при любых / и т, то чюбая цепь из Bi в Ет должна прохоцить через вершину В3 (или начинаться в ней), а это влечет наличие цепи из Вр в С~. ■
Если q > 1, то для дальнейшего удобно перестроить схему v путем удаления ребер <xhC\> и {Eq, Cq> и введения новых ребер <х/, Cq> и <Eq, С{). Такая перестройка не меняет величин size(v), xdeg(v) и res(T;v). Кроме того, мы переобозначим Cq через С и положим {£*} = pred (С) — {х7} (см. рис. 6).
Ф а кт 3. (1) В\ ^= Е и не существует цепи из Bi в Е.
А =# Е.
Непременно или outdeg(C)^2, или scr(C) содержит r-элемент, или С = Т.
Доказательство. Пункт (1) следует непосредственно из факта 2. Пункт (2) верен потому, что если А = Е, то res(C;v) = х“ при некотором ае{0,1}, а это противоречит минимальности v. Пункт (3) следует из определения процедуры locate. ■
В частности, все шесть вершин, показанные на рис. 6, различны.
В нескольких рассмотренных ниже подслучаях исключение элементов производится путем преобразования схемы v в схему
Рис. 6. Часть перестроенной схемы v.
ve при некотором ее {0,1}. Содержательно, ve получается из v посредством следующей подстановки констант: (res (£■; v))е вместо X; и (res(£';v))® вместо xt. Для того чтобы продемонстрировать действие этой подстановки, мы построим ve путем выполнения следующих преобразований над v: (i) исключим вершины xi и xj вместе с идущими из них ребрами и переобозначим оставшиеся входные вершины символами xi, ..., хл_2; (и) заменим ребро <Е, С> ребром <Е, В^ (вследствие факта 3(1) при этом не возникает циклов); (ш) заменим А и С вершинами-константами, а именно положим гез(Д; ve) = У, где (У1®У2)Ь— функция, приписанная элементу А в схеме v, и res (С; ve) = е© с, где кУх^УъУ— функция, приписанная элементу С в схеме v. Так как функция f — симметрическая, то ясно, что res(T; ve) = foi как при е = 0, так и при е == 1. Пусть
^ = set (Д; v) U set (С; v).
Мы покажем, что в том случае, когда ф^ 5s 2, из схемы ve (при надлежащем выборе е) помимо вершин А и С можно удалить еще по меньшей мере три элемента. Это дает схему V, также реализующую foi и такую, что size (v') ^ size (v)—5.
Случай ^^ = 0 не может иметь места, так как v минимальна, а предположение ф^ = 1 ведет к противоречию с условием (1), касающимся xdeg(v).
Следующие легко проверяемые факты используются (явно или неявно) ниже.
Факт 4. Пусть ее {О,1}, тогда
Если X — вершина ve, отличная от входных вершин ve и от Е, то scr(X; ve) = scr(X;v).
Если X— вершина ve, отличная от Е, и res(X;ve) — константа, то outdeg(X; ve) ^ 1.
outdeg^;v)^ 1 и outdeg(C; v) ^ 1.
Доказательство. Пункт (1) следует из определения ve. В частности, если X— вершина ve, отличная от Е, и outdeg(X; Ve) = 0, то X = Т. Таким образом, пункт (2) верен, поскольку foi отлична от константы. Пункт (3) непосредственно следует из фактов 3 (2) и 4 (2). ■
Замечание. Поскольку outdeg(E; ve) ^ 1, то, следовательно, факт 4 (2) верен также и при X = Е. Тем не менее по причинам, изложенным в начале рассмотрения случая 3, мы решили избегать использования условия outdeg(x(; v) = 2. В том случае, когда outdeg(x,; v) = 1, мы строим ve так же, как описано выше, за исключением того, что не вводится ребро <Е, Bi>; поэтому может случиться, что в этом случае outdeg(f; ve) = О и res(£;ve)— константа.
Случай 3.1. 4^ ^ 3.
Вершины А и С вместе с тремя элементами из S’ могут быть удалены из vo. (Напомним, что А, С ^ ^.)
Случай 3.2. 4NS = 2.
Пусть ^ ={G,Я}, Ge scr(Л) и Н е scr (С), причем А, С, G и Н— все различны (см. факты 3(2) и 4(3)). (Если X—вершина ve, отличная от входов ve и от Е, то в рамках случая 3.2 можно, не опасаясь двусмысленности, пользоваться обозначениями scr(^f) и outdeg(X).)
Случай 3.2.1. outdeg(C) = 2 (см. рис. 7).
Так как res(G;vo)— константа и G#=E (поскольку v ациклична), имеем вследствие факта 4(2) outdeg(G)^l. Предположение scr(G) = {77} противоречило бы минимальности v, так как тогда О и Н могли бы быть заменены одним элементом. Поэтому в scr(G) найдется элемент D, отличный от элементов А, С, G, Н; вершины А, С, G, Н и D могут быть исключены из Vo.
Случай 3.2.2. outdeg(C) = 1 и scr (Я) #= {G} (см. рис. 8).
В силу факта 3 (3) Н есть r-элемент. Пусть (y"Vyy,^ функция, приписанная Н. Выберем такое ее {0,1}, что
res(C;ve) = еф с = и, и поэтому res(//;ve) есть константа. Из факта 4 (2) и условия 8сг(Я)=/={0} следует, что в зсг(Я) найдется элемент D, отличный от А, С, G, Н.
Рис. 8. Случай 3.2.2.Рис. 8. Случай 3.2.2.
Рис. 8. Случай 3.2.2.
Рис. 8. Случай 3.2.2.
Случай 3.2.3. outdeg(C) = 1 и 8сг(Я) = {С} (см. рис. 9).
Выбирая е так же, как в случае 3.2.2, обнаруживаем, что res(G; ve) и res(^;ve) — константы. Так же как в случае 3.2.1, отсюда следует, что G Ф Е и что в scr(G) найдется элемент D, отличный от А, С, G, Н.
Рис. 10. Часть схемы V, отвечающая случаю # ^ — 1-Рис. 10. Часть схемы V, отвечающая случаю # ^ — 1-
Рис. 10. Часть схемы V, отвечающая случаю # ^ — 1-
Рис. 10. Часть схемы V, отвечающая случаю # ^ — 1-
Это завершает рассмотрение случая 3.2. Следующий факт показывает, что исчерпаны все возможности, возникающие в случае 3.
Факт 5. *^ ¥= 1-
Доказательство. Предположим, что *^ = 1- В силу фактов 3 (3) и 4 (3) найдется такой /--элемент G, что scr(A;v) = = scr(C;v) = {G} (см. рис. 10). Рассмотрим два случая.
Е не является входной вершиной. Пусть у обозначает схему, полученную перестройкой схемы v в соответствии с тем, как показано на рис. 11, причем функции, приписанные элементам Д', С' и О', выбираются так, что res (О; v) = res (О'; у). Возможность такого выбора гарантируется булевым тождеством
(^®v) V ^®w^ = ku®w^ V (оуфу).
Рис. 11. Перестроенная схема у.Рис. 11. Перестроенная схема у.Отсюда следует, что у реализует f. Но size (у) = size (v), a xdeg(y) < xdeg(v), что противоречит условию (1), которому v (согласно ее выбору) обязана удовлетворять.
Рис. 11. Перестроенная схема у.
Рис. 11. Перестроенная схема у.
Е— входная вершина. Пусть Е= = хт. Ясно, что i Ф т и j =# т. Подставляя вместо Xi и хт подходящие константы d, ее{0,1}, можно получить схему р, реализующую fde и такую, что res (G; р)— константа. Например, в том случае, когда G есть элемент Л или элемент V, d и е выбираются так, что геэ(Д;Р) = = res(C;P). Отсюда следует, что fde не зависит от х/, а это означает противоречие, так как fde— симметрическая фуню ция, отличная от константы. ■
Случай 4. Случаи 1 и 2 не имеют мес* та и outdeg(xz; v) = 1. Как замечено
выше, этот случай весьма схож со случаем 3 и оставлен для рассмотрения читателя. В действительности этот случай кое в чем даже проще предшествующего, так как здесь отсутствуют вершины Вь ..., Вр.
Тем самым доказательство теоремы 1 завершено.
Благодарность
К. П. Шнорр указал на упрощение первоначального варианта доказательства.
Список литературы
Harper L. Н., Hsieh W. N., Savage J. Е. A class of Boolean functions with linear combinational complexity, Theoretical computer science, 1 (1975), 161—183.
Лупанов О. Б. Об одном методе синтеза схем, Изв. ВУЗ, Радиофизика, 1 (1958), 120—140.
Muller D. Е., Preparata F. Р. Bounds to complexities of networks for sorting and for switching, J. Assoc. Comput Mach., 22 (1975), 195—201.
Paul W. J. A 2.5n-lower bound on the combinational complexity of Boolean functions, Proc. Seventh Annual ACM Symp. on Theory of Computing, 1975, 27—36. (Русский перевод: см. настоящий сборник.)
Savage J. Е. Computational work and time on finite machines, J. Assoc. Comput. Mach., 19 (1972), 660—674.
Schnorr С. P. Zwei lineare untere Schranken fiir die Komplexitat Boolescher Funktionen, Computing, 13 (1974), 155—171.
Schnorr С. P. The combinational complexity of equivalence, Theoretical computer science, 1 (1976), 289—295. (Русский перевод: см. настоящий сборник.)
Случайные числа, порождаемыелинейными рекуррентнымисоотношениями по модулю 2
Р. Таусворт !)
California Institute of Technology, Jet Propulsion Laboratory
ВВЕДЕНИЕ
Во многих областях знаний часто возникают ситуации, когда в математической модели используются случайные последовательности чисел, событий или и тех и других. Во многих приложениях часто очень полезно уметь генерировать некоторым детерминированным способом последовательности, которые, по-ви- димому, следует считать случайными, даже если при тщательном и длительном наблюдении становятся очевидными определенные регулярности. Например, программы получения случайных чисел на ЭВМ оказались исключительно полезными при решении задач методами Монте-Карло. В этой статье описывается генератор случайных чисел такого рода с некоторыми замечательными свойствами. Числа генерируются по модулю 2 линейными рекуррентными методами, которые давно используются для генерирования двоичных кодов при передаче информации.
ЛИНЕЙНЫЕ РЕКУРРЕНТНЫЕ СООТНОШЕНИЯНАД ПОЛЕМ GF(2)
Пусть а ={«л}—последовательность нулей и единиц, порождаемая линейным рекуррентным соотношением)
afe = c1afe_1 + c2afe_2+ ... + спак_п (mod 2)
для любого заданного множества целых ct (1 = 1,2п), каж
дое из которых имеет значение 0 или 1. Мы, разумеется, требуем равенства сп = 1 и будем говорить, что последовательность имеет порядок п.
На основании рекуррентного соотношения ак однозначно определяется (при фиксированных с^ по набору из п чисел (йа-ь ак_2,.... ак_п), предшествующих ему. Аналогично ак+х
*) Tausworthe R. С. Random numbers generated by linear recurrence modulo two. Math. Comp., 19, № 90 (1965), 201—209. Перевод с англ. Б. Б. Походзей.
является однозначной функцией от {а^ а^х»..., а^п^. Таким образом, для каждого такого набора из п чисел существует единственный последующий, определяемый рекуррентной формулой, и ясно, что период а равен периоду повторения набора из п чисел. Очевидно, что период р линейной рекуррентной последовательности не может превосходить 2”—1, так как за набором (0,0,..., 0) всегда следует набор (0,0,..., 0). Необходимым и достаточным условием того, что р = 2”—1, является примитивность полинома
f (х) = 1 + схх + с2х2 + ... + хп
над полем GF (2) [1,2].~
В дальнейшем мы будем считать, что f(x) является примитивным полиномом n-й степени над полем GF(2); последовательность а тогда является линейной рекуррентной последовательностью по модулю 2 максимальной длины. Эти последовательности изучались и использовались в качестве кодов в теории связи и в теории информации [3, 4]. Для наших целей представляют интерес следующие свойства [1, 2]:
р
^а1 = -Ц±=2-.
•4-1.
Для любого конкретного набора нулей и единиц $i, $2, ... ..., sR, состоящего не из одних нулей, существует единственное целое у (0 ^ и ^ р—1), такое, что для любого & $1Ял_1 + + $2014-2 + . •• + $na4-n = «4+o(mod 2). Это свойство часто называют свойством «сдвига и сложения».
Любой ненулевой (0,1)-значный двоичный «-мерный вектор (еь бг,..., е„) встречается ровно один раз на периоде как п последовательных двоичных цифр в а.
Заметим, что свойства (1) и (3) непосредственно следуют из того факта, что каждый возможный ненулевой двоичный набор из п чисел («й-ь «4-2,.. •, йк-п^ должен появляться ровно один раз на периоде, если а имеет период р = 2"— 1.
Для удобства дальнейшего изложения слегка видоизменим последовательность а. Положим
а6 = (-1)а" = 1-2аб.
После такого преобразования «к принимает значения +1 и —1, если ак принимает соответственно значения 0 и 1. Свойства (1), (2) и (3) тогда преобразуются в следующие;
р
(Г)1«4=-1.
(2') Для любого конкретного набора нулей и единиц $ь ... ..., sn, состоящего не из одних нулей, существует единственное целое у (0 и ^ р — 1), такое, что
(3х) Любой n-мерный вектор (si, 82,..., еп) с координатами, равными ±1, не все из которых равны 1, встречается ровно один раз на периоде как п последовательных элементов в а.
БУЛЕВО ПРЕОБРАЗОВАНИЕ
Пусть ^(х)— булева функция переменных хь х^ ..., хп (Xi = 0 или 1), принимающая значения, равные ±1. Для лю* бого s = ($ь$2,... ,sn), где s, = О или 1, определим
ф (s, x) = 2-^~l)V1+‘*’+v"-
Эти 2П функций от х, являющихся функциями Радемахера — Уолша [5], образуют ортонормальный базис в 2п-мерном пространстве. Относительно этого базиса g(x) имеет компоненты1) O(s), определяемые следующим образом:
G (s) = 2~"/2 £ g (х) ф (s, х),X
т. е. G(s) является проекцией ^(х) на -ф (s, х), нормализованной так, что
^G2(s) = l.
S
Таким образом,
g (х) = 2"/2 2 G (s) ф (s, х).S
Подставим Xi=ak-i в ^(х). Как функция от к, двоичная последовательность у = {?4> Y = ±K определяется следую* щим образом:
ss
С учетом (2х) мы получаем 4-е свойство, которое является основным в дальнейшем анализе:
' Y, = 6 (0) + ^ G (s) aft+0 (s),
причем отображение и's; всех двоичных ненулевых п-мерных векторов в {0,1,2,.,.,р—1} является взаимно-однозначным.
^ Коэффициенты Фурье. — Прим, перев.
ГЕНЕРИРОВАНИЕ СЛУЧАЙНЫХ ЧИСЕЛ
Пусть а=^а^, сц = 0 или 1 — последовательность максимального периода, порождаемая линейным рекуррентным соотношением по модулю 2 n-й степени, как описано выше, и определим последовательность чисел вида
Ук = О • ацкЛ.г_хадк+г_г ... aqk+r_L (по основанию 2),
где г—«случайно» выбранное целое, 0^г^2"—1 и L^.n. Таким образом, ук является двоичным представлением числа, составленного из L последовательных цифр из а; последовательные ук отделены друг от друга q цифрами. Исходя из важных для дальнейшего анализа причин, мы ограничимся случаем, когда q > L и (9,2"— 1) = 1.
Можно также записать ук в виде
L
У к ==2 ^qk+r—t'
Эти числа всегда лежат в интервале 0<</^<1. Согласно свойству (2), «случайность» выбора г эквивалентна утверждению, что начальное значение у0 выбрано «случайно».
АНАЛИЗ ГЕНЕРАТОРА
Нам будет удобнее иметь дело с преобразованной последовательностью Wk, чем с ук. В частности, пусть а = {а*}, ак = = ±1— последовательность, соответствующая а=^аку Положим
wk= £ 2-<agft+r_#.
Легко видеть, что ук и wk связаны соотношением wk = 1 — 2-l — 2ук.
Это соотношение определяет, таким образом, простую связь между wk и ук.
Мы можем предполагать, исходя из приложений, для которых предполагается употребить числа, что п достаточно большое, так что числа уп и wn будут исключительно разнообразными. Например, если п = 35, то их количество равно 3,43X1010. Мы рассмотрим только часть этих чисел, например N, и выясним, как они распределены при достаточно большом N,
3 Зак. 153
КОРРЕЛЯЦИОННЫЕ СВОЙСТВА
Среднее значение последовательности w^ легко находится как
Р-1L р-1
ЕМ = -^ ^6 = -X2 »qk*r-t= — 2 п( _ п).
Р г=0Р /=1г-04'
что очень близко к нулю при больших п.
Определим выборочную автокорреляционную функцию /?(т) процесса) Wk следующим образом:
^^ = -^^ wkwk+m.
fe-1
Ожидаемое значение /?(т) является истинной автокоррелЯ' ционной функцией процесса,
RH = EV.R(m^’
и значение /?(0) является средним значением процесса ®|:
р-1L Lр-1
«(Ol-jZ ^ = 7Ё t 2"""' 2
г=0/=1 и=\г=0
Последняя сумма на основании (2') равна —1, если t^u, и р, если / = и. Следовательно,
(1-2“£)2 1 -2“п(1-2“£)2 1 -2“п
(1-2“£)2 1 -2“п
(1-2“£)2 1 -2“п
Это равенство показывает, что Wk имеет по существу такую же дисперсию, как и реализация равномерно распределенной случайной величины.
Теперь рассмотрим /?(т), m ф 0. Во-первых, среднее значение
R (m) = Е [^ (т)]
N L Lр-1
=( + } 2 ^qk+r-taq(k+m)+r-u
к = \ ^=1 и=\г-0
L Lр-1
arar-bqm-\-t-u«arar-bqm-\-t-u«= 722^“'н"2
arar-bqm-\-t-u«
arar-bqm-\-t-u«
/=1и=\г—0
Последняя сумма снова равна —1, согласно (2х), если только р не кратно qm-V t— и. Очевидно, что
qm — L + 1 ^ qm + t — и ^ qm + L — 1.
Следовательно, если q^ L и пг<Др — L)/^, то
О < qm + / — и < р, '
так что р никогда не может быть кратным qm + / — и. При этих условиях, которые в дальнейшем будут предполагаться выполненными, среднее значение R^m) равняется
R (т) = - (1 - 2"l)2 = - 2"*•
Поведение среднего значения процесса показывает в основном отсутствие корреляции между Wk и w^m для любого ненулевого целого т, меньшего чем (р— L)lq.
Выборочная автокорреляционная функция, как функция от г, сама является случайным процессом; ее среднее квадратичное значение при т 0 равно
E№(™)] = ^f
'Z-1 и = \(-1 /~1
где \i.tuU определяется следующим образом:
N N р-1
^tuli = pN2 X X X аг+^-А+ (k+m}q-u *
к=\ Z=1r=0
* ar+Z<7-tar+ U-bm^q-j*
В силу ограничения q^ L и 1 ^ m ^ (p— L)lq существуют ai и u2, такие, что
®‘r+qk-iP'r+kq+mq—и^г+оГ
®r+lq— t^r+lq+mq-t ^r+v^
При фиксированных значениях /, и, i и j существует не более чем одно значение / для каждого к, такое, что Ui = v2, так как (^, р)= 1. Следовательно,
поэтому при /и =/= О
и аналогично значение дисперсии ограничено:
varR W]<(1 - 2-Т(2+L_±__L) <+ Л).
Это означает, что отклонение выборочной автокорреляционной функции от своего среднего значения очень мало и уменьшается обратно пропорционально N. -
СВОЙСТВА РАСПРЕДЕЛЕНИЯ
Мы показали, что Wk (и, следовательно, у^ в основном имеет такое же среднее значение и дисперсию, как и последовательность реализаций равномерно распределенной случайной величины. Теперь рассмотрим распределение N значений ук на (0,1). Чтобы сделать это, рассмотрим произвольный интервал в (0,1) и выясним, какая доля из N значений у к лежит в этом интервале.
Так как мы рассматриваем двоичные представления чисел, то наиболее удобным будет рассмотрение интервала длины 2-d, и этого будет вполне достаточно для наших целей. Это дает возможность эффективно исследовать первые d позиций векторов, составленных из yh для к = 1, 2N, и подсчитать количество чисел, имеющих определенную структуру. Это эквивалентно образованию булевой функции от первых d позиций ук, значения которой равны, скажем, —1, если ук имеет некоторую фиксированную («начальную») структуру, и 4-1 в противном случае.
Точнее, пусть (ei, вг,..., е^ является «начальной» структурой нулей и единиц для первых d позиций двоичного представления у к. Тогда определим булеву функцию g(x) следующим образом:
. .(— 1, если Xi = eb х2 = е2, ...,xd=ed,
g (х) = <,
(.1, в противном случае.
Сколько раз число ук принимает вид 0-eie2 ... eaxx ...хи, следовательно, попадает в указанный интервал? Назовем эту крат* ность Т. Тогда
L fc-i J
где ^к имеет значение
Yft = 0(0)4- £ G(s)%+r+o(S)
s^O
в булевом представлении. Ожидаемое значение f есть р-1
Г = £[Г] = —^ tг = 0= 1[i-oioi+1£g(s)1Ls^o J
-^['-(^oW + tZ0*5*]'
Ls J
Но, как легко видно из определения, 8^ = 110^ S
И
G (0) = 2~nT.g (х) = 2~п(2" - 2 • 2',-d) = 1 - 2-d+1.
Следовательно, мы имеем
Г = у[1 - (' + ?)<• -2-'+,) + -^-]
Таким образом, средние значения ук одинаковы. Может быть получена оценка дисперсии относительно этого среднего значения. Сначала, однако, вычислим
р-l N NN N
?£ 2 £ YfcYz = £ £££б(з)6(и).
г—0 fe = l / = 1& = 1 ^ = 1 s и
р-1
. - У а5'а$" а"'а“«
р / . аг-1 • • • r-n r+Z-1 • • • ar+f-n’ г-1
обозначая / = ^(/~ А). Если s#=0 и и=/=0, то существуют целые Ui и У2> такие, что
aS1 cin = a
и для каждого к существует не более одного /, такого, что
V! = у2. Используя этот факт и неравенство Шварца, мы имеем р-1 N N
72££т,<лф-(0)(1 + Г)-27} + л1(1+-1,).
Г-0 к-11-х
С помощью этих вычислений получаем оценку для дисперсии Т\ var[?] = l£|if v,_ (l + l)o(0) + lg(0)V<
<4 Н1 + °2 (0)]l (1 + 1) + 1 (1 + 1) g (0) О (0) +
Если отрицательные члены опустить, то неравенство можно усилить
varm<4(i + i)^+ss^^}<
и снова отклонение от ожидаемого значения уменьшается с ростом N.
МНОГОМЕРНЫЕ РАСПРЕДЕЛЕНИЯ
Мы показали, что числа Wk (или уй) можно рассматривать как некоррелированные реализации случайной величины с равномерным распределением. Рассмотрим распределение точек (У»> Ук-12’ • • •’ Ук-1^’ где 0 = /1 < /2 < • • • < /м. Может быть показано, что это распределение отличается от равномерного, если <?(/м+1)>п. Для <7(/м+1}^и, однако, распределение является равномерным в единичном М-мерном кубе. Чтобы показать это, мы подсчитаем соответствующее число попаданий точек ^ук, Ук-12’ Ук-i^ в пР0ИЗВ0ЛЬНЫй заданный интервал 2-dl X • • • X 2-dM. Пусть начальное двоичное представление yfc+t равно 0, е^ ... е^ для i = 1, 2, ..., М, и определим g(x) следующим образом:
gW = <gW = <' — 1, если xilq+i = el1 для i = 1, 2, ..., М
gW = <
gW = <
и /= 1, 2, ..db
. + 1 в противном случае.
Так как дЦмА-^^п, т°, вводя в рассмотрение булеву функцию переменных
Xt = ^qk+r—t,
мы можем использовать преобразованное уравнение
■Ys = G(0)+ £ G^akq+r+oW
для обнаружения желаемых свойств. Предыдущий анализ справедлив при d = d\ + d2 + ... + йм* Поэтому относительное число Т попаданий точек ^, yk_l2, ..., Ук-i^ в 0ПРсДслснный интервал имеет среднее значение
Т = £[?] = (1 4-1) 2-(d*+ - +^> + ^[g (0) - 1]
и дисперсию относительно этого среднего
var[7]<2-(lvar[7]<2-(l+ЖЧ)-+ЖЧ)-
var[7]<2-(l
var[7]<2-(l
+ЖЧ)-
+ЖЧ)-
РЕЗЮМЕ
Результатом проведенного анализа является следующая
Теорема. Если ^а^, где а?$ = 0 или 1, является двоичной последовательностью максимальной длины п-го порядка, порождаемой линейным рекуррентным соотношением по модулю 2, если при (<7,2"—1)=1 и q 5? L yk = 0-akq-\akq-2 ... akq-t является двоичным представлением вещественного положительного числа в интервале (0,1) и если Wk является вещественным числом в интервале (—1,+1), связанным с yk соотношением Wk= \ — Sy к — 2“£, то при усреднении по всем возможным (в предположении их равновероятности) начальным значениям у0 (или w0) получим:
Среднее значение р последовательности Wk равно
и дисперсия о2 равна
о2 = 1 д. о-" Г1 fj^JL^ _ (1 -2-L)2 _
3 L 3 \ 1 - 2~" У 1 - 2~"
V 1 - 2~" 7 J з
Выборочная автокорреляционная функция
Nк^ = ^У^ wkwk+mк-\
имеет в качестве своего среднего значения
для ненулевых целых значений |m| < (р — L^jq. Отклонение ^(т) от R(m)
var [/? (m)] < — Г1 Ч—~—1 ^ —.
Относительное число T попаданий значений yk в интервал, определяемый заданием первых d позиций двоичного представления, т. е. в окрестность длины 2~d в интервале (О, 1), имеет среднее значение
Г = £[П = 2~ф + -2Xr]44[£(°)~l](X^T)~2~d
для любого числа N точек ук. Дисперсия Т ограничена
var [f] < 4 [1 + 2" - 1 ] [ ДГ + 2" - 1 ] ~ 4W *
Относительное число t попаданий точек (yfe, ук-1^ ..., Ук-[^ в параллелепипед 2~dx X 2“d2X . • • X 2“rfX когда первые d позиций двоичного представления укл4 фиксированы, в среднем равно
T^^fJ^-^-'-^X1 + Х^г) +
п-1 Г g (О)~ 1 к 1 ~2"пп-1 Г g (О)~ 1 к 1 ~2"п2-(di + ••• + dM)2-(di + ••• + dM)
п-1 Г g (О)~ 1 к 1 ~2"п
п-1 Г g (О)~ 1 к 1 ~2"п
2-(di + ••• + dM)
2-(di + ••• + dM)
для любого числа N точек ^yk, yk^_l2, • •ук_^ при условии О < U< • • • < 1м ^ n(q — 1. Дисперсия Т ограничена
var [Г] < ^ [-у + 2”_ i П1 + 2П + 1 ] ~ IF*
ПРИМИТИВНЫЕ МНОГОЧЛЕНЫ
При реализации генератора необходимо находить примитивный многочлен /(х) над полем GF(2). В работе Питерсона [6] полностью затабулированы все многочлены вплоть до 34-й степени. Наилучшей для приложений является форма многочленов с наименьшим числом членов. Голомб и другие [7] нашли примитивные трехчлены для большинства степеней вплоть до 36-й.
Ватсоном [8] была опубликована таблица, дающая один примитивный многочлен каждой степени вплоть до 100-й. Полином 35-й степени f (х) = х35 + х2 + 1 очень широко используется при генерировании чисел на IBM-7094, числовой регистр которой содержит 35 цифр. В этом случае период р = 235—1
является взаимно простым с 35, так что q может быть выбрано равным 35 для получения максимальной точности (разрядности L = п) чисел. Предварительные экспериментальные результаты показывают, что данные в настоящей работе оценки удовлетворительны для произвольно выбранных последовательностей уь
Дополнительные тесты показали, что при L = q= 17 пары (у/г, 1/^+1) равномерно распределены в единичном квадрате.
СПИСОК ЛИТЕРАТУРЫ
Golomb S. W., Sequences with randomness properties, Martin Co., Baltimore, Md., 1955... ,
Zierler N., Linear recurring sequences, J. Soc. Indust. Appl. Math., 7 (1959), 31—48. (Русский перевод: Цирлер H. Линейные возвратные последовательности, Кибернет. сб., вып. 6. — М.: ИЛ, 1963, стр. 55—79.)
Baumert L., et al., Coding theory and its applications to communications systems, Report 32—167, Jet Propulsion laboratory. Pasadena, Calif., 1961.
Titsworth R. C., Welch L. R. Modulation by random and pseudorandom sequences, Report 20—387, Jet Propulsion Laboratory, Pasadena, Calif., 1959.
Zygmund A. Trigonometrical series, Monogr. Mat., Bd. 5, Warsaw, 1935; reprint, Dover., New York, 1955, 2nd ed., Chelsea, New York, 1952. (Русский перевод: Зигмунд А. Тригонометрические ряды, т. 1, 2. — М.: Мир, 1965,)
Peterson W. W. Error-correcting codes, М. I. Т. Press, Cambridge and Wiley, New York, 1961, pp. 251—270. (Русский перевод: Петерсон У., Коды, исправляющие ошибки. — М.: Мир, 1964.)
Golomb S. W., Welch L. R., Hales A., On the factorization of trinomials over GF(2), Report 20—189, Jet Propulsion Laboratory, Pasadena, Calif., 1959
Watson E. J., Primitive polynomials (mod2), Math. Comp., 16 (1962), pp. 368—369.
Комбинационная сложностьэквивалентности1)
К. П. Шнорр
Fachbereich Mathematik, Universitat Frankfurt, Frankfurt,German Federal Republic
n
Рассматриваются булевы функции И(п>) = &х1, НЕ-
Z = 1
ИЛИ(и)= & хг и эквивалентность ЭКВ(и) = И (и) УНЕ-ИЛИ(и). Пусть L(F) обозначает наименьшее число двуместных булевых операций, использующихся в булевой схеме вычисления множества функций F. Доказано, что А(ЭКВ(п)) = 2п — 3, А(И(п), НЕ-ИЛИ(и)) = 2п— 2. При этом существует много различных по структуре оптимальных схем вычисления функции ЭКВ(и).
ВВЕДЕНИЕ
Пусть К = {0,1}, т. е. К — это множество булевых значений: „О ~ ложно", „1 ~ истинно". Пусть V = {x/|z е N^ т. е. V — счетное множество булевых переменных. Пусть Й обозначает множество всех булевых функций с переменными из V. Мы рассматриваем булевы схемы вычисления, в которых используются все 16 двуместных булевых операций w: Й2->Й, соответствующих двуместным булевым функциям w: К2- К.
Булева схема вычисления 0 представляет собой конечный ориентированный ациклический граф с помеченными вершинами, удовлетворяющий следующим условиям:
В каждую вершину v схемы 0 входят 2 ребра или ни одного.
Вершины, в которые не входит ни одно ребро, называются входами схемы 0.
Каждому входу v схемы 0 приписан символ переменной op(v)eK'
Каждой отличной от входа вершине v схемы 0 приписан символ двуместной булевой операции op(v).
Ребра, входящие в вершину v, соответствуют (с соблюдением порядка) аргументам функции op(v).
С каждой вершиной v булевой схемы вычисления р ассоциируется функция res^ е Q. Функция res^ получается рекурсивно путем применения op(v) к двум функциям, которые ассоциируются с вершинами, предшествующими вершине v. А вначале res^ = х. для каждого входа v, которому приписан символ Xi е V. Будем говорить, что схема р вычисляет функции res^ е Q, где vep.
С множеством функций FczQ будем связывать минимальное число L(F) двуместных булевых операций в булевой схеме вычисления множества функций F. L(F) называется комбинационной сложностью {схемной сложностью) множества функций F.
Основные результаты работы следующие: Л(ЭКВ(п)) = = 2/г — 3, Ь{И{п), НЕ-ИЛИ(п)) = 2п — 2 = Ь{И{п)) + + А(НЕ-ИЛИ(и)). Здесь мы имеем первый нетривиальный пример нахождения точного значения схемной сложности в случае, когда существует много различных по структуре оптимальных схем вычисления. К примеру, обе формулы
& (х, ~ Х<+1) И & fo ~ Xt) i = \ f=2
дают оптимальные схемы вычисления функции ЭКВ(п). Функции И {п) и НЕ-ИЛИ(п) служат примером двух независимых функций (в том смысле, что L{f, g) = L{f)-\- L{g)), зависящих от одних и тех же переменных. Технику этой статьи можно применять для нахождения схемной сложности булевых функций, имеющих не более двух простых импликантов.
В [2] было доказано, что если не использовать двуместные операции ~ и ф, то требуется не менее 2п—1 двуместных операций для вычисления ЭКВ(и). Значит, операция ~ помогает вычислять ЭКВ(и), не помогая вычислять {И (и), НЕ-ИЛИ(п)}.
КОМБИНАЦИОННАЯ СЛОЖНОСТЬ ЭКВИВАЛЕНТНОСТИ
Сначала коротко о некоторых вспомогательных понятиях.
Определим отношение частичного порядка f ^ g для g^Q следующим образом:
л g=f.
На протяжении всей статьи будут рассматриваться только такие схемы вычисления, в которых имеется ровно один вход для каждой входной переменной. Поэтому входы и входные переменные схемы будут отождествляться. Кроме того, мы ограничимся рассмотрением таких двуместных булевых операций, которые зависят от обоих аргументов. Очевидно, что оба ограничения не влияют на комбинационную сложность L{f).
Вершина р называется преемником вершины v, если в схеме р есть ребро, ведущее из v в р. Если мы в схеме р заменим res^ константой 1^К» то вершина v станет не нужной для вычислений, и мы сможем удалить v и всех се преемников р, изменив подходящим образом операции ор(а) всех преемников а каждой вершины р. Это дает новую схему вычисления Д. Будем говорить, что схема р „получена из р подстановкой е
В связи с тем что любая схема вычисления р является ориентированным графом, понятие (ориентированного) пути в схеме р нс требует пояснения. Если w— путь из v в р, то вершина v называется началом, а вершина р концом пути w.
Будем сокращенно писать jg вместо f Л g.
С булевой схемой вычисления р будем связывать число с(Р) вершин схемы р, отличных от входов. Иными словами, с(Р) это число двуместных операций в схеме р. Обозначим через degp(xt) общее число ребер, выходящих из входа v, у которого op(v) = Xi.
Если dcgp(xz)^2 при z=l, ...» п» то c(P)^2n—1, поскольку для того, чтобы „собрать44 2п ребер, выходящих из входов схемы р, требуется не менее 2п—1 двуместных операций. Поэтому будем рассматривать тс входные переменные хь у которых degp(xz) = 1.
Лемма 2.1. Пусть р — оптимальная схема вычисления функции ЭКВ(п), п ^ 3, причем dcgp(^)=l и единственное ребро, выходящее из хп, входит в вершину v, у которой op(v) есть Пусть р, — схема, полученная из р подстановкой res^ = I» где I е К = {0, 1}. Тогда
с(рО^с(Р)-2, z = 0, 1;
либо Рь либо Ро вычисляет функцию ЭКВ(п—1).
Доказательство. (1) Достаточно заметить, что подстановка res^ = i г К приводит к удалению вершины v и всех ее преемников.
Пусть hUb х2, ...» x„_i) — функция на другом входе вершины V. Тогда res^ = хп ~ h (хр ху ...» хп_^ и схема р дает нам следующее представление функции ЭКВ ^nY
(I) ЭКВ (м) — f kxn h (хь х2» .. •» xn_iY хь x2f • • •» xn_xY где f Q« Обозначив первую переменную функции f через у» рассмотрим разложение функции f по этой переменной:
(И) f = z/Mxb ...»xn_x)Vyf0Uv> ...,xn_xY где fiJo^^- Определим йх» d0 е Q следующим образом:
(III) dx (хь ...» хп) = (хп ~ h ^Хх» ...» xn_xY fx Ux, • • •, хп_х\ (IV) doU\> • • •> Xn^Un^^Uv. • • •> xn_x))fo(xx» . ..»xn_xY
Из (I) — (IV) сразу вытекает, что
(V) ЭКВ(п) = & Xi v^& Xi =doUv. x^VdiUi, х„у
Заметим, что xn®h = xn~ h.
Из (V) следует, что имеет место один из четырех случаев (1) — (4), которые по очереди рассматриваются ниже.
diUvх„) = ЭКВ(/г).(1)
В этом случае в силу (III) fi(l, 1,..., 1) = ft (0,00)=1.
Следовательно, существует такая функция mgQ, что
Л (х(л?га-1)= ЭКВ (п — l)Vu, и& ЭКВ (я — 1) = 0.
С другой стороны, из (III) и (I) вытекает, что
/1&и<ЭКВ(п-1), h & и^ ЭКВ (я — 1).
Отсюда следует, что я = 0. Но тогда /1 = ЭКВ(я—1). Поэтому в данном случае схема Рь полученная из р подстановкой хп ~ h = 1, вычисляет ЭКВ (я— 1).
d0 (хь ..., х„) = ЭКВ (я).(2)
Этот случай симметричен случаю (1). Поэтому в данном случае fo = ЭКВ (п — 1) и ро вычисляет ЭКВ (я — 1).
пп
do (хь ..., xj = & хь dx (xb ... ,xj = & xt. (3) 1=1i = l
В этом случае из (IV) вытекает, что
xnh (хь ..., хп_\^ fo (хь ..., хп_х) = & X/,
(IV )t = l
xnh (хь ..., хп_х^ fo (хх, ..., xn_i) = 0.
Отсюда следует, что существует функция меЙ, удовлетворяющая условиям: п-1П-)
fo= & XiV и» и^Ч & Xi.i = li=1
л-1
В силу (IV) hu^ & Xi и hu^O. Отсюда следует, что и = 0. п—1п—1
Но тогда /о= & Xi и в силу симметрии ft = & xt. Поэтому 1=1Z=1
в данном случае вместо h можно подставить 0. Но тогда р не является оптимальной схемой вычисления функции ЭКВ(п).
пп
dolxx, ..хп1= & xt, dv(xx. ..., х„)= & Xi. (4) i-ii-i
Этот случай симметричен случаю (3), поэтому и в данном случае р не является оптимальной схемой вычисления функции ЭКВ(п). ■
Пусть хь Xj — какие-либо переменные схемы вычисления р. Пара путей w и и называется (хц Xj)-путем, если w имеет началом Xi, и имеет началом Xj, w и v имеют общий конец и больше нигде не пересекаются (см. рис. 1).
Рис. 1. Пара w и и, являющаяся (х/, х/)-путем.
Обозначим через Г(до, у) сумму длин w и у, а через Г|з(%6х/)—минимум Г (до, у), взятый по всем парам w и и, являющимся (xi, х^-путями.
Лемма 2.2. Пусть р — такая схема вычисления функции ЭКВ(п), п ^ 3, в которой существует единственный \xi,Xj)- путь и нет ребер из вершин Xi и х$ в вершины с операциями ~ и ф. Тогда схему р можно преобразовать в схему р, вычисляющую ЭКВ(м) и обладающую следующими свойствами: с(р) = с(Р). ГР (хь xj) < Гр (Xi, Xj), схема р также содержит единственный ^хи Xj) -путь.
Доказательство. Пусть пара w и у является единственным (xt, xj) -путем в схеме р. Очевидно, что Г (до, у) ^ 2. Предположим, что Г (до, у) = 2. В этом случае схема вычисления р дает нам следующее представление функции ЭКВ(л): ЭКВ(л) = h(xi ox/,xv|v nh М), где fteQ, а о—операция вершины, являющейся общим концом до и у. Ясно, что это невозможно. Следовательно, этот случай встретиться не может.
Пусть теперь r(w, у) > 2. В этом случае мы уменьшим Г(до,у). Обозначим через р преемника вершины Xi в пути до (если р — конец до, то рассмотрим преемника вершины Xj в пути у). Условие леммы гарантирует, что
из вершины р выходит не более одного ребра,
функция на другом входе вершины р не зависит от xt И Xj.
Обозначим функцию на другом входе вершины р через /i(-rv|v У= М). Схема вычисления р дает нам следующее пред-
ставление функции ЭКВ(п):
. ЭКВ(/г) = /(xzo/?, xv |v #=/),
где feQ, а ° обозначает ор(ц).
Пусть о есть & (остальные случаи, когда » отличен от ~ и ©, рассматриваются аналогично).
Положение!. & xvV & xv = 1 =>h(xv |v =£i, j) = 1. v^=Z, /v^/, /
Доказательство. Предположим, что & xv V & xv=l
и тем не менее ft(xv|v#=z, /) = 0. Тогда
Xi&h^ |v#=z, /) = 0,
и, следовательно, исчезает зависимость выхода схемы р от xt. Это приводит нас к противоречию, поскольку ЭКВ(га) зависит от xt даже при ограничении
& xv V & xv = 1.
V5^f, / v¥=t /
Теперь мы преобразуем схему р в схему £, вычисляющую ЭКВ(п), как описано ниже. Пусть resp = 3KB(n).
Рис. 2. Фрагмент схемы р.Рис. 2. Фрагмент схемы р.Рис. 3. Фрагмент схемы р.Рис. 3. Фрагмент схемы р.
Рис. 2. Фрагмент схемы р.
Рис. 2. Фрагмент схемы р.
Рис. 3. Фрагмент схемы р.
Рис. 3. Фрагмент схемы р.
Построение схемы р (см. рис. 2, 3).
Заменяем resg на Xi и удаляем вершину ц.
Добавляем новую вершину г с операцией & и входами resp и Л,
Положение 2. resg = res^ = ЭКВ(д\
Доказательство. В случае, когда ft(xv|v=#z, /) = 0, согласно положению 1, ЭКВ (я) принимает значение 0. Отсюда следует, что в этом случае resp(xp ..., xrt)=res£(xp ..., xn)=0. В случае, когда /i^Jv =/=/,/) = 1, мы имеем resg = xz и, по построению схемы р, reSp (хр ..., xn) = resp(xp ..., хпу Следовательно, resp(xp ..., ^) = resp(xp ..., х^.
Остается заметить, что выполненное построение уменьшает Гр(х<, X/) и что схема 0 также содержит единственный (xz, Х/)-путь. ■
Лемма 2.3. Пусть 0 — произвольная схема вычисления и V(0) — множество ее переменных, причем для всех пар переменных Xi, х^е. Е(0) существуют по крайней мере два различных (xi,Xj)-nyTu в схеме 0. Тогда с(0)^2|Е(0)|— 2.
Доказательство будем вести индукцией по |V(0)|. При [ V(P) | = 2 утверждение очевидно. Пусть теперь | Й(0) |> 2. Из условия леммы следует, что существует переменная xv е е= Е(0), у которой degp(xv)^ 2. Действительно, если бы у каждой переменной xze Е(0) было бы degp(xz) = 1, то для некоторой пары переменных х/ и х/, а именно для тех, которые являются входами одной вершины, существовал бы единственный (х/, х/)-путь, что противоречит условию леммы.
Построим из схемы 0 схему 0, подставляя вместо xv константу. При этом | V(0) | = | V(0) |— 1. Поскольку degp^Xv) ^ 2, имеем неравенство с(0)^с(0) + 2. По предположению индукции с(0)>2|Е(0)|— 4. Следовательно, с (0) ^ 21^(0) | — 2. ■
Основная теорема 2.4. А(ЭКВ(п))^ 2п—3.
Доказательство будем вести индукцией по п. Очевидно, что А(ЭКВ(2))=1. Пусть теперь п^З и 0 — оптимальная схема вычисления функции ЭКВ(п). Мы рассмотрим три случая.
Существует переменная xi, у которой degp(xz) = 1, причем Xi является входом вершины с операцией ~ или ф.
Из леммы 2.1 следует, что в этом случае существует схема вычисления 0 функции ЭКВ(и—1), у которой с(0)^с(0) — 2. По предположению индукции с(0)^2п— 5. Следовательно, с(0)2п — 3.
Для всех пар переменных х,, Xj^ V(f) существуют по крайней мере два различных (х,-, х/)-пути.
Из леммы 2.3 следует, что в этом случае с(0) ^ 2| V(0) | — 2.
Наконец, когда не имеет места ни случай (а), ни случай (б), имеет место следующий случай:
Есть пара переменных х, и X/, не являющихся входами вершин с операциями ~ и ф, для которых существует единственный (Xi, х; )-путь.
Применяя в этом случае лемму 2.2, мы уменьшаем Гр(х/, х/).
Если для получившейся схемы вычисления не имеет места ни случай (а), ни случай (б), мы можем еще уменьшить Гр(х,, х/), применяя лемму 2.2. Заметим, что свойство схемы
иметь единственный (х/, х;)-путь сохраняется при построении из леммы 2.2.
Поскольку Гр(х/, х/) нельзя сделать меньше 3, последовательное применение леммы 2.2 приводит в конце концов к построению схемы р, вычисляющей функцию ЭКВ(п), для которой с(0)=с(р) и имеет место случай (а) или (б). ■
Теорема 2.5. Функции И(п) и НЕ-ИЛИ(и) независимы в том смысле, что £(И(л), НЕ-ИЛИ(и))= £(И(п)) + + L (HE-ИЛИ (и)) = 2п — 2.
Доказательство этой теоремы использует ту же самую технику, что и доказательство теоремы 2.4. Подробности оставляются читателю. Леммы 2.1 и 2.2 сохраняются, если ЭКВ(и) заменить множеством {И (и), НЕ-ИЛИ(и)} 1). Рассмотрение различных случаев лишь слегка изменяется. При использовании соответствующих вариантов лемм 2.1 и 2.2 доказательство теоремы 2.4 оказывается применимым также и к теореме 2.5. Заметим, что равенство £(И(2), НЕ-ИЛИ(2)) = 2 обеспечивает начальный шаг индукции при доказательстве того, что £(И(м), НЕ-ИЛИ(п)) = 2п — 2. ■
В заключение отметим, что техника этой статьи может применяться для нахождения комбинационной сложности булевых функций, имеющих не более двух простых импликантов, т. е. всех функций вида: t\/ s е Q, где / и s— конъюнкции переменных и переменных с отрицаниями.
3. ЗАКЛЮЧЕНИЕ
Функции И (п) и НЕ-ИЛИ(и) независимы в сильном смысле. Несмотря на то, что приведенное доказательство не может быть прямо перенесено на булевы схемы вычисления с ^-местными булевыми операциями при к > 2, автор предполагает, что независимость функций И(л) и НЕ-ИЛИ(и) все же сохранится. Эта независимость основана на специфической геометрической структуре этих функций. Автор считает важным отыскание более общих свойств, при которых множество F булевых функций является независимым в следующем смысле: £(F) «примерно» равно У L (f) (соответственно £(^V Ра
список литературы
Paul W. J. 2,25N-lower bound on the combinational complexity of Boolean functions, Preprint, Cornell University, Ithaca, N. Y., 1974.
Schnorr С. P. Zwei lineare untere Schranken fiir die Komplexitat Boolescher Funktionen, Computing 13 (1974), 155—171.
Остается неясным, каким образом построение из леммы 2.2 обобщается на схемы с двумя выходами. — Прим, перев.
Теория распознавания
Многомерный подход к синтаксическомураспознаванию образов1)
Кеннет Л. Уилльямс
Department of Mathematics, Western Michigan University Kalamazoo,Michigan 49001, U.S.A.
Краткое содержание. Данная статья описывает синтаксический метод представления примитивных частей объекта в виде вершин некоторого направленного графа. В этом случае линейное представление диграфа может быть подано для классификации на регулярный неупорядоченный древовидный автомат. Последние можно моделировать детерминированными магазинными автоматами, так что эту процедуру можно выполнить просто. Формально определяются регулярные «-древовидные автоматы и соответствующие порождающие системы, регулярные «-древовидные грамматики.
Приведено несколько результатов, применимых ко всем схемам синтаксического распознавания образов, включающих использование примитивов.
ВВЕДЕНИЕ
В последнее время много внимания уделялось применению методов формального языка и теории автоматов для классификации объектов. Такие подходы обычно называются синтаксическими или лингвистическими методами распознавания образов. Эти методы привлекательны тем, что они позволяют формализовать как представление образов, так и соответствующие методы классификации. Основным недостатком синтаксического подхода является то, что теория языка обычно имеет дело с одномерными строками символов и множествами таких строк в качестве первичных объектов изучения. Между тем теория распознавания образов в основном касается образов, представленных в виде двумерных картин или же других представлений высокой размерности. Строки же, к которым применимы синтаксические методы, обычно являются неадекватным представлением образов высокой размерности. В какой-то момент фор-
Williams К. L Patern Recognition, Pergamon Press, 7 (1975), 125—137. © 1975 by Pergamon Press Ltd.
© Перевод на русский язык, «Мир», 1979,
мализмы распознавания образов должны обратиться к задаче преодоления этого размерностного пробела.
В этой статье описывается процесс представления образов классом диграфов, который имеет естественное представление размерности 1.
Последние работы, выполненные с использованием некоторых видов многомерных автоматов и/или многомерных языков для обработки картин и образов, можно найти у Шоу [1], Пфальца и Розенфельда [2], Милопулоса [3], Фу и Бхагавы [4, 5], Ота [6], Блюма и Хевита [7] и Савича [8]. В частности, в этой статье предпринято практическое и теоретическое расширение системы, развитой Фу и Бхагавой [4, 5] для представления образов деревьями и конструирования акцепторов деревьев. Обсуждаются некоторые зависимости между возможностями этого метода и простотой, с которой схемы, распознающие образы, могут быть осуществлены.
Другая цель статьи — ввести дальнейшие определения некоторых концепций, необходимых для синтаксического распознавания образов вообще.
А. Изложение мотивов
Фу и Бхагава [4, 5] создали метод для представления примитивных частей образа вершинами упорядоченного дерева. Многие классы образов (в особенности те, определение которых содержит некоторую форму рекурсии) могут быть представлены с помощью древовидных языков, порожденных такими древовидными порождающими грамматиками, которые называются у Брайнерда [9] регулярными системами. Брайнерд показал, что этот класс древовидных языков содержит в точности те множества деревьев, которые, по определению Тачера [10], допустимы псевдоавтоматами. Метод иллюстрируется следующим примером.
Пример 1. (Из [4] Фу и Бхагава.) Нам надо распознать «квадраты, расположенные выше и правее квадратов». Улучшенное определение класса объектов могло бы состоять в том, что мы хотим распознать все те образы, которые могут быть порождены следующей процедурой: а) нарисовать квадрат с вертикальными и горизонтальными сторонами; б) остановиться или нарисовать квадрат сразу справа или над существующим квадратом; в) вернуться к шагу (б). -
Пусть значения примитивов будут те, которые изображены на рис. 1 и длина (а) = длине (б). Пусть регулярная древовидная система содержит произведения деревьев (рис. 2). Дерево (рис. 4), которое может быть выведено при помощи
произведения деревьев, является представлением схемы, приведенной на рис. 3. -
Представление дерева в виде псевдотерма выписывается при помощи захода первоначально в корень дерева, а затем заходами по порядку слева направо в каждое из поддеревьев, исходящих из корня. Это представление дерева в виде псевдотерма
а = —ь = |Рис. 1.а = —ь = |Рис. 1.Рис. 2.Рис. 2.ъ в°—| аъ в°—| а
а = —ь = |
Рис. 1.
а = —ь = |
Рис. 1.
Рис. 2.
Рис. 2.
ъ в°—| а
ъ в°—| а
5*5*Рис. 4.Рис. 4.
5*
5*
Рис. 4.
Рис. 4.
таково: S (а (а (6) b (а (6) Ь (а))) b (а (6) b (а))). Псевдоавтомат (см. Тачер [10]), который допускает деревья, порожденные с помощью G, обладает конечным состоянием S, а его функции движения определены соотношениями /sMB)=S, ta^AB) = А, t^AB^-B, 1^ = A, tb^=B, tb^=b, taW=a.
Отметим, что нетерминальные символы регулярной древовидной грамматики превратились в состояния воспринимающего древовидного автомата.
Рис. з.
Нам бы хотелось для данного объекта и его примитивов уметь порождать и потом воспринимать деревья или древовидные структуры способом, схожим со способом, предлагаемым Фу и Бхагавой, но при более широких предположениях, удовлетворяющих следующим критериям.
. При конструировании дерева для представления объекта мы не хотим использовать никакой априорной информации о том, какая из соседних вершин должна следовать первой. Отметим, что если в примере был бы порожден граф, изображенный на рис. 5, а не на рис. 6, то мы не смогли бы воспринять это дерево нашим псевдоавтоматом. Хотелось бы обойтись без
необходимости постоянно следить за такого рода информацией о порядке.
. Нам бы хотелось иметь возможность конструировать нашу структуру так, чтобы не нужно было возвращаться в грамматике назад к произведениям для отыскания того, какие новые
Рис. 6.Рис. 6.
Рис. 6.
Рис. 6.
примитивы должны быть присоединены к текущим примитивам. Так, при построении в нашем примере представляющего дерева, откуда известно, что нельзя начинать из S строить приведенное на рис. 7 дерево, которое действительно представляет рисунок, но не будет воспринято М? Единственный известный способ не строить таким образом деревья — это обратиться к правилам произведения и обнаружить, что перед нами недопустимое дерево. Фактически, если можно для объекта исчерпать запас
примитивов, строя дерево так, что на каждом шаге для уверенности в том, что делается правильное разложение, проводится соотнесение с правилом произведения, то вовсе не надо передавать дерево на акцептор, поскольку оно должно быть допустимым в силу способа построения.
Фу и Бхагава [5] показали, что их метод был успешно использован для распознавания событий, протекающих в экспериментах на пузырьковой камере после дискретизации устройством Хау — Пауэлла (см. Ферран и др. [11]). Распространение их метода на неупорядоченные деревья вместе с упрощением акцепторных устройств, представленное здесь, сделало метод более удобным. Другие примеры из Фу и Бха- гавы [5], вроде распознавания правильно сформированных
электрических цепей сопротивлений и распознавания действительно связанных молекул резины, также могут быть решены проще с использованием предлагаемого метода.
Б. Неупорядоченные древовидные грамматики и автоматы
Построения предыдущей части ведут к дальнейшему развитию теории регулярных неупорядоченных древовидных грамматик и неупорядоченных древовидных автоматов. Регулярные «-древовидные автоматы определим тем. же способом, которым определяются регулярные системы у Брайнерда [9]. Единственное отличие — это то, что каждое порожденное «дерево» будет типа диграфа, называемого неупорядоченным деревом. Точно так же «-древовидные автоматы — это обобщение псевдоавтоматов Тачера [10], допускающее неупорядоченность. Так как формальные определения регулярных систем и псевдоавтоматов сильно зависят от порядка, которым обладают деревья, то надо полностью переопределить новые сравнимые структуры.
Определение. Отмеченный алфавит — это пара <Л,о), где А— конечный набор символов, а о — конечное отношение на AXN (jV — неотрицательные целые числа). Пусть Ап = = о-Цп), так что Ап будет подмножеством А для Vn.
Диграф D состоит из конечного множества точек, или вершин U, множества V упорядоченных пар различных точек в U. Мы будем писать D = <U,V>. Произвольная пара («ь«2) из V называется направленным ребром или дугой. Дуга («ь«2) может быть изображена в виде стрелки от точки «1 к точке «2.
Путь на диграфе — это чередующаяся последовательность точек и дуг «о, хх, их, х^ ..., xm ит в которой каждая дуга х^ есть («,_!,«/). Длина пути — это число дуг, включенных в путь. Ветвью называется путь, все точки которого различны. Замкнутым путем называется путь с совпадающими начальной и конечной точками, цикл — это нетривиальный замкнутый путь, все точки которого (исключая начальную и конечную) различны. Диграф ацикличен, если он не содержит циклов. Диграф D — корневой, если он содержит особую точку, называемую корнем г, такую, что D содержит путь из г в любую другую точку D.
d-depeeo — это корневой, ациклический, отмеченный диграф. Метки, используемые для d-деревьев, будут упорядоченными парами а:х. Назовем а первой меткой-координатой, а х— второй. Обычно х будет служить для однозначности обозначения различных вершин.
Описывая d-дерево D, будем предполагать, что вершина а : ха изображена физически выше, чем вершина b : хъ, а указание на линейный сегмент а : ха — b : хъ означает наличие дуги
^а :ха>Ь \хь^ в D. Мы используем тот факт, что d-деревья обладают внутренней частичной упорядоченностью вершин относительно крайнего элемента — корня (см. пример 2, изображенный на рис. 8).
и-дерево, или неупорядоченное дерево,— это корневой диграф, каждой вершине которого приписана (не обязательно единственная) метка, содержащий только одну ветвь от корня к каждой вершине. Обозначим множество всех «-деревьев
Рис. 9.Рис. 9.Рис. 8.Рис. 8.Рис. 10.Рис. 10.
Рис. 9.
Рис. 9.
Рис. 8.
Рис. 8.
Рис. 10.
Рис. 10.
с метками из алфавита В через итВ. При представлении дуг «-деревьев без стрелок будут использоваться те же допущения, что и для d-деревьев.
Понятие порядка — это то, что существенно отличает деревья от «-деревьев. Деревья, изображенные на рис. 9 и 10, ни в коем случае не хочется называть одинаковыми, но если мы рассматриваем А и В как образчики «-деревьев, то это просто различные представления одного и того же «-дерева.
Если d-дерево или «-дерево содержит дугу (а, 6), то вершина «а» будет называться вершиной, предшествующей «Ь», а вершина «Ь» будет называться вершиной, следующей за «а». Граничное множество d-^ревг или «-дерева — это множество всех вершин, за которыми не следуют другие. В тех случаях, когда это не приведет к путанице, можно обозначить вершину с меткой х как вершину х.
Ветвь от корня до границы в d-дереве или «-дереве — это ветвь, у которой первая точка — корень, а последняя точка — элемент граничного множества. Глубина «-дерева t— это шах {«|« = длина ветви от корня до границы в г}.
Естественное соответствие «-деревьев d-деревьям определяется так, как и следовало ожидать. А именно, мы строим для
d-дерева D естественно соответствующее ему «-дерево U с помощью «развертывания» неединственных ветвей от корня до границы в D так, чтобы получить единственные ветви в U.
Пример 3. На рис. 11 показано представление естественно соответствующего «-дерева d-дереву Т из примера 2. Если A = <U,V>— «-дерево и У— подмножество U, тогда «-дерево А' = <У, (УХ ЛП Ю—и-поддерево А.
Г =Г =
Г =
Г =
Далее, «-дерево Ai совпадает с «-деревом А2> если каждое из них есть «-поддерево другого. В этом случае мы можем сказать, что Ai = А2.
Нам нужно уметь представлять d-деревья и «-деревья в линейной форме, как псевдотермы. Соответствие между «-деревьями и псевдотермами задается так:
отдельной вершине t соответствует терм t;
для дуг (^о,^1), (йъ М> • (ta М> являющихся теми и только теми дугами, у которых первая координата t^ а 6, /2, ..., tn отвечают термам fi, f2, ... fn. множество соответствующих термов есть {/0(У) [У — перестановка {fi, f2,..., fn^.
Соответствие между d-деревьями и псевдотермами задается так:
отдельной вершине t;x соответствует терм t;
для дуг (/0:x0, Л :%i), (/0: х0> t2: х2) ... и^;х^1п\хп>, являющихся теми и только теми дугами, у которых первая координата (/о: *о), a t\\ xb t2: х2, ..., tn : хп соответствуют термы /ь h> • • > Ь» множество соответствующих термов есть {/0(У) | У — перестановка {fi, f2>..., fn}.
Соответствующим псевдотермом для d-дерева из примера 2 и «-дерева из примера 3 является S(a(6)6(c(6))«(c(6)«)). Отметим, что если В — «-дерево, соответствующее d-дереву Д, то и 5 и Д будут иметь одинаковое представление в виде псевдо- терма. Еще раз подчеркнем тот факт, что ни представление в примере 2, ни представление в примере 3 не является единственным. Есть несколько других способов записи каждой из этих структур. Произвольное дерево может служить представлением для «-дерева; можно рассматривать Т' из примера 3 как дерево, являющееся представлением «-дерева,
Регулярная и-древовидная грамматика, сокращенно РгЩГ, над отмеченном алфавитом <Д,о)— это система М = <^В,о', Р, Г>, удовлетворяющая нижеследующему:
<В,о'>— конечный отмеченный алфавит ^А^В и а' 1Д = о.
Р— конечный набор правил произведения в форме ср -> ф, где ср, ф е Ui В.
ГгитВ — конечный набор аксиом.
Для / е Г или для /, являющегося левосторонним или правосторонним произведением в Р, если t имеет ровно п дуг с первой координатой с ^с^Ап.
Будем считать РиДГ над <Д,о) порождающей и-деревья с метками в А. Нижеследующее показывает, как Pz/ДГ порождает ^-деревья. Пусть а, Р, ф, ф —- ^-деревья над 5^ф->ф И а = <(/„, Уа>, ^ = <Uy Vp), Ф = ^ф, 1/ф>, ^ = <и^, Уф). Будем говорить, что а^Р, если 3 «-поддерево а, скажем S = (.Us, Из), такое, что {ветви в S} = {ветви в ф}, и если U^ = (Ua — Us) U U^ и Ир = (И„ — И5) U Ц«ь urS)} U Иф U Ж, иг^), где (mz, и^ — дуга, соединяющая вершину ut из Ua с корнем urS из S, а ^иь иг^-— новая дуга, соединяющая ut с корнем иг^ из ф. Будем говорить а=>|3, если 3 — последовательность u-деревьев «о, аь ... ..., ап е а = а0 =>«!=> ... =>ап = р. Для данной регулярной ^-древовидной грамматики G = (5, o', Р, Г) над (Д, о) ее язык L (G) есть множество Т ^-деревьев над A^t^T тогда и только тогда, когда ^=>t для некоторого уеГ.
Для данного множества А можно определить множество эквивалентных классов (Д", ^) на множестве строк длины п над А, полагая х ^ у тогда и только тогда, когда х есть перестановка символов в у для х, у е Ап. Будем обозначать отдельный класс в (Д", ^), выписывая некоторую частную перестановку класса и надчеркивая ее. Пример: ab означает класс перестановок {а, 6}. Им является ^ab, Ьа}.
Пусть <Д, о) — отмеченный алфавит, где А = {Хь Х2,..., Хд.}. u-древовидный автомат, сокращенно иДА, это система М = = <Q, ^i,...,^> F), где:
Q — конечное множество состояний.
Для каждого 1, 1 ^ i ^ k, ti является отношением в (Qz, «VQ для (Хь2)^о.
F ^Q является множеством конечных или восприни* маюи^их состояний.
Если каждое ti есть функция tr. Qz~*QV(Xi,z)^a, тогда М — детерминированный, а в противном случае М — недетерминированный автомат, для которого можно написать t^Xi...
...Хп^Хо тогда и только тогда, когда (№ ...Xn),Xo)e Gt/. Если (Xi, 0)go, то будем писать ti ~ X тогда и только тогда, когда (%, X)eti. Если X = Xi е А, будем часто писать tX) имея в виду ti.
Покажем теперь, как каждый автомат воспринимает или отвергает член, принадлежащий Тд, и тем самым определяет множество воспринимаемых деревьев. Ответ р z/ДА М на входной сигнал определяется следующим образом:
Если хеА0, то р(х) ~ А тогда и только тогда, когда tx А.
Если входным сигналом является а = <и, и), обладающий представлением в виде псевдотерма х(аь а2,..., ап), хе е Ап для п > 0, где {а, |1 ^ / ^ п}— множество всех w-поддеревьев а ^(х, а^е V для 1 ^ I ^ п, то р(а) ~ X тогда и только тогда, когда ЗЛь ..., XneQ, tx(X\.. .Хп) ~ X и р(а,) ~ Xi, 1 I п.
Если М — детерминированный автомат, то р — функция ^р: Ta-*Q, характеризуемая следующим:
если хе Ао, р(х) = tx^;
если входной сигнал такой же, как и в (б) для недетерминированного древовидного автомата, тогда р(а) = = ^(p(ai) ... р(ал))Р«ДГ G = <В, о, Р, Г> над А редуцирована, если Г состоит в точности из одного одновершинного начального дерева, G — расширяема, если каждое правило в Р представляется в форме Х^-^х(Х\,... ,Хп^, где ХеАп и Хо, Аь ... .ХпеВ —-А, или же в форме Х0~*х, где хеЛ0.
В. Результаты
Все результаты для регулярных систем и псевдоавтоматов переносятся на соответствующие им неупорядоченные аналоги. Приведем основные результаты. Доказательства можно найти в работе Уилльямса [12].
Лемма 1. Для каждой РмДГ можно эффективно построить редуцированную расширяемую грамматику.
Лемма 2. Для каждой редуцированной расширяемой РиДГ S можно эффективно построить недетерминированный мДА М, такой, что L(S) = L(M).
Лемма 3. Для любого недетерминированного иДА можно эффективно построить эквивалентный детерминированный мДА
Теорема 1. Для любой РиДГ G можно эффективно найти детерминированный мДА М, такой, что L(G) = L(M). Теорема 1 является прямым следствием лемм 1, 2 и 3.
Теорема 2. Пусть М = <Q, Л, ..., t^ F)— «ДА над <А, о). Можно эффективно построить Р«ДГ S =<BS, os, Ps, Г5> над <А, о>, такую, что L(s)=L(M). Следующая теорема сразу следует из теорем 1 и 2.
Теорема 3. Множество и-деревьев, порождаемых Р«ДГ- грамматиками, есть в точности множество, воспринимаемое иДД-автоматами.
Теорема 4. Для данной Р«ДГ G можно эффективно построить систему G\ такую, что t^L(G') тогда и только тогда, когда t является представлением и-дерева в L(G).
Пример 4. Пусть G = <А, а, Р, {рис. 12} > есть регулярная «-древовидная грамматика с Р = {рис. 13}. Тогла регулярная
S-^SS-^S
S-^S
S-^S
Рис. 12.Рис. 13.Рис. 14.
древовидная грамматика G' = <A,o, Р', {рис. 14}> будет порождать все представления «-деревьев в L^G^ с Р', изображенными на рис. 15.
Рис. 15<Рис. 15<
Рис. 15<
Рис. 15<
Для данной Р«ДГ G = <В, o', Р, S) над <2 = {хь х2, ... . ..,Хк), о> алгоритм построения эквивалентного «ДА может быть кратко изложен следующим образом.
Алгоритм 1(1). Построить эквивалентную расширяемую регулярную древовидную грамматику <Bf, o', Р', S') с одновершинными деревьями в качестве аксиом. (2) Эквивалентным недетерминированным иДХ является М = <(В' — S)USZ/, ^ь /2, • • •, tk, S"), где tx(Xif..., Хп) Хо тогда и только тогда» когда Хо->х^Х\,...»Хп) является правилом в Р'» a S" являет-
ся множеством, содержащим в точности метки начальных деревьев в S' (3). Построить детерминированный «ДА, эквивалентный М.
МЕТОД РАСПОЗНАВАНИЯ ОБРАЗОВ
В этой части развивается полная процедура распознавания образов, а также приводится несколько примеров. А именно, для данного объекта процедура, во-первых, представит его примитивы в качестве вершин d-дерева (упорядоченность не играет роли), во-вторых, найдет представление в виде строки, используя запись с помощью псевдотерма, и, в третьих, передаст эту строку «-древовидному автомату для восприятия, отклонения и/или классификации.
Другой целью этой части является определение некоторых понятий и терминов, необходимых для синтаксического распознавания образов вообще. Существует, однако, большая проблема, связанная с такими определениями: надо быть осторожными, чтобы не допустить «переопределения», поскольку хочется иметь достаточно широкую терминологию для того, чтобы она могла служить для различных приложений. Имея в виду эту трудность, путем, выбранным в статье, будет нестрогое определение некоторых основных терминов; эти, по существу, неопределенные термины будут использованы для определения других. Определения первоначально будут нематематическими. Начнем с нестрого определенных терминов.
А. Нестрогая терминология^
Рассматриваемое внешнее пространство будет означать ту физическую область, в которой могут появляться интересующие нас объекты. Типичные внешние пространства могут включать в себя: подмножество от нуля до бесконечности одномерной числовой оси, двумерную «рамку», которая может содержать картины, конечномерную решетку из нулей и единиц, 1 квадрант координатной системы Х/У, трехмерное пространство и т. д.
Термин объект будет использоваться для обозначения некоторого особого, единого подмножества рассматриваемого внешнего пространства. Словосочетание распознавание образов будет относиться к классифицируемым объектам в том смысле, что либо они включены в данный класс объектов (т. е. данное множество объектов), либо нет.
Примитивные типы, сами по себе являющиеся маленькими объектами, будут служить простыми строительными блоками, из которых можно строить объекты. Это могут быть точки, направленные отрезки прямой, трехмерные' кубы и т. д. Будем
9 Частичное рассмотрение аналогичных тем можно найти у Шоу [1].
говорить, что можно представить объект набором примитивных типов Р, если можно построить объект при помощи последовательного присоединения членов из Р. Конструкция, используемая для представления объекта, возникает последовательно из данной начальной точки; возможны ограничения относительно того, какие примитивные типы могут предшествовать и следовать каким. Точкой входа!) является та часть примитивного типа, которая должна располагаться примыкающей к предшествующему ему примитивному типу в представлении объекта. Точкой выхода) является та часть, которая должна примыкать к последующему примитивному типу, если такой имеется. Точки входа и выхода не обязаны быть геометрическими точками. Каждый примитивный тип, за исключением начальной точки, должен иметь точку входа, иначе он никогда не будет использован, а точка выхода необязательна. Примитивные типы без точки выхода не могут иметь после себя никаких типов.
Примитив — это однократное использование примитивного типа при представлении фигуры. Примитив будет обозначаться (х,у), где х указывает на использование примитивного типа х, а у играет роль однозначного идентификатора, обозначающего конкретный случай использования.
Будем говорить, что примитивный тип г является структурной частью примитивного типа s, если г и s имеют одну и ту же точку входа и г г s.
а = *" Ь = ^ длина (а) < длины (Ь)
а=ь = гх
а = —b = 2J
Рис. 16.
Пример 5 (рис. 16). Даны примитивные типы «а» и «Ь». В каждом из данных случаев «а» является структурной частью «Ь».
Б. Построение U-деревьев объектов
Примитивная система признаков — это тройка Ps = = <S, P,D\ где
Р— конечный набор примитивных типов,
D — конечный набор неформальных описаний элементов, (в) S ^ Р, S — назначенная начальная точка,
ни один из примитивных типов (за исключением S) не может быть структурной частью какого-либо другого примитивного типа.
Обычно будем ссылаться на примитивную систему признаков просто как на примитивную систему.
Пример 6. Дан объект в I квадранте координатной системы Х/У. Пусть Pso = <S, Р, D), Р = {рис. 17}, D=^S— ближайшая к началу координат точка объекта), (длина (а) = = длине (6) = w, но w может изменяться и будет принимать
(2,2)(2,2)(1,2)(1,2)(1,1)(1,1)Рис. 18.Рис. 18.$=• ,а=-*-,Ъ=Рис. 17.$=• ,а=-*-,Ъ=Рис. 17.(2,1)(2,1)
(2,2)
(2,2)
(1,2)
(1,2)
(1,1)
(1,1)
Рис. 18.
Рис. 18.
$=• ,а=-*-,Ъ=
Рис. 17.
$=• ,а=-*-,Ъ=
Рис. 17.
(2,1)
(2,1)
значение, соответствующее заданной фигуре), (а— горизонтально), (6 — вертикально), (точкой входа для а и b является конец, противоположный концу со стрелкой, точкой выхода — конец со стрелкой)}.
В нижеследующих примерах, в которых невозможна будет ошибочная интерпретация, обычно будет дано только описание S. Остальные описания будут очевидны из геометрической
(а,[(1,2),(2 2)])
(6,[(1,1),(1,2)])(S,d.l))(6,[(1,1),(1,2)])(S,d.l))(6, [(2,1), (2,2)])
(6,[(1,1),(1,2)])
(S,d.l))
(6,[(1,1),(1,2)])
(S,d.l))
(°,[(1,1),(2,1)])
Рис. 19.
формы примитивных типов. Пусть при ранее определенном Ps0 рис. 18 изображает объект Fx, а рис. 19— его примитивы. Для данной примитивной системы Ps = <S, Р, О') соответствующим d-деревом Т для объекта F является d-дерево, построенное с использованием представления F посредством Ps с помощью следующей процедуры.
Корнем Т является S, т. е. идентификатор S.
Вершина а2: Ь2 следует за вершиной ах: bx в Т тогда и только тогда, когда в представлении точка входа примитива (а2, &г) совпадает с точкой выхода примитива (ai»6i).
Ясно, что построенные таким образом соответствующие d-де- ревья будут удовлетворять критерию (2) нашей системы, рас* познающей образы. Мы просто строим, не обращаясь ни к чему, d-дерево, беря все примитивы так, как они встречаются в представлении. Важно отметить, что точка входа данного примитива (а,х) может совпадать более чем с одной точкой выхода; в этом случае вершина а : х соответствующего d-дерева будет встречаться более чем на одной ветви от корня до границы.
Пример 7. Используя определенные ранее Pso и Fx, получим соответствующее d-дерево таким, каким оно изображено на рис. 20. Поскольку возможность неправильной интерпретации отсутствует, можно опустить идентификаторы единственности и тем самым получить рис. 21. Если положить ^ = рис. 22,
Рис. 21.Рис. 21.Рис. 22.Рис. 22.
Рис. 21.
Рис. 21.
Рис. 22.
Рис. 22.
тогда примитивами (используя Pso будут те, которые изображены на рис. 23, а соответствующее d-дерево будет изображено на рис. 24. Совершенно ясно и без идентификаторов, какой примитив представлен какой вершиной этого d-дерева.
Циклической примитивной системой Ps = <S, Р, D> является та, в которой для некоторого объекта в рассматриваемом внешнем пространстве существует соответствующее d-дерево, содержащее замкнутый путь.
Пример 8. PS4 = <S, {примитивные типы рис. 25}, {(S — ближайшая к началу координат точка I квадранта)}). Если F имеет представление в виде примитивов рис. 26, тогда S, (S, а), а, (а, 6), 6, (6, d), d, (d, с), с {с, S), S — кратчайший путь в соот* ветствующем d-дереве, так что Ps^ — циклическая система.
Нециклической примитивной системой называется та система, которая не является циклической (т. е. в соответствующем внешнем пространстве не могут существовать объекты, ' d
сb
s=. a = -*,B=Lc=LD=*"s J ’^^
'д а
Рис. 25.Рис. 26.Рис. 27.
способные порождать d-дерево с замкнутыми путями, отвечающее им).
Пример 9. Внешнее пространство — подмножество [0, оо] одномерного пространства, Psi =<S, (рис. 27), {(S— точка фигуры, ближайшая к 0)}>. Тогда Psi— нециклическая.
Пример 10. Внешнее пространство = трехмерное пространство (в области, где х, у, 2 ^ 0). Ps2 = <S, Р, D>. Р = {(рис. 28),
(^У»2) I(х,у,2^? = I или(X,y,Z*wy(X.yvw.Z)(^У»2) I(х,у,2^? = I или(X,y,Z*wy(X.yvw.Z)Рис. 28.Рис. 28.(x,y,z) или(x*w,y,z)(x,y,z) или(x*w,y,z)(x,y*w,z) а =(x.y.z)(x,y*w,z) а =(x.y.z)(x,y*w,z+w)(x,y*w,z+w)Рис. 29.Рис. 29.(x,y, z^)(x,y, z^)
(^У»2) I(х,у,2^
? = I или
(X,y,Z*wy(X.yvw.Z)
(^У»2) I(х,у,2^
? = I или
(X,y,Z*wy(X.yvw.Z)
Рис. 28.
Рис. 28.
(x,y,z) или
(x*w,y,z)
(x,y,z) или
(x*w,y,z)
(x,y*w,z) а =
(x.y.z)
(x,y*w,z) а =
(x.y.z)
(x,y*w,z+w)
(x,y*w,z+w)
Рис. 29.
Рис. 29.
(x,y, z^)
(x,y, z^)
(рис. 29), (рис. 30), (рис. 31)}, Z)={(S — ближайший к (0,0,0) допустимый линейный отрезок объекта, т. е. тот отрезок, у которого сумма расстояний от концов минимальна),
(ac+w,y,z)Ъ а(oc>y,z)(ac+w,y,z)Ъ а(oc>y,z)Рис. 30.Рис. 30.(x+w,y,z*w)(x+w,y,z*w)(xty,z+w)(xty,z+w)(X+W,y,z)С =(ОС,у,2)(X+W,y,z)С =(ОС,у,2)(ОС^И^у+УУ,?)(ОС^И^у+УУ,?)Рис. 31.Рис. 31.(x.yw.z)(x.yw.z)
(ac+w,y,z)
Ъ а
(oc>y,z)
(ac+w,y,z)
Ъ а
(oc>y,z)
Рис. 30.
Рис. 30.
(x+w,y,z*w)
(x+w,y,z*w)
(xty,z+w)
(xty,z+w)
(X+W,y,z)
С =
(ОС,у,2)
(X+W,y,z)
С =
(ОС,у,2)
(ОС^И^у+УУ,?)
(ОС^И^у+УУ,?)
Рис. 31.
Рис. 31.
(x.yw.z)
(x.yw.z)
(а, Ь, с, S содержат некоторое общее для всех ^), (точки выхода а, Ь, с — те стороны, на которых находится вершина стрелки. Точки входа — любые другие боковые стороны)}. Ps2, таким образом, — нециклическая система.
Примитивная система полна, если с ее помощью можно представить все связанные объекты в рассматриваемой области. Psi из примера 9 — полна.
Теорема 5. Не существует нециклической полной примитивной системы в двумерном евклидовом пространстве.
Нетрудно убедиться, что эта теорема верна, если попытаться построить такую примитивную систему, которая может представлять все объекты этого рода.
Дан объект f с соответствующим d-деревом t; будем говорить, что «-дерево и является соответствующим f «-деревом,
Рис. 32.
если и — естественно соответствующее 1 «-дерево. В примере 7 соответствующим объекту F2 «-деревом будет то, которое изображено на рис. 32.
Практически можно заметить, что соответствующие «-деревья — только теоретические конструкции; они позволяют строить воспринимающие «-древовидные автоматы М, которые будут воспринимать соответствующие «-деревья (воспринимая,
Рис. 33.
таким образом, объекты) тогда и только тогда, когда они принадлежат ЦМ). Нам не надо будет в действительности строить «-дерево при решении задачи распознавания образов, представление в виде псевдотерма можно найти прямо исходя из d-дерева.
Множество объектов Т определяемо, если существует «-древовидная грамматика G и примитивная система Ps, такая, что для данного объекта / с соответствующим «^деревом у t^T тогда и только тогда, когда yeL(G). -
Это определение не означает, что в L(G) не могут содержаться «-деревья, не соответствующие конфигурации, принадлежащей определяемому множеству Т; фактически L(C) очень часто будет содержать такие «-деревья. Однако эти «-деревья не могут соответствовать возможным физическим объектам. См. пример 12 — случай, когда это происходит.
Отметим, что каждый конечный набор объектов ^Fi,F2,... ...,F4—определяем, так как можно сначала определить произведения «-деревьев — конфигурацию на конфигурацию для одноуровневых деревьев рис. 33, — далее определить примитивную систему так, чтобы она содержала сами конфигурации и S в качестве примитивных типов (JFi соответствуют Р^. Это приводит к потере содержательности того, что подразумевается под понятием примитивного типа, но не противоречит нашим определениям.
В. Процедура распознавания образов
Теорема 6. Для данного определяемого множества Т существует детерминированный и-древовидный автомат М, такой, что для объекта / с соответствующим и-деревом у teT тогда и только тогда, когда y^L(M).
Доказательство непосредственно следует из теоремы!.
Теперь можно описать процедуру принятия решения о том, находится ли данный объект в данном определяемом множестве объектов, используя подходящую примитивную систему и «-древовидную грамматику.
Процедура распознавания образов
Шаг (1). Для данного объекта найти примитивы, которые в совокупности его образуют. Шаг (2). Построить d-дерево с метками, взятыми из множества примитивов. Шаг (3). Предъявить псевдотерм, соответствующий d-дереву, заранее построенному «ДА для восприятия или отклонения.
Уместно спросить, какие части этой процедуры определены полностью. Для данного определяемого множества объектов шаг (2) в большинстве случаев (см. теорему 8 и относящийся к ней текст) будет полностью определен. Для данного «ДА шаг (3) является алгоритмом, определяемым М, а вот шаг (1) во многих случаях не определен полностью. Описание методов нахождения примитивных типов не является целью этой статьи, так как можно просто отметить, что для различных приложений лучшими окажутся разные методы. Конечно же, если машинная программа для нахождения примитивов уже написана, то она будет сама служить в качестве определения.
Лемма 4. Даны и-деревья Тх = <UX, Vx>, T^ = <U2> Кг), корень (Д^-корень (Г2) = г, где Тх не является и-поддеревом Т2 => Э, вершина (аУ)^ UX[\U2, такая, что {(«,%) | («,х)е
Vi} {(а,х) | (а,х)е К2}.
*) Мы обращаемся к вершине, называя ее метку.
Выражение примитивный тип с обладает единственным размером означает, что любой примитив (с, х) в представлении объекта должен использовать один и тот же с без каких-либо изменений в его размерах.
Теорема 7. Дана примитивная система Ps = <S, Р, D) с нециклическим Рис тем ограничением, что каждое р ^ Р обладает единственным размером. Тогда соответствующее d-дерево для данного объекта f будет единственно (в том смысле, Что для любых двух d-деревьев, представляющих f, соответствующие им и-деревья будут совпадать).
Доказательство. Предположим-, что d-деревья di и d2, представляющие f, имеют отвечающие им u-деревья Тх и Г2 соответственно, причем Тх Ф Т2. Отсюда следует, что Тх не является u-поддеревом Т2. Положим Тх = <UX, Vx> и Т2 = <U2, V2>. Ti и Т2 должны иметь одинаковый корень S; отсюда вытекает, что 3 вершина ^а)^ UXV\U2, такая, что {(u, х) | (а, х)е VJ ^ У={(и,х)) (u,x)e V2) в силу леммы 4. Но так как размер (а) единствен, то можно видеть, что эта вершина имеет одинаковую точку выхода (относительно f) в обоих представлениях Тх и Т2. Далее, в силу нецикличности эта точка никогда ранее не могла быть достигнута при конструировании d-дерева. Поэтому каждая (а,х) в Vi должна быть в Vs-t (имея в виду, что точка ^хода для х совпадает с точкой выхода для а), так что {(u,x) | (u,x)e Vi} = {(u,x) | (u,x)e V2}®, т. е. получаем противоречие с леммой. Следовательно, предположение неверно и Тх = Т2.
Существуют и другие ограничения, которые можно наложить вместо ограничения единственности размера в рассмотренной теореме, для того чтобы данная нециклическая примитивная система давала бы единственные d-деревья. Вообще говоря, если нециклическая примитивная система будет достаточной для представления интересующих нас объектов в рассматриваемых приложениях, то подходящее для обеспечения единственности ограничение можно отыскать. Это, однако, несправедливо для циклических примитивных систем и, и к сожалению, существует большой класс множеств объектов, который невозможно представить нециклическими системами. Очевидный метод, состоящий в применении примитивных типов и построении d-деревьев на расширении этого первоначального базиса, не всегда дает единственные d-деревья.
При определенных условиях, если решено делать некоторую внешнюю проверку при конструировании d-деревьев, можно получить единственные d-деревья из циклических примитивных систем.
В нижеследующей теореме примем такое условие:
Условие единственности использования
Предполагаем, что существует процедура использования примитивных типов, такая, что если дано расположение на объекте точек, служащих точками входа для последующего примитива, то тот же примитивный тип всегда будет использоваться тем же самым образом в таком же месте, так что в точности одинаковые части объекта будут представлены этим типом с одинаковым расположением (относительно объекта) точек выхода. Такое предположение, по-видимому, разумно, так как такого рода схему предполагается осуществлять с помощью ЭВМ, которая одинаковые приказы всегда будет исполнять одним и тем же образом.
Теорема 8. Для данной примитивной системы ^возможно, циклической) при условии единственности использования всегда можно для данного объекта построить единственное d-дерево, если только может быть определена полная упорядоченность (<,~, >) на однозначных идентификаторах примитивов, причем а^Ь тогда и только тогда, когда а = Ь.
Доказательство. Для данной примитивной системы Ps = <S, P,D} будем доказывать теорему, строя алгоритм, который конструирует d-дерево путем наложения примитивных типов для получения примитивов. На каждом шаге имеется в точности один примитив, который может быть расширен (т. е. найден следующий за ним примитив), так что сначала алгоритм рассматривает перечисление элементов Р, например рь, р2, ... .рп (Р должно быть конечно по определению). Вообще р^ будет расширен раньше р,, если i < /. Проблема возникает в случае I = /. Так как каждое использование примитивного типа отмечено собственным идентификатором и так как на идентификаторах введена полная упорядоченность, то можно принять решение расширять примитив (pz, Xi) раньше, чем (pi, х2), тогда и только тогда, когда х\ < х2 для хь х2 е {однозначные идентификаторы}. Идентификаторы должны быть расставлены таким образом, что х\ < х2 тогда и тодько тогда, когда х\ используется не позже х2. Таким образом, алгоритм первоначально развернут частично, поскольку он стремится расширить первоначально вершины более старшего порядка.
В целях удобства алгоритм в ходе построения d-дерева D использует 4 множества G, Н, F и Е (хотя в действительности нужно только одно). G будет всегда содержать множество нерасширенных примитивов (или, что эквивалентно, их можно представлять себе вершинами). Н, F и Е будут использоваться только в качестве временных накопителей.
Алгоритм 2. Алгоритм для порождения единственного d-дерева D = <U,V> (при данных выше условиях) на частично расширенном первоначальном базисе.
Использовать примитивный тип S = pi, дающий примитив ^puXiY Корень D<-pi;xx, G+-{pi-.xxY U <-\pi\ xxY
H<-{pi: Xj\pi: Xj e G, где i = min{6|p^ : xr e G}}. (// должно быть не пустым).
F<-{pi: Xh\pi: x, e H ф Xk ^ Xj\ (Вследствие полной упорядоченности F должно содержать в точности один элемент, скажем f.yG<-G— F.
E-V.pk;xi\pk ;xj— результат расширения f и каждый Xj > xi для всех ранее использованных XiY U^U[]E. V^VXjm^w^w^Ey G^-GUE. Если G = 0, то конец. В противном случае переход к шагу (2).
Этот алгоритм будет, очевидно, порождать единственное d-дерево.
Г. Некоторые примеры
Многие бесконечные множества объектов, каждый объект которых конечен, являются определимыми. В этих случаях обычно обнаруживается, что все объекты можно разбить на
Рис. 34.
связанные подобъекты так, что каждый из подобъектов определим, а кроме того, можно делать произвольное число объединений, порождающих все большие и большие конечные объекты нашего множества. Эти случаи иллюстрируют преимущества рекурсивного метода порождения ^-деревьев регулярными л-древовидными грамматиками.
Пример 11 !). Нужно уметь распознать множество домов Т = {рис. 34 и т. п.}. Нетрудно убедиться, что каждый дом может быть представлен с помощью только примитивных типов, показанных на рис. 35, если начать строить d-дерево от правого нижнего угла объекта. Некоторый дом множества может быть представлен так, как показано на рис. 36. Числа, связанные
с каждым примитивом, служат для однозначного обозначения каждого частного случая использования примитивного типа. Теперь построим представляющие d-деревья для объекта
Рис. 35.
(рис. 37). d-дерево построено с использованием каждой метки примитива в качестве метки вершины d-дерева. Дугу ^а;хи
Рис. 36.
b i xf) включаем в d-дерево в том случае, если примитив b: Xj может быть достигнут прямо из примитива а : хи всегда дви-
Рис. 37.
гаяс^ по направлению стрелок. Теперь, когда d-дерево построено, представим соответствующий терм
S (а (а (а (6 (с)) b (а (с) d)) b (а (а (с) d) d (а))) b (а (а (а (с) d) d (a)) d (а (а)))) для восприятия на ранее сконструированный мДА. Зная, что можно построить мДА, такой, что он будет воспринимать только термы для d-деревьев, соответствующих элементам объекта,
заметим, что нижеследующая грамматика будет порождать соответствующие ^-деревья. Для построения z/ДА можно использовать процедуру, указанную в алгоритме 2. Пусть 0 = <^а,Ь> (\ d, S, Si, S2, S3}, о, Р, {S}> над <{а, bt с, d, S}, о'> с Р = {рис. 38}4
Рис. 38.Рис. 38.
Рис. 38.
Рис. 38.
Хотя эта программа будет порождать ^-деревья, не соответствующие домам, но ни одно из них не может быть представлением физически возможных объектов, так что ничего страшного в этом нет.
Следующий пример, использующий совсем другие примитивные типы, будет поучителен.
Пример 12. Пусть множество объектов Т—всевозможные равнобедренные прямоугольные треугольники с вертикальными и горизонтальными сторонами, построенными из решетчатых блоков Т = {рис. 39 и т. п.}. На рис. 40 показаны примитивные типы. S — ближайший к левому нижнему углу объекта блок, Точки выхода для S и Т— стороны, отмеченные концами стрелок, точки входа — остальные стороны. Определим в качестве ^-древовидной грамматики G = < (S, Т), о, Р, Г>, где Р = = {рис. 41}. d-дерево, представляющее рис. 42, изображено на
рис. 43. По-прежнему G может порождать большое число н-де- ревьев, нс представляющих объекты из Г, но это не могут быть «-деревья, соответствующие физически возможным объектам, Рассмотрим преобразование (рис. 44), которое порождает
Рис. 40.Рис. 40.
Рис. 40.
Рис. 40.
«-дерево, не соответствующее какому-либо элементу из Т. Однако это «-дерево не соответствует никакому .реальному объекту. Любая попытка построить такой объект при понимании
Рис. 41.Рис. 41.
Рис. 41.
Рис. 41.
того, что все возможные связи должны быть указаны на «-дереве, иллюстрирует этот факт.
Как отмечалось выше, одно из лучших свойств данного автоматизированного метода распознавания образов состоит в способе, которым он может рекурсивно воспринимать псевдотермы,
соответствующие рекурсивно определяемым множествам объектов1). В качестве последнего примера опишем возможное применение метода к нерекурсивным объектам. Этот пример иллюстрирует возможность его использования для классификации объектов, так же как и для распознавания.
На самом деле, эта возможность рекурсии является одним из главных преимуществ любой синтаксической системы.
Пример 13. Надо распознать печатные заглавные буквы английского алфавита. Для того чтобы пример был небольшим, будем работать только с тремя буквами: С, G и О. Будем использовать примитивные типы, изображенные на рис. 45 с начальной точкой s, взятой в ближайшей к началу координат
Рис. 44.
системы X[Y точке I квадранта. Поскольку примитивная система явно циклическая, будем использовать процедуру, описанную в теореме 8 для обеспечения единственности d-дерева.
Рис. 45.
Порядок следования примитивных типов будет таким же, как это давалось выше, так что «а» расширяется перед «Ь», которое расширяется перед «с» и т. д. Представление данной
эталонной буквы С с помощью этой примитивной системы изображено на рис. 46, а соответствующее d-дерево—на рис. 47. Представление G дано на рис. 48 и 49.
Представление О дано на рис. 50 и 51. Определим и-древо- видную грамматику над <5 = {s, а, 6, с, d, е, ^ g, h}, о> как G = = <В, o', Р, {С, G, О}) с B = {C,B,O}US и Р = {рис. 52}. Для того чтобы определить воспринимающий u-древовидный автомат, надо сначала найти эквивалентную расширяемую и-древо- видную грамматику над <3, о>. Чтобы получить ее, надо обра-
ботать каждое произведение в Р, вводя там, где это необходимо, новые нетерминальные символы с . тем, чтобы сделать
Рис. 50.Рис. 50.Рис. 51.Рис. 51.
Рис. 50.
Рис. 50.
Рис. 51.
Рис. 51.
расширяемыми произведения, а именно G = <ВЬ о', Рь {С\ 6,0}), где Bi = {<^1,6ь 62, 63, 64, Ci, Сг, Сз, 6*4, ei, ^2, ^з, ^4,65, fi,/4, g3}U В и Pi = {рис. 53 и 54}.
Детерминированный u-древовидный автомат, построенный нами, будет останавливаться в состоянии С, если на входе был объект С, в состоянии G, если на входе G, и в состоянии О, если на входе О; таким образом, автомат классифицирует входные объекты. Автомат не будет останавливаться ни в каком цз
этих состояний для любых других входных объектов. Используя метод построения, описанный в алгоритме 1, определим
9з —“* 9 - е5
■ с4► с ец
*4
Рис. 54.
М = <B\,'L,ts,ta,tb,tc,td1te,ttdg1thAC,Q,O^'). ФуНКЦИИ t будут определены так:
ts (aic2) = C,
tbke\^ = bx,
to W — Ci,
ts («1С3) = G,
tb W = b2,
tc (e^ = c2,
ts («l^) = 0,
tb {g^b) = b3,
tc (e3) = c3,
t<A^ = ai,
tb (/4) = b4,
to (^4)C4,
te (^1) ^Ь te (^)^5
/е(62) = е2,^(60 = Л,
te^ = e3, tA^ = f4i tAb^ = et, t^ = gs.
Чтобы рассмотреть функционирование М, проследим за восприятием псевдотерма S (a (f (6 (е (с)))) с (е (6 (ge)))), представляющего d-дерево, соответствующее эталонному входному объекту G.
р (s (а (/ (6 (е (с)))) с (в (b (ge))))) =
= ts (Р (а (f (6 (е (с))))) р (с (е (b (ge))))) =
= is da (Р (f (b (e (c))))) te (p (e (b (ge))))) =
= ts da df (P (b (e (c))))) tc (te (p (b (ge))))) =
= ts (ta df (tb (P (e (c)))) tc (te (tb (p (g) P (e))))) =
= ts (ta (tf (tb (te (p (c))))) tc (te (tb (tg (X) te (X))))) =
= ts (ta (tf (tb (te (tc W)))) tc (te (tb (g^)))) =
= ts (ta (tf (tb (<e (Cl)))) tc (te (63))) =,
= ts (<a (tf (tb (в\))) tc (63)) =
= ts(ta(tf (bi)) c3) =
= ts (ta (fl) C3) =
= t,(aic3) =
= G
Таким образом, M остановился в конечном состоянии G и входной объект распознается как буква G.
3. СЛОЖНОСТЬ ВОСПРИНИМАЮЩИХ УСТРОЙСТВи связь С ДРУГИМИ СИСТЕМАМИ
Хотя «-древовидные автоматы, как указывалось в разд. 2, при использовании обладают привлекательными теоретическими свойствами, тем не менее как реальные устройства они имеют очевидные недостатки.
Трудности возникают и тогда, когда устройство должно быть действительно построено, и тогда, когда оно просто моделируется на ЭВМ. Эти устройства сложны. В лучшем случае это будет сложность построения устройства или математического обеспечения с инструкциями типа состояние/действие, которые могли бы отображать классы эквивалентности строк в индивидуальные состояния.
Существует еще и другое соображение по поводу реализации этих устройств, которое не следует с очевидностью сразу из их определения. Должен быть предусмотрен некоторый механизм, контролирующий уровни рекурсии, в то время как устройство воспринимает строки.
На каждом шаге записи должны сохранять всю предыдущую информацию, которая может иметь отношение к последующим преобразованиям состояний. Стэк или его модель, конечно, был бы подходящим устройством для этой цели. Если учесть сложность определения «-древовидных автоматов и изложенные выше соображения по поводу их реализации, то становится ясно, что это весьма неуклюжие в работе устройства.
Так как языки, воспринимаемые «-древовидными автоматами, являются языками, состоящими из строк (псевдотермы, представляющие «-деревья), то, по-видимому, будет полезно исследовать другие типы устройств, воспринимающих эти же языки; определение этих устройств может и не возникать столь естественно из определения регулярных «-древовидных грамматик, но реализовать их будет проще. Фактически установлено, что такого рода языки могут восприниматься очень простыми и несложно реализуемыми моделями устройств, а именно детерминированными магазинными автоматами.
Теорема 9. Для данного произвольного регулярного и-дре- вовидного автомата М можно эффективно построить такой детерминированный магазинный автомат, который воспринимает в точности L(M).
Алгоритм построения такого эквивалентного детерминированного магазинного автомата приведен у Уилльямса [12].
В работе Ота [6] были определены схемы, называемые мозаичными грамматиками, порождающие сложные объекты, а также их акцепторы. Мозаичные грамматики используют только один вид примитивных типов. Это маленькие квадраты, называемые плитками. Мозаичные грамматики имеют произведения, использующие небольшие объекты из плиток в качестве своих лево- и правосторонних систем, а также правила вставок (одинаковые с теми, которые использовались для графов у Пфальца [2]), определяющие их применение. Эти грамматики могут порождать более сложные объекты, чем те, которые соответствуют определенным в этой статье «-древовидным грамматикам. Например, Р«ДГ не могут порождать класс всевозможных квадратов произвольного размера, если в качестве примитивных типов взяты маленькие квадраты. Ота обнаружила, что для схем типа метода Р«ДГ невозможно порождение объектов, требующих фиксированных отношений между длинами сторон. Такие объекты легко порождаются мозаичными грамматиками. Другое преимущество мозаичных воспринимающих схем — то, что им не нужна предварительная обработка дискретизированного входного объекта. Можно рассматривать каждый элемент дискретизированного массива как плитку и прямо начинать обработку, т. е. восприятие, отказ или классификацию. Проблемой
в мозаичном подходе, по-видимому, является чрезвычайная сложность машинных моделей, необходимых для обработки входных объектов. Вообще говоря, требуется машина Тьюринга с двумерным входом, которая работает на бесконечной плоскости. Очевидно, что существует трудность моделирования такого устройства на ЭВМ в том случае, когда машина должна быть достаточно большой, чтобы иметь дело с реальными задачами. Ота определила несколько различных ограничений, которые можно наложить на мозаичные грамматики, а также исследовала класс воспринимающих устройств для каждого из ограничений. Она не обнаружила вполне удовлетворительные машинные модели, все они требовали условий неограниченности, что делало их более сложными в реализации, чем «-древовидные автоматы. По-видимому, существует определенная взаимосвязь между богатством классов объектов и сложностью необходимых для их распознавания машинных моделей.
Автоматы, которые могут воспринимать или отвергать двумерные объекты, описаны у Блюма и Хевита [7],- Савича [8] и Милопулоса [3]. Этот вид автомата можно представить в виде «жука», которому предъявлен для блуждания лабиринт с различно окрашенными секциями. Жук принимает или отвергает лабиринт в зависимости от того, удовлетворяет ли лабиринт заранее оговоренным условиям. У каждого из авторов имеются различные ограничения, накладываемые на лабиринт и способности жука. Проблемой, возникающей при такого рода подходах, является по-прежнему сложность воспринимающих устройств. Савич показал, что создание жука для выполнения некоторых, предлагаемых им постановок задач эквивалентно созданию машины Тьюринга, воспринимающей или отвергающей некоторое кодирование лабиринта. Милопулос [3] утверждает, что он «рассматривает М-образные автоматы не в качестве моделей распознающих устройств, а как инструмент для определения и изучения множеств объектов».
Одним из первых синтаксических подходов к распознаванию образов является приведенный у Шоу [1] язык описания объекта (ЯОО). Метод, приведенный здесь, основывается в некоторой степени на работе Шоу, поскольку он был первым, представившим примитивы объекта в качестве вершин дерева. ЯОО использовал дерево, хотя на границе это было расщепленное дерево. Существует по крайней мере одно практические применение, основанное на ЯОО.
Другой рано появившийся многомерный подход, оказавший значительное влияние на более поздние работы, был развит Пфальцем и Розенфельдом [2]. Ими были определены схемы, порождающие объекты, называемые сетевыми грамматиками. Здесь интересующий объект (выраженный в виде графа) мог
быть соотнесен с сетевой грамматикой для определения, находится ли он в рассматриваемом множестве объектов. Пфальц и Розенфельд определили сетевые грамматики в столь общем виде и допустили так много типов произведений с помощью «правил вставки» (которые точно описывают, как должно использоваться каждое произведение), что их система включает в себя любую систему деревьев или графов, которую можно определить. Однако, к сожалению, пока не наложены разного рода ограничения, она, видимо, не проливает много света на природу таких систем.
РЕЗЮМЕ
Изложен метод, посредством которого объекты могут представляться некоторым диграфом, который в свою очередь может быть передан в линейной форме для классификации на регулярный ^-древовидный автомат. Показано, что регулярные ц-древовидные автоматы и соответствующие порождающие системы— регулярные ^-древовидные грамматики — являются более подходящими моделями для этих целей, чем ранее использовавшиеся их упорядоченные древовидные двойники. Отмечается, что регулярные ^-древовидные автоматы можно моделировать с помощью легко реализуемых детерминированных магазинных автоматов. Оказывается, что хотя некоторые виды систем, порождающих объекты, могут производить более богатые классы объектов, чем регулярные ^-древовидные грамматики, но соответствующие акцепторы гораздо труднее реализовать. Определены многие понятия, которые могут быть необходимыми в любой схеме лингвистического распознавания образов. Приведено несколько примеров. Обсуждены некоторые другие многомерные подходы.
Список литературы
Shaw A. A formal picture description scheme as a basis for picture processing systems. Inform. Contr. 14 (1969), 9—52.
Pfaltz J. L., Rosenfeld A. Web grammars, Proc. Joint Int. Conf. Artificial Intelligence, Washington D. S. (1969).
Mylopoulos J. On the application of formal language and automata theory to pattern recognition, Pattern Recognition 4, (1972), 37—51.
Fu K. S., Bhargava В. K. Tree systems for syntactic pattern iecognition. Presented at the Computer Image Processing and Recognition Symposium. University of Missouri — Columbia, (1972), August 24—26.
Fu K. S., Bhargava В. K. Tree systems for syntactic pattern recognition. IEEE Trans. Comput. C-22 (1973), 1087—1099.
Ota P. A. Mosaic grammars. Tech. Rep. 73—10. Moore School of Electrical Engineering, University of Pennsylvania (1973).
Blum M., Hewitt C. Automata on a 2-dimensional tape. IEEE Conference Rec. Sth Symp. Switching and Automata Theory. (1967), 155—160.
Savitch W. J. Maze recognizing automata. Proc. 4th ACM Symp. on Theory of Computing (1972), 151—156.
Brainerd W. S. Tree generating regular systems. Inform. Contr. 14 (1969), 217—231.
Thatcher J. W. Characterizing derivation trees of contextfree grammars through a generalization og finite automata theory. J. Comp. System Sci. 1(4) (1967), 317—322.
Ferran P. M., Howie J. M., Moorhead W. G. Recognition and measurement of bubble chamber tracks using a flying spot digitizer, CERN, Geneva Switzerland (1960), 86—90.
Williams K. L. U-tree automata: machines that can classify patterns, Department of Computer Science Tech. Rep. 73-02. Michigan State University, East Lansing (1973).
Fu K. S., Swain P. H. On syntactic pattern recognition, Software Engineering, J. T. Tow, ed., Vol. 2, Academic Press, New York (1971).
Задача различения объектов с точкизрения теории отношений
Р. М. Харалик1)
Remote Sensing Laboratory, Department of Electrical Engineering. University of Kansas. Lawrence, Kansas, U. S. A.
Рассматривается распознавание образов с точки зрения теории отношений. Данные измерений являются бинарным отношением из множества элементов в множество измерений, а данные классификации являются бинарным отношением из множества элементов в множество классов. Решающее правило является бинарным отношением из множества измерений в множество классов. Первоначально не предполагается наличие какой-либо структуры на множестве измерений или на множестве элементов, и оптимальное решающее правило определяется для случая независимости элементов. Затем предполагается, что на множестве элементов существует структурная зависимость в виде бинарного отношения, и определяются две приближенные формы решающих отношений. Приближенное решающее отношение для случая зависимых элементов имеет специфическую форму, совершенно отличную от решающего правила, вытекающего из обычного предположения о марковской зависимости. Можно ожидать, что модель отношений для различения объектов является полезной альтернативой статистическим моделям, используемым в настоящее время.
Ключевые слова: распознавание образов, бинарное отношение, множества, решающие правила, контекст, графы.
’1. ВВЕДЕНИЕ
Мы будем излагать некоторые задачи распознавания образов, используя конструкцию отношения, а затем исследуем некоторые другие пути рассмотрения этих задач. Некоторые полученные нами выводы проиллюстрированы рисунками, так что читателю достаточно внимательно их рассмотреть, чтобы понять сущность статьи. Тот, кто любит более строгое изложение, найдет формулировки и доказательства упоминаемых в статье лемм в добавлении.
Примененный к распознаванию образов теоретический подход, основанный на отношениях, является интересной альтернативой традиционных вероятностных моделей. Читатели, желающие рассмотреть другой теоретико-множественный подход, могут ознакомиться с идеями Михальского [1], Михальского и Маккормика [2], а также Рида и Джаярамамурти [3] о покрытии интервалами.
*) Haralick R. М. Pattern recognition, vol. 7, рр. 67—79.
© 1975 by Pergamon Press Ltd.
© Перевод на русский язык, «Мир», 1979,
Рис. 1. Диграф обучающего отношения 2/ для элементов. Обучающее множество элементов Щ=Ци\, и2, и3) иь и5у пространство измерений D = {dx,d2, d3} и обучающее отношение для элементов ^ = ^иь dx), («2, ^i), («з, d2\ (и^ d2\ (щ, ds), (us, ds)}.Рис. 1. Диграф обучающего отношения 2/ для элементов. Обучающее множество элементов Щ=Ци\, и2, и3) иь и5у пространство измерений D = {dx,d2, d3} и обучающее отношение для элементов ^ = ^иь dx), («2, ^i), («з, d2\ (и^ d2\ (щ, ds), (us, ds)}.
Рис. 1. Диграф обучающего отношения 2/ для элементов. Обучающее множество элементов Щ=Ци\, и2, и3) иь и5у пространство измерений D = {dx,d2, d3} и обучающее отношение для элементов ^ = ^иь dx), («2, ^i), («з, d2\ (и^ d2\ (щ, ds), (us, ds)}.
Рис. 1. Диграф обучающего отношения 2/ для элементов. Обучающее множество элементов Щ=Ци\, и2, и3) иь и5у пространство измерений D = {dx,d2, d3} и обучающее отношение для элементов ^ = ^иь dx), («2, ^i), («з, d2\ (и^ d2\ (щ, ds), (us, ds)}.
Задача различения объектов, которую мы хотим обсудить, обычно встречается в таком контексте, когда сначала предполагается возможность существования всезнающего наблюдателя, отыскивающего и формально описывающего ряд классификаций и измерений, выполненных на некотором множестве внешних объектов.
Внешними объектами могут быть заводы, животные, насекомые, химические соединения, . машинописные буквы, фотографии, рентгеновские снимки, слова или предложения. Измерения могут касаться формы, размера различных частей, температуры, цвета, тона, текстуры или зависимостей следования.
Будем называть объекты внешними элементами (кратко — элементами) и обозначать буквой U непустое множество элементов, подлежащих рассмотрению. Будем называть набор измерений элементов измеренными объектами (кратко — объектами) и обозначать буквой D непустое множество таких объектов. Наконец, будем обозначать буквой С непустое множество меток классов, с которыми можно будет идентифицировать элементы.
Число возможных классов обычно на несколько порядков меньше числа возможных измеренных объектов или элементов, но число элементов может быть меньше или больше числа возможных измеренных объектов.
Сначала каждый элемент из обучающего подмножества элементов наблюдается в предположении о том, что существует всезнающий наблюдатель. Предполагаем, что в процессе измерений (он может быть мгновенным или же требовать длительного промежутка времени) каждый измеренный элемент порождает по крайней мере один измеренный объект, и, чтобы не ограничивать общности, допустим порождение и более одного измеренного объекта. Обозначим через St отношения между измеренными элементами и измеренными объектами. 2/— бинарное отношение из подмножества элементов Ut в множество объектов D и, таким образом, является подмножеством Ut X D, г. е. St ^ Ut X D. St называется обучающим отношением измерений и состоит из множества всех упорядоченных пар (и, d), где d является измерением, выполненным на элементе и из множества Ut (см. рис. 1).
Одновременно с измерением элементов исследователь относит их к некоторому классу. Каждому элементу приписывается
Рис. 3. Диграф данных обучения, состоящий из обучающего отношения измерений ^t и обучающего отношения с правильным распределением по классам Tt, взятым соответственно из рисл 1 и рис. 2.Рис. 3. Диграф данных обучения, состоящий из обучающего отношения измерений ^t и обучающего отношения с правильным распределением по классам Tt, взятым соответственно из рисл 1 и рис. 2.
Рис. 3. Диграф данных обучения, состоящий из обучающего отношения измерений ^t и обучающего отношения с правильным распределением по классам Tt, взятым соответственно из рисл 1 и рис. 2.
Рис. 3. Диграф данных обучения, состоящий из обучающего отношения измерений ^t и обучающего отношения с правильным распределением по классам Tt, взятым соответственно из рисл 1 и рис. 2.
один класс. Обозначим через Tt отношение между наблюдаемыми элементами и метками классов. Tt — бинарное отношение из подмножества элементов Ut в множество классов С и, таким образом, является подмножеством Ut X С, т. е. Tt^ Ut X С. Отношение Tt называется обучающим отношением классификации и состоит из множества всех упорядоченных пар (w,с), где с—класс, приписанный элементу и множества Ut (см. рис. 2).
Рис, 2. Диграф обучающего отношения Tt, задающего правильное распределение по классам. Обучающее множество элементов Ut = {щ, Ua, из, щ, «б}, множество классов С = {сь £2} и обучающее отношение с правильным распределением по классам Tt = {(щ, Ci), («2, Ci), (из, <?i), («4, 0а\ из, с2)}.
Пару отношений S/ и Tt часто называют данными обучения. Пример пары отношений S/ и Tt в виде диграфа изображен на рис. 3.
После того как первоначальная возможность наблюдения в полным знанием исчерпалась, новое подмножество единиц Up становится доступным для восприятия и измерения. Предсказывающее отношение измерений Sp^ UPXD определяется тогда как множество всех упорядоченных rtap (u, d), где d — измерение элемента и множества Up. Отношение распознавания классов для элементов Up обозначим через Тр. Отношения Sp и Тр часто называют данными предсказания.
В случае, когда дальнейшая информация недоступна, задача различения объектов становится задачей отыскания правила, позволяющего оценить или отнести оптимальным в некотором смысле способом к подходящему классу все элементы из Up, основываясь только на данных обучения St и Tt и отношении измерений 2р.
Если задача поставлена таким образом, единственной основой дтя распределения по классам элементов Up является использование выполненных на них измерений, т. е. 5Р, поскольку это — единственная информация, которой мы обладаем об элементах. Следовательно, для решения задачи различения объектов необходимо отыскать некоторое отношение А, которое связывает по крайней мере один класс с любым возможным подмножеством измерений из D. Однако для простоты будем считать, что отношение А связывает по крайней мере один класс с каждым возможным измерением в D. Отметим, что подразумеваемой особенностью данной первоначальной постановки задачи является независимое рассмотрение элементов, т. е. отнесение какого-либо элемента к классу не зависит от решения относительно другого элемента..
Решающее отношение А должно, конечно, зависеть от данных обучения Sf и Tt. Коль скоро известно А, то распределение по классам Тр элементов Up можно непосредственно получить с помощью композиции отношений ^р и А: Тр = 5роД. Тр — множество всех упорядоченных пар (и, с), где и — элемент Up, с — такой класс из С, что (1) существует некоторое измерение d, которое выполнено на и, ^u.d^^'Sp и (2) d связано решающим отношением с классом с, (d,c)^A.
СЛУЧАЙ ОТСУТСТВИЯ ОШИБКИ
Рассмотрим, что происходит, когда существует безошибочное решение задачи различения объектов. В этом случае решающее отношение А позволяет все элементы множества предсказания правильно зачислить в классы, основываясь только на измерениях объектов. Следовательно, получаем, что (Spo о Д) (м) = Тр^и) для любого элемента и множества предсказания, поскольку для любого элемента и (Spo A) (w) является множеством всех классов, к которым было отнесено какое-либо измерение элемента и, а Тр(и^ является множеством всех классов, для которых отнесение к ним элемента и было правильным; в таком случае равенство (5Р о Д) (и) = Тр(и) указывает на то, что для каждого элемента и можно получить безошибочное распознавание класса Тр^ исходя из измерений объекта ^р^, связывая их с помощью решающего отношения А, т. е. N^p^u^ = ^р о А) (и) = Тр{и) для каждого элемента и. На рис. 4 изображен пример совокупности отношений Sp и Тр, для которой существует безошибочное решение. На рис. 5 изображен пример совокупности отношений Sp и ТР) для которой безошибочное решение отсутствует.
Сравнивая Тр — распределение по классам на основании решающего отношения — с Тр — правильной классификацией дан-
ных предсказания, — можно сконструировать меру, описывающую точность распознавания для решающего отношения А.
Рис. 4. Пример множества с отношениями Ур и Тр, :Я которого существует безошибочное решение. Множество элементов предсказания Ut = \их, и2, и5 и^ «б}, пространство измерений D = ^dXl d^, d^Y множество классов С = (ci, с2), предсказывающее отношение измерений SP = {(wi, dxY (U2, dxY (u2, d^Y (из, d^\ (u^ d^Y («5, ^з)}, истинное предсказывающее отношение распределения по классам Tp = ((uXt cxY (^2, Ci), («з, cj, («4, c^Y (^5, c2)}, решающее отношение А~{(б/Ь cj, (d2, ci), №, £2)}» построенное распределение по классам — композиция отношений SpOA = {(ui, cxY (^2, ^1), («з, cj, (щ, c^Y (ws, с2)}.■
Чтобы сравнить ?р —2роД с Тр, рассмотрим три подмножества
TP(\Tpt(1)
ТРПТСР)(2)
ТрПТр.(3)
Упорядоченные пары (и, с) из ТРПТР — это тс пары элемент— класс, которые правильно связаны с помощью решающего отношения. Упорядоченные пары (и, с) из ТР П Тр — это тс пары элемент — класс, которые связаны с помощью решающего отношения неправильно. Упорядоченные пары ^и, с) из TPV\Tp — те пары элемент — класс, которые должны были быть связанными с помощью решающего отношения, но оказались не связаны. Отметим, что в случае, когда Sp о Д = Тр = Тр, то ТР П П = Тр П Тр = 0, т. е. пустому множеству, так что ошибки отсутствуют.. В качестве наилучшего решающего отношения возьмем то, которое минимизирует число пар элемент — класс на множестве (Тр п Т0 и № п Тр), или же величину, тесно связанную с этим числом.•
Для упрощения понятий везде в дальнейшем будем считать, что предсказывающее отношение измерений Sp состоит из всех наблюдаемых пар элемент — измерение: Sp = 5 ^UXD. (От-
метим, что множество всех наблюдаемых пар элемент —измерение чаще всего лишь небольшое подмножество множества всех возможных пар элемент — измерение UXD.) Аналогично считаем, что истинное предсказывающее отношение распределения по классам Тр состоит из всех наблюдаемых пар элемент— класс, Тр = Т г UXC. (Отметим также, что множество
Рис. 5. Пример множества с отношениями ^р и Тр, для которого не существует безошибочного решения. Множество элементов предсказания Up = {мь а2, ^з, «4, «5}, пространство измерений D = [db d2, ^з}, множество классов С = {сь с2), предсказывающее отношение измерений 2р = {(«b dO, (н2, ^1), (ыз, ^е), (н4, d2\ («4» ^з)> («в» <Ш предсказывающее отношение распределения по классам Тр = {(«b cj, (м2, с^, (и3, с^, (п4, с2), (и^, с2)}. Рассмотрим три возможных решающих отношения Aj = {(db с^, (d2, <?i), (d3, с2)}, A2 = [(db Ci), (d2, c2Y (d3t c2)}, Аз = {(б/Ь Ci), U2, CxY (d2, c2\ (d3, c2)}. Для этих трех отношений классами отнесения являются соответственно 2рОА1 = {(иь Ci), («2, Ci), («3, Cj), («4, СО (u4, С2), («5, С2^, SpOA2 = {(«b Cl), («2, Cl), («3, C2\ («4, C2), («5, C2)} и2рОА8 = {(мЬ Cl), («2, Cl), («3, Cl), («3, c2), («4, ^1), («4, C2Y («5, C2)}.
Затруднительными случаями отнесения являются случаи, связанные с d2 (указаны прерывистой линией). Если решающее отношение связывает d2 с сь то «4 будет отнесено к Ci ошибочно, а «з будет отнесено к Ci правильно. Если решающее отношение связывает d2 с с2, то и4 будет отнесено к с2 правильно, а Из будет отнесено к с2 ошибочно. Если же решающее отношение связывает d2 и с сь и с с2, то и4 будет отнесено к с2 правильно, a Ci — ошибочно, Из будет отнесено к Ci правильно, а к с2 — ошибочно.
всех наблюдаемых пар элемент — класс является только небольшим подмножеством множества всех возможных пар элемент— класс UXC.^ Естественно сделать следующие предположения о2 и 7: 1) по крайней мере одно измерение связано с помощью 2 с каждым элементом из U; это означает, что 2 определено всюду; 2) каждое измерение связано с некоторым элементом; это означает, что 2— отношение на множество измерений; 3) с каждым элементом из U связан с помощью Т по крайней мере один класс; это означает, что Т определено всюду; 4) каждый элемент из U с помощью Т зачисляется только в один класс; это означает, что Т однозначно; 5) каждый класс с помощью Т связан с некоторой единицей из U; это означает, что Т — отношение на множество классов.
На основании сделанных предположений можно определить решающее отношение, если известно, что существует некоторое решающее отношение, классифицирующее без ошибок. В дальнейшем мы сможем описать и объяснить такую взаимосвязь между S и Г, которая будет гарантировать существование безошибочного решающего отношения.
Первое замечание, которое мы хотим сделать, состоит в том, что если существует решающее отношение, обладающее тем свойством, что назначение класса с любому элементу, имеющему измерение d, верно, то имеет смысл ожидать, что существует по крайней мере некоторый элемент и, для которого правильное назначение класса есть с, (и,с)^Т и у которого d— одно из измерений, (w,d)ES, поскольку в противном случае не было бы оснований включить пару (d, с) в решающее отношение А. Это замечание можно сформулировать более строго, как в лемме 1. Если среди всех назначений, сделанных решающим отношением, не должно быть неправильных в смысле назначения единицы в неверный класс (решающее отношение может ошибиться, оставляя некоторые единицы без назначений), то решающее отношение А должно быть подмножеством S-1 о Т, т. е. А з S-1 о Т. (Отношение S-1 является обращением отношения S и определяется множеством всех таких пар измерение— элемент (d, iz), чта (zz,d)^2.)
Второе замечание, которое мы хотим сделать (лемма 2), состоит в том, что если существует решающее отношение, обладающее тем свойством, что назначение класса для любого элемента правильно (S о А з Г) и что все элементы правильно зачислены в классы (SoАз Г), то в этом случае решающее отношение должно содержать все пары измерение—класс (d, с), для которых d, (и, d) е S — измерение некоторой единицы и и с, (и.с^^Т— истинная классификация для и. Говоря формально, из Г = S о А следует А з S~! о Т.
Объединяя леммы 1 и 2, получаем, что если существует безошибочное решающее отношение (т. е. если существует такое А, что SoA = Т), то А должно совпадать с композицией отношений S-1 о Т.
Если будем полагать Т всюду определенным и однозначным, тогда {Г-1 (с) | с е С} есть разбиение множества элементов. Лемма 3 характеризует взаимосвязь между S и Г в случае отсутствия ошибки. Ее основное утверждение заключается в том, что множество всех элементов, порождающих одинаковое измерение d, должно содержаться в некоторой клетке разбиения элементов Т-Цс'). Существует много эквивалентных способов выражения этой мысли. Один из способов — это утверждение о том, что S~! о Г однозначно, другой — это утверждение о том, что S о S~i о Т з Т-
Следующей задачей после того, как охарактеризованы взаимосвязи между 2 и 7, необходимые и достаточные для существования безошибочного решающего отношения, является определение такого способа получения обучающего множества элементов, чтобы соответствующее обучающее отношение измерений и обучающее отношение классификации можно было бы использовать для вычисления безошибочного распознающего
Рис. 6. Большое число неправильных занесений в классы в (5оА)П7Л которое может произойти в случае, когда решающее [отношение A = S~1o7’, а безошибочного решения не существует. Истинное отношение распределения по классам Т = {(щ, cj, (u2, cj, (из, с2), (и4, с2) (us, Сз)}, построенное отношение распределения по классам So A — {(ub сх\ ^и^, с2), (u3, cj, (u3, с2), (u4, Ci), (u4, c2), (u5, c2), (us, c3)}, неправильные занесения в (So А Л Гс={(и2, £2), («з, ci), (u4, c,), (u4, c3), (u5, c2)}. Отметим, что нет неправильных занесений в (SoAJ^Qr. Лемма 5 показывает, что это всегда имеет место в случае, когда А =5 S-1 о Т.
отношения. Поскольку в случае отсутствия ошибки безошибочное распознающее отношение можно выразить через 2-1 о Т, то хотелось бы найти такие необходимые и достаточные условия на данные обучения 2/ и Tt, чтобы решающее правило, вычисленное исходя из этих данных—I^oj^ —совпадало бы с правилом, вычисленным на основании полных данных — 2-1о7, т. е. 2-1о7 = ^ТХ°Т1. Эта характеристика получается удивительно просто. Лемма 4 утверждает, что если существует безошибочное решение, то следующее условие будет необходимым и достаточным для того, чтобы решающее отношение, вычисленное на основании данных обучения, являлось в действительности безошибочным решающим отношением: обучающее множество элементов Ut содержит другое множество элементов таких, что 1) для каждого возможного класса есть некоторый элемент в Ut, отнесенный к этому классу, и 2) для каждого возможного измерения в D есть некоторый элемент в Ut, порождающий это измерение.
Случай, когда существует безошибочное решающее отношение, довольно прост. Что же, однако, произойдет, если такое
решающее отношение не существует? Лемма 5 утверждает, что если решающее отношение будет содержать все пары измерение— класс (d, с) из 2-1 о Т, то по крайней мере один из классов, в который решающее отношение зачисляет некоторый элемент, будет для него правильным. Говоря формально, из А з 2-1 о Т следует 2 о А 7. Это означает, что возможно уменьшить число ошибок во множестве (SoA)cQT до нуля. К сожалению, предположение А ^ 2-1 о Т часто может вести к относительно большому числу ошибок в (2 ° A) Q 7е, что проиллюстрировано на рис. 6.
РЕШАЮЩЕЕ ПРАВИЛО, ДОПУСКАЮЩЕЕ ОШИБКИ
2 однозначно.
Рассмотрим теперь случай, когда безошибочное решающее отношение не может существовать. Рассмотрим сначала специальный случай, когда 2 однозначно. Тогда можно записать разность между числом правильных и неправильных решений (см. лемму 6) в виде
#((5оА)ПП-*((2оА)ПТс) =
= X [2 S Pkd, c)-*A(d) ^ P^d, c)l,dED L се А И), ceCJ
где
Pkd, с^^^-Ч^пт-ЧоУ
Единственное наиболее широкое решающее отношение А, максимизирующее это выражение, определяется соотношением A = {(d, с) | для некоторого (d, с) [# (2-1 (d) П 7“1 (с)) ^ * * (S-1 № п т1"1 (с')) для всех с' еС] и Г 2 # (S"1 (d) П Tv (/))< С
<2#(г'(<опгШ или равносильным выражением А = = {(d, с) | для некоторого (d, с\ [P(d, c^^P^d, cf^ для всех с' е С] и [ Sc Р kd, с') 2Р kd, c)j j . Это доказывается в три приема. Лемма 7 показывает, что если
Pkd, с) < 1/2 2 Pkd, с')с'гС
Для всех сеС, то
2 X Pkd, c)-#A(d) X P^d, с) с е A kd)с^С
максимально тогда и только тогда, когда A(d)—0. Лемма 8 показывает, что если существует се С, такое, что
с) > 1/2 2 P(d, с'\
с'еС
ТО
2 Е P(d, с)-^\№ Е P^d, с) се A(d)сеС
максимально тогда и только тогда, когда A(cZ) = {c|P(d, с) ^ ^^(^ с') Для всех с'^С\. Лемма 9 относится к случаю равенства, т. е. к случаю, когда существует с ^ С, такое, что
P^d, с) =1/2 Е P(d, с').
с'еС
В этом случае
2 Е P^d, c)-=W Е P^d, с) ceA(d)сеС
'максимально тогда и только тогда, когда A(d) есть некоторое подмножество ^c\P^d, c)^P(d, с') для всех с'еС). Таким образом, единственным наибольшим решающим отношением А, максимизирующим У [2 Е Р (d, e)-*A(d) Е Р^, с)1, deDL ceN^с^СJ
является A = {(d, с) | для некоторого (d, с)\Р (d, с) ^ Р (d, с') для всех cz еС] и р (d, с) 1/2 У Р (d, с)] | •
измерение d, будут иметь полный вес в расчете на d. X те элементы, которые «свободны» и порождают много измерений, будут иметь лишь небольшой вес в расчете на одно из измерений d. Сделанные оценки таковы;
*(№.Л)ПП« X Z WсеС deD UeT-x(c)(\S-^(d)
«м^ПЕ 2
Hг' <= /?m —л I /31
Эти оценки становятся точными, если все измерения для любого данного элемента связываются решающим отношением с одним
I
Рис. 7. Отношение измерений 2 и истинное отношение распределения по классам Г, для которых не существует наилучшего или безошибочного решающего отношения А. Изображенное решающее отношение А равно Х^оТ. Множество (S о A) f| Гс = {«2, ^0, («з, ^0, (Нь £2)}. Имеются три неправильных распознавания. Множество (SoА)Г) Т = {(иь Ci), (И2, Сг), («з, сз)}. Имеются три правильных распознавания.
классом. Лемма 10 показывает, что при таких оценках разность между числом правильных и неправильных решений можно выразить соотношением:
ФазоАштз-фахоАшп^
« Е [2 I P(d, c)-*A(d) £ РЦ, с)1,deD L cE&(d)сеСJ
где
Р^’ с) =£*5 (и) •
'иеГ^ПХ-1^)
Так как выражение
2 Е РЦ, c)-#A(d) £ P<d, с) ceA(d)сеС
совпадает с выражением, полученным в случае, когда S однозначно, то леммы 7-—9 показывают, что, как и ранее, наиболь-
Х'Ш= (щ) E"’(d2) = {и,}2 Т^д) = iU|,U2,tT3} 2 4d5) = (tt2,u3jЕ’’(ddn Т"’(с,) = {ilt} Е-Ч^лТ'Чс,)- {u,} E~'(d3)n T"’(C,) = (u,} E-’(d4)r> 7*4^ = {u,) E^d^T^d)^ }Х'Ш= (щ) E"’(d2) = {и,}2 Т^д) = iU|,U2,tT3} 2 4d5) = (tt2,u3jЕ’’(ddn Т"’(с,) = {ilt} Е-Ч^лТ'Чс,)- {u,} E~'(d3)n T"’(C,) = (u,} E-’(d4)r> 7*4^ = {u,) E^d^T^d)^ }T*4ci) = {ui}T 4c2) — (u2, u3}T*4ci) = {ui}T 4c2) — (u2, u3}T.-'WnT-'tc.^ }E-’(d2)nT-’(c2)={ }S'4d3)nT-4c2) = { }Е-Чад^Т-Чс^-^.иД2 4d3)c> T 4c2) “ \u2, u3}T.-'WnT-'tc.^ }E-’(d2)nT-’(c2)={ }S'4d3)nT-4c2) = { }Е-Чад^Т-Чс^-^.иД2 4d3)c> T 4c2) “ \u2, u3}
Х'Ш= (щ) E"’(d2) = {и,}
2 Т^д) = iU|,U2,tT3} 2 4d5) = (tt2,u3j
Е’’(ddn Т"’(с,) = {ilt} Е-Ч^лТ'Чс,)- {u,} E~'(d3)n T"’(C,) = (u,} E-’(d4)r> 7*4^ = {u,) E^d^T^d)^ }
Х'Ш= (щ) E"’(d2) = {и,}
2 Т^д) = iU|,U2,tT3} 2 4d5) = (tt2,u3j
Е’’(ddn Т"’(с,) = {ilt} Е-Ч^лТ'Чс,)- {u,} E~'(d3)n T"’(C,) = (u,} E-’(d4)r> 7*4^ = {u,) E^d^T^d)^ }
T*4ci) = {ui}
T 4c2) — (u2, u3}
T*4ci) = {ui}
T 4c2) — (u2, u3}
T.-'WnT-'tc.^ }
E-’(d2)nT-’(c2)={ }
S'4d3)nT-4c2) = { }
Е-Чад^Т-Чс^-^.иД
2 4d3)c> T 4c2) “ \u2, u3}
T.-'WnT-'tc.^ }
E-’(d2)nT-’(c2)={ }
S'4d3)nT-4c2) = { }
Е-Чад^Т-Чс^-^.иД
2 4d3)c> T 4c2) “ \u2, u3}
Рис. 8. Наибольшее приближенное (2 О А) Л 7е = {(«о с2)} и ""Рис. 8. Наибольшее приближенное (2 О А) Л 7е = {(«о с2)} и ""оптимальное решающее отношение.(S О А) Л Т = {(ub cj, («2, с2), (из, с2)}.оптимальное решающее отношение.(S О А) Л Т = {(ub cj, («2, с2), (из, с2)}.A = {(d, c) | P (d, с) > P (d, c')A = {(d, c) | P (d, с) > P (d, c')для всех с' г С и Р (d, с) > удля всех с' г С и Р (d, с) > угдегдеP(d,c) =У1и s T~Zj*2(M)’1 MHS-1 №P(dbCl)~ 4 *P (db c2) = 0,P(d2,Cl)~ 4 *P(d2, c2)=0,Р^з,Cl)4 1P (d3, c2) = 0,P(d4,Cl)J_4 ’P (dit c2) = 1,P(de, ct)= 0,P (ds, c2) = 1.P(d,c) =У1и s T~Zj*2(M)’1 MHS-1 №P(dbCl)~ 4 *P (db c2) = 0,P(d2,Cl)~ 4 *P(d2, c2)=0,Р^з,Cl)4 1P (d3, c2) = 0,P(d4,Cl)J_4 ’P (dit c2) = 1,P(de, ct)= 0,P (ds, c2) = 1.шее оптимальное решающеешее оптимальное решающееотношение А определяется выра-отношение А определяется выра-жением A = {(d, с) | для некоторого (с/, с) [P(d, с) ^ P(d, с') для всех cz е С] и р (.d, с) > 1/2 ^с Р (d, c')j j .жением A = {(d, с) | для некоторого (с/, с) [P(d, с) ^ P(d, с') для всех cz е С] и р (.d, с) > 1/2 ^с Р (d, c')j j .
Рис. 8. Наибольшее приближенное (2 О А) Л 7е = {(«о с2)} и ""
Рис. 8. Наибольшее приближенное (2 О А) Л 7е = {(«о с2)} и ""
оптимальное решающее отношение.
(S О А) Л Т = {(ub cj, («2, с2), (из, с2)}.
оптимальное решающее отношение.
(S О А) Л Т = {(ub cj, («2, с2), (из, с2)}.
A = {(d, c) | P (d, с) > P (d, c')
A = {(d, c) | P (d, с) > P (d, c')
для всех с' г С и Р (d, с) > у
для всех с' г С и Р (d, с) > у
где
где
P(d,
c) =
У1
и s T~
Zj*2(M)’
1 MHS-1 №
P(db
Cl)
~ 4 *
P (db c2) = 0,
P(d2,
Cl)
~ 4 *
P(d2, c2)=0,
Р^з,
Cl)
4 1
P (d3, c2) = 0,
P(d4,
Cl)
J_
4 ’
P (dit c2) = 1,
P(de, ct)
= 0,
P (ds, c2) = 1.
P(d,
c) =
У1
и s T~
Zj*2(M)’
1 MHS-1 №
P(db
Cl)
~ 4 *
P (db c2) = 0,
P(d2,
Cl)
~ 4 *
P(d2, c2)=0,
Р^з,
Cl)
4 1
P (d3, c2) = 0,
P(d4,
Cl)
J_
4 ’
P (dit c2) = 1,
P(de, ct)
= 0,
P (ds, c2) = 1.
шее оптимальное решающее
шее оптимальное решающее
отношение А определяется выра-
отношение А определяется выра-
жением A = {(d, с) | для некоторого (с/, с) [P(d, с) ^ P(d, с') для всех cz е С] и р (.d, с) > 1/2 ^с Р (d, c')j j .
жением A = {(d, с) | для некоторого (с/, с) [P(d, с) ^ P(d, с') для всех cz е С] и р (.d, с) > 1/2 ^с Р (d, c')j j .
РЕШАЮЩИЕ ПРАВИЛА ДЛЯ СВЯЗАННЫХ ЭЛЕМЕНТОВ
Рассмотренные до сих пор построения не выявили действительно новых задач или решений: новым является только подход, основанный на теории отношений множеств, в духе которого и был представлен материал. В этой части будем использовать подход, основанный на теории отношений для того, чтобы сформулировать различного рода задачи, а также предложить решение этих задач. Задача, которая ставится, такова. Предположим, что элементы связаны друг с другом временной (как в случае последовательности сигналов, поступающих немедленно друг за другом) или пространственной близостью (например, соседние ячейки растра при разложении изображения). В этом случае элементы не являются независимыми и не должны рассматриваться порознь. Выполненное для некоторого элемента зачисление в класс должно зависеть как от измерений этого элемента, так и от измерений элементов, связанных с ним пространственно или же посредством временной последовательности. Конкретнее, мы предположим, что связанные друг с другом элементы «стремятся» (мы сделаем это понятие более точным) иметь одинаковые истинные назначения классов, а также «стремятся» порождать «похожие» измерения. Это предположение для метода теории отношений в некотором смысле аналогично -марковской зависимости или же предположению о зависимости на древовидном графе [4—6].
Идее о взаимосвязи между элементами можно придать точный смысл, представив ее в виде бинарного отношения R на множестве элементов U, т. е. R^UXU. Пара элементов (^1,^2) принадлежит R тогда и только тогда, когда элемент и\ связан с элементом м2.
Решающий алгоритм характерного измерения
Один из возможных способов использования отношения R в решающем алгоритме заключается в том, чтобы определить Д, как и раньше, а далее для каждого элемента и определить некоторое измерение d, которое через посредство R и Т связано с и наибольшим числом путей, и затем связать и с некоторым классом, связанным с общим измерением d через решающее отношение А. Этот решающий алгоритм характерного измерения полезен в случае, когда D мало, a R связывает много элементов (см. рис. 9). Пусть Л UXD является бинарным отношением, связывающим каждый элемент с его характерным измерением, т. е. А=Ци, d)\ для некоторого (щ d), 4^(^(^)П П S-^d)) ^ #(/?(^)П S“1(^/)) для всех d'^DY Тогда решающий алгоритм общего измерения зачислит элемент и в класс с
с помощью решающего отношения А тогда и только тогда, когда (u, d) е А о Д.
^Ь ^11 df Щ, иь d2 u2, и2, d2 и2, ub d2 Цг< «I. d, 8» и8< d^ ®8> «з. <#з “3.«4.<^ “4. «4. di^Ь ^11 df Щ, иь d2 u2, и2, d2 и2, ub d2 Цг< «I. d, 8» и8< d^ ®8> «з. <#з “3.«4.<^ “4. «4. di
^Ь ^11 df Щ, иь d2 u2, и2, d2 и2, ub d2 Цг< «I. d, 8» и8< d^ ®8> «з. <#з “3.«4.<^ “4. «4. di
^Ь ^11 df Щ, иь d2 u2, и2, d2 и2, ub d2 Цг< «I. d, 8» и8< d^ ®8> «з. <#з “3.«4.<^ “4. «4. di
Рис. 9. Диграф Р, S и Д, изображающий решающий алгоритм характерного измерения. Элемент их имеет два характерных измерения dx и d2 с одним путем в каждое. Так как dx и d2 связаны с классом сх при помощи А, то решающий алгоритм занесет их в класс сь У элемента и2 два пути к характерному измерению d2, a d2 связано при помощи А с классом Ср У элемента Из 2 пути к характерному измерению d3, a d^ связан при помощи А с классом с2\ из поэтому заносится в класс с2. У элемента щ только один путь к характерному измерению da и, следовательно, он также заносится в класс с2. Внизу: список путей из U через R и далее через 2.
Так как этот решающий алгоритм такой же, как и решаю» щий алгоритм S о А, то, используя оценки
сгС d^D u&T^(\A(d)
deD сеС c'jC и е Г-* (c)f| Л~* (d)
получаем, что =Ц= ((Л ° Д) П Г)—^tM ° Д)П Гс) приближается к максимальной тогда и только тогда, когда Д={(й, с) | для некоторого (d, с) [Р (d, с) ^ Р ^d, с') для всех с'еС] и [P(d, с)>1/2^с^(^ Н]}. где
P(d, с)=£P(d, с)=£1* Л (d) '1* Л (d) '
P(d, с)=£
P(d, с)=£
1
* Л (d) '
1
* Л (d) '
Оценка становится точной в том случае, когда А однозначно, или же все связанные с элементом измерения для каждого из них с помощью А связаны с одним и тем же классом.
Решающий алгоритм характерного класса
В случае, когда множество D велико, a R соединяет не очень много элементов, вероятность существования единственного характерного измерения мала, так что решающее правило харак-
(ROX^u,^ {db d2, d.} (ROI)to=^d3ld4l №О2)(и3) = №, </4}(ROX^u,^ {db d2, d.} (ROI)to=^d3ld4l №О2)(и3) = №, </4}Рис. 10. Решающий алгоритм характерного класса. Элемент и\ занесен в класс сь так как наибольшее число измерений в (Ro^^Ui) связано при помощи А с сь Элементы и^ и w3 занесены в класс с2, так как наибольшее число измерений в (7? О S)(u2) и (7? о 2)(м3) связано при помощи А с с2.Рис. 10. Решающий алгоритм характерного класса. Элемент и\ занесен в класс сь так как наибольшее число измерений в (Ro^^Ui) связано при помощи А с сь Элементы и^ и w3 занесены в класс с2, так как наибольшее число измерений в (7? О S)(u2) и (7? о 2)(м3) связано при помощи А с с2.Рис. 11. Пример, в котором *((7?oS)-i№) П Т-Чсх^>* ((7? OS)-1 ШПГ-1 (с2), хотя A (d3) =с2 — наилучшая связь для d3 в том случае, когда алгоритм являет собой «занесение» элемента и в каждый такой класс с, что ^А-Ч^П^ОЕ) (М))>А~ЧИП Л ((7? о 2) (//)) для всех с' (= С. Отметим, что если бы d3 и Ci были связаны друг С другом при помощи А, то наилучШее распределение по классам было бы прежРис. 11. Пример, в котором *((7?oS)-i№) П Т-Чсх^>* ((7? OS)-1 ШПГ-1 (с2), хотя A (d3) =с2 — наилучшая связь для d3 в том случае, когда алгоритм являет собой «занесение» элемента и в каждый такой класс с, что ^А-Ч^П^ОЕ) (М))>А~ЧИП Л ((7? о 2) (//)) для всех с' (= С. Отметим, что если бы d3 и Ci были связаны друг С другом при помощи А, то наилучШее распределение по классам было бы прежним.ним.
(ROX^u,^ {db d2, d.} (ROI)to=^d3ld4l №О2)(и3) = №, </4}
(ROX^u,^ {db d2, d.} (ROI)to=^d3ld4l №О2)(и3) = №, </4}
Рис. 10. Решающий алгоритм характерного класса. Элемент и\ занесен в класс сь так как наибольшее число измерений в (Ro^^Ui) связано при помощи А с сь Элементы и^ и w3 занесены в класс с2, так как наибольшее число измерений в (7? О S)(u2) и (7? о 2)(м3) связано при помощи А с с2.
Рис. 10. Решающий алгоритм характерного класса. Элемент и\ занесен в класс сь так как наибольшее число измерений в (Ro^^Ui) связано при помощи А с сь Элементы и^ и w3 занесены в класс с2, так как наибольшее число измерений в (7? О S)(u2) и (7? о 2)(м3) связано при помощи А с с2.
Рис. 11. Пример, в котором *((7?oS)-i№) П Т-Чсх^>* ((7? OS)-1 ШПГ-1 (с2), хотя A (d3) =с2 — наилучшая связь для d3 в том случае, когда алгоритм являет собой «занесение» элемента и в каждый такой класс с, что ^А-Ч^П^ОЕ) (М))>А~ЧИП Л ((7? о 2) (//)) для всех с' (= С. Отметим, что если бы d3 и Ci были связаны друг С другом при помощи А, то наилучШее распределение по классам было бы преж
Рис. 11. Пример, в котором *((7?oS)-i№) П Т-Чсх^>* ((7? OS)-1 ШПГ-1 (с2), хотя A (d3) =с2 — наилучшая связь для d3 в том случае, когда алгоритм являет собой «занесение» элемента и в каждый такой класс с, что ^А-Ч^П^ОЕ) (М))>А~ЧИП Л ((7? о 2) (//)) для всех с' (= С. Отметим, что если бы d3 и Ci были связаны друг С другом при помощи А, то наилучШее распределение по классам было бы преж
ним.
ним.
терного измерения неэффективно. В э^ом случае можно сформулировать другой решающий алгоритм следующим образом: зачислить элемент и в тот класс с, который имеет большинство измерений в (/? о 5) (и), связанных с с при помощи А. Рис. 10 иллюстрирует этот решающий алгоритм наибольшего числа измерений. '
Если для каждого элемента и, с истинным назначением класса с, большинство измерений, связанных с и при помощи R о 5, таково, что для каждого из них большинство элементов, связанных посредством (^S)-1, связано с классом с при помощи Г, то, как показывает лемма 11, существует безошибочное решающее отношение А. Действительно, если из (и,с)^Т
вытекает, что-
* {^ е (Р»2) (и)| * ((Я о 2)~1 № П Т-1 (с)) >> 1/2 # (Р = 2)"1 ^ > 1/2 * (Р ° 2) (Ы)
и элемент и зачисляется в класс с тогда и только тогда, когда #(А-1 (с)П(^ ° 2) (и)) > 1/2# (7? о 2) (м), то существует безошибочное решающее отношение А, определяемое выражением
A = {(d, С)|*(/?о2)-1№ПТ"1(с)> 1/2 # (Р°2)-1 (d)}-
То, что это условие достаточно, но не необходимо, показано на примере, изображенном на рис. 11.
Как обычно, случай безошибочного решающего отношения должен рассматриваться с использованием приближения. В случае, когда
#(ТПЛ-#(ГПП~
Е 52*д№пг(«)
V3 d^D д'1 (Д')
„й ,2 *2<“’>
5252*л№лгс(«)
„й Е *w>’
u'eR(u)
лемма 12 показывает, что
#(шн=га* Е [2 Е р^.сн^а^) Е р(^с)1. d е D L с е Д (d)с еСJ
Тогда, исходя из лемм 7—9, можно получить, что приближенное оптимальное решающее правило А равно A = {(d,с)| для некоторого (d, с) [Р (с/, г) ^ P(d, с') для всех с' <= С]
[P(d, с)>1/2сЕсР(</. И]}, где
РУ,<^ = 2 ( y-Lv^'U^Wn^’W-
ЗАКЛЮЧЕНИЕ
Была обсуждена задача распознавания образов с позиции теории отношений множеств. Центральная идея этого подхода заключается в том, что данные измерения считаются бинарным отношением S^UX^ из множества элементов U в множество
измерений D, а данные распознавания классов считаются бинарным отношением ТгУХС из множества элементов U в множество классов С. Решающее отношение A ^DX С есть бинарное отношение из множества измерений D в множество классов С. В этом случае назначение пары элемент — класс естественно задается композицией отношений 2 о А. Было показано, что в случае, когда существует безошибочное решающее отношение А, данные обучения 2/ и Tt надо выбирать так, чтобы 2Д(7) = D, a Tt^U) = С. В этом случае 2Г1оТ^ = 2"1оГ = = А, так что решающее отношение А, вычисленное по 2/ и Т^ будет оптимальным. В случае, когда не существует безошибочного решающего отношения, было показано, что некоторые из множества возможных назначений, сделанных с помощью решающего отношения 2Г1 о Tt, неверны и что одно из назначений должно быть правильным. Для уменьшения числа ошибок при* своения (неправильное отнесение элементов по классам) при со* хранении числа ошибок пропуска (неотнесения элементов ни в один из классов) было рассмотрено решающее отношение, стремящееся минимизировать сумму ошибок этих двух родов. Это решающее отношение А было определено выражением Л = {(d, с) | для некоторого (d, с) [Р (d, с^^ Р (d, с'^ для всех с' еС] и P(d, с) > 1/2 F Р (d, с') t, где
с'еС j
Р^’ с)= £ * S («) ;
aer-lionz-'to
это отношение действительно минимизирует ошибку в случае, когда 2 однозначно, но в том случае, когда 2 неоднозначно, оно только стремится к этому.
Далее был рассмотрен случай, когда элементы связаны рефлексивным бинарным отношением R на множестве единиц U. Было предложено два возможных определения подходящих ре* шающих отношений.
Первый возможный случай основан на ситуации, в которой D — небольшое множество, многие элементы связаны друг с другом и 2 может быть неоднозначно. В этом случае можно ожидать, что каждый элемент связан через посредство R и далее 2 с большим числом измерений в D. Некоторые из этих измерений связаны с элементом и наибольшим числом путей. Назовем любое такое измерение d характерным измерением элемента и. Алгоритм характерного измерения будет относить элемент и в некоторые классы, связанные с d решающим отношением А. Формально, пусть А г U X D — бинарное отношение, связывающее каждый элемент с его характерным из* мерением:
Л={(и,с?)| для некоторого (м, 0) #(/?(«) П2-1(^) >#(/?(«) П ПЕ-1^')) для всех d'eDy
Решающий алгоритм характерного измерения определяет назначение пары элемент — класс с помощью композиции отношений Д о А, где решающее отношение А определяется выражением А = {(d, с) | для некоторого (Д с) [Р(</, с) ^ РД с') для всех с' е С\ и
P(d, с)>1/2 2 Ж ^)Lc'gCJ
где
с)=£# Я (d) •
ueT-l(c)nA(d)
Второй возможный случай основан на ситуации, в которой D — большое множество и лишь немногие элементы связаны друг с другом. В этом случае обычно не бывает единственного представительного характерного измерения для каждого элемента, хотя каждый элемент может быть через Ro^ связан со многими измерениями из D. Решающее отношение А связывает каждое измерение в (/?oS)(w) с классом в С. Рассмотрим среди этих классов тот класс, который связан с и наибольшим числом путей. Назовем такой класс характерным классом для и. Алгоритм характерного класса будет заносить элемент и в этот характерный класс.
Говоря формально, алгоритм характерного класса заносит элемент и в класс с тогда, когда
* (А"1 (с) П (7?=S) («)) > 1/2 * (7?о2) („).
Решающее отношение А определяется соотношением А = {(d, с) | для некоторого (d, c)[P(d, c)^P(d, с') для всех с'еС] и
\РД c^X^^Pkd, И]}» где
то- 2 ( V
u Е T №\и' е R ^/
Как алгоритм характерного измерения, так и алгоритм характерного класса представляют собой процедуры, учитывающие зависимости между элементами без обычного предположения марковского типа относительно вида распределения вероятностей, используемого в обычной статистической решающей процедуре. В самом деле, обозначение Р(Д с), которое мы использовали, наводит на мысль, что в случае, когда распознавание образов рассматривается с точки зрения теории отношений, могут появиться функции, подобные функциям распределения, но только в виде, присущем теории отношений множеств.
Хотя эта статья является по своей природе теоретической и не содержит реальных примеров задач распознавания образов, решенных предлагаемыми процедурами, тем не менее автор надеется, что она откроет некоторые новые возможности для исследователей.
Список литературы
Michalski R. S. A geometric model for the synthesis of internal covers. Report 461. Department of Computer Science, University of Illinois. Urbana. Illinois (1971).
Michalski R. S., McCormick В. H. Interval generalization of switching theory. Report 442. Department of Computer Science. University of Illinois. Urbana. Illinois (1971).
Read J. S., Jayaramamurthy S. N. Automatic generation of texture feature detectors. IEEE Trans. Comp. Vol. 803—812 (1972).
Chow С. K., Lin C. N. Approximating discrete probability distributions with dependence trees. IEEE Trans, Inf. Theor IT-14 (3) (1968), 462—467
Chow С. K. A recognition method using neighbor dependence, IRE Trans Electronic Comp. EC-11 (1962), 683—690.
Abend K., Harley T. J., Kanai L. N. Classification of binary random patterns. IEEE Trans. Inf. Theor. IT-11, (4) (1965).
Добавление
Лемма 1. Пусть S известно. Если ^о\гТ, то AsS”1o7.
Доказательство. Пусть (d, с) е А. Так как S известно, Зи е U э \и, d) е S. Теперь из (u, d) е 2 и (d, с) g А получаем (u, c)eSoA. Так как SoAs7, то (и, с^^Т также. Но из ^и, d)^^ и (и, с^еТ следует (d, с^еТГ^Т. Следовательно,
Лемма 2. Пусть 7 однозначно и А определено всюду. Если 7 = SoA, то ^^^~X^T.
Доказательство. Пусть (d, с)е!чоТ. Тогда 3ueUb э (м, d)GS и (и, с)^Т. Так как (и, c)g7 и 7 = So А, то (и, c)eSoA тоже. Так как А определено всюду, Вс э (d, с) G А. Но из (u, d)GS и (d, с)еД следует (и, c)sSoA = 7, а из однозначности 7 следует с —с. Таким образом, (d, с) е А, так что А£2-1о7.
Лемма 3. Пусть S определено всюду, а 7 определено всюду и однозначно. Тогда следующие утверждения эквивалентны:
S~1o7 однозначно,
SoS-1o7^7, ^-XQT = T, из (Д, c^eDXC следует S-1 (d) г Т~х (с) или S-1 (d) f| 7-1 (с)=0.
Доказательство. 1) Предположим, что 2 'of однозначно. Очевидно, (2~’оТ) о(2-|оТ)с/. Следовательно, Т~х о (S ° 2-1 о т) SI. Полагая, что Т~х выполняет роль 2, (2oS~lо?) играет роль Д и 7 играет роль Т в лемме 1, получаем
Предположим, что SoS^oTsT. Так как 2 определена всюду, 2°2-127. Тогда'
SoS~loTa/oT = T.
Но из 2о2~‘оТаТ и предположения 2 о S-1 о у с у следует SoS-‘oT=T.
Предположим, что SoS'^TcT. Пусть (d, с)е7)ХС и йе2~* (d). 2-1 (d) П Т-1 (с) либо пусто, либо нет. Если пусто, то Х-’^ПТ'Чс)= 0. Если нет, то существует ueS ‘(d) П ПТ-1^). Таким образом, (й, d)e2, (d, и)е2~* и («,с)еГ. Отсюда следует, что
(й, с^оГ'-Т.
По предположению So2"*oTs7, так что
(й, с)еГ, или йеГ1^).
Из предположения (d, c)eDXC следует, что или 2-1 (d) = Т-1 (с), или 2~1 (d) f| 7'-1 (с) = 0. Пусть L(c, с)г e(S~*oT) о^-’о?). Тогда существуют и\ и u2eU, а также deD, такие, что
(с, t^eT-1, (мь d)s2, (d, м2)е2-1 и (м2, с)еГ.
Таким образом,
м, е2-1 (d) П Г"' (с), так что 2"1 (d) П Т-1 (с)0.
Но по предположению или 2-1 (d)^T~x (с), или2~1(d)П7,~1(c)=0. Так как 2-1 (d) П Т~х (с) ^= 0, то S-1 (d) s Т-х (с). Теперь M2eS-1(d), следовательно, и2еТ-1(с). Теперь из однозначности Т, из («г, с^гТ и (м2, с)еТ получаем что 6 = с. Поэтому (с, ^) = (с, 5)е7 и 2~*оТ однозначно.
Лемма 4. Пусть S^st/^^^Z), S^ s S s U ^< Dt Tf^iUf^^C^ TtsT sUXC и предположим SoS-1oTsT. Тогда Tt^Ut') = C и ^t(Ut)=D тогда и только тогда, когда 271 °Tt = ^~x°Т.
Доказательство. Предположим, что Tt и S; — отношения на. Пусть (d, с)е2-1оТ. Тогда 3 ueU s(d, м)е2-1 и (и, с^еТ. Так как '2lt^Ut) = D, 'Hute.Utk.Ut, d.^e.’Lts’21. Но из (u#, d)s2 и (м, d)E2 следует, что ^иъ ц)е2°2~1. Из ^ut, ц)е e2oS-1, объединенного с (и, с^еТ, следует, чтд (ио с) е е2о2~*оТ. По предположению 2о2~‘оТсТ) так что Цгь с^еТ.
Так как Tt определено всюду, 3с Е С, ^иь ё)еТ4. Но TtsT, так что (uz, с)еТ. Теперь из (ut, с)<гТ, (uz, ^еТ и однозначности Т следует, что с = 6. Таким образом, (иь c^e.Tt.
Наконец, из (uz, c)eTz и (ut, d)^^ следует, что (d, с) Е е2Г1°7'<, так что S-loTsSzoTz. Также Sr^TtsS-loT, так как 2(S2, TtsT. Следовательно, 2”1 °Т< = 2~1 = T.
Предположим, что 2Г1 °Tt = ’£~i °Т. Пусть сеС. Так как Т — отношение на С, ^ueUalti, с^гТ. Так как 2 определено всюду, 3d eZ) s (u, d) Е 2. Следовательно, (d, с)е2~‘ оТ. Но 2-1»Т = 2Г! 0 Т'ь так что (d, c')G'2TtoTt. Таким образом, 3«( eUt э (ut, d) e2z и (uz, c)eTt. Поэтому Tt — отношение на С.
Теперь пусть de.D. Так как 2 — отношение на D, ЗиеОв э(и, d)E2. Так как Т определено всюду, 3ceC9(u, с^еТ. Следовательно, (d, с)е2~1оТ, Но 2-1 ° Т— ^Т1 о Tt, так что (d, с)е2Г1°7'<. Следовательно, 3uze(7ze(uz, d)E2( и (uz, с)еТ. Следовательно, 2Z — отношение на D.
Лемма 5. Пусть 2 определено всюду. Если \21~!Н, то SoAaT.
Доказательство. Пусть (и, с)еТ. Так как 2 определено всюду, то существует d, такое, что (и, d)E2. Таким образом, (d, с) е2-1 ° Г. Но Г^сТсД, так что (d, с)еА. Теперь из (м, d) е 2 и (d, с) е А следует, что (и, с) е 2 о А.
Лемма 6. Если 2 и Т однозначны и всюду определены, то *(2 = А)ПТ-*(2 = А)ЛТС =
= 2 [2 Z РЦ, c)-*A(d) £ P(d, с)1, deD L се A (d)се СJ
где'
. ,P(d, с^ = ^Т-Чс№-х^..
Доказательство. #(2о A) f| Т — #{(м, с) | для некоторых и, d, с, (и, d) е 2, (d, с) е А и (и, с) е Г) = Е Ф {(“, с) I ме U
для некоторых d, с, (tz, d) е 2, (d, с) е 2 и (м, с) е TJ = = 22# {(и, с) | для некоторых d, с, (и, d) е 2, (d, с) s А
»'еС иеГ-1 (с')
и (u, с)еТ} =ЕЕ Е Ф {(и, с) | для некоторых с'еС с=С us г-1 (с') П Г-1 (с)
d, (и, d) е2, (Д, с)еА). Так как Т однозначно, то из не еГ"1 (с') ПТ-1 (с) следует, что с* = с, так что ф(2оА)пт = = Е Е. Ф {(и, с) | для некоторых d, (и, d) е 2, Д, с) е А).
СЕС „еТ-1^)
Так как 2 однозначно,
ф(2 = А)ПГ=Е Е Е ф{(н, c)|(d, с)еА} = сгС d^D ueT-^^nS”1 (d)
= Е Е,Е , *A(d)n{c} =
c^C deD UEj-i (сОПЯ”1 (d)
= Е Е фг-'мпз-1^). d^D се\^
Положив P(d, с) = ф Т-1 (с) П S-1 (d), получим, что
Ф(2оА)ЛТ= 2 2 РЦ, с).
deD ceA(d)
ф(2оА) f| Тс = #{(«, с) | для некоторых и, d, с, (и, d)^^, (d, с)еА и (и, с) ^ Г} = Е # {(«, с) | для некоторых d, с, (и, d^ е 2, ue U
(d, с)еА и (и, с)^Т} = Е Е, # {(и, с) | для некоторыхс'еС UeJ"l(c')
d, с, (и, d)e2, (d, с)еА и (н, с^Т^ = Е Е Е * с'еС сеС иеГ-'МПГ-Чс)
Ф {(и, с) | для некоторых d, (и, d) е 2, (d, с) е А}.
Но иеТ~1(с,)П7'~1(с) тогда и только тогда, когда с'фс. ф (2 ° A) f| Гс = 2 Е Е # {(“, с) I Для некоторых d, е'^с сеС иеТ-Чс”) с =^с
(и, d)^^, (d, с)еА} =
= Е Е Е Е #{(и, с))^, с)еА} = с'ес сес deD UeT~4c')(\^~ <d)
= Е 2 Е Е , *A(d)n{c}=C'®G С^с 4eD “^r-'^OS- (d)
-EE E ^-‘(cW'W-E E E p^.c'v d^D с'гС ceA(d)deD c'^C csA(d)
c'^cc'^c
Ф(2оА)лг=Е Ep(<z, cz) Ем1 =
11 x 'd e -D с е Сс г A (d)
c'-^c
= E E P(rf.H#(A(d)-{H) = d^D c'sG
= Z Z w и # (а (<*)-{</}) + d^.D с’ е Л (d)
+ Z Z cPkd, c')*(A(d)-{c'}) = d^D c'c= A Vdy
= Z [#A(d)-l] Z P{d, C)+ Z #A(d) £ /(d, c) = dEDc^^(d)d^Dc^^[d)
= Z *A(d) Z P(d, c)- ZZ P(d, c\
dEDc^GdeD cel\^
Наконец, * (So А) рТ - # (2 о A) pr = Z Z P (d, c) - d^D CE^d)
-[Z W) 2 P(d, c)- Z Z P(d,c^ =
UeDc^Gd^D c e A (d)J
= 2 Z Z P(d, c^ — z *A(d) z P(d, c).
dED cEl\^dsDceG
Лемма 7. Предположим, что
P(d, c)<l ^ P(d, c'V^G.c'eC
Тогда k(cT) = 0 тогда и только тогда, когда
2 Z P{d, c)-#A(d) Z P(d, c) ce A (d)сеC
максимально.
Доказательство. Наибольшая возможная Z P(d,c) cgA (d)
равна min(#A(d)Pmax(cO, Z p(d, c)L где Pmax(d) = maxP(d, c\ (ceC)c
Так как
P(d, c^<^ У, P(d, c')Vc^C, to Pmax (d) < 1 ^ P<d, c').c'eCc'eG
Таким образом,
min ( *A(d) Pmax (d), yP(d,c)\
(c^GJ
<minf^4^ £ P(d, c), yP(d, c)tc^Gc^C
^y E P(d, с), если *A(d)=l,
c^G
<.yp^d, с), если фА(й)^2,
ceC
О, если A (d) = 0.
Теперь
2 £ P(d, c)-#A(d) £ P(d, с)<
с е A (d)с е С
<2 fl £ P(d, c)V £ P(d, с), если #(d)=l, \ сеС/ с^С
<2£ P^d, c)-#A(d) £ P^d, с), если #A(d)>2, ceGс^С
= 0, если A (d) = О.
Так что
2 У, Р (d, с) — * A (d) У, Р (d, с) ^ 0 =>, если A(d)=0, то се A (d)сеС
*A(d) = O и 2 £ P^d, с) —ф0 2 P^d, с) = Се0СфС
= 0>2 £ P^d, c)-#A(d) £ P^d, с)ceA(d)сеС
для всех A (d).
Предположим, что 2 £ Р (d, с) - * A (d) £ Р (d, с) ceA(d)сеС
максимально. Тогда
0>2 £ P(d, c)-#A(d) £ РЦ, с)> се A (d)с е С
>2 £ P(d, c)-#A'(d) £ P(d, с)
CEAz(rf)С^с
для любых A'(d).
Ноль есть наименьшая верхняя граница. Она достижима тогда, когда A(d)= 0. Вопрос состоит в том, действительно ли A(d) = 0 доставляет эту верхнюю границу единственным образом. Да является ответом в том случае, если
0 = 2 £ P(d, c)-*A(d) £ P(d, с),csA(d)се С
так как в этом случае * A (d) £ Р (d, с) = 2 £ Р (d, с), или се СceA(d)
£ ру. с)
# А № _ се A (d)।
2£ ру.с) •
сеС
так что ф A(d)<2. Еслиф A(d) = 1, то наибольшая возможная У Р (d, с) равна Pmax (d), так что
с е A (d)
2 £ P(d, c)-*A(d) £ р (d, с) = 2РП1ах (d) - £ p(d, с).
ceA(d)ceGceG
что является меньшим нуля по предположению. Если # A (d) = 2, то наибольшая возможная У Р(Д с) равна 2Pmax(d). Таким се A (d)
образом, 2 Е Р (d, с) - # A (d) Е Р (d, с) < 2 (2Pmax (d)) - ceA(d)се С
-2 Е P(d,c)<2[2Pmax(d)- Е Р (d, с)1 что меньше нуля сеСLсеС J’
по предположению.
Лемма 8. Предположим, что
ЗсеР^с}>^
с' е С
для некоторого сеС, Тогда для всевозможных подмножеств A (d) множества С
Ть=2 Е Р (Д c)-#A(d) Е P(d, с)с е A (d)с е С
максимально тогда и только тогда, когда
W = Vc\P № с»Р (d, с') Me' е С}.
Доказательство./ Определим A (d) = {с | Р (d, с) ^ ^P(d, c^Vc' еС). Тогда P(d,c) должно быть максимально для любого класса в A (d). Это означает, что для любого с е A (d)
Р Д с) = Pmax (d) = max Р (d, с').
сг гС
Так как
Зе э Р Д с) > 1 £ Р (d, с'), то Pmax (d) = Р (d, с)с'г С
и с — единственно. Таким образом, ф A (d) = 1. Теперь
^=2*A(d)Pmax(d)-*A(d) Е P^d.c)
с ^С
= *A(d)[2Pmax(d)- Е P^d, с)1
LсеС J
= 2Pmax(d)- Е Pkd,cY сеС
Определим для любого подмножества S множество С
Ts = 2 Е P(d,C)-*S Е Pkd,cyc^SсеС
Та — Ts > 0 — для любого подмножества S множества С, отличающегося от A (d) тогда и только тогда, когда А (^ — единственный максимум для Т
Пусть S — произвольное подмножество множества С. Рассмотрим Тд —7$:
T&-Ts = 2Pmax^- Е P(d,c)-2 Е /,№c) + *S Е Р^,с). сеСceSсеС
S может быть или не быть пустым. Если S пусто, то 7s = 0 иТ& - Ts = 2Pmax (d) - Е Р У, с),
сеС
что больше нуля, так как
Pmax№>^ Р^С'У
сеС
Таким образом, пустое S не будет доставлять максимума Ts. Теперь предположим, что S не пусто. Очевидно, У Р (d, с)^ сеС
> Е P(d, с).
c^S
Tn -Ts =2Pmax №-^ P ^d, c) - 2 E P (d, c) + # S ^E P W, o'» 2Pmax(d) - cE Pkd, c) - 2 EcP kd, c) + * S ^Pkd, c)>
> 2Pmax (d) - 3 cE P^d, c) + * S Ec P kd, c) > Ec P (d, c) -
-3 E P^d, c) + *S E m<024 E P(d, c)l[*S-2] > 0, если * S > 2.
Таким образом, произвольное Ss4f=S>2 не будет доставлять максимума Ts. Рассмотрим, что произойдет, если #5=1. Тогда либо из ceS следует, что Р(d, с) = Pmax (d), либо из с s S следует, что Р kd, с) < Pmax (d). Если из с е S следует, что Р kd, с) = Pmax(d), то S = A(d). Если из ceS следует, что Р (d, с) < Pmax (d), то
Tn-Ts=2Pmax(d)~ Е P(d,c)-2 Е P(d,c) + *S Е P(d,c)> сеСceSceG
> 2Pmax (d) - E P <d, c) - 2Pmax (d) + E P {d, c) = 0. csCceC
Таким образом, такое S не будет доставлять максимума Ts. Рассмотрим, что произойдет если #5 = 2:
тд-т5=2 Е/№ c)-#s ЕсР№с) =
= 2Е Pkd, с)-2 ЕР(о!,с) = -2 Е P(d, с).
<?eSС^ссгзс
Тогда
Гд-Ts = 2Pmax(d)~ Е P(d, С) + 2 Е Р^.сУс^СceSc
По предположению
Ртах ^>^Р^, С^
сеС так что
2Pmax(d)- Е Р^, б) > 0.
сеС
Так как для любого сеС
P(d, с)>0, 2 Е P^d, с)>0.
ceSc
Таким образом, T^ — Ts > 0 и S э *5 = 2 не будет доставлять максимум для Ts-
Лемма 9. Предположим, что
BcsCsP(d, с) =1 ^ Р^.с'У
с'еС
Тогда для всевозможных подмножеств А (с?) множества С
Гд=2 Е РЦ, c)-#A(d) Е РЦ, с)с е A (d)сеС
максимально тогда и только тогда, когда A (d) — некоторое подмножество множества {с | Р (d, с)^Р (Д, cz) Vcz е С}.
Доказательство. Пусть A (d) — некоторое данное подмножество множества {с | Р (d, с) Р (d, с') Чс' е С}. Пусть S — некоторое подмножество множества {с | Р (d, с) ^ Р (d, cr^ X X Vcz еС}. Рассмотрим
Tk-Ts = 2 Е P{d, c)-#A(d) Е P(d, с)~ с е A (d)с + С
-(2 Е РУ, с)-#S Е РЦ, С)1 =
I ceSceGJ
= [*5-*АИ]Ер№с) + 2[ Е P(d,c)~ Е P(d,c)] = csGLcе A (d)сеSJ
= [* S - * A (d)] Е Р Id, с) + 2 [* A (d) Pmax (d) - * SPmax (d)] = ceG
= [#S-#A(d)] E P(d,C) + 2Pmax(d)[#A(d)-*S] = ceG
= [* s - * A (d)] [ Zc P Id, c) - 2Pmax (d)].
Но
Ртах № = ^ P(d, с),
сеС так что
Е P(d, с) — 2Ршах (d) = 0.
сеС
Таким образом, Тд — Ts=0, ^(d) и S эквивалентны относительно критерия Т.
Пусть S — некоторое подмножество множества С — не является подмножеством множества {c|P(d, c^^P^d, с'^с' еС}, Тогда Зс е Sb Р (d, с) < Ртах ^, так что
Е Р (d, с) < ^ S Pmax(d)..
ceS
Рассмотрим
T^-Ts = 2 Е РЦ, c)-#A(d) Е Pid, с) — ceA(d)се С
-(2 Е Pkd, c)-*S Е P(d, с)1.
I ceSсеСJ
Гд - Ts = 2 * А № Pmax (d) - # A (d) Ес Р Id, с) -
_(2 Е РЦ, c)-#S Е P(d, с)) =
( ceSceG)
«^Д^ррmaxЕср(^.с)]-.
-[2 Е P^d, c)-*S Z Pkd,cA>
L csScsC J
>*Md) [2 PmaxW - Zc P Id, c)] _
- [2 * SPmax (d) - * S Ec P Ц, c)] >
> * A (d) Г2Ршах ^ - E P (d, c)l _
LCSCJ
- * s pPmax (d) - Ec P kd. C)] [* A (d) - * S] x
X[2Pmax(d)- ^Pkd, c)]. Ho
Pmax№ = ^Pkd,c\
сгС так что
2Pmax№- E РкД,с) = О.
ceC
Таким образом, Тд —Ts>0.
Лемма 10. Предполагая
сеС deD ueT^^ (с)П2“ 1 (d)
♦ wn^HZ X ^ж^г1
dED c^G c'^C mT”x kc^^^ kd')c' =#= c
получаем
#(2оА)П7’-#(Х = Л)ПГ~
E [2 E P(d, c)-*A(d) E P (d, c)l
гдегде*А№ПИ*S (h)'*А№ПИ*S (h)'d e D L c e A (d)с e CJ ’
где
где
*А№ПИ
*S (h)'
*А№ПИ
*S (h)'
Pkd,c^= £
ueT"1 (c)nS-*(d)
Доказательство
ЦС^ЛИЖ»^ X [ X T^wl” dED ce A (d) *-ueT- 1 (c)f|S”1 (d)J
«ЕЕ
deD ce A (d)
#(2оД)ПГ«Х Z*A^n
dED ceG
П^£ T ( * 2 (u) ) ^ c'^G иеТ“1(с')П2“1 (^) c' =£ c
«Е E E рц,
deD cs A (d) c'sC c' =#» c
«ЕЕ (E p(d,c')-p(d,c^«
deD c + A(d) xc'eG/
« E E E P{d, и- E E p^d, C)«
dED сг^ c'^Gd^D c^l^{d)
« E [*A(d) E P(d,c^- E P^d.c^, deDLc + Cc + A(d)J
Таким образом, ^(Zo^nZ’-^^oAjnr» E f E P^d, c)-
-r*A(d) E P^d, C)- E P<d, c)ll« E [2 E Pkd, c)-
LceGc+^(d)J J deDL c+A (d)
-*^Wl,P(d, c)l. c+C J
Лемма 11. Пусть R^U XU, Т г U X С — однозначны и всюду определены, ^^UXD. Из предположения (и, с)^Т получаем, что * { d е (/?°S) (и) I # (/?oS)-1 (d) fl Г-1 (c) > j* ф^р^^Ф^Ни)}- Определим T = {(u, c)|#A-‘(c)n Л (И (u) > 4 Ф (M («)} . Тогда из A = {(d, c) |*(/?оS)"1 (d) П П T-1 (с) > у Ф (7?°S) (м) } следует, что t = T.
Доказательство. Определим A(u) = ^d, c)|(d, c)eA и (и, d'isRohY Предположим, что ^u, c)eT. Тогда фА~’(с)П r\(Ro^>^*(R=W. Но *Д-1(с)П(/?»2)(и) = *Л(М)П П(£>Х{с}). Заметим также, что фЛ (и)^ф(/?о2)(и). Следовательно, ф А (“) Л (D X {с}) > 4* (^°2) (и) ^4 Ф А (“)• Из этого должно следовать, что (и, с) е Т, поскольку в противном случае (и, с')еГ и с' N= с. Так как (м, с')еТ то ф А (и) f| (D X Х(с'}) >4 + <^°2)(m)>4# Л^- Так что Ф^(“)>Ф^(«)Л П (D X {с, с'^ > ф Аи — противоречие. Таким образом, (и, с^еТ. Предположим, что ^и, o') е Т. Тогда ф А (и) f| (D X {с}) > 4 Ф ф (/?oS) (и) или же ф А-1 (с) П (/?°2)(м) > 4 Ф №°^) (“)> так что 'и, с) г Т.
Лемма 12. Если
фТЛГ-фГПТ« ^ usUфТЛГ-фГПТ« ^ usU^£*А№ПГ(«)deD ц^^^рд-1^)u'eR^^£*А№ПГ(«)deD ц^^^рд-1^)u'eR^
фТЛГ-фГПТ« ^ usU
фТЛГ-фГПТ« ^ usU
^£*А№ПГ(«)
deD ц^^^рд-1^)
u'eR^
^£*А№ПГ(«)
deD ц^^^рд-1^)
u'eR^
£ E (*A(d)nrc(«))
ueUueUd-^D uf ^Rjuy^-^jd)
ueU
ueU
E *2m
TO
ФГЛГ-ФГЛТ« E [2 E P(d, c)-E P{d, d e D L c e A (d)с e C
где
ру.=>- X ( v «<„-Л*'г(“)П!:"1(‘г)-ueT 4c)\u'sR(u)'
Доказательство. # Т А Т—^ТС П Т
Х^-^Х X *АИП7-М-
ugUu'^R(u)deD u'eR(u)fiS~l(d)
-*A(W(«))«
«X X ^-^£ X клипт-м-
ceCu^T-l№ u-^wdGDu'<=RW(\X-4d)
-W)nH«)]«
«X X у '^„э X X [*Awnw-
c^C ueT-l(c) u^(u)d e D u' e R («mS'1 (d)
-*A(d)-{^}]«
^WHS"1^)-^WHS"1^)-Z Z Z V *2(0
^WHS"1^)-
^WHS"1^)-
d^D CSA(d)uer-l(c) и,^(ц)Т V 1
- Z Z у ‘ V № A Ml * R («) n S-1 ^ +
Фадлг"1^).
Полагая
фТПГ-фГПТ «фТПГ-фГПТ «p^- X у ^(.O^wn^'w. ueT *(c) u'e^(U)
фТПГ-фГПТ «
фТПГ-фГПТ «
E [2 E P(d, c)-*Md^P(d,c)
deOL c e A (d)ceC
Об авторе. Роберт Мартин Харалик родился 30 сентября 1943 г. в Бруклине, г. Нью-Йорк. В 1966 г. он получил в Канзасском университете степень бакалавра наук. Он работал с системами Autonetics и IBM. В 1965 г. он поступил в Исследовательский центр Канзасского университета в качестве инженера-исследователя, а в 1969 г., по завершении работы над диссертацией на соискание звания доктора философии в Канзасском университете, поступил там же на факультет электромашиностроительного отделения. Сейчас он адъюнкт-профессор электроэнергетики Канзасского университета. Др. Харалик проводил исследования в области распознавания образов, обработки
полиизображения, телеметрии, анализа текстовой информации, сжатия данных, кластер-анализа, искусственного интеллекта и общей теории систем. Им разработан пакет программ KANDIDATS для обработки полиизображений на ЭВМ PDP-15.
Он является членом Института инженеров электротехники и электроники, Ассоциации вычислительной техники, Сигма Кси, Общества распознавания образов, Общества общих системных исследований и Нью-Йоркской академии наук.
Математические машины и мышление
Доказательство теорем планиметриис использованием прямых рассуждений1)
А. Невинс
Artificial Intelligence Laboratory, Massachusetts Institute of Technology,Cambridge, Mass. 02139, U. S. A.
Описывается программа для вычислительной машины, которая работает с некоторым подмножеством утверждений планиметрии. Она не только обладает преимуществами по сравнению с уже существующими программами, но в своей области применения (т. е. в доказательстве теорем при отсутствии кривых линий и без введения новых точек) выдерживает сравнение с лучшими математиками. Программа использует комбинацию прямых и обратных рассуждений, причем прямые рассуждения играют наиболее важную роль. Это вместе с более глубоким использованием графической информации позволяет программе обходиться без графического фильтра, который играл центральную роль в предыдущих программах. Важный аспект решения задач человеком, вероятно, состоит в способности упорядочения пространства задач таким образом, чтобы можно было эффективно использовать технику прямых рассуждений.
ВВЕДЕНИЕ
Использование чертежа в качестве семантической модели было краеугольным камнем предыдущих попыток механизации доказательства теорем планиметрии (например, ранние работы [3, 4] и более поздняя [5]). Оно также было объектом внимания в других статьях [6, 11], в частности, потому, что наводит на мысль об использовании аналогичных моделей для задач из других областей.
Существуют четыре преимущества, которые человек извлекает из чертежа в планиметрии. Во-первых — мнемоническое. Накапливаются данные [7] о том, что кратковременная память человека серьезно ограничена. Чертеж же делает более легким запоминание и получение новых геометрических отношений. Во-вторых, чертеж концентрирует внимание на прямолинейных отрезках, которые присутствуют в первоначальном рисунке и которые поэтому получают более высокий приоритет,
9 Nevins A. J. Plane Geometry Theorem Proving Using Forward Chaining. Artificial Intelligence 6 (1975), 1—23.
© 1975 by North — Holland Publishing Company.
© Перевод на русский язык, «Мир», 1979,
чем еще не изображенные линии. В-третьих, рисунок содержит полезную и часто существенную нечисловую информацию, касающуюся взаимного расположения точек. В-четвертых, чертеж действует как фильтр для отбрасывания целей, несовместимых с его метрическими соотношениями (например, не делается попытка доказательства равенства двух сторон, если на чертеже они выглядят очевидно неравными).
Однако какими из четырех перечисленных преимуществ использования рисунков можно воспользоваться в программах для современных вычислительных машин? Мнемонический фактор не применим, так как вычислительные машины имеют вполне достаточную оперативную память. Определенно применима эвристика, управляющая использованием отрезков, но эта информация может быть найдена непосредственно из аксиом без необходимости в действительном чертеже, что будет показано в разд. 2. Программа для вычислительной машины, которая описана в этой статье, использует графическую информацию нечисловой природы, как показано в разд. 2, но она не использует числовую информацию чертежа, и открытым является вопрос, много ли из-за этого теряется. Это наводит на мысль о возможности того, что использование человеком чертежа в качестве фильтра обусловлено отчасти его мнемоническим использованием. Так как описываемая программа работает непосредственно с предикатами задачи, то человеку не требуется предоставлять ей чертеж.
Существует тесная связь между центральным положением, которое занимает фильтрация по чертежу в предшествущих программах, и преимущественным использованием этими программами метода обратных рассуждений как способа вывода. В ранней работе по искусственному интеллекту [10] подчер-. кивалась важность обратных рассуждений (т. е. рассуждений от цели к аксиомам) как метода, обратного методу прямых рассуждений (т. е. рассуждений вперед от аксиом к цели). Более поздние статьи продемонстрировали больший интерес к прямым рассуждениям (например, [1, 2, 12]). Однако, хотя большинство исследователей допускает необходимость обеих форм вывода, существует определенная робость в использовании прямых рассуждений. Эта робость вытекает из того, что прямые рассуждения порождают катастрофически большое число побочных утверждений, особенно при большой базе данных. Обратные рассуждения по крайней мере гарантируют, что усилия программы связаны с целью, которую она пытается доказать. Однако сравнение не столь просто. Размеры базы данных могут быть менее важны, чем способ организации этой базы данных и эвристики, используемые при управлении ею. Добавление новых фактов к базе данных (что вызывается прямыми
рассуждениями) может быть очень сильной стороной программы, если эти факты имеют отношение к целям решающего. Эти факты имеют гораздо больше шансов относиться к делу, если поиск можно ограничить относительно малой областью, характеризующей данную задачу, а не однородным набором сведений. Описываемое использование прямых рассуждений в планиметрии было сделано эффективным 1) в результате удобного представления базы данных и 2) за счет того, что использование их обычно ограничено тем множеством точек и линий, которые подразумеваются в формулировке задачи (и которые при обычном доказательстве появились бы в исходном чертеже). По мнению автора, неспособность извлечь существенную пользу из прямых рассуждений означает, что рассматриваемое пространство задач, вероятно, не было должным образом организовано. Этой мыслью не следует пренебрегать в будущем при составлении программ, которые моделируют интеллект, подобный человеческому.
Потенциально опасно использовать обратные рассуждения, если они ведут к порождению дерева целей типа И/ИЛИ. Такое дерево возникает, когда попытка достижения цели приводит к ИЛИ-узлу, содержащему несколько подцелей, где 1) достижение любой из этих подцелей решает основную задачу и 2) по крайней мере одна из этих подцелей В генерирует И-узел, содержащий несколько дополнительных задач, которые должны быть все решены для выполнения В. Хотя были сделаны некоторые попытки развития процедур для работы с такими деревьями [13], часто-бывает трудно предотвратить взрыв размножения подцелей. В планиметрии 1) попытка доказать что- нибудь посредством конгруэнтных треугольников может породить ИЛИ-узел (т. е. любой из нескольких различных методов доказательства конгруэнтности различных пар треугольников может быть достаточным для достижения цели) и 2) попытка доказать конгруэнтность пары треугольников каким-то определенным методом (например, по стороне и двум углам) может породить И-узел. Причина, по которой фильтрация по чертежу была столь необходима в предыдущих программах доказательства теорем планиметрии, состоит в том, что она помогает ограничить это размножение с помощью исключения тех подцелей, которые противоречат чертежу. В то же время данная программа не нуждается в графическом фильтре, так как при ограниченном использовании ею обратных рассуждений не генерируется И/ИЛИ дерево целей. В частности, она удаляет И-аспект дерева с помощью требования, чтобы ни одна из подцелей И-узла не рассматривалась, если все другие подцели этого узла не являются уже утверждениями из базы данных. Причина, по которой программа может позволить себе такое
ограничение при использовании обратных рассуждений, состоит в том, что она существенно полагается на прямые рассуждения для добавления новых утверждений к базе данных.
Успех программы основывается, в частности, также на ее представлении пространства задач, что описано в разд. 2. Ор’ ганизация программы освещена в разд. 3 и 4, разд. 3 акцентирует внимание на прямых рассуждениях, а разд. 4 — на обратных рассуждениях. Техника, представленная в разд. 3 и 4, широко и существенно использует рассмотрение частных случаев, и эти случаи (каждый из которых основывается на мысленной картине некоторой возможной ситуации из планиметрии) мотивируют наличие различных ЛИСП-процедур, используемых в этой программе.
Главные ограничения программы состоят в запрещении применения кривых линий и введения новых точек. Тем не менее область задач далеко не тривиальна, что видно из примеров работы программы, которые представлены в разд. 5. Некоторые предложения относительно будущей работы обсуждаются в разд. 6.
ПРЕДСТАВЛЕНИЕ ЛИНИЙ, УГЛОВ И РАВЕНСТВ
Программа рассматривает прямую линию как упорядоченную последовательность точек. Таким образом, если утверждается, что (ABCD)—прямая, то предполагается, что 1) В лежит на этой линии между А и С и 2) С лежит на этой линии между В и D. Линия представляется самым длинным отрезком, про который известно, что он проходит через данное множество точек, т. е. множество точек (АВС) рассматривается не как другая линия, но как подмножество линии (ABCD). Упорядочение точек на линии служит главным образом для того, чтобы определять, какие точки (если такие существуют) лежат между другими точками, а не для того, чтобы определять, встречается ли одна точка прежде другой. Единственный раз, когда действительно предшествование играет важную роль, — это когда мы имеем дело с параллельными линиями, так как параллельные линии на рисунке отражают подразумеваемое предположение, которое касается упорядочения точек на этих линиях. Так, на следующем рисунке
линия ABCD может быть представлена либо как (ABCD), либо как (DCBA), при этом первое представление требует, чтобы линия EFG была представлена как (EFG), тогда как представление (DCBA) требует, чтобы линия EFG была представлена как (GFE). Это делается для того, чтобы информировать программу об относительной ориентации двух параллельных линий, так как накрест лежащие внутренние углы BAF и AFE равны при той ориентации, которая показана на рисунке вверху, и не равны при противоположной ориентации:
Программа распознает шесть предикатов LN, PR, PRP, RT, ES и ЕА, которые будут описаны в этом разделе. Выражение (LN К) означает, что список К есть прямая линия. Выражение (PR KL) означает, что линия К параллельна линии L и определяет, как описано выше, относительную ориентацию точек в К и точек в L. Выражение (PRP К L) означает, что линия К, возможно, параллельна линии L. Это позволяет программе заключить для себя, что линия К параллельна линии L при условии соответствующей относительной ориентации К и L, так как эта информация должна быть на чертеже. Таким образом, если задача имеет чертеж, на котором показаны две линии К и L, выглядящие так, как будто они действительно могут быть параллельными, программе следует сказать (PRPKL). Выражение (RT АВС) говорит о том, что АВС — прямой угол. Выражение (ES АВ CD) утверждает, что отрезок АВ = отрезку CD, тогда как выражение (EAABCDEF) утверждает, что угол АВС = углу DEF.
На реализацию программы, доказывающей теоремы, существенно влияет способ, которым она обрабатывает равенства. Успех работы [8] в таких областях, как теория групп и теория чисел, несомненно, был отчасти обеспечен способом обработки эквивалентностей, встроенным в знания об ассоциативных и коммутативных операторах. В планиметрии даже такое простое утверждение, как отрезок АВ = отрезку CD, имеет 8 эквивалентных представлений (т. е. (ESABCD), (ESABDC), (ES BA CD), (ES BA DC), (ES CD AB), (ES DC AB), (ES CD BA) и (ESDCBA)). Если добавляется утверждение отрезок CD = = отрезку EF, то транзитивность равенства увеличивает число
представлений до 24 (т. е. 8 вариаций АВ = CD плюс 8 вариаций CD = EF плюс 8 вариаций AB = EF). Использование прямых рассуждений может быть не такой уж хорошей идеей, если оно связано с представлением, которое порождает множество лишних выражений для каждого нового выражения, добавляемого к базе данных.
Настоящая программа использует функцию ALPHALESSP, имеющуюся в ЛИСП-библиотеке в MIT, для обеспечения однозначности представления выражения «отрезок АВ». Она делает это с помощью алфавитного упорядочения точек на чертеже. Так, отрезок АВ должен представляться как АВ, а не как ВА, так как буква А стоит в алфавите раньше В. Представление равенства двух отрезков определяется из лексикографического упорядочения, выполняемого функцией ALPHALESSP; во-первых, определяются представления х и у для каждого отрезка и затем к спискам х и у применяется лексикографическое упорядочение, чтобы определить, который из них рассматривать первым (т. е. сравниваются первые элементы х и у, и то, который из них имеет меньшее значение, определяемое с помощью ALPHALESSP, определяет выбор между х и у; в случае совпадения сравниваются вторые элементы х и у). Например, выражение (ES ВС DA) было бы заменено на (ESADBC), так как 1) отрезок ВС представляется как (ВС), 2) отрезок DA представляется как (AD) и 3) (AD) предшествует (ВС) в лексикографическом порядке, так как первый элемент (AD) предшествует первому элементу (ВС). Аналогично, (ES DB ВС) было бы заменено на (ES ВС BD).
Транзитивность равенства осуществляется простой группировкой вместе всех отрезков и углов, про которые известно, что они равны. Так, выражения (ESCADB) и (ES BD FE) необходимо заменить на (ES AC BD) и (ES BD EF) соответственно и затем сгруппировать вместе следующим образом: ((АС), (BD), (EF)), и поместить в список, который содержит входы всех отношений равенства отрезков.
Представление углов содержит некоторое усложнение, которое не встречается в представлении отрезков. Если для представления отрезков имеются только два возможных способа (в зависимости от того, какой конец помещен в список первым), то для представления углов существует несколько возможностей. Так, следующий угол
можно представить как ACD, DCA, АСЕ, ЕСА, BCD, DCB, ВСЕ или ЕСВ. Программа руководствуется соглашением об использовании тех точек, которые лежат ближе всех к вершине угла.
В примере, который приведен выше, это сужает выбор до BCD или DCB с окончательным выбором, который определяется алфавитным упорядочением неугловых точек (т. е. отдается предпочтение BCD перед DCB, так как в алфавите В встречается раньше D). В остальном представление равных углов аналогично представлению равных сторон.
Программа хранит вместе однородные данные. Так, отдельные списки строятся для 1) прямых линий, 2) пар параллельных прямых, 3) пар потенциально параллельных прямых, 4) прямых углов, 5) групп равных отрезков и 6) групп равных углов. Допустим, например, что программа обнаружила, что углы DEF и GHI равны. Сначала она определит группы, к которым эти углы принадлежат, а затем сольет эти группы. Так, если это две группы (ABC, DEF) и (GHI, JKL) (т. е. раньше уже было обнаружено, что АВС = DEF и GHI = JKL), то новая группа должна быть (ABC, DEF, GHI, JKL). Затем программа исследует следствия из этой новой группы равенств, используя методы, описанные в разд. 3.4. Исследуются следствия не только из равенства DEF = GHI, но и следствия из равенств DEF = JKL, АВС = GHI и АВС = JKL. Более того, если (ABC, DEF) была группа прямых углов, то исследуются следствия нового факта, что углы GHI и JKL прямые, используя методы из разд. 3.5.
Линии, которые имеются на первоначальном рисунке, имеют эвристическую ценность, состоящую в том, что они, вероятно, должны использоваться в доказательстве теоремы. Мы уже видели, как сообщить программе о линиях, используя LN, PR и PRP. Она также получает информацию о линиях из предикатов ES, RT и ЕА. Так, выражение (ES АВ CD) сообщает программе, что АВ и CD — прямые (если, конечно, они не являются частями других прямых). Выражение (RT АВС) говорит о том, что АВ и ВС — прямые, но из него не следует, что АС — прямая, так как такой угол можно начертить следующим образом:
А
st]-с
Аналогично выражение (ЕА ABCDEF) сообщает программе, что АВ, ВС, DE и EF — прямые линии. Обычно программа не вводит новых дополнительных линий в процессе прямого поиска
(исключение из этого правила описано в примере 1 разд. 5), а оставляет такие построения на долю обратного поиска. Например, допустим, что прямая АВ параллельна CD (см. рисунок)
Во время прямого поиска программа находит, что BAD = ADC, так как здесь есть секущая, проходящая через точки А и D, но не делает вывода, что АВС = BCD, так как не существует линии, проходящей через точки В и С; заключение АВС = BCD может быть получено только в результате обратного поиска в качестве вспомогательного при доказательстве некоторой цели.
ПРЯМЫЕ РАССУЖДЕНИЯ
Каждый раз, когда к базе данных добавляется новое утверждение, программа выясняет, не совпадает ли оно с целью, которую она пытается доказать. Если ответ положительный, программа останавливает работу с завершенным доказательством, Если ответ отрицательный, программа исследует следствия из этого нового утверждения, как описано в разд. 3.2—3.5.
Программа вначале находит все вертикальные углы и затем проверяет каждую из первоначальных аксиом, применяя ту подпрограмму из разд. 3.2—3.5, которая подходит для этого случая. Если при этом не получается доказательства, программа продвигается вниз по списку групп равных сторон, как будет описано в разд. 3.1. Если действие, описанное в разд. 3.1, уже проделано, но доказательство все же не найдено, программа переходит непосредственно к обратному поиску, описанному в разд. 4, который при успешном исходе решает задачу. Если обратный поиск неудачен, программа задает вопрос, не были ли добавлены новые данные к базе.данных при выполнении предыдущего действия из разд. 3.1. Если ответ отрицательный, программа оканчивает работу с отрицательным результатом. При положительном ответе программа возвращается для выполнения еще одного действия из разд. 3.1.
БЛОК РАВНЫХ ОТРЕЗКОВ
Программа анализирует первую группу равных сторон и внутри нее рассматривает каждую пару отрезков, допустим XZ и UW. Она пытается найти новые конгруэнтные треуголы*
ники на основании равенства отрезков XZ и UW. Эти попытки основываются на рассмотрении отдельных частных случаев. Первый такой случай изображен на следующем чертеже
и имеет такое объяснение. Программа ищет группы равных углов и находит пару равных углов АХВ и CUD, где 1) точка А лежит на прямой XZ, но X не лежит между А и Z и 2) точка С расположена на прямой UW, но точка U не лежит между точками С и W. Затем она продолжает свой поиск среди групп равных углов и находит пару равных углов EZF и GWH, где 1) точка Е расположена на прямой XZ, но точка Z не лежит между Е и X и 2) точка G расположена на прямой UW, но точка W не лежит между G и U. Наконец программа обнаруживает, что прямые ХВ и ZF пересекаются в точке Y и прямые UD и WH пересекаются в точке V, где 1) точка X не лежит между точками В и Y, 2) точка Z не лежит между точками F и Y, 3) точка U не лежит между D и V и 4) точка W не лежит между точками Н и V. Теперь программа в состоянии заключить, что треугольник XYZ конгруэнтен треугольнику UVW по стороне и двум углам. Если на предыдущем этапе программа не знала, что эти два треугольника конгруэнтны, то теперь она выводит, что отрезок XY = отрезку UV, угол XYZ = углу UVW и отрезок ZY = отрезку WV. Каждое из этих выражений, если оно действительно новое, добавляется к базе данных, и исследуются следствия из этих добавлений с помощью подпрограмм, описанных в разделах 3.3 или 3.4 в зависимости от того, является ли новое равенство равенством сторон или углов. Хотя рассмотренный случай основан на довольно простой мысленной картине, все же существует ряд требований, которые должны быть удовлетворены для того, чтобы он мог реализоваться. Для каждого такого частного случая имеется подпрограмма, написанная на языке ЛИСП, работа которой должна удовлетворять условиям, подразумеваемым, в мысленной картине, порожденной этим частным случаем. Настоящая статья описывает (с различной степенью детальности) те частные случаи, кото* рые используются программой*
Следующий частный случай используется, когда равные стороны XZ и UW имеют общий конец (пусть X и U), как показано на следующем рисунке:
Программа первым делом находит ближайшую к X точку А, принадлежащую прямой XZ, такую, что 1) А и X — различные точки и 2) X не лежит между А и Z. Аналогичным образом она находит точку В на прямой XW. Затем она ищет группу равных углов, которая содержит углы AXY и BXY для некоторой точки Y (т. е. угол AXY = углу BXY). После нахождения такой точки она заключает (для любой точки Р, отличной от X и расположенной на отрезке XY), что треугольник ZXP конгруэнтен треугольнику WXP по двум сторонам и углу между ними. Как всегда, когда обнаруживаются два конгруэнтных треугольника, к базе данных добавляются равенства соответствующих частей (если эти равенства новые) и исследуются следствия из них.
Если равные отрезки XZ и UW являются частями прямых линий R и S, про которые известно, что они'параллельны, где точка X появляется «прежде» Z на прямой R и U «прежде» W на S, программа ищет линии К и L, которые потенциально параллельны и где точка U появляется «прежде» точки X на К и точка W «прежде» Z на L, как показано ниже:
В этом случае программа объявляет, что UXZW — параллело* грамм, и исследует следствия из этого факта (т. е. прямые К и L параллельны и противоположные углы и стороны параллелограмма равны).
Для каждой пары равных стопой XY и UV программа ищет группы отрезков для того, чтоб я найти другую равную пару YZ и VW.
Xif
Программа никогда не пытается доказать конгруэнтность двух треугольников, если она знает, что все три вершины одного из этих «треугольников» расположены на одной прямой. С другой стороны, если в добавление к XY = UV и YZ = VW программа может найти две прямые К и L, такие, что 1) (XYZ)—отрезок прямой К, 2) (UVW)—отрезок прямой L и 3) точка Y расположена между точками X и Z на прямой К, а точка V между U и W на прямой L, то она заключает, что XZ = UW, так как суммы равных отрезков совпадают; то же самое заключение достигается, если она обнаруживает, что точка Y не лежит между точками X и Z на прямой К и точка V не лежит между точками U и W на прямой L, так как разности равных отрезков совпадают.
Однако и при отсутствии известных коллинеарностей треугольники XYZ и UVW имеют хороший шанс быть конгруэнтными, так как уже известно, что две из их сторон равны, т. е. XY = UV и YZ = VW. Для проверки этого, во-первых, программа выясняет, будут ли отрезки XZ и UW встречаться в одной группе равных сторон, и, если ответ положительный, она заключает, что эти два треугольника конгруэнтны по трем сторонам. В случае отрицательного ответа программа проверяет базу данных для того, чтобы посмотреть, равен ли угол XYZ углу UVW (т. е. она спрашивает, будут ли представления для этих двух углов встречаться в одной и той же группе равных углов), и, если ответ положительный, она заключает, что два треугольника конгруэнтны по двум сторонам и углу между ними. С другой стороны, она спрашивает, будут ли представления для 1) углов YXZ и VUW или 2) углов VZX и VWU встречаться в группе, которая содержит только прямые углы, и если ответ положительный, она объявляет два треугольника конгруэнтными по катету и гипотенузе. Если же все перечисленные попытки оканчиваются неудачей, она пытается установить равенство XZ = UW как сумму (или разность) отрезков, про которые известно, что они равны, для того, чтобы вывести заключение о конгруэнтности по трем сторонам. Последняя попытка состоит в установлении равенства углов XYZ и UVW как суммы (разности) углов, о которых известно, что они равны.
Если программа не в состоянии доказать теорему после проверки всех пар равенств XY = UV и YZ = VW, она выходит из блока прямого рассуждения и входит в блок обратного поиска, описанный в разд. 4.
СЛЕДСТВИЯ ИЗ НОВЫХ ПАРАЛЛЕЛЬНЫХ ПРЯМЫХ
Как только программа определяет, что две прямые параллельны, она пытается найти секущую для этих линий. Существуют три возможности, как показано на следующем рисунке:
Первый случай представляет собой обычную ситуацию, где программа может обнаружить равенство внутренних накрест лежащих углов. Во второй ситуации пересекающая прямая пересекает обе прямые «в начале» каждой линии, и поэтому программа должна определить равенство соответственных углов. Третья ситуация такая же, как и вторая, за исключением того, что на секущей прямой не существует точек, кроме тех, которые лежат на или между двумя этими параллельными прямыми, однако, так как секущая пересекает одну из параллельных прямых под прямым углом, программа заключает, что другая прямая должна пересекаться также под прямым углом. Затем программа пытается использовать теорему о том, что линия, которая делит пополам одну сторону треугольника и параллельна основанию, делит пополам и другую сторону треугольника. Она делает это с помощью нахождения отрезков XY = YZ, где 1) точка Y лежит между точками X и Z на прямой XZ, 2) точка X лежит на одной из параллельных прямых К и 3) точка Y лежит па другой прямой Б.
Для каждой точки V (за исключением Y) на прямой Б про* грамма пытается найти прямую, проходящую через точки Z и V, и если эта линия пересекает прямую К в точке U, то она заключает, что сторона UV = стороне VZ. Эта последняя теорема в действительности является частным случаем более об^
щей теоремы о пропорциональности отрезков; более общую теорему нельзя использовать, так как программа не имеет предикатов, выражающих понятие «пропорциональность», недостаток, который, однако, не очень трудно исправить.
СЛЕДСТВИЯ ИЗ НОВЫХ РАВЕНСТВ ОТРЕЗКОВ
Этот раздел описывает непосредственные действия, предпринимаемые программой, когда она обнаруживает, что два отрезка равны. Последующие действия уже описаны в разд. 3.1.
Допустим, что программа в данный момент времени обнаружила, что отрезок XZ = отрезку UW. Во-первых, программа просматривает группы равных отрезков в поисках равенства XY = YZ, где точка Y лежит между точками X и Z на прямой XZ (т. е. на прямой, которая проходит через точки X и Z). Затем она ищет точки V, лежащие между точками U и W на отрезке UW. Если UV и VW находятся в одной группе равных отрезков, программа заключает, что отрезок XY = отрезку UV, так как половины равных отрезков равны. Если UV или VW расположены в одной группе равных отрезков с отрезком XY, то делается вывод, что UV = VW, так как разности равных отрезков равны.
Допустим, что XZ = UW, где Z и U — различные точки, которые лежат между точками X и W на отрезке XW. Тогда будет сделан вывод, что XU = ZW, так как или 1) XU = XZ + ZU = = ZU + UW = ZW, если точка Z лежит между точками X и U, или 2) XII = XZ — UZ = UW — UZ = ZW, если точка U лежит между точками X и Z.
Если программа обнаруживает, что отрезки XY и YZ равны, то (если нет сведений, что точка Y лежит на прямой XZ) она заключает, что угол YXZ = углу YZX, так как углы при основании равнобедренных треугольников равны. Однако, допустим, ей известно, что точка Y лежит между точками X и Z на отрезке XZ. Во-первых, она проверяет группу прямых углов в поисках прямого угла UVW, где 1) точка X лежит на отрезке UV, 2) точка Z лежит на отрезке VW и 3) точка V не лежит ни между точками U и X, ни между точками W и Z.
После этого, она заключает, что XY = YV, так как медиана к гипотенузе прямоугольного треугольника равна половине
гипотенузы. Во-вторых, она обращает свое внимание на группу равных отрезков, которая включает отрезок XZ, для того, чтобы найти отрезок АС (так что XZ = АС), для которого существует по меньшей мере одна точка В между точками А и С, и далее предпринимается еще одна попытка применить теорему о том, что половины (и разности)» равных сторон равны. В-третьих, она проверяет известные параллельные прямые, пытаясь еще раз использовать теорему о том, что прямая, которая делит пополам одну сторону треугольника и параллельна основанию, делит пополам также и другую сторону. Наконец, она пытается обнаружить потенциально параллельные прямые, скажем К и L, где К проходит через точку X и L проходит через точку Y и на прямой L существует точка V (отличная от Y), для которой справедливо: 1) прямая ZV пересекает прямую К в точке U и 2) ZV и VU принадлежат к одной группе равных отрезков (т. е. отрезок ZV = отрезку VU)r
Если эти условия удовлетворены, программа заключает, что прямая L параллельна прямой К, так как прямая, которая пересекает обе стороны треугольника и делит их пополам, должна быть параллельна основанию.
СЛЕДСТВИЯ ИЗ НОВЫХ РАВЕНСТВ УГЛОВ
В этом разделе предполагается, что программа в текущий момент времени обнаружила, что угол XYZ = углу UVW. Сразу же она заключает, что дополнения этих углов также равны.
Допустим, что Y и V — различные точки. Программа проверяет все потенциально параллельные прямые К и L, такие, что точка Y расположена на К, а V на L. Она пытается доказать, что К и L параллельны, с помощью секущей, проходящей через точки Y и V. Таким образом, если (как на рисунке)
точка Y расположена «прежде» точки Z на прямой К, 2) точка V стоит «после» точки U на прямой L и 3) точка Y появляется между точками X и V на секущей, то для того, чтобы из равенства XYZ = UVW программа могла заключить, что прямые К и L параллельны, необходимо, чтобы 4) точка V располагалась на секущей между точками W и Y (если не известно, что угол UVW прямой, в этом случае точка W может появиться на секущей где угодно).
Равенство углов XYZ и UVW для различных точек Y и V порождает также попытку образовать новый параллелограмм AYBV при условии параллельности прямых R и S. При этом рассматривается случай, представленный на чертеже внизу, и делается попытка удовлетворить условиям, неявно выраженным на этом чертеже.
Следующий очень сильный частный случай (который не требует, чтобы точки Y и V были различными) иллюстрируется на расположенном ниже рисунке и основывается на теореме о том, что сумма углов треугольника одинакова для всех треугольников.
Программа отыскивает группы равных углов и находит пару равных углов АВС и EFG, для которых справедливо следующее: 1) точки А и В лежат на отрезке YX, но точка В не находится между точками А и Y, а точка Y не расположена между X и В и 2) точки Е и F лежат на отрезке VU, но точка F не расположена между точками Е и V, а точка V не лежит
между U и F. Отрезки ВС и YZ пересекаются в точке D, причем точка В не лежит между точками С и D, а точка Y не расположена между точками Z и D. Отрезки FG и VW пересекаются в точке Н, причем точка F не лежит между точками G и Н, а точка V не лежит между точками W и Н. После этого программа заключает, что треугольник YBD подобен треугольнику VFH, так как равенство двух пар углов влечет равенство третьей пары (т. е. угол BDY должен равняться углу FHV). Если в дополнение к этому пара соответствующих сторон совпадает, программа объявляет, что эти треугольники конгруэнтны по стороне и двум углам, она не пытается установить конгруэнтность, прибегая к поиску в группах равных сторон, так как это в конце концов будет выполнено процедурами разд. 3.1.
Наконец, программа заключает, что треугольник BYV равнобедренный, если выполнены условия, подразумеваемые на следующем рисунке:
3.5. СЛЕДСТВИЯ из НОВЫХ ПРЯМЫХ УГЛОВ
Если программа обнаружила, что угол UVW прямой, то группа равных углов, к которой этот угол принадлежит, сливается с группой прямых углов, и методом, описанным в разд. 3.4, исследуются следствия любых новых равенств углов, которые получаются в результате такого слияния.
Программа содержит специальный список всех равных отрезков XY = YZ, для которых точка Y лежит между X и Z на отрезке XZ. Когда она обнаруживает, что угол UVW прямой, она просматривает этот список, пытаясь применить теорему о том, что медиана к гипотенузе прямоугольного треугольника равна половине гипотенузы.
Наконец, программа ищет дополнение к прямому углу UVW и, если находит, объявляет, что это также прямой угол.
ОБРАТНЫЕ РАССУЖДЕНИЯ
Попытка доказать, что две прямые параллельны (или что данный угол прямой), делается только с помощью прямых рас^ суждений. Попытка применить обратные рассуждения для до** казательства того, что две стороны равны (или два угла равны),
зависит главным образом от возможности образовать пару треугольников, которые имеют хороший шанс быть или конгруэнтными, или по меньшей мере подобными. -
ДОКАЗАТЕЛЬСТВО РАВЕНСТВА ОТРЕЗКОВ
Пытаясь доказать, что отрезок XZ = отрезку UW, программа вначале выясняет, появляется ли их стандартное представление в одной и той же группе равных отрезков или могут ли эти два отрезка быть выражены как сумма (или разность) отрезков, про которые известно, что они равны.
Если это не так, юна пытается образовать следующие треугольники:
и затем доказать их конгруэнтность. Этот частный случай порождает пару треугольников в точности таких же, как в примере в разд. 3.1. Однако в то время как в разд. 3.1 уже известно, что отрезки XZ и UW равны (из этого получается непосредственное следствие, что эти два треугольника конгруэнтны по стороне и двум углам), в этом разделе мы хотчм установить равенство отрезков XZ и UW. С другой стороны, если цель XZ = UW может быть достигнута, то, конечно, эти треугольники будут конгруэнтными. Программа пытается установить конгруэнтность, доказав, что XY = UV или ZY = WV.
В следующем частном случае (в предположении, что предыдущий не реализуется) рассматриваются группы равных отрезков для того, чтобы найти точки Y и V, такие, что расстояние между Y и конечной точкой стороны XZ (например, X) равно расстоянию между точкой V и конечной точкой стороны UW (например, U). При этом получается пара треугольников XYZ и UVW
где XY = UV. Программе необходимо доказать, что эти два треугольника конгруэнтны, для того чтобы она смогла заключить, что XZ = UW. Во-первых, программа исследует, появляются ли стандартные представления углов XYZ и UVW в одной группе равных углов. Если ответ положительный, то для доказательства конгруэнтности необходимо только установить 1) YZ = VW, 2) XZY = UWV или 3) YXZ = VUW. Прежде чем пытаться доказать любое из приведенных выше равенств (т. е. образовать новую подцель), программа выясняет, можно ли какое-нибудь из них получить проверкой базы данных; если- ни одно из них не присутствует в базе данных, она пытается доказать каждое из них по очереди. Если это не проходит на всех трех подцелях, то она прекращает попытки доказать, что эти два треугольника конгруэнтны. Однако, если представления углов XYZ и UVW не появляются в одной группе равных углов, программа тот же самый вопрос задает для углов XZY и UWV. Утвердительный ответ на этот последний вопрос означает, что достижение любой из следующих трех целей: 1) YXZ = VUW, 2) XZY уже содержится в группе прямых углов и YZ = VW или 3) XYZ = UVW, доказывает конгруэнтность. Общий подход к доказательству конгруэнтности двух треугольников теперь ясен. Идея состоит в откладывании порождения новых подцелей до тех пор, пока их выбор может быть сужен до той информации, которая представлена в базе данных.
Если предыдущий случай не проходит при доказательстве равенства XZ = UW> программа исследует, имеют ли эти два отрезка общую конечную точку. Если ответ отрицательный, то она прекращает и попытку доказать эту цель. Однако допустим, что ответ положительный, причем точки X и U совпадают. Во- первых, программа рассматривает такой случай
который уже встречался в разд. 3.1, образуя пару треугольников XZP, UWP. Единственное отличие состоит в том, что равенство отрезков XZ и UW уже было известно в разд. 3.1, тогда как теперь мы хотим установить это равенство, доказав, что
треугольник XZP конгруэнтен треугольнику UWP. Следующий пример основывается на таком рисунке
где предпринимается попытка доказать конгруэнтность треугольников XZY и XWY. Последней попыткой доказать равенство XZ = UW = XW является проверка того, что углы при основании треугольника XZW равны (т. е. угол XZW = = y^yXWZ). '
ДОКАЗАТЕЛЬСТВО РАВЕНСТВА УГЛОВ
В попытке доказать, что угол XYZ = углу UVW, программа, во-первых, выясняет, содержится ли стандартное представление для этих углов в одной группе равных углов или можно ли эти два угла выразить как сумму (разность) уже известных равных углов.
Если это не так, она порождает такие же треугольники, как и описанные в разд. 3.4. -
Единственное отличие состоит в том, что теперь мы хотим доказать равенство угол XYZ = углу UVW. Следовательно, программа пытается доказать, что угол BDY = углу FHV, так как в этом случае она может заключить, что треугольники BDY и FHV подобны и, следовательно, угол XYZ = углу UVW. Если это не так, программа пытается доказать конгруэнтность треугольников BYD и FVH с помощью несколько суженной процедуры, которая описана в разд. 4.1.
В случае неудачи предыдущей попытки последовательно рассматриваются следующие пять случаев:-
1) Доказать, что треугольник AYB конгруэнтен треугольнику
CVD'
Доказать, что треугольник AYB конгруэнтен треугольнику CVD
Доказать, что треугольник AYV конгруэнтен треугольнику BVY
Доказать, что треугольник AYC конгруэнтен треугольнику BYC
Доказать, что отрезок AY = отрезку AV
ВЫЧИСЛИТЕЛЬНЫЕ ЭКСПЕРИМЕНТЫ
Программа была написана на языке ЛИСП и использовала ранее написанную программу для доказательства теорем [9]. Был доказан ряд геометрических теорем на плоскости на машине PDP-10 в MIT. Она доказала все теоремы, приведенные Гелернтером [3,4], и ни для одной из них не потребовалось более пяти секунд. Она также решила все задачи, описанные Голд- стейном [5], и только одна из них заняла более пяти секунд. Вонг [14] описал набор более тонких геометрических задач, но не представил действующей программы, которая решает их, так как его интересовало изобретение эвристик для введения новых дополнительных точек в рисунок. После введения необходимых дополнительных точек настоящая программа доказала все примеры из [14], за исключением тех, которые требуют применения алгебраического аппарата, такого, как доказательство неравенств, отсутствующего в этой программе. Примеры 10 и 30 из [14] решались соответственно 85 и 40 секунд. Ни одна из оставшихся задач не заняла более 20 секунд. Следующие пять примеров дают некоторую иллюстрацию возможностей программы. Читателю следует обратиться к разд. 2 по поводу значений предикатов LN, PR, PRP, RT, ES и ЕА, так как задачи представляются программе в терминах этих предикатов. Приведенные рисунки включены исключительно для удобства читателя.
Пример 1
Дано: (ES АССВ), (ES СВВА), (ES АВВМ), (ES BMMD), (RT CFD), (LN(CBF)), (LN(ABMD)).
Доказать: (RT CAF).
6 Зак. 153
Следующий текст есть перефразирование действительной распечатки, выданной программой во время нахождения доказательства примера 1. Необходимо подчеркнуть, что эта распечатка представляет все шаги (на определенном уровне детальности), проделанные вычислительной машиной, а не только те шаги, которые использовались в доказательстве.
Угол ABF = углу СВМ. Вертикальные углы равны.
Угол АВС = углу FBM. Вертикальные углы равны.
Отрезок АС = отрезку ВС. Дано.
Угол АВС = углу ВАС. Углы при основании равнобедренных треугольников равны.
Отрезок ВС = отрезку АВ. Дано.
Угол АСВ = углу АВС. Из шагов 3 и 5 программа выводит, что АС = АВ, и поэтому получает шаг 6, так как углы при основании равнобедренных треугольников равны.
Отрезок АВ = отрезку ВМ. Дано.
Отрезок ВМ = отрезку DM. Дано.
Отрезок АМ = отрезку BD. Суммы равных отрезков равны.
Угол BFD прямой. Дано.
Отрезок ВМ = отрезку FM. Медиана гипотенузы прямоугольного треугольника равна половине гипотенузы. Построение медиан, таких, как FM, есть исключение из правила, которое не позволяет вводить новые прямые линии во время прямого поиска. Оно оправдано тем, что такие медианы (длины которых могут быть связаны с уже существующими отрезками) достаточно редки и поэтому заслуживают рассмотрения.
Угол FDM = углу DFM. Из шага 11 программа выводит непосредственно, что отрезки FM и DM являются членами одной и той же группы равных отрезков, содержащей отрезки АС, ВС, АВ, ВМ, DM, FM, и поэтому заключает, что углы при основании равнобедренного треугольника равны.
Угол FBM = углу BFM. Углы при основании равнобедренного треугольника равны.
Угол ВАС = углу BMF. Треугольники ВАС и BMF подобны, так как угол АВС = углу FBM и угол BFM = углу FBM = углу АВС = углу АСВ.
Отрезок BF = отрезку ВМ. Поскольку BMF = ВАС = = АВС = BFM, а треугольник с равными углами при основании равнобедренный.
Угол BAF = углу AFB. Так как BF = ВМ = АВ, то программа заключает из этого, что углы при основании равнобедренного треугольника равны.
Угол AFM = углу CAF. Треугольники AFM и CAF подобны, так как угол BMF = углу ВАС = углу АВС = углу АСВ и угол BAF = углу AFB.-
Треугольник АРМ конгруэнтен треугольнику САР по стороне и двум углам. Сторона АР расположена против углов BMP и АСВ.
Отрезок АМ = отрезку СР. Соответствующие части конгруэнтных треугольников равны.
Угол СВМ = углу DMF. Угол СВМ является дополнением к АВС и угол DMF является дополнением к BMF = = ВАС = АВС.
21. Треугольник ВАС конгруэнтен треугольнику BFM по стороне и двум углам. Угол АВС = углу FBM, сторона АВ = стороне ВМ, угол ВАС = углу BMF.
Треугольник ABF конгруэнтен треугольнику DMF по двум сторонам и углу между ними. Сторона АВ = ВМ = FM, угол АВЕ = углу СВМ = углу DMF, отрезок BF = ВМ = DM.
Отрезок АР = отрезку DF. Соответствующие части конгруэнтных треугольников равны.
Угол BAF = углу FDM. Углы при основании равнобедренных треугольников равны.
Угол САР = углу BFD. Треугольники САР и BFD подобны в силу того, что углы AFB, ВАР и FDM равны, а также равны углы АСВ, АВС и FBM.
САР — прямой угол. Этим доказательство завершается. САР отождествляется с уже известным прямым углом BFD.
Время доказательства примера 1 составило 13 с. Мы не можем не отметить очень высокую встречаемость относящихся к делу выражений, порожденных программой во время доказательства этой теоремы. Эта высокая встречаемость есть характеристика работы программы, а также, возможно, характерна для большинства выполненных человеком решений задач.
Пример 2
Дано:(PR (DC) (АВ)), (PR (CQPB) (DA)), (LN (NPA))
(PR(DRQN)(SB)), (PR(NB)(CRSA)), (RT NRA).
Доказать: (ES PQPB).n
Необходимо подчеркнуть, что точка, которая определена пересечением отрезков NPA и SB, несущественна в доказательстве. Вычислительная машина произвела доказательство этого примера за 21 с.
Пример 3
Дано: (ES BECD), (ЕА DBFFBC), (ЕА ECFFCB), (ЕА DBEGDC), (ES ECCG), (LN(BFE)), (LN(DFC)), (PRP(BD)(CG)), (PRP (DEG) (ВС)).
Доказать: (ES BCDG).
Доказательство примера 3 заняло 5 с.
Пример 4
Дано: (ES BEED), (ES BDDC), (ES ABDC), (LN(BEDC)), (LN(BMA)), (PR (MND) (AC)), (LN(ANE)).
Доказать: (EA EADDAC).
Доказательство примера 4 заняло 3 с.
Пример 5
Дано: (RT BCD), (PR (ВРМА) (CD)), (PR (ВС) (AND)), (LN(BFKD)), (LN(CFP)), (PR (ВС) (MK)), (PRP (MK) (AND)), (ES BMMA), (PR (KN) (BPMA)), (PRP (KN) (CD)), (ES AMBC), (ES BPPM).
Доказать: (RT BFC).
Доказательство примера 5 заняло 22 с.
ПЛАНЫ ДАЛЬНЕЙШЕЙ РАБОТЫ
Одна из перспектив состоит во введении новых предикатов, чтобы обеспечить программе более богатые возможности представления знаний. Не должно быть очень трудной задачей представление пропорциональности (в отличие от равенства) отрезков, но что касается кривых линий, то это более трудная задача.
Возможно, однако, что наиболее фундаментальный вопрос касается введения новых точек в рисунок. В большей части примеров, описанных в этой статье, фактически отыскиваются точки, хотя эти точки уже существуют на рисунке. Однако существенной чертой этих примеров является нахождение точек в процессе вывода (т. е. с помощью рассуждений, ведущих от фактов, приведенных в базе данных, к фактам, которые кажутся относящимися к некоторой частной цели). Это наводит на мысль, что можно построить примеры, которые выводят точки, не представленные на первоначальном рисунке.
В качестве иллюстрации упомянем, что точка S несущественна в примере 2 разд. 5, но была использована в доказательстве. Однако точку S можно построить с помощью парадигмы, которая отмечает! что так как вертикальные углы NPQ и АРВ равны то цель, состоящая в доказательстве равенства PQ = РВ, может быть достигнута из соответствия частей (потенциально) конгруэнтных треугольников, построенных проведением прямой L, параллельной отрезку DRQN, через точку В. Обоснование проведения прямой L состоит в том, что она пересекается с отрезком NPA в точке М, а это означает, что угол QNP = углу BMP и треугольники QNP и BMP подобны
(а также конгруэнтны, если истинно равенство PQ = PB). Тогда построение точки S будет произведено простым продолжением прямой L до тех пор, пока она не пересечется с отрезком CRA.
Список литературы
Bledsoe W. W., Bruell Р. A man^machine theorem proving system. Proc. Third Int. Joint Conf, on Artificial Intelligence, Stanford, Calif. (August 1973), 56—65.
Bundy A. Doing arithmetic with diagrams. Proc. Third Int. Joint Conf, on Artificial Intelligence, Stanford, Calif. (August 1973), 130—138.
Gelernter H. Realization of a geometry theorem proving machine. Proc. Int Conf, on Information Processing, UNESCO, Paris (1959), 273—282; also in Computers and Thought, E. Feigenbaum and J. Feldman (eds.)^ McGraw-Hill, New York (1963), 134—152.
Гелернтер Г. Реализация машины, доказывающей геометрические теоремы. В сб. «Вычислительные машины и мышление», пер. с англ. — М.: Мир, 1967, 145—164.
Gelernter Н., Hansen J. R. and Loveland D. W. Empirical explorations of the geometry theorem proving machine. Proc. Western Joint Computer Conf., 17, 143—147; also in Computers and Thought, E. Feigenbaum and J. Feldman (eds.), McGraw-Hill, New York (1963), 153—163.
Гелернтер Г., Ханзен Дж. и Ловленд.Д. Экспериментальное исследование машины для доказательства геометрических теорем. В том же сборнике, 165—174.-
Goldstein I. Elementary geometry theorem proving. A. I. Memo No. 280 Massachusetts Institute of Technology, Cambridge, Mass. (April 1973).
Lindsay R. K. Inferential memory as the basis of machines which understand natural language. Computers and Thought, E. Feigenbaum and J. Feldman (eds.), McGraw-Hill, New York (1963), 217—233.
Линдсей P. Память, способная к выводам, как основа машин, понимающих естественный язык. В сб. «Вычислительные машины и мышление», пер. с англ. — М.: Мир, 1967, 233—253.
Neisser U. Cognitive Psychology. Appleton-Century-Crofts, New York (1967).
Nevins A. J. A human oriented logic for automatic theorem proving. J. ACM 21 (1974), 603—621.
Nevins A. J. A relaxation approach to splitting in an automatic theorem prover. Artificial Intelligence 6 (1975), 25—39.
Newell A., Shaw J. C., Simon H. A. Report on a general problem solving program. Proc. Int. Conf, on Information Processing, UNESKO, Paris (1959), 256—264.
См. также Ньюэлл А., Саймон Г. GPS — программа, моделирующая процесс человеческого мышления. В сб. «Вычислительные машины и мышление», пер. с англ. — М.: Мир, 1967, 283—300.
Reiter R. A semantically guided deductive system for automatic theorem proving. Proc. Third Int. Joint. Conf, on Artificial Intelligence, Stanford, Calif. (August 1973), 41—46.
Siklossy L. and Marinov V. Heuristic search versus exhaustive search. Proc. Second Int. Joint Conf, on Artificial Intelligence, London (September 1971), 601—607.
Slagle J. R. and Bursky P. Experiments with a multipurpose, theoremproving heuristic program. J. ACM 15 (January 1968), 85—99.
Wong R. Construction heuristics for geometry and vector algebra representation of geometry. Technical Memorandum 28, Project MAC, Massachusetts Institute of Technology, Cambridge, Mass. (June 1972)»
Усиление выразительной мощностисемантических сетей1)
Л. Шуберт
University of Alberta, Edmonton, Alberta, Canada
«Реальные знания», используемые системами, которые работают с естественным языком, можно удобно представлять в форме семантических сетей. Однако по сравнению с «линейным» представлением, таким, как исчисление предикатов^семантические сети имеют свои собственные проблемы, связанные с использованием логических связок, кванторов, описаний и некоторых других конструкций. В этой работе представлено систематическое решение этих проблем в виде расширения более или менее общепринятых обозначений для сетей. Чтобы проиллюстрировать близкое сходство этих двух представлений, часто для сравнения будет даваться перевод предложений сети в исчисление предикатов.'
ВВЕДЕНИЕ
Для разных людей семантические сети имеют различный смысл. Их представляют себе по-разному: как диаграммы, как абстрактные множества n-ок некоторого типа, как структуры данных в вычислительных машинах или даже как информационные структуры в человеческом мозге. В данной работе я трактую семантические сети как графические аналоги структур данных, представляющих «факты» в машинных системах, понимающих естественный язык. Я смотрю на этот вопрос с позиций эвристического программирования. Об использовании семантических сетей в психологических теориях познания см., например, Андерсен и Бауэр [2] и Уилсон [42, 43].
Семантические сети помогают описывать и представлять компьютерные структуры данных, к которым они относятся. Примеры того, что такое графическое представление полезно, можно найти в работах Квилиана [23, 24], Палма [22], Шенка [32, 33], Симмонса и Брюса [37], Андерсена и Бауэра [2], Хендрикса и др. [13], Румельхарта и др. [27], Майлопулоса и др. [21] и во многих других работах. Семантические сети используются также для продвижения в области других форм машинного понимания, в особенности понимания сцен (Уинстон [44] „ Гузман [12] и Фиршейн и Фишлер [10]).
Поскольку семантические сети используются неформальна и по-разному, невозможно дать их точное определение, не ограничивая области применения. Однако обычно все они характеризуются следующими особенностями:
*) Schubert L. К. Extending the Expressive Power of Semantic Networks. Artificial Intelligence, 7 (1976), 163—198.
© 1976 by North-Holland Publishing Company.
© Перевод на русский язык, «Мир», 1979.
Как общие, так и частные понятия представляются в виде помеченных и непомеченных вершин графа.
Предложения состоят из подграфов со связями к предикатному понятию и соответствующему числу концептуальных аргументов для предиката. Иногда вводятся в явном виде пропозициональные вершины как точки прикрепления для этих связей и как элементы, с которыми могут оперировать действующие на предложения пропозициональные операторы (например, «известно, что»). Аргументы /г-арных предикатов могут различаться при помощи меток связей, различных типов связей или бинарным разложением предикатов.
Исключено повторение вершин, обозначающих одинаковые понятия. Таким образом, несколько дуг, связанных с различными предложениями, могут входить в одну и ту же кон- цептную вершину. Такие вершины обычно рассматриваются как соответствующие единственной ячейке в памяти машины, т. е. как входная точка для получения знаний об этом объекте. Аналогично пропозициональные вершины также не повторяются.
По сравнению с кодированием в терминах исчисления предикатов, представление фактических знаний семантическими сетями кажется более естественным и легче понимаемым. Это происходит благодаря однозначному соответствию между вершинами и понятиями, которые они представляют, группированию вокруг отдельной вершины предложений, касающихся одного объекта, и благодаря тому, что непосредственно видны «взаимоотношения» между понятиями, т. е. их соединение через последовательность связей в предложениях. В силу этих свойств семантические сети быстрее приводят к «ассоциативным» и сравнительным алгоритмам типа описанных Квилианом [23, 24] для нахождения общих вершин двух связанных понятий и УинСтоном [44] для сравнения описания двух сложных сцен. Как оказывается, некоторые типы дедуктивного вывода также облегчаются при представлении информации в виде семантических сетей. (Сундэол [30].)
Признавая некоторые преимущества семантических сетей по сравнению с исчислением предикатов, я хотел бы подчеркнуть, что рассматриваю эти две формы представления как тесно связанные1). Я буду часто приводить эквиваленты в форме исчисления предикатов для предложений в сетевом представлении,
0 Часто формальное логическое представление неправильно критикуют за якобы имеющуюся ориентацию на применение синтаксических универсаль- йых процедур вывода. В данном случае путают язык логики с исчислением. Ничто не мешает применять эвристические или правдоподобные правила вывода к предложениям исчисления предикатов. Системы типа ПЛЭЙЕР совмещают эвристические процедуры вывода с ограниченными формами исчисления предикатов в представлении данных.
чтобы проиллюстрировать, что они почти изоморфны. Более того, семантические сети, предлагавшиеся до сих пор, выразительно слабее исчисления предикатов, в частности при работе с кванторами и утверждениями более высокого порядка. В следующем разделе будет построено сетевое представление, в котором возможно использование /г-арных предикатов (м=1,2, 3,...), логических связок, неограниченное введение кванторов (включая кванторы по предикатам), лямбда-абстракций и модальных операторов, таких, как вера и контрфактическая импликация. Это представление легко приспособить для предложений того типа, которые выражаются с помощью сетей Квилианом [23, 24], Уинстоном [44], Шенком [32] и Румельхартом и др. [27]. Сравнение с представлениями в виде сетей, используемыми этими и другими авторами, проводится настолько далеко, насколько позволили размеры статьи. Во втором разделе вводится основной вид записи предложений и приводятся необходимые отступления о роли «падежа» в семантических сетях. Разделы 3—8 постепенно расширяют мощность такого рода записи. Все расширения аналогичны стандартному аппарату обозначений, который используется в исчислениях предикатов первого и более высокого порядков. Хотя для сетевых обозначений не задается формальная семантика, их соответствие стандартным логическим обозначениям показывает, как такая семантика может быть сформулирована.
ЭЛЕМЕНТАРНЫЕ ПРЕДЛОЖЕНИЯ
Основной тип вершин в предлагаемой системе обозначений — это вершины, соответствующие понятиям (концептные вершины). Концептные вершины могут обозначать индивиды, например Джон, Канада, отдельный стул или некоторое действительное число; они могут обозначать множества, например множество детей, множество чисел или множество свойств; они могут обозначать предикатные понятия, например стул (универсальное понятие), красный, честный, добродетельный, больше чем, перед чем-то, между или заданный. Вершины могут быть помечены названиями тех понятий, которые они обозначают (например, Джон, стул, стул 1, стул 2); обычные термины, определяющие понятия (например, «стул»), сохраняются за соответствующими универсальными понятиями в то время, как слова с номерами (такие, как «стул 1») используются для отдельных примеров понятия.
Наименьшая единица информации в семантической сети — это элементарное предложение. Элементарное предложение состоит из пропозициональной вершины, PRED— дуги к предикатной вершине и дуг к соответствующему числу концептных
вершин, служащих аргументами предиката. Аргументные связи помечены некоторым систематическим образом, например А, В, Сит. д., для того, чтобы различать первый, второй, третий и т. д. аргументы. На рис. 1,а — с приведены примеры и ихвершин, служащих аргументами предиката. Аргументные связи помечены некоторым систематическим образом, например А, В, Сит. д., для того, чтобы различать первый, второй, третий и т. д. аргументы. На рис. 1,а — с приведены примеры и ихPREDPREDddа „Эдмонтон — гор од ” город (Эдмонтон)а „Эдмонтон — гор од ” город (Эдмонтон)(Альберта)-*—Q—*<Канада)I PRED( часть )'(Альберта)-*—Q—*<Канада)I PRED( часть )'частьчастьКанадаКанада6„ Альберта — часть Канады” ечасть (Альберта, Канада)6„ Альберта — часть Канады” ечасть (Альберта, Канада)
вершин, служащих аргументами предиката. Аргументные связи помечены некоторым систематическим образом, например А, В, Сит. д., для того, чтобы различать первый, второй, третий и т. д. аргументы. На рис. 1,а — с приведены примеры и их
вершин, служащих аргументами предиката. Аргументные связи помечены некоторым систематическим образом, например А, В, Сит. д., для того, чтобы различать первый, второй, третий и т. д. аргументы. На рис. 1,а — с приведены примеры и их
PRED
PRED
d
d
а „Эдмонтон — гор од ” город (Эдмонтон)
а „Эдмонтон — гор од ” город (Эдмонтон)
(Альберта)-*—Q—*<Канада)I PRED
( часть )'
(Альберта)-*—Q—*<Канада)I PRED
( часть )'
часть
часть
Канада
Канада
6„ Альберта — часть Канады” е
часть (Альберта, Канада)
6„ Альберта — часть Канады” е
часть (Альберта, Канада)
с „Джон берет эту книгу у Мэри” f брать (Джон,книга 1,Мэри)
Рис. 1. Элементарные предложения в полном и сокращенном виде.
представления в исчислении предикатов. Каждая вершина на рис. 1,а— с считается типовой вершиной в смысле работы Кви- лиана [23] и соответствует единственной ячейке памяти. Отметим, что дуги в предложении направлены от пропозициональной вершины к компонентам предложения. Единственный смысл этого соглашения состоит в обеспечении однозначности синтаксиса сетей. При машинной реализации эти дуги можно обратить или сделать их двунаправленными в зависимости от нужд вычисления. *
Диаграммы предложений можно упростить следующим образом. Любую заданную в явном виде пропозициональную вершину вместе с ее дугой к предикатной вершине можно заменить предикатным символом, т. е. именем предиката без окружности
вокруг него. Так как предикатные символы неявно определяют пропозициональные вершины, в различных предложениях необходимо использовать различные символы, даже если рассматриваются одинаковые предикаты. Другое допустимое упрощение диаграмм состоит в опускании меток дуг, если предикат одноместный (т. е. обозначает свойство) или двуместный (т. е. обозначает бинарное отношение); в двуместном случае первый и второй аргументы различаются за счет опускания стрелки у дуги к первому аргументу. Упрощенный граф для предложений рис. 1,а — с показан на рис. l,d— f. Далее обычно будут использоваться упрощенные обозначения, за исключением некоторых конструкций более высокого порядка.
Такое обозначение предложений тесно связано с различными уже существующими обозначениями. Рис. 1,е в основном соответствует стилю работы Уинстона [44], за исключением того, что дуги двух аргументов не соединены в одну направленную дугу. Однако Уинстон не вводил пропозициональных вершин; этот пробел затруднил бы добавление логических связок и пропозициональных операторов к его обозначению. Я рассматриваю рис. l,d как соответствующий одноместный аналог бинарного обозначения. Большинство использующих семантические сети искусственно преобразуют одноместные предикаты в двуместные введением таких предикатов, как ЕСТЬА и и ИМЕЕТСВОИСТВО, которые могут трактоваться как применение их второго аргумента к первому. Это производит впечатление прокрустова ложа для навязывания бинарного пропозиционального формата, причем теоретическая или практическая польза этого не очевидна. Другой метод перефразирования одноместных предикатов состоит в указании принадлежности множеству; например, фраза «Тьюринг — человек» заменяется на «Тьюринг принадлежит к классу человеческих существ». Это вызывает меньше возражений, так как принадлежность множеству и предикаты включения множеств имеют другое заслуживающее внимания использование, которое оправдывает их введение в формальный словарь. В частности, жаль было бы избегать теоретико-множественной терминологии при представлении многих совершенно обычных предложений, вроде «Несколько слушателей заснуло, а один ушел». Однако, в то время как перефразирование предложения «х имеет свойство Р» в «х находится в множестве элементов со свойством Р» приемлемо, перефразирование «свойство Р» в «множество элементов со- свойством Р» в общем случае неприемлемо. Отметим, например, разницу в значении следующих двух утверждений (основываясь на работе Карнапа [5]): «Класс человеческих существ совпадает с классом беспёрых двуногих» и «Свойство «человеческий» совпадает со свойством «беспёрый двуногий»». Механизм
лямбда-абстракции, который будет введен в разд. 7, позволит представлять утверждения последнего типа.
Диаграммы на рис. 1, а—с схожи с пропозициональными графами Румельхарта и др. [27]. Менее очевидно, что графы с и f очень близки соответственно к представлениям Квилиана [24] и Шенка [32]. Аналогия может быть выявлена после небольшой перестройки этих представлений. Для начала сравним рис. 2, а (повторение рис. 1,с) с рис. 2,6. Последний основывается на обозначениях обучаемой программы, понимающей •естественный язык ^TLC) и предложенной Квилианом. Порядок
книга 1книга 1У С ]У С ]Рис. 2. Сравнение с обозначением TLC для предложения «Джон берет книгу у Мэри».Рис. 2. Сравнение с обозначением TLC для предложения «Джон берет книгу у Мэри».
книга 1
книга 1
У С ]
У С ]
Рис. 2. Сравнение с обозначением TLC для предложения «Джон берет книгу у Мэри».
Рис. 2. Сравнение с обозначением TLC для предложения «Джон берет книгу у Мэри».
.аргументов указывается порядком звездочек, которые обозначают места для определенных частей предложения (за исключением первого аргумента предиката; он рассматривается как подлежащее, о котором делается утверждение, и связан с пропозициональной вершиной в целом). Квадратные скобки содержат аргументные места для включающего множества (общей категории) соответствующего понятия и для любого числа свойств (определяющих предложений) этого понятия. Квилиан пытается устранить небинарные предикаты, рассматривая дополнительные аргументы как модификаторы. Это объясняет модификацию свойства «у Мэри» на диаграмме. Но, по-моему, это совершенно необычно расширяет понятие свойства и указывает, что ограничение бинарными предикатами неестественно. Расширение обозначений TLC для включения n-местных предикатов сделало бы эти обозначения почти изоморфными рассматриваемым.
Чтобы выявить связь между обозначениями Шенка [32] и рассматриваемыми, мы перефразируем предложение «Джон берет книгу у Мэри» как «Джон перемещает книгу к себе от Мэри», таким образом заменяя 3-местный предикат «берет» !)
*) Предполагается, что ни один из предикатов, которыми иллюстрируется эта работа, не является примитивным в системе, понимающей естественный язык.
4-местным «перемещает». Представления в рассматриваемых обозначениях и обозначениях Шенка (отвлекаясь от небольшого геометрического переупорядочения) показаны на рис. 3. Нетрудно было бы сделать алгоритм для перевода одного обозначения в другое. Особая привлекательность обозначений
Рис 3. Сравнение с обозначением Шэнка для предложения «Джон перемещает книгу от Мэри к Джону».
Шенка заключается в значении, которое можно было бы придать типам связей и меткам: действующее лицо (агент), объект и реципиент (в этом примере); эти типы соответствуют концептуальным «падежам», защищаемым Филмором [8] и используемым Шенком [32], Симмонсом [35], Абельсоном [1] и другими.
Понятие падежа выводится из часто возникающих аналогий между ролями, которые играют аргументы многих предикатов
Рис. 4. Падежные отношения для предложения «Джон берет книгу у Мэрия» по отношению к этим предикатам. Например, предикаты действия, столь различные, как «дать» и «сказать», оба подразумевают наличие агента, объекта, на который прямо направлено' действие (предмет в «дать», сообщение в «сказать»), и косвенного^ дополнения, или реципиента. Некоторые исследователи под влиянием Филмора из такой аналогии заключают, что падежи сами являются концептуально примитивными отношениями между объектами, участвующими в действии, и действием в целом. Этот взгляд приводит к переделыванию рис. 3, а к виду, показанному на рис. 4. Центральная вершина теперь обозначает
специфическое действие или процесс (понятие, которое кажется не совсем ясным), модифицированное пятью различными эле^ ментарными предложениями: передавать (6), агент (Джон, 6), объект (книга 1, 6), реципиент (Джон, 6) и донор (Мэри, 6), где b есть модифицируемое действие. Отметим, что падежи здесь рассматриваются как истинные отношения, а не как мнемонические обозначения для упорядочения аргументов предикатов (поэтому они пишутся строчными буквами). Присоединяясь к такому взгляду на падежи, Симмонс [35, 36] описывает предложения вроде «агент (Джон, бежать)» как явные примеры падежных отношений и пытается доказать, что значение падежи ых птндщриий мп^ип пппрпрлить с помощью выявления подразумеваемого смысла. В качестве примера он предполагает, что запись «агент (а, Ь)» подразумевает, что а — одушевленный, b есть процесс и b имеет некоторое воздействие на а. Последнее трудно оценить без дополнительных объяснений. Первое и второе просто ограничивают соответственно область и диапазон отношения «агент» и. следовательно, не могут дать много для определения значения этого отношения. Более того, ограничения области, связанные с данным падежом, варьируются от одного предиката к другому. Объектный падеж Шенка [33] требует физического объекта в контексте PTRANS (физическая передача), абстрактного отношения, такого, как право собственности в контексте ATRANS (абстрактная передача) и предложения в контексте MTRANS (передача мыслей).
Как мне кажется, истинное понимание структурных аналогий между различными видами действий требует анализа таких действий в терминах более элементарных событий. Например, предложение «Джон протянул книгу Мэри» можно анализировать следующим образом: Джон имел намерение (находился в состоянии целеустремленности) достичь цели «книга находится в руке Мэри» (или, возможно, «книга находится подле Мэри»). Как конечный (и преднамеренный) результат состояния целеустремленности Джона книга оказалась в одной из рук Джона и перемещалась по направлению к Мэри. Конечный результат этого состояния — книга подле Мэри. Анализ фразы «Джон отдал книгу Мэри» был бы сходным, но содержал бы меньше специфической информации о состояниях. Описание событий в терминах последовательных состояний развивается более детально у Керкона и Шуберта [6]. Отношения, выражаемые падежами, можно понимать как сложные неэлементарные отношения, выведенные из таких каузально и телеологически связанных последовательностей состояний. Например, понятие агента, видимо, зависит частично от каузальной первичности состояния предполагаемого агента в рассматриваемой последовательности состояний, частично от того, насколько
предполагаемому агенту вообще можно приписать целенаправленное поведение, и частично от того, насколько последовательность состояний, которую он инициирует, можно предполагать преднамеренной с его стороны.
Таким образом, можно утверждать, что существует уровень представления семантически «более глубокий» или более элементарный, чем уровень падежно структурированных предложений. Отсюда не следует, что такие предложения должны быть исключены из семантических сетей, напротив — представляется вероятным, что могут потребоваться не- ^колько уровней для полного понима- ния языка, начиная от представлений с «низким разрешением», относительно близких к поверхностной лингвистической структуре, до представлений с «высоким разрешением», которые относительно независимы от языка. Что мне представляется спорным — это заявление, что падежи являются фундаментальными семантическими отношениями и что поэтому рис. 4, например, является подходящей интерпретацией рис. 3, а. Вместо этого я рассматриваю метки падежей, такие, как на рис. 3, а, просто как мнемони
ческие обозначения, хотя и указывающие на сложные отношения, определяемые последовательностью состояний на более детальном уровне анализа). Для того чтобы не путать метки и имена предикатов, я буду использовать большие буквы для первых и маленькие для вторых. Иногда будут использоваться такие наводящие обозначения аргументов, как КТО, ЧТО вместо безликих меток А, В, ... .
Наконец, рис. 5 иллюстрирует еще один способ представления в виде диаграммы аналогичного предложения «Джон дает книгу Мэри», совершенно непохожий на способы рис. 1—4. Это представление базируется в общих чертах на представлении Андерсона и Бауэра [2]); предикаты представлены в виде
бинарного дерева, т. е. каждый раз предикат применяется только к одному аргументу. Четыре непомеченные вершины, лежащие на пути от основания дерева к корню, соответствуют связыванию нуля, одного, двух и всех трех аргументов предиката. Дуги помечены S (подлежащее), Р (предикат), R (отношение), О (объект) и символами принадлежности к множеству или включения.
Первый вопрос, который возникает при таком обозначении,— должны ли метки дуг иметь какое-либо семантическое значение. В свете ранее приведенных замечаний о метках падежей я рассматриваю метки дуг Андерсона и Бауэра как мнемонические знаки различия, возможно указывающие на сложные отношения на некотором более глубоком уровне анализа. Оказывается, указанные отношения зависят не только от элементарных последовательностей состояний и свойств рассматриваемых понятий, но также от контекста. Оказывается, например, что понятие подлежащего предложения до некоторой степени зависит от сиюминутной темы беседы.
Вторая требующая объяснений особенность данной формы записи— это теоретико-множественная форма предикатов (например, знак е у дуги к «давать» на рис. 5). На первый взгляд мы можем принять, что он выражает принадлежность множеству п-ок по аналогии со стандартным перефразированием одноместных предикатов в терминах принадлежности множеству элементов. Примем на время эту точку зрения и рассмотрим другую особенность обозначений Андерсона и Бауэра, а именно дополнительные вершины, соответствующие связыванию некоторых, но не всех аргументов предиката. Эти вершины служат аргументами обстоятельств (в грамматическом смысле) и как таковые, возможно, необходимы. Однако, так как они в конечном счете связаны с отношениями внизу пропозиционального дерева через принадлежность множеству, они, по-видимому, обозначают отдельные /г-ки, и я не вижу, как можно интерпретировать обстоятельство, относящееся к п-ке. Возможный способ разрешения этой трудности — рассматривать общие понятия вроде «давать» как классы множеств /г-ок (т. е. классы отношений). В этом случае обстоятельства относились бы к отношениям (множествам /г-ок), а не к отдельным /г-кам, и можно было бы считать, что они выделяют подмножества этих отношений (ср. Рейхенбах [26]).
К сожалению, Андерсон и Бауэр серьезно не обосновывают и не объясняют этих особенностей их системы. Я склонен думать, что на достаточно детальном уровне анализа обстоятельства можно выразить без разложения предикатов. Например, наречие образа действия вроде «быстро» в применении к действию или деятельности в конечном счете могло бы быть выражено посредством сравнительного предложения о времени,
необходимом для действия или для определенного периода дея* тельности. Однако я хотел бы подчеркнуть, что техника лямбда* абстракций, которая будет введена в разд. 7, допускает выборочное связывание предикатных переменных, давая в принципе возможность рассматривать как определения, так и обстоятельства в виде, который аналогичен используемому Андерсоном и Бауэром. •
ЛОГИЧЕСКИЕ СВЯЗКИ
В большинстве вариантов семантических сетей логические связки используются очень мало. Конъюнкция не очень нужна, так как обычно все предложения в сети утвердительные, и естественно, это эквивалентно утверждению их конъюнкции. То, что несколько исследователей предпочли обойтись без дизъюнкции, возможно, следует из того факта, что утверждение «р V q» в некотором смысле несет только половину информации по сравнению с утверждением любой из бинарных конъюнкций, из которых оно следует (p&q, ^p&q или p&^q^, будучи при этом столь же громоздким.
Тем не менее дизъюнкция и другие связки общеприняты в обычных рассуждениях и в любом случае необходимы для функциональной полноты. Теперь все те, кто использует семантические сети, используют также некоторое средство отрицания и, конечно, отрицание вместе с конъюнкцией образуют полную функциональную систему. Однако проблема с большинством средств отрицания состоит в том, что они применимы только к элементарным предложениям (например, помещение «нет» перед предикатом или перечеркивание дуги субъект — предикат), а отрицание элементарных высказываний вместе с конъюнкцией не является полной в функциональном смысле системой. Совершенно ясно, каковы другие возможности. Если мы хотим ограничить отрицание только элементарными предложениями, нам необходимо ввести дополнительную логическую связку (например, дизъюнкцию или импликацию). Если мы хотим использовать только отрицание и конъюнкцию, мы должны расширить наше соглашение об отрицании так, чтобы оно было бы применимо и к конъюнкции. В любом случае мы нуждаемся в графическом объекте, который соответствует сложному предложению, составленному из произвольного числа элементарных предложений. Очевидное решение — введение в явном виде вершин для логических составляющих высказываний (или открытых предложений) и дуг к их компонентам.
Самый простой логический оператор — это оператор отрицания. Рис. 6 иллюстрирует его использование для формирования отрицания (метка р2) предложения «Джон любит Мэри» (метка pl). Структура р2 полностью аналогична структуре
любого одноместного предиката, например такого, как на рис. 1,а. Вместо дуги PPED появляется дуга ОР (оператор) и вместо концептуального аргумента — пропозициональный операнд. Штриховые линии используются для обеих дуг, чтобы
п Iп IМэрЙ)МэрЙ)
п I
п I
МэрЙ)
МэрЙ)
Рис. 6. Предложение «Джон не любит Мэри» в полном и сокращенном виде.
визуально выделить логическое соединение. Сокращенная версия р2 также полностью аналогична сокращенной форме одноместных предикатов, причем операторный знак неявно устанавливает вершину составного предложения.
аb
Рис. 7. Предложение «Джон, Джим или Джо любит Мэри» в полном и сок-ращенном виде.
Рис. 7 иллюстрирует дизъюнктивную запись предложения «Джон, Джим или Джо любит Мэри». Составное предложение р4 образовано применением оператора «V» к пропозициональным аргументам pl, р2 и рЗ. В общем случае удобно предполагать, что дизъюнктивный оператор имеет один или более
операндов. Отметим, что нет необходимости по-разному мстить стрелки, так как дизъюнкция коммутативна и ассоциативна.
При желании можно было бы ввести таким же образом другие логические связки. Например, на рис. 8 показан обобщенный оператор импликации. Он допускает конъюнкцию произвольного числа антецедентов, а также произвольного числа консеквентов. Нет необходимости в дополнительных метках в сокращенной записи, если консеквентные и антецедентные дуги показаны соответственно впереди и сзади символа импликации. Аналогично определяется эквивалентность (символ <=>); допускается эквивалентность конъюнкций произвольной длины.
сокращенно:сокращенно:
сокращенно:
сокращенно:
Рис. 8. Обобщение материальной импликации.
Примеры этих форм импликации и эквивалентности будут приведены ниже.'-
Для семантической сети, содержащей логические соединения, мы должны пересмотреть обычное соглашение о том, что все предложения в сети считаются истинными. Соглашение, которое я принимаю, состоит в том, что в полной семантической сети утверждается истинность тех и только тех высказываний, которые не являются составляющими сложных высказываний (т. е. операндами логических связок или модальных операторов). Графически это означает, что утверждается истинность тех и только тех высказываний, на которые не указывают стрелки Дуг. Таким образом, на рис. 7 составное предложение «Джон, Джим или Джо любит Мэри» истинно, в то время как о составляющих «Джон любит Мэри», «Джим любит Мэри» и «Джо любит Мэри» это не утверждается. В связи с этим возникает вопрос: как приписать истинность высказыванию, которое является составной частью сложного предложения? Для начала отметим, что для логических составляющих такой необходимости нет. Например, если для элемента р дизъюнкции р V qV г известно, что он истинный, то эта полная дизъюнкция может быть заменена высказыванием р при отбрасывании альтернативы q\/г> так как р & (р V q V г) ФФ р. Аналогичные упрощения имеют место, если истинна составная часть любого сложного логического высказывания. Однако для предложений, выражающих отношения, причины, намерения и т. д., действи-
тельно может понадобиться утверждать истинность составляющих независимо от целого выражения. В предыдущей работе по семантическим сетям это было достигнуто повторением составляющих, как принято в исчислении предикатов. Например, для того, чтобы высказать, что Джон полагает, что Мэри счастлива
Джон)— полагает-Джон)— полагает--счастлива->(Мэри-счастлива->(Мэри
Джон)— полагает-
Джон)— полагает-
-счастлива->(Мэри
-счастлива->(Мэри
(а) и Джон полагает, что Мэри счастлива1
^жон)—полагает—^счастлива-^Мэри
Джон полагает,что Мэр'и счастлива,и она дейстритбльнрсчастлива
д жон)—пол а га етд жон)—пол а га ет•счастлива-^ Мэрик •счастлива-^ Мэрик
д жон)—пол а га ет
д жон)—пол а га ет
•счастлива-^ Мэри
к
•счастлива-^ Мэри
к
„Джон полагает, что Мэри счастлива, но это не так.
'Джон)— полагает—► п—->счастлива->£ Мэри,
„Джон полагает, что Мэри несчастлива, но она счастлива,,
Рис. 9.
и что Мэри на самом деле счастлива, нужно было бы записать «полагает (Джон, счастлива (Мэри)) & счастлива (Мэри)». Однако для сетей существует более элегантный метод, который полностью избегает повторного вхождения высказываний. Он использует дизъюнкцию с единственным аргументом V> р как способ утверждения «р выполняется». Так как на «составное» высказывание, образованное знаком V, не указывает стрелка, оно автоматически считается истинным, даже если р входит в произвольное число составных высказываний. Мы могли бы использовать и конъюнкцию единственного утверждения (со знаком & в явном виде) или даже двойное отрицание и получить тот же результат. Примеры приведены на рис. 9. Дуги с метками «полагать» на этом рисунке являются примерами «отношения предложений», они управляются модальными операторами, о которых я скажу несколько больше в разд. 8.
В заключение этого раздела я приведу некоторые замечания по поводу существующих обозначений. Квилиан [23] использовал «прыгающие стрелки» для того, чтобы составить конъюнкцию или дизъюнкцию множеств высказываний. Однако любая такая стрелка связывалась с некоторым частным подлежащим, но, как это иллюстрирует дизъюнкция на рис. 7, предложения, соединенные символом дизъюнкции, не обязательно имеют общее подлежащее. Они могут даже вообще не иметь общих вершин («кто-то находится в доме, или Мэри забыла закрыть ворота»). Уинстон (44] ограничился неявной конъюнкцией и отрицанием элементарных высказываний, хотя он получил нечто похожее на дизъюнкцию при помощи оператора «может быть». Румельхарт и др. [27] утверждают, что они допускают произвольные составные предложения во внутреннем представлении, но в графическом начертании позволено только образование цепи из предложений, образующих «эпизод». Шенк [32, 33] почти не пытается работать графически с логически связанными высказываниями, так как он обычно не занимается изображением более чем двух или трех связанных высказываний. Он использует отрицание элементарных высказываний и помещает связки между соответствующими предложениям подграфами («концептуализациями») для указания их логических отношений. Андерсон и Бауэр [2] в состоянии ввести произвольные унарные и бинарные связки, так как они используют пропозициональные вершины в явном виде. Однако использование таких связок затруднительно из-за той же трудности при интерпретации, которая рассматривалась раньше. Например, они - представляют импликацию посредством «принадлежности к оператору следствия» без дальнейшего объяснения и дают только одну иллюстрацию. Они перефразируют все другие им- пликативные утверждения в терминах отношений подмножеств. Их последние примеры включают только элементарные посылки, и далеко не очевидно, как было бы представлено предложение вроде «Таможенники задержали всех бородатых мужчин, которые носили бусы». Здесь «мужчина», «бородатый» и «носящий бусы» являются импликативными посылками. Отметим, что данное предложение необходимо отличать от таких предложений, как «несколько бородатых мужчин, носящих бусы, были задержаны таможенниками» и «все задержанные таможенниками были бородатыми мужчинами, носившими бусы».
КВАНТОРЫ ’
Иметь логические кванторы в семантических сетях важно по нескольким причинам: много предложений из обычного языка включают кванторы («он звонил каждый день, но телефон всегда
был занят»); представление общих знаний в декларативной форме («все дети любят сладкое»), определение сложных понятий («когда некто идет, в каждый момент времени одна его нога касается земли...») и определенные описания множеств («народ Канады») требуют кванторов.
Все же трактовка кванторов в семантических сетях обычно была достаточно поверхностная. Часто кванторы рассматриваются как унарные модификаторы концептных вершин, показывающие, «сколь много» таких объектов (т. с. мощность множества). Тогда кванторы общности вводятся так же, хотя
аа( ^—нравится^( )
а
а
Т I
1ребенок <->сладкое
6
Рис. 10. (а) «Мэри нравится всем» (ух) [лицо (х) => нравится (х М^ри)]; (6) «Каждому ребенку нравится все сладкое» (ух) (уг/) [ребенок (х) & сладкое (</)=>- нравится (х, </)].
логический оператор V («для всех») вообще не указывает мощности множества.
То обозначение, которое я собираюсь предложить вначале, аналогично свободным от кванторов нормальным формам исчисления предикатов. Выражения находятся в предваренной форме (т. е. кванторы имеют максимальную область действия), переменные, связанные кванторами существования, сколемизи- руются, а кванторы общности подразумеваются. Это прежде всего требует различения вершин, соответствующих кванторам существования и общности. Простой метод состоит в использовании сплошных линий для обозначения вершин, соответствующих кванторам существования (как во всех предыдущих рисунках) , и штриховых линий для вершин, соответствующих кванторам общности. Два простых высказывания, включающих кванторы общности, показаны на рис. 10: «Каждому нравится Мэри» и «Каждому ребенку нравится все сладкое», они требуют соответственно одного и двух кванторов общности.
Графическая сколемизация состоит в соединении каждой вершины, соответствующей квантору существования, со всеми вершинами, соответствующими кванторам общности, от которых он зависит (т. е. чьи кванторы общности предшествуют квантору существования в предваренной форме). Я буду использовать точечные стрелки для этих дуг, чтобы легко отличать их
от логических дуг и дуг высказываний. Стрелки направлены от вершин, обозначающих кванторы общности, к вершинам, обозначающим зависимые кванторы существования, т. е. они указывают направление уменьшения области действия кванторов.
Рис. 11. «Каждая собака преследует какую-нибудь кошку».Рис. 11. «Каждая собака преследует какую-нибудь кошку».
Рис. 11. «Каждая собака преследует какую-нибудь кошку».
Рис. 11. «Каждая собака преследует какую-нибудь кошку».
Например, «Каждая собака преследует какую-нибудь кошку» представлено на рис. 11, а. В исчислении предикатов его представление таково:.
(Vx) {собака (х)=^(3у) [кошка (у) & преследует (х, #)]} или после сколемизации
собака (х)=> [кошка (/(%))& преследует (хЛ UW*
Теперь, если мы предположим, что (Зу)—кошка (у), т. е. су- ствует по меньшей мере одна кошка (или, наоборот, существует по меньшей мере одна собака), то это превращается в кошка (f (х)) & [собака (х) => преследует (х, / (х))], что соответствует чуть более простой диаграмме, показанной на рис. 11,6. Здесь высказывание «кошка» уже не рассматривается как следствие высказывания «собака». Этот тип упрощения часто подходит для кодирования предложений естественного языка, так как мы обычно не общаемся предложениями, истинность которых тривиальна из-за того, что не существуют объекты, на которые они ссылаются1). Граф для высказывания «Существует кошка, которую преследуют все собаки» отличается от графа на рис. 11 только отсутствием дуги, выражающей зависимость между вершинами «кошка» и «собака». В качестве другого примера рассмотрим высказывание «Там всегда кто-нибудь есть». Его можно представить в виде диаграммы, изображенной на рис. 12, а, после добавления предположения, что существует по меньшей мере один момент времени. Отметим, что к предикату «находится в» добавлен временной аргумент. Такое представление кажется немного неестественным
9 Это не значит, что мы не говорим о несуществующих объектах.
из-за необходимости ограничивать вершины квантора общности «моментами» и импликативной зависимости основного отношения от этого ограничения. Все это наводит на мысль, что было бы естественнее использовать логику с несколькими видами переменных, в которой любой аргумент каждого предиката ограничен частичной подобластью области рассуждений, а время образует отдельный вид. Тогда квантор над временным аргументом был бы автоматически ограничен моментами времени. Это то направление, которого я, по меньшей мере номинально, придерживаюсь. Видовые отличия можно было бы представить в явном виде при помощи использования различного типа вершин для различных видов или использованием различного типа
лицолицо
лицо
лицо
а
Рис. 12. «Там всегда кто-нибудь есть».
аргументных меток на аргументных стрелках к объектам разных видов, например всегда использовать OBJ/ (/=1,2,...) для указания на аргументы вида «физический объект». Фактически этот метод используется Румельхартом и др. [27]. Я не буду использовать здесь какой-либо отдельный метод, а оставлю неявным различие между видами, за исключением времени. Время требует специального рассмотрения из-за его важности в упорядочении событий. Я буду использовать пары скобок вместо кружков для обозначения моментов времени и помечать стрелки к моментам времени буквой Т. Наименование момента времени может быть помещено между скобками. Штриховые скобки отмечают временные переменные, связанные кванторами общности. Используя такие соглашения, можно представить рис. 12, а, как показано на рис. 12,6. Представление фразы «Существует некто, кто всегда находится там» отличалось бы от рис. 12,6 просто отсутствием дуги зависимости. Дополнительные соглашения о времени будут введены в разд. 5.
Многие конструкции более высокого порядка легко выразить с помощью уже введенных обозначений. Например, предложение «Джон имеет все недостатки своего отца, и легкомыслие — один из них» представлено на рис. 13. Отметим, что здесь использована как сокращенная, так и несокращенная запись предложения. Три из пропозициональных вершин имеются
в явном виде, в то время как «отец кого-то» и два вхождения слова «недостатки» порождают три неявные пропозициональные вершины. Предикат самого высокого порядка, конечно, «недостаток» и вершина, соответствующая квантору общности, должна читаться как «для всех предикатов». Здесь неявное ограничение кванторов соответствующими видами расширено, чтобы они применялись также к типам, т. е., поскольку «недостаток» есть предикат от предикатов, его аргумент в любом
Рис. 13. «У Джона есть всеРис. 13. «У Джона есть всенедостатки его отца, и легкомыслие — один из них».недостатки его отца, и легкомыслие — один из них».
Рис. 13. «У Джона есть все
Рис. 13. «У Джона есть все
недостатки его отца, и легкомыслие — один из них».
недостатки его отца, и легкомыслие — один из них».
высказывании подразумевается ограниченным типом «предикат».
Предлагаемый метод представления кванторов применим только к высказываниям в предваренной форме. В силу того что переход к предваренной форме иногда приводит к потере ясности, я введу обобщение этого представления, которое допускает произвольное размещение кванторов внутри областей действия логических связок или других пропозициональных операторов. Это представление оказывается отнюдь не только удобным. Существенность его будет проиллюстрирована в разд. 7 и 8, в которых рассматриваются лямбда-абстракции и модальные операторы.
Для того чтобы представить, как можно устранить ограничение, накладываемое предваренной формой, рассмотрим такое высказывание: -
фхННуНЧгИ^Р^х^
=> (3/) [Q (/, у, z) фф- (Vu) W (Saw) R (и, v, ty)]}}.
Мы можем полностью определить область действия всех кванторов следующим образом. Во-первых, как и прежде, для каждой последовательности соседних кванторов определяем зависимость переменных, связанных квантором существования, от переменных, связанных квантором общности, т. е. у зависит от
х и w зависит от « и о. Во-вторых, мы определяем, какие связанные переменные находятся внутри областей каждой пропозициональной связки. Таким образом, в этом смысле s и / за*
Рис. 14 Указание областей действия кванторов.
(Vх) (3^) (V^) {(ys) Р (s, х) => (зО [Q (/, у, г) ч=> Гун) (уо) (3^) R (и, о, w)]}.
висят от => и и, и и w зависят от ФФ^.Для этого второго отношения между областями действия, как и в первом случае, может быть использован в точности такой же тип точечной линии для обозначения зависимости — стрелка, направленная от
Рис. 15. «Мэри получит стипендию при условии, что сдаст все экзамены». [(Зх) [стипендия (х) & получает (Мэри, х)]] -<=> [(yt/) (элемент (г/, множество экзаменов) =>- сдать (Мэри, I/)]].
вставляемого предложения к вставленной вершине. Представление вышеприведенного высказывания показано на рис. 14. По транзитивности включения областей действия кванторы ^Vu^Vv) и (Эш) лежат внутри области действия связки =Ф» так как эквивалентность расположена внутри импликативного высказывания. Отметим, что все пути в этой сети, которые проходят по штриховым и пунктирным дугам в направлении стрелок, являются путями уменьшения областей действия. Например, путь от =Ф к <=>, затем к и, далее к w есть путь уменьшения области действия. Предположение, что все кванторы имеют
области действия, совместимые с приведенными ограничениями, определяет все области действия единственным образом.
Более интересное применение соглашения об областях действия операторов показано на рис. 15. Этот рисунок представляет высказывание «Мэри получит стипендию при условии, что она сдаст все экзамены». Для простоты время игнорируется и предполагается, что экзамены являются некоторым заранее определенным множеством. «При условии» интерпретируется (я полагаю, что правильно) как «тогда и только тогда». Версия на языке исчисления предикатов дается в подписи к рисунку и имеет логическую структуру вида [(Зх)Р(х)] <=> [(Vy)Q(y)].
В предваренной форме это выражение имеет вид
(Зо) № (Vx) (Vy) [[Р (х) => Q (у)] & [Q (^ =^ Р (»)]], что в два раза сложнее, чем первоначальное, и совершенно непонятно при переводе на естественный язык. Таким образом, в этом примере использование соглашения об областях действия операторов для сохранения первоначального вида высказывания представляется оправданным.
Из существующих систематических попыток включить кванторы в семантические сети мне известны только попытки Симмонса и Брюса [37], Палма [22] и Андерсона и Бауэра [2]. Симмонс и Брюс обсуждали случай только одного квантора. Символизм Палма основан на проведенном Сэндуолом анализе структур, описывающих свойства [30]. При этом подходе кванторы привязаны по одному или парами к предикатам, например, для обозначения распространения бинарного отношения R на индивидах на бинарное отношение на множествах
VR V<=^AXY [(Vx)(Vy) элемент (х, X) & элемент (у, Y)=>R(x, у)]. Однако это не позволяет в высказывании иметь три или большее число кванторов (пример: «Любой политик может дурачить некоторое число людей все время».) Трактовка Андерсона и Бауэра также не совсем удовлетворительна. Во-первых, предложения, представляющие собой импликацию, связанную кванторами, трудны для формулировки и интерпретации из-за необычного использования связок и кванторов. Например, представление Андерсоном и Бауэром выражения
(Vx) [собака (х)=>(3у) [кошка ^& гоняться (х, у)]] в виде семантической сети, т. е. все собаки гоняются за некоторой кошкой, содержит три квантора общности, плюс подмножества «гоняться» и «кошка». Таким образом, соответствие представлению исчисления предикатов не ясно вообще. Также не существует очевидного метода для различения определенных и неопределенных описаний множеств (таких, например,
как «множество всех собак, которые гоняются за кошками» и «некоторое множество собак, которые гоняются за кошками») и, следовательно, нет способа различения импликативных высказываний, которые априорно включают подобные описания. Дальнейшие трудности возникают из правила, гласящего, что кванторы на месте подлежащего в дереве высказывания имеют самую большую область действия. В частности, неудобно «поднимать» дополнение до уровня максимальной области действия, в чем хорошо отдают себе отчет Андерсон и Бауэр. Например, им пришлось перефразировать предложение. «Существует кошка, за которой гоняются все собаки» в «Существует кошка с тем отличительным свойством, что все собаки гоняют ее», где отличительное свойство — это псевдопредикат, введенный, чтобы поставить дополнение на место подлежащего. Дополнительные проблемы встречаются при навешивании кванторов на временные переменные, так как в обозначении Андерсона и Бауэра «временной контекст» включает в свою область действия целое высказывание. Например, не существует прямого пути для трактовки различия между «Здесь всегда кто-нибудь есть» и «Существует некто, кто всегда здесь». Наконец, Андерсон и Бауэр пренебрегают введением правил кванторного предшествования, когда область действия квантора простирается над логической комбинацией высказываний, что часто встречается.
-В прошлом утверждения об эквивалентности определенных вариантов представления семантических сетей логике второго (или более высокого) порядка не были подкреплены адекватным кванторным аппаратом. Утверждения только о предикатах не демонстрируют возможностей логики второго порядка, так как они могут быть сделаны в логике первого порядка с несколькими видами переменных.
Наконец, необходимо подчеркнуть, что логические кванторы не подходят для выражения многих кванторов естественного языка. Я полагаю, что такие кванторы естественного языка, как «несколько», «много», «большинство из», «несколько больше, чем» и т. д. с трудом выражаются в терминах логических кванторов. Здесь, наверное, вполне достаточно использовать (размытые) свойства мощностей множеств и отношения между мощностями множеств плюс стандартные отношения множеств, такие, как включения множеств. Пример будет приведен в разд. &.
ВРЕМЯ
Куайн [25] сожалел о «неинтересном способе», которым в естественном языке трактуется время, и показал, как заставить время играть ту же роль, что и расположение, вес или цвет в описании событий. Так, предложение «Это случится к западу
лицолицоРис. 16. «Здесь всегда кто-нибудь есть». Временные отношения представляются аналогично пространственным.Рис. 16. «Здесь всегда кто-нибудь есть». Временные отношения представляются аналогично пространственным.отсюда» превращается в «Это случается после данного момента времени к западу отсюда», где форма «случается» не зависит от времени, и «после», так же как «к западу», рассматриваются как отношения между элементами пространства-времени (т. е. событиями и объектами). Это формальное ухищрение, которое превращает все утверждения во вневременные, резко контрастирует с подходом Мак-Карти и Хайеса [19], в котором все утверждения о физических объектах зависят от времени (или даже от ситуации, где «ситуация» есть мгновенное состояние Вселенной, но это понятие фактически совпадает с пониманием момента времени Куайном как некоторого сечения четырехмерного материального мира). Я предпочитаю «смешанную» трактовку времени, так как «несмешанная» трактовка приводит к слишком громоздким представлениям обычных событий и обстоятельств. Например, предложение «Здесь всегда кто-нибудь есть» превращается в «Для каждого момента времени t существует субъект х (рассматриваемый как пространственно-временной объект), такой, что пересечение х с t располагается на пересечении места 1 с /», где «место 1» есть координата, обозначаемая словом «здесь». Соответствующая семантическая сеть
лицо
лицо
Рис. 16. «Здесь всегда кто-нибудь есть». Временные отношения представляются аналогично пространственным.
Рис. 16. «Здесь всегда кто-нибудь есть». Временные отношения представляются аналогично пространственным.
показана на рис. 16, и ее следует сравнить с сетью на рис. 12 (см. также рис. 17 ниже). Отметим, что новое представление прямо ассоциирует время с каждым участником события или обстоятельства и не ассоциирует его с главным отношением. Ясно, что использование временных переменных в предикатах приводит к более краткому и более естественному представлению!).'
Более того, в отличие от Андерсона и Бауэра [2] или Ру- мельхарта [27] я рассматриваю время как единственную ситуационную или контекстную переменную, которую обязательно нужно добавить к высказываниям о действиях. Всякий раз, когда высказывание рассматривается как истинное только в контексте конкретной ситуации, этот контекст может быть сделан не аргументом предиката, а явной посылкой. Например,
*) В связи с этим мне представляется, что временные переменные можно употреблять для обозначения времени в более интуитивном смысле (например, как ньютоновское физическое время), чем сечения или состояния Вселенной. Мак-Карти и Хейес [19] на самом деле считают время функцией состояний Вселенной. Если эта функция является взаимно-однозначным отображением, то это не приводит к недоразумениям.
«Мэри более оживлена со своими поклонниками, нежели со своими родителями» (пример, обсуждаемый Бартшем и Веннема- ном [3]) можно перефразировать так: «Для любого момента времени t и любого момента времени s, если Мэри находится в момент времени t со своим поклонником и если в момент времени s Мэри находится со своими родителями, то Мэри более оживлена в момент времени /, чем в момент времени s». Андерсон и Бауэр [2], а также Шенк и др. [34] добавляют место ко времени в качестве основного измерения событий. Но место не является свойством события в целом, а является свойством (часто зависящим от времени) участников события. Например, в предложении «Джон наблюдает кружащего ястреба» определенное местоположение имеют Джон
д в ,
кэ । 1 м место 1
V/V
ЛИЦО
Рис. 17. «Здесь всегда кто-нибудь есть».
и ястреб, а не событие. Для тех, кто принял бы феноменалистический взгляд на действия Джона, лучшей иллюстрацией может служить предложение «Луна кружится вокруг Земли». Поэтому в семантических сетях я отдельно не рассматриваю пространственных отношений, так как для описания расположения вещей можно использовать уже введенные обозначения отношений.
На приписывании времени центральной роли путем введения временных переменных во все предикаты над физическими объектами основаны следующие соглашения. Я допускаю три формы использования любого зависящего от времени предиката Р(х, #,...,/), где t— временная переменная: мгновенная, интервал и постоянная форма.
В мгновенной форме в качестве временного аргумента используется некоторый фиксированный или изменяющийся момент времени. Из-за особой важности временных аргументов я располагаю их непосредственно после символа предиката. Например, рис. 12,6 можно представить, как показано на рис. 17. Как и прежде, скобки используются для обозначения моментов времени и сделаны штриховыми для обозначения квантора общности.
В качестве временного аргумента в форме интервала задается интервал времени Т (в некотором подходящем смысле слова «интервал», как, например, у Брюса [4]). Определение через мгновенную форму таково: . -
Р^х,у, .ее, Т)^^^ [элемент (/, Т) => Р (х, у, ..., /)].
Для того чтобы отличить интервалы времени от моментов времени, используются метка Т1 для аргумента и квадратные скобки. В большинстве описаний событий форма интервала оказывается гораздо более удобной, чем мгновенная форма. Пример приведен на рис. 18; здесь граф b совпадает с а, за исключением того, что временные аргументы помещены вместе с их
предикатными знаками. Специфическое время «теперь!» на этом рисунке — это время утверждения, так что прошедшее время выражается как «прежде времени утверждения», «затем» рассматривается как отношение между смежными интервалами времени, а «прежде» — как отношение между моментами и интервалами времени. Полный набор временных отношений см. у Финдлера и Чена [9], Брюса [4] или Шенка и др. [34].
В постоянной форме временной аргумент вообще не присутствует. Иллюстрации в этой статье содержат многочисленные примеры этому. Опускание временных аргументов в предикатах, зависящих от времени, есть способ выражения, используемый
многими, но часто неосознанно. Эта форма означает, что предикат истинен для индивида на продолжительном отрезке его существования. Например, «быть девушкой» обычно намного более продолжительно.е свойство, чем «быть рассерженной», поэтому первое утверждение представляется обычно в постоянной форме, а последнее — нет. Однако в конечном счете может возникнуть необходимость учитывать зависимость от времени даже относительно неизменных свойств. Рассмотрим следующую историю:
«Однажды Джонни поймал головастика. Он назвал его «Хьюго» и держал в банке. Год спустя, когда Джонни отпустил Хьюго на свободу, Хьюго был лягушкой».
Вопрос: был ли Хьюго головастиком или лягушкой, когда Джонни поймал его? В семантической сети, в которой «головастик» обозначался Хьюго в постоянной форме, этот вопрос неразрешим; Хьюго мог уже быть лягушкой, когда Джонни поймал его. Таким образом, нам нужно записать, что Хьюго был головастиком в то время, когда Джонни поймал его. Последовательные изменения, связанные с ростом и старением, показывают, что даже такие термины, как «котенок», «кошка», «девушка» или «женщина», рассматриваются, собственно говоря, как зависящие от времени. Определить, когда же можно игнорировать зависимость от времени, оказывается довольно тонким делом. При изображении семантических сетей с целью пояснения опускание кажущихся неважными временных зависимостей, очевидно, оправдано. Такое игнорирование можно оправдать даже в вычислительных реализациях семантических сетей, особенно если возможно восполнить большую часть пропущенной информации с помощью подстановки. Однако в принципе семантические сети должны обладать способностью выражать временные ограничения всех высказываний. Это можно сделать при помощи предлагаемого метода связывания времени с каждым предикатом над физическими объектами, а не, скажем, с «эпизодами», которые определяют более или менее сложные события. .
Нетрудно сформулировать аналоги мгновенного, интервального и постоянного видов предикатов для подхода, который полностью базируется на предикатах, не зависящих от времени. Временной интервал тогда рассматривался бы как «слой» четырехмерного материального мира, перпендикулярный временной оси. Его пересечение с индивидуальным объектом дает временной слой этого объекта. Аналог постоянной формы предиката повлек бы за собой применение предиката к полному четырехмерному индивиду при понимании того, что такое применение, строго говоря, возможно только к соответствующему временному слою этого индивида.
ОПИСАНИЯ
Обычное изложение изобилует определенными и неопределенными описаниями вроде «женщина, которая ответила по телефону», «машина Джона», «большое яблоко» и «несколько детей». В предыдущих разделах различие между определенными и неопределенными описаниями игнорировалось. Цель этого раздела — предложить методы явного выражения этого важного различия.
краснаякраснаяаа66
красная
красная
а
а
6
6
Рис. 19. Определенное и неопределенное описание.
«Машина Джона красная»
(ух) (у*/) [владеть (Джон, I/) & машина (i/) ■<=> х = у\ & красный (х)
«У Джона есть красная машина»
ух [владеть (Джон, х) & машина (х) & красный (х)].
Куайн [23] обсуждает определенные и неопределенные описания отдельных объектов и множеств объектов и упоминает использование соглашений Пеано — Рассела для формализации таких описаний. Затем он показывает, как можно в принципе обойтись двумя сингулярными термами Vx и Чх, из которых один, конечно, лишний. Эта редукция существенно базируется на теории описаний Рассела (Рассел [28], Уайтхед и Рассел [41], Рассел [29]). Я буду опираться на аналогичные редукции в графических обозначениях, основывая представление описаний на логических связках и кванторах, которые уже введены. Сразу же необходимо подчеркнуть, что теория Рассела достаточно сильно критикуется. Ее обычно обвиняют в трактовке ссылки как замаскированной формы утверждения и в произвольном заполнении ложью «пробелов в истине», что случается, когда нарушаются подразумеваемые предположения, выраженные в определенных описаниях (Строусон [39]). Однако, как я вскоре покажу, эта критика неприменима к такому использованию анализа Рассела, который здесь предлагается. Другой способ
работы с определенными описаниями состоял бы в использовании оператора дескрипции (например, Калиш и Монтегю [16], Сэндуол [31] или Мур [20]). Область действия такого оператора
^^жизнерадостен
4
*житель>/ Канады4
1
Франко- | язычный I
можно было бы определить с помощью обобщенных соглашений об областях, которые приведены в разд. 4. Однако существенное преимущество анализа Рассела состоит в том, что он позволяет представлять неоднозначности и неясности в модальных предложениях, как неоднозначности об-
Рис. 20. Определенные описания множеств.«Жители Канады, говорящие по-француз-ски, — жизнерадостны».
(3S) [ух) [элемент (х, S) ^=> [говоритпо-французски (х) & проживает в (х, Ка-нада)]] & (ух) [элемент (х, S)=^ жизнера-достен (х)]].
ластей действия кванторов (Хьюгес и Кресуэл [14], см. также разд. 8 ниже).
Предложения «Машина Джона красная» и «Джон имеет красную
машину» представлены в
виде диаграмм на рис. 19. Термины «машина Джона» и «крас
ная машина» суть примеры определенного и неопределенного описаний соответственно. Подразумеваемое предположение, вы-
Рис. 21. Неопределенны^ описания множеств. «Несколько детей находятся на игровой площадке; большинство из них играет в песочнице».
раженное определенным описанием «машина Джона», состоит в том, что Джон имеет в точности одну машину (это верно по крайней мере в контексте некоторого сообщения, в котором может встретиться данное предложение). Это предположение о том, что существующее единственно, выражено явно на рис. 19, а, где утверждается, что существует вещь, которая идентична с каждой
машиной, которой владеет Джон, и она красная. Диаграмма на рис. 19,6 сравнительно проста; она устанавливает, что существует объект, которым владеет Джон, который красного цвета и который является машиной.
Определенные и неопределенные описания множеств иллюстрируются на рис. 20 и 21 соответственно. Определенное описание на рис. 20 есть «люди Канады, которые говорят по-французски», существование которых говорящий предполагает. Таким образом, сеть устанавливает, что существует множество такое, что объект принадлежит ему тогда и только тогда, когда он говорит по-французски и является жителем Канады. Относительно этого множества утверждается, что все его члены жизнерадостны.
Сеть на рис. 21 представляет предложение «Несколько детей находятся на игровой площадке; большинство из них играет в песочнице». Неопределенные описания — «несколько детей» и «большинство из них». В противоположность определенным описаниям множеств, в неопределенных описаниях условие принадлежности множеству связано с импликацией, а не с эквивалентностью. Предикат «*» на диаграмме обозначает число элементов множества или скорее однозначное отношение, которое существует между множествами и числом его элементов. Отметим, что «несколько» трактуется как (нечеткий) унарный предикат над числами, в то время как «большинство из» разбито на отношение подмножества и (нечеткое) отношение над парами чисел.
Я хочу теперь показать на примере, как можно обрабатывать определенные описания с помощью системы, понимающей естественный язык, и каким образом следовало бы применять анализ Рассела, чтобы избежать обычной для него критики. Основная идея состоит в том, что система в первую очередь должна пытаться интерпретировать определенные описания реферативное а в случае неудачи атрибутивно. Реферативная интерпретация означает, что в качестве семантического коррелята описания выбирается уже существующая вершина, в то время как атрибутивная интерпретация означает, что как семантический коррелят описания создается новая вершина и ей приписываются свойства, выраженные описанием. Эта терминология основана на широко понимаемых различиях, проводимых Доне- ланом [7].
Допустим, что на вход системы, понимающей естественный язык, поступило высказывание «Машина Джона красная». Эта система сначала должна искать существующую вершину для использования в. качестве референта части предложения «машина Джона». Не стоит здесь касаться деталей этого поиска,
отметим только, что если он успешен, то никакие новые описания в память не помещаются. С найденной вершиной связывается лишь предикат «красная» (при условии, что это утверждение совместимо с -уже имеющимися знаниями). Однако если этот поиск неудачен, то система образует новую вершину со знаком квантора существования с присоединенным высказыванием, что это единственная машина, которую имеет Джон, возможно, в том смысле «имеет», который определяется контекстом. Это расселовское утверждение существования помещается в память, если оно согласуется с предшествующими знаниями. Если все в порядке, результатом является сеть, показанная на рис. 19, а. Но допустим, что утверждение существования противоречит предшествующей информации о том, что Джон не имеет машины. Тогда попытка поместить новую вершину в память отвергается и, таким образом, не возникает референта для предиката «красная». В поисках решения встреченной трудности система может ответить «Но я думала, что Джон не имеет машины». Таким образом, я рассматриваю «некорректность предпосылок» скорее как операционное явление, а не как логическое явление, требующее сложного теоретико-модельного маневрирования (см., например, Ван Фраасен [40] и Фиск [И]). Поэтому не возникает вопроса об истинностном значении предложений с некорректными предпосылками в точности так, как требует Строусон [39].
Последний тип определенных описаний, а именно определенные описания отношений, рассматривается в следующем разделе.
ЛЯМБДА-АБСТРАКЦИИ
Некоторые определенные описания предикативных понятий, например (то свойство, которое есть) «единственная добродетель Джона», можно выразить с помощью уже имеющихся обозначений. Граф для высказывания «Единственная добродетель Джона — это честность» приведен на рис. 22. Отметим, что эквивалентность здесь используется как отношение второго порядка, обозначая совпадение интенсионалов сравниваемых предикатов (т. е. идентичность их истинностных множеств во всех возможных мирах).
Однако используемая до сих пор форма записи неадекватна для описания предикативных понятий, выраженных через предикаты того же самого (а не более высокого) типа. Допустим, что мы хотим сказать, что свойство «быть человеком» — то же самое, что и свойство «быть разумным животным»; отметим, что это последнее есть свойство типа 1 и выражено в терминах свойств типа 1 — «разумное» и «животное». Мы не можем построить диаграмму для этого утверждения на основе формулы
(Vx) [человек (х)4=> разумное (х) & животное (х)], так как она просто утверждает экстенсиональную тождественность (т. е. множество человеческих существ совпадает с множеством разумных животных).
Рис. 22. «Единственная добродетель Джона — честность»; (уР) [Р (Джон) & добродетель (Р)-4=^ Р = честность].
Желаемое утверждение об интенсиональной тождественности может быть сделано с помощью лямбда-оператора Чёрча. Этот оператор строит предикат из открытого предложения, определяя некоторые переменные предложения как аргументы предиката. Таким образом, мы пишем
человек = Х-х (разумное (х) & животное (х)).
Более интересный пример задается предложением «Любовь к ближнему есть добродетель», которое требует абстракции
Рис. 23. «Любовь к ближнему есть добродетель»; добродетель {Zx[(yy) [ближний (х, у) =>-любит (х, #)]]}.
одноместного предиката «любить ближнего» из двуместного предиката «любить». Как это делается, показано на рис. 23 с помощью графического аналога лямбда-абстракции. На рис. 23, а представлен граф для утверждения «х любит всех ближних». Пропозициональная вершина для этого сложного предложения устанавливается знаком импликации. На рис. 23, 6 из предложения рис. 23, а выделен предикат «любить ближнего»
превращение переменных впревращение переменных вРис. 24. Определение понятия «ниже» как обратного к «выше»; ниже = Хху [выше (у, х)].Рис. 24. Определение понятия «ниже» как обратного к «выше»; ниже = Хху [выше (у, х)].пости в область действияпости в область действия(помечено Р). Дополнительно к абстрагированному предикату приписан предикат второго порядка «добродетель». Лямбда- абстракция образована посредством лямбда-связи от новой предикатной вершины к предложению, из которого абстрагирован предикат, плюс аргументные связи из предикатной вершины к переменным (вершинам) предложения, которые указывают на аргументы предиката. Лямбда-связь помечена символом «лямбда», аргументные дуги помечены Л, В, ... (или по какой-то другой системе), как в предложениях. Отметим еще точечную связь для обозначения области зависимости от абстрагируемого предиката к вершине, соответствующей квантору общности. Это важное применение обозначения обобщенной области действия, введенного в конце четвертого раздела. Оно помещает квантор общ- лямбда-оператора. Без этой связи
превращение переменных в
превращение переменных в
Рис. 24. Определение понятия «ниже» как обратного к «выше»; ниже = Хху [выше (у, х)].
Рис. 24. Определение понятия «ниже» как обратного к «выше»; ниже = Хху [выше (у, х)].
пости в область действия
пости в область действия
сеть на рис. 23,6 неправильно утверждала бы1)
(Vy) добродетель ^Х-х (ближний (х, у) влюбить (х, у)).
В общем случае предложения, содержащие лямбда-абстракции, не могут быть преобразованы в предваренную форму, так что обозначение для обобщенной области действия здесь является необходимостью, а не просто удобством. Определение понятия «ниже» через «выше» с помощью лямбда-абстракции показано на рис. 24. Механизм лямбда-абстракции — универсальный способ определять отношения (включая функции, т. е. однозначные отношения) через отношения, уже содержащиеся в системе. Вновь определенные отношения можно использовать, как и ранее введенные в систему.
МОДАЛЬНЫЕ ОПЕРАТОРЫ И НЕЯСНОСТИ ССЫЛОК
Наконец, мы нуждаемся в соглашении для представления предложений, включающих такие модальные операторы, как оператор необходимости, оператор веры, причинный оператор
!) У Шуберта [46] лямбда-абстракции трактуется неадекватно. Во-первых, пропозициональная вершина, на которую действует лямбда-оператор, сама используется для обозначения абстрагированного предиката. Это более точно, но, к несчастью, приводит к неоднозначному толкованию областей действия, если предложение, из которого абстрагирован предикат, не представлено в предваренной форме. Во-вторых, по невнимательности опущены связи, указывающие зависимость областей действия, которые необходимы, чтобы включить кванторы в область действия лямбда-оператора.
и контрфактическое условие. Отметим, что это только представление, а не формальная семантика модальных конструкций, которая отсюда следует. Однако представляется убедительным, что семантика «возможных миров», изобретенная в последние годы модальными логиками, обеспечивает адекватную базу для формального семантического анализа конструкций (см., например, Снайдер [38]).
Насколько я себе представляю, единственная проблема описания, возникающая при введении модальных операторов, состоит в различии между «неясным» и «ясным» окружением, порожденным такими операторами. Сентенциональное окружение неясно, если замена терма, согласно ссылке, на эквивалентный ему терм может изменить истинностную величину этого предложения, и ясным в противном случае. _ Например, оператор необходимости порождает неясное окружение в высказывании «9 необходимо больше чем 8», так как мы не можем заменить «9» на эквивалентный термин «число больших планет».
В общем случае мы можем рассматривать термы в неясном окружении как включаемые в область действия модальных операторов (необходимости, желания и т. д.), как это предлагается Исардом и Лонгует-Хиггинсом [15]. Кванторы в таких терминах не могут быть вынесены для преобразования высказываний в предваренную форму. Например, утверждение верить (Джон, (Вх) привидение (х)) нельзя перефразировать как (Зх) (верить (Джон, привидение (х)). В словесной форме: высказывание «Джон верит, что привидения существуют» нельзя перефразировать как «Что-то существует, что, как полагает Джон, есть привидения». Снова необходимы такие соглашения об обобщенных областях действия операторов, чтобы кванторы можно было бы применять внутри сферы действия пропозициональных операторов. .
Представления несинонимичных высказываний «9 необходимо больше 8», «Число больших планет необходимо больше 8» показаны на рис. 25. Предполагается, что оператор необходимости □ имеет один или более операндов. На рис. 25, b точечная линия от оператора необходимости к вершине у устанавливает квантор существования для у внутри области действия этого оператора. Удаление точечной линии к вершине у и штриховой линии к значку 4Ь дало бы (неверное) точное чтение предложения, в котором термин «число больших планет» просто взят как ссылка для числа 9.
Контрфактическая импликация в большинстве случаев может трактоваться как необходимость. В предложении «Если бы была большая планета по ту сторону Плутона, то число больших планет равнялось бы 10» термин «число больших
планет» нессылаемый. Представление этого высказывания показано на рис. 26. Я позаимствовал у Льюиса символ □ =Ф для обозначения контрфактической импликации (Льюис [17]), однако я разрешаю любое число посылок и следствий как опе-
Рис. 25. (а) «9 необходимо больше 8»; □ (9 >8). (Ь) «Число больших планет необходимо больше 8-ми»;(35) (ух) {элемент (х, S) <=> большая-планета (х) & □ (зу) [41= (S, у) & у >8]}.Рис. 25. (а) «9 необходимо больше 8»; □ (9 >8). (Ь) «Число больших планет необходимо больше 8-ми»;(35) (ух) {элемент (х, S) <=> большая-планета (х) & □ (зу) [41= (S, у) & у >8]}.
Рис. 25. (а) «9 необходимо больше 8»; □ (9 >8). (Ь) «Число больших планет необходимо больше 8-ми»;
(35) (ух) {элемент (х, S) <=> большая-планета (х) & □ (зу) [41= (S, у) & у >8]}.
Рис. 25. (а) «9 необходимо больше 8»; □ (9 >8). (Ь) «Число больших планет необходимо больше 8-ми»;
(35) (ух) {элемент (х, S) <=> большая-планета (х) & □ (зу) [41= (S, у) & у >8]}.
рандов, соединенных импликацией, как и в случае обобщенной материальной импликации.
Многие английские модальные высказывания, в частности те, которые включают такие глаголы, как «хотеть» или «верить», допускают одновременно точное и неточное чтение.
Рис. 26. «Если бы была большая планета по ту сторону Плутона, то число больших планет равнялось бы 10»;(gS) (V#) {[элемент (у, S) -фф- большая-планета (#)] & за (х, Плутон)! □ =^(32) [*(3, г) & 2 = 10]}.Рис. 26. «Если бы была большая планета по ту сторону Плутона, то число больших планет равнялось бы 10»;(gS) (V#) {[элемент (у, S) -фф- большая-планета (#)] & за (х, Плутон)! □ =^(32) [*(3, г) & 2 = 10]}.
Рис. 26. «Если бы была большая планета по ту сторону Плутона, то число больших планет равнялось бы 10»;
(gS) (V#) {[элемент (у, S) -фф- большая-планета (#)] & за (х, Плутон)! □ =^(32) [*(3, г) & 2 = 10]}.
Рис. 26. «Если бы была большая планета по ту сторону Плутона, то число больших планет равнялось бы 10»;
(gS) (V#) {[элемент (у, S) -фф- большая-планета (#)] & за (х, Плутон)! □ =^(32) [*(3, г) & 2 = 10]}.
Пример такого высказывания — «Джон хочет жениться на самой хорошенькой девушке» (вариант взят у Мура [20]). В точном чтении мы можем заменить «самая хорошенькая девушка» элементом со ссылкой на этот индивид (например, Салли Саншайн), в То время как при неточном чтении не можем (т. е. Джон хочет жениться на самой хорошенькой девушке, кто бы она ни была). Неточное чтение этого предложения показано на рис. 27. Эта сложность есть результат главным образом представления «самая хорошенькая девушка» как «самый хоро-
шенький элемент множества всех девушек». Для этого было введено тернарное отношение второго порядка «самый», справедливое для х, Р, S, если х есть единственный член множества 5, которое есть превосходная степень свойства Р. Другое представление, при котором использования термина «самый» удается избежать ценой большей сложности, можно найти в работе Шуберта [46]. Пропозициональные операнды «хочет» рассматриваются как неявно соединенные, т. е. хочет (х, z/, z, ...)
Рис. 27. «Джон хочет жениться на самой хорошенькой девушке»;(3S) [(Vх) [элемент (х, S) ■<=> девушка (х)] & хочет (Джон, (31/) [самая (красивая, S, у) & женится (Джон, £/)])J,Рис. 27. «Джон хочет жениться на самой хорошенькой девушке»;(3S) [(Vх) [элемент (х, S) ■<=> девушка (х)] & хочет (Джон, (31/) [самая (красивая, S, у) & женится (Джон, £/)])J,чточто
Рис. 27. «Джон хочет жениться на самой хорошенькой девушке»;
(3S) [(Vх) [элемент (х, S) ■<=> девушка (х)] & хочет (Джон, (31/) [самая (красивая, S, у) & женится (Джон, £/)])J,
Рис. 27. «Джон хочет жениться на самой хорошенькой девушке»;
(3S) [(Vх) [элемент (х, S) ■<=> девушка (х)] & хочет (Джон, (31/) [самая (красивая, S, у) & женится (Джон, £/)])J,
что
что
рассматривается как обозначение для х хочет у&г&... . В точном чтении точечная линия от «хотеть» опущена. Совершенно правильно этот граф теперь можно прочитать как «Существует х, такое, что х— самая хорошенькая девушка и Джон хочет жениться на х» х
Пропозициональные отношения могут включать также кванторы над высказываниями, например «Джон знает все» или «Джон знает все, что знает Мэри». Самый непосредственный способ представления таких предложений состоит в использовании кванторов над пропозициональными переменными (см. рис. 28). На рис. 28, а «Джон знает все» перефразировано как «Джон располагает всеми истинными высказываниями». Если мы допустим такое представление, мы должны строго определить различие между «пропозициональной вершиной», на которую действует квантор общности на рис. 28, и пропозициональными вершинами, введенными как точки присоединения частей предложения в явном виде. Последние пропозициональные вершины не квантифицируются. Предложения, в которых они участвуют, «существуют» просто благодаря присутствию в семантических
сетях. Вершины, на которые действуют кванторы общности на рис. 28, наоборот, являются концептными вершинами, которые обозначают законченные предложения.
Конструкции на рис. 27 и 28 не позволяют допускать неограниченное использование отношений с пропозициональными аргументами и кванторами над высказываниями. Подобная недо*
Рис. 28. (а) «Джон знает все». (Ь) «Джон знает все, что знает Мэри».Рис. 28. (а) «Джон знает все». (Ь) «Джон знает все, что знает Мэри».верит-верит-
Рис. 28. (а) «Джон знает все». (Ь) «Джон знает все, что знает Мэри».
Рис. 28. (а) «Джон знает все». (Ь) «Джон знает все, что знает Мэри».
верит-
верит-
статочность ограничений может привести к логической несовместимости в сети. Предпочтительнее ограничить себя некоторым более тщательным выбором множества пропозициональных операторов, включающих истинностные функциональные операторы и некоторое множество модальных операторов. Также необходимо избегать использования пропозициональных переменных совместно при перефразировании «для всех утверждений» как
/—<=\
fX i - А А.
(Джоуверит/I PRED
Рис. 29. «Джон знает все».
«для всех предикатов Р и для всех х, таких, что Р(х)», задавая новую версию рис. 28, а, которая показана на рис. 29. Это исключило бы использование высказываний в качестве понятий. С другой стороны, рис. 28 можно сделать более компактным. Отметим, что замену кванторов над высказываниями на кванторы над предикатами и переменными можно также распространить на кванторы существования. Например, предложение «Существует высказывание х такое, что если х истинно, то человечество обречено» можно перефразировать как «Существует предикат Р такой, что если PVX^ истинно для всех х, то человечество обречено».
Техника представления отношений знать и верить равно применима и к другим отношениям (таким, как помнить, пред-
полагать, намереваться, решать, избегать, надеяться, воображать, притворяться и пытаться). Нессылаемые термы внутри областей действия таких операторов (все те, которые кажутся полезными независимо от других) можно идентифицировать с помощью линий, обозначающих области зависимости (как на рис. 25—27). Они также применяются к таким этическим модальностям, как долженствование. Очевидно, например, как должно быть представлено высказывание «Джон должен жениться на самой хорошенькой девушке».
В качестве последней важной модальности необходимо упомянуть причинную зависимость. Причинные объяснения достаточно близко связаны с контрфактическими условиями, что видно на примере высказывания «В не произошло бы, если бы не произошло А»; оно часто обоснованно задается как «А влечет В». Пример неточного контекста, порожденного причинной конструкцией, обнаруживается в предложении «Джон пригласил Мэри танцевать, так как она была единственная девушка, оставшаяся без партнера». Подстановка терма Мэри вместо синонима ссылки «единственная девушка, оставшаяся без партнера», очевидно, неправильна. Поэтому в причинных конструкциях, как и в других модальных конструкциях, мы нуждаемся в линиях для обозначения областей зависимости.
Модальные операторы играют видную роль в работах некоторых теоретиков по семантическим сетям, включая Уинстона [44], Шенка [33], Андерсона и Бауэра [2] и др. Оператор MUST Уинстона, который модифицирует многие отношения в понятиях обучающихся структур, можно идентифицировать с обычным оператором необходимости. Причинные отношения Шенка, инструментальные отношения и функции CONC, MTRANS и MBUILD можно также рассматривать как модальные операторы, причем последние три являются эпистемически- ми. Андерсон и Бауэр часто используют причинный оператор, как это делают большинство исследователей сетей. Что отсутствует в работах этих авторов — так это распознавание важного различия между неточным и точным модальными контекстами.
ЗАКЛЮЧИТЕЛЬНЫЕ ЗАМЕЧАНИЯ
Напоследок я оставил несколько высказываний собственно о построении и интерпретации семантических сетей, а также о предложенном систематическом методе выражения таких операторов, как логическая комбинация, кванторы и лямбда-абстракции в сетях.
Спешу добавить, что я не претендую на универсальность этих обозначений. Они предлагаются просто как стандарт для сравнения. Что делает их подходящими в качестве такого
стандарта, это, как я полагаю, соответствие обозначениям исчисления предикатов, которые хорошо понимаются. Естественно, можно принять совершенно другое представление при необходимости применения специфических семантических сетей. Например, можно использовать представления, которые лучше отражают структуру данных данного частного компьютера. Более того, эти структуры данных могут сами по себе принимать различные формы для различных областей данных, а не подчиняться правилам с некоторым фиксированным пропозициональным синтаксисом (см. Линдсей [18]). Также можно сформулировать дополнительные операторы для упрощения общих конструкций. Например, для представления простых обобщений предложений «Все Р есть Q» (например, «Все вороны черные») было бы полезно иметь оператор, скажем =), со следующим описанием: если Р и Q есть n-арные предикаты, то
тогда и только тогда, когда
(Vxl).. .(Vxfi) [Р(х1, ..., хп} =>Q (xl, ..., xn)Y
Таким образом,
ворона)-- ^ —>(черная
Полезным был бы обобщенный оператор, выражающий отношение «Все Р необходимо суть Q»; его можно изображать знаком □ и описать
тогда и только тогда, когда
□ (Vxl).. .Qixn>\P (xl, ..., xn^QXxV • xn)Y
Это позволило бы сильно упростить кодирование основных смысловых отношений между понятиями, вроде _
^ворона)—а ^—>ттица
(т. е. вороны обязательно птицы),
С пить'>-а ^—< глотать)
(т. е. если х пьет у, то х обязательно глотает у^ и т. д. Эти операторы порождают иерархию понятий, которая могла бы использоваться для эффективного выражения отношений типа подмножество — множество 1). Существенно, что определение этих операторов можно выразить в основных понятиях сетей.
Читатель, знакомый с исчислением предикатов, может отметить отсутствие некоторых функциональных обозначений для сетей, аналогичных тем, которые есть в исчислении предикатов. Такие обозначения легко получаются (см. Керкон [45]). Эти обозначения чуть упрощают представление одних высказываний и усложняют представление других. В частности, квантор существования значения функции f(x) требует введения выражения вида Hy(f(х) = у), тогда как нужды в таких высказываниях для обозначения отношений, которые имеют «щель» для у, нет.
Вариации в обозначениях, используемых для представления неформальных знаний, могут породить дополнительные проблемы, связанные с обозначениями. Примеры существуют в трактовке неопределенных (что уже упоминалось в комментарии к кванторам естественного языка) событий, лексическом значении сложных понятий и общей организации знаний. Несколько в стороне от этих относительно статических обозначений лежат более динамические обозначения актуальной языковой интерпретации и обобщения, вероятностные рассуждения, обучение, а также взаимодействие между процедурными и фактуаль- ными знаниями. Ясно; что на любой вопрос о представлении возникающих в этих областях проблем можно ответить в контексте данного подхода к решению самой проблемы. Настоящее же представление суть просто прямое расширение нескольких достаточно успешных, внешне различных представлений, таких, как концептуализм Шенка, описание Уинстона или структура свойств Сандевола. Следовательно, вычислительные процедуры, которые вызывают и используют эти структуры данных, можно непосредственно применять для структур, основанных на настоящем представлении. Это означает, что увеличение выразительной мощности с помощью предлагаемых обозначений было бы действительно ценным при проектировании систем, понимающих естественный язык.
Благодарности
Цель этой работы — создание системы обозначений для исследования, выполненного Ником Керконом и мной, которое было посвящено понятий
ному представлению, основанному на «состояниях». Немалая доля изложенных здесь идей возникла благодаря участию Ника. Я признателен Г. Придо, К. Г. Моргану и Ф. Ж. Пелетье, указавшим мне на некоторые работы по затронутым здесь вопросам, а двум последним — также за весьма полезные обсуждения. Я благодарен также Дж. Р. Сэмсону и К. В. Уилсону, сделавшим замечания по первоначальной рукописи. .
Эти замечания, так же как и замечания рецензентов, способствовали разработке более легкочитаемого варианта статьи. Исследование финансировалось National Research Council of Canada Operating Grant no. A8818.
Список литературы
Abelson R. P. The structure of belief systems. Computer Models of Thought and Language, R. Schank and K. Colby, eds., Freeman, San Francisco, Calif, (1973), 465—471.
Anderson J., Bower G. Human Associative Memory. Winston, Washington, D. C. (1973).
Bartsch R., Vennemann T. Semantic Structures. Athenaeum Verlag, Frankfurt (1972).''
Bruce В. C. A model for temporal references and its application in a question answering program. Artificial Intelligence, 3 (1972), 1—26.
Carnap R. Meaning and Necessity Univ, of Chicago Press, Chicago, 111. (1947).
Карнап. P. Значение и необходимость. Исследование по семантике и модальной логике. — М.: ИЛ, 1959.
Cercone N., Schubert L. К. A sketch of state-based conceptual representation. Department of Computing Science, TR74—19, University of Alberta, Edmonton, Alberta (1974)."
Donnellan K. Reference and definite descriptions. Philosophical Review, 75 (1966), 281—304. Reprinted in Semantics, D. D. Steinberg and L. A. Jako- bovits, eds., Cambridge Univ. Press, Cambridge (1971), 100—114.
Fillmore C. J. The case for case. Universals in Linguistic Theory, E. Bach and R. T. Harms, eds., Holt, Rinehart and Winston, New York (1968), 1—88.
Findler N., Chen, D. On the problems of time, retrieval of temporal relations, causality and coexistence. Advance Papers of Second International Joint Conference on Artificial Intelligence, The British Computer Society, London (1971), 531—545.
Firschein O., Fischler M. A. A. study in descriptive representation of pictorial data. Advance Papers of Second International Joint Conference on Artificial Intelligence, The British Computer Society, London (1971), 258— 269.
Fisk M. A modal analogue of free logic. The Logical Way of Doing Things, K. Lambert, ed., Yale Univ. Press, New Haven, Conn (1969), 147—184.
Guzman A. Analysis of curved line drawings using context and global information. Machine Intelligence, 6, B. Meltzer and D. Michie, eds., American Elsevier, New York (1971), 325—375.
Гузман А. Анализ рисунков с криволинейными очертаниями при использовании контекста и глобальной информации. В сб. «Интегральные роботы», вып. 2. — М.: Мир, 1975, 160—214.
Hendrix G. G., Thompson С. W., Slocum J. Language processing via canonical verbs and semantic models. Advance Papers of Third International Joint Conference on Artificial Intelligence, Stanford Research Institute, Menlo Park, Calif. (1973), 262—269.
Hughes G. E., Cresswell M. J. An Introduction to Modal Logic. Methuen, London (1968).
Isard S., Lnguet-Higgins Н. С. Question-answering in English. Machine Intelligence, 6, В. Meltzer and D. Michie, eds., American Elsevier, New York (1971), 243—254.
Kalish D., Montague R. Logic: Techniques of Formal Reasoning. Harcourt, Brace, and World, New York (1964).
Lewis D. Counterfactuals. Harvard Univ. Press, Cambridge, Mass. (1973).
Lindsay R. K. In defense of ad hoc systems. Computer Models of Thought and Language, R. C. Schank and К. M. Colby, eds., Freeman, San Francisco, Calif. (1973), 372—395.
McCarthy J., Hayes P. Some philosophical problems from the standpoint of artificial intelligence. Machine Intelligence, 4, B. Meltzer and D. Michie, eds., American Elsevier, New York (1969), 463—502.
Moore R. D-SCRIPT: A computational theory of descriptions. Memo No. 278, Artificial Intelligence Laboratory, MIT, Cambridge, Mass.; see also Advance Papers of Third International Joint Conference on Artificial Intelligence, Stanford Research Institute, Menlo Park, Calif. (1973), 223—229.
Mylopoulos J., Badler N., Meili L Roussopoulos N. 1. PAK: A SNOBOL- based programming language for artificial intelligence applications. Advance Papers of Third International Joint Conference on Artificial Intelligence, Stanford Research Institute, Menlo Park, Calif. (1973), 691—696.
Palme J. Making computers understand natural language. Artificial Intelligence and Heuristic Programming, N. V. Findler and B. Meltzer, eds., American Elsevier, New York (1971), 199—244.
Quillian M Semantic memory. Semantic Information Processing, M. Minsky ed., MIT Press, Cambridge, Mass. (1968), 227—270.
Quillian M. The teachable language comprehender. Comm. ACM, 12 (1969), 459—475.
Quine W. V. A. Word and Object. MIT Press, Cambridge, Mass. (1960).
Reichenbach H. Elements of Symbolic Logic. Free Press, New York (1966). ,
Rumelhart D., Lindsay P., Norman D. A process model for long term memory. Organization of Memory, E. Tulving and W. Donaldson, eds., Academic Press, New York (1972), 198—221.
Russell B. A. W. On denoting. Mind, 14 (1905), 479—493. Reprinted in Readings in Philosophical Analysis, H. Feigl and W. Sellars, eds., AppletonCentury-Crofts, New York (1949), 103—115.
Russell B. A. W. Descriptions. Chapter XVI of Introduction to Mathematical Philosophy B. A. ,W. Russell, 2nd ed., Allen and Unwin, London (1920). Reprinted in Semantics and the Philosophy of Language, L. Linsky, ed., Univ, of Illinois Press, Urbana, Ill. (1952), 95—108.
Sandewall E. J. A set-oriented property-structure representation for binary relations. Machine Intelligence, 5, B. Meltzer and D. Michie, eds., American Elsevier, New York (1970), 237—252.
Sandewall E. J. Representing natural language information in predicate calculus. Machine Intelligence, 6, B. Meltzer and D. Michie, eds., American Elsevier, New York (1971), 255—277.
Schank R. Conceptual dependency: A theory of natural language understanding. Cogn. Psych., 3 (1972), 552—631.
Schank R. The fourteen primitive actions and their inferences. Stanford AI Project, Memo AIM-183, Stanford University, Calif. (1973).
Schank R., Goldman N., Rieger C., Riesbeck C. Margie: memory, analysis, response generation, and inference on English. Advance Papers of Third International Joint Conference on Artificial Intelligence, Stanford Research Institute, Menlo Park, Calif. (1973), 255—261.
Simmons R. F. Some semantic structures for representing English meanings. Language Comprehension and the Acquisition of Knowledge, J. B. Carroll and R. O. Freedle, eds., Winston, Washington, D. C. (1972).
Simmons R. Semantic networks: Their computation and use for understanding English. Computer Models of Thought and Language, R. Schank and K. Colby, eds., Freeman, San Francisco, Calif. (1973), 63—113.
Simmons R. F., Bruce В. C. Some relations between predicate calculus and semantic net representation of discourse. Advance Papers of Second International Joint Conference on Artificial Intelligence, The British Computer Society, London (1971), 524—-530.
Snyder D. P. Modal Logic and its Applications. Van Nostrand Reinold, New York (1971).
Strawson P. F. On referring. Mind, 59 (1950), 320—344..
Van Fraassen В. C. Singular terms, truth-value gaps, and free logic. J. Phil., 63 (1966), 481—495.-
Whitehead A. N., Russell B. A. W. Principia Mathematica, Vol. 1. Cambridge Univ. Press, Cambridge (1910).
Wilson К. V. Memory organization and question answering. The Psychology of Knowing, J. R. Royce and W. W. Rozeboom, eds., Academic Press, New York (1972)..
Wilson К. V. Formal representation of cognitive processes. Center for the Advanced Study of Theoretical Psychology, University of Alberta, Edmonton, Alberta (1975).
Winston P. Learning structural descriptions from examples. PhD Thesis, MIT, MAC-TR-76, Cambridge, Mass. (1970).
Cercone N. Representing natural language in extended semantic networks. Department of Computing Science, TR75-11, University of Alberta, Edmonton, Alberta (1975).
Schubert L. K. Extending the expressive power of semantic nets. Department of Computing Science, TR74-18, University of Alberta, Edmonton- Alberta (1974).
СОДЕРЖАНИЕ
Математические вопросы'
Д. Е. Мюллер, Ф. П. Препарата. Перестроение арифметических выражений для параллельного вычисления. Перевод В. М. Храпченко 5
Й. П а у л ь. Нижняя оценка 2,5 п для комбинационной сложности булевых функций. Перевод В. М. Храпченко23
Л. Дж. Стокмейер. О комбинационной сложности некоторых симметрических булевых функций. Перевод О. М. Касим-Заде45
Р. Таусворт. Случайные числа, порождаемые линейными рекуррентными соотношениями по модулю 2. Перевод Б. Б. Походзей . ... 62
К. П. Ш н о р р. Комбинационная сложность эквивалентности. Перевод В. М. Храпченко74
Теория распознавания
Кеннет Л. Уилльямс. Многомерный подход к синтаксическому распознаванию образов. Перевод П. П. Кольцова82
Р. М. X а р а л и к. Задача различения объектов с точки зрения теории отношений. Перевод П. П. Кольцова113
Математические машины и мышление
А. Невинс. Доказательство теорем планиметрии с использованием прямых рассуждений. Перевод С. В. Попова145
Л. Шуберт. Усиление выразительной мощности семантических сетей.
Перевод Е. Ю. Зуевой, С. В. Попова.... 171
УВАЖАЕМЫЙ ЧИТАТЕЛЬ!
Ваши замечания о содержании книги, ее оформлении, качестве перевода и другие просим присылать по адресу: 129820, Москва, ГСП, 1-й Рижский пер., д. 2, издательство «Мир»»
КИБЕРНЕТИЧЕСКИЙ СБОРНИК № 16
Научный редактор С. В. ЧудовМл. редактор Ю. С. АндрееваХудожник Н. К. СапожниковХудожественный редактор В. И. ШаповаловТехнический редактор Н. И. БорисоваКорректор Н. И. Баранова
ИБ № 1937
Сдано в набор 29.03.79. Подписано к печати 12.11.79. Формат 60X90716* Бумага типографская № 2. Гарнитура латинская. Печать высокая. Объем 6,75 бум. л. Усл. печ. л. 13,50. Уч.-изд. л. 12,52. Изд. № 1/0401. Тираж 4200 экз. Зак. № 153.
Цена 1 р. 70 к.
Издательство «Мир»г
129820, Москва, И-110, ГСП
1-й Рижский пер., 2.
Ордена Трудового Красного Знамени Ленинградская типо-графия № 2 имени Евгении Соколовой «Союзполиграфпрома»при Государственном комитете СССР по делам издательств,полиграфии и книжной торговли. 198052, Ленинград, Л-52,Измайловский проспект, 29
А" = (... ((Л 1Л2 + Лз) Л4 + Лб) ...) Л2т + Л2т+ь
Применение этого разложения в сочетании с леммой 3 настоящей статьи (при q = у~3|£|) Дает оценку
t (Е) < log | В |/log у « 2,465 log21 Е |,
где, Е — арифметическое выражение без операции деления, а у — положительный корень уравнения z3 = г + 1. Примерно так данная оценка и была получена в работе [3].
Интересно, что эту оценку можно получить и методом свободных переменных из разд. 2 настоящей статьи — нужно только заметить, что при отсутствии деления оценку (i) из леммы 2 можно заменить оценкой /(Д 4- В) < Тс + max(/i, /2).
Однако при доказательстве в этом разделе более сильной оценки метод свободных переменных авторами уже не используется. — Прим, персе.
1) Соответствует «хвосту» у Шоу [11.
5 неоднозначно.
В случае, когда S неоднозначно, простой способ определить оптимальное решающее отношение Неизвестен. Задачу можно сформулировать так, чтобы она была эквивалентна поиску оптимального множества линейных дискриминантных функций. Поскольку относительно распределения не делается никаких предположений, то итеративная процедура отыскания этих линейных дискриминантных функций должна была бы применяться в евклидовом пространстве достаточно высокой размерности D. Поэтому будем использовать другой подход, а также сделаем некоторые оценки.
В этих случаях таким элементам может быть дано более одного назначения. Вместо приписывания одинакового веса каждому из этих многократных назначений будем считать, что каждая пара элемент — класс имеет вес, обратный кратности отнесения элемента к классу. Этот весовой фактор равен l/#S(w). Таким образом, те элементы, которые «узки» и порождают только одно
Кибернетическийсборник
НОВАЯ СЕРИЯ
ВЫПУСК
16
Сборник переводов
Под редакциейО. Б. ЛУПАНОВА
ИЗДАТЕЛЬСТВО «МИР»
МОСКВА 1979
УДК 519.95
Научный совет по кибернетике Академии наук СССР
Очередной выпуск новой серии кибернетических сборников, публикация которых была начата издательством «Мир» в 1965 г. В нем представлены обзорные статьи и оригинальные работы известных зарубежных ученых по наиболее актуальным проблемам теоретической кибернетики: распознаванию образов, оценке сложности алгоритмов, преобразованию схем алгоритмов, теории кодирования и теории информации, комбинаторной сложности булевых функций.
Среди авторов сборника — известные специалисты Л. Дж. Стокмейер, Д. Е. Мюллер и Ф. П. Препарата.
Книга предназначена научным работникам, инженерам-исследователям, аспирантам и студентам математических специальностей, интересующимся теоретической кибернетикой и ее приложениями.
Редакция литературы по математическим наукам
1502000000
20205—038К 041(01)—7920205—038К 041(01)—7938—7938—79© «Мир», 1979© «Мир», 1979
20205—038
К 041(01)—79
20205—038
К 041(01)—79
38—79
38—79
© «Мир», 1979
© «Мир», 1979
Математические вопросы
Перестроение арифметическихвыражений для параллельноговычисления1)
Д. Е. Мюллер, Ф. П. Препарата
University of Illinois at Urbana-Champaign, Urbana, Illinois
Пусть E — арифметическое выражение с операциями сложения, умножения и деления, содержащее п переменных, каждая из которых встречается ровно один раз. В случае, когда каждая из этих трех операций выполняется за единицу времени, алгоритмы перестроения, предложенные в этой статье, дают время вычисления не более 2,88 log2 п + 1 для выражений общего вида и не более 2,08 log2 п для выражений без операции деления, хотя, впрочем, рассматриваются и другие случаи. Точные значения коэффициентов такие: 2/log2 а « 2,88 и l/log2 0 « 2,08, где а и 0 — положительные корни уравнений 22 = 2 + 1 и 24 = 22 + 1 соответственно. Хотя было известно, что эти времена имеют порядок log2 п, лучшие ранее известные значения коэффициентов для этих двух случаев были равны соответственно 4 и 2,15.
Авторы предполагают, что новые значения коэффициентов являются наилучшими из возможных, поскольку им удалось построить выражения, для вычисления которых, по-видимому, -требуются именно такие времена, по крайней мере с точностью до аддитивной константы.
В статье приводятся также верхние оценки времени перестроения заданного выражения Е и числа процессоров, требующихся для параллельного вычисления. Показано, что требуется не более Ofn1»44) операций для перестроения выражений общего вида и не более Ofn1*82) операций для перестроения выражений без операции деления. Отмечается, что, поскольку порядок времени компиляции больше чем п log п, число требующихся процессоров растет с той же скоростью относительно п, что и соответствующее время компиляции.