Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Рис.1: Название слияние навеяно географией , что означает встречу двух водоемов.

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

Мотивирующие примеры [ править ]

Пример Confluence expression.svg

Обычные правила элементарной арифметики образуют абстрактную систему переписывания. Например, выражение (11 + 9) × (2 + 4) может быть вычислено, начиная с левой или с правой круглой скобки; однако в обоих случаях в конечном итоге получается один и тот же результат. Это говорит о том, что система арифметического переписывания является единой.

Второй, более абстрактный пример получается из следующего доказательства того, что каждый элемент группы равен обратному своему обратному: [1]

Это доказательство начинается с данных групповых аксиом A1-A3 и устанавливает пять утверждений R4, R6, R10, R11 и R12, каждое из которых использует некоторые более ранние, а R12 является основной теоремой. Некоторые доказательства требуют неочевидных, если не творческих, шагов, таких как применение аксиомы A2 в обратном порядке, тем самым переписывая «1» на « a −1 ⋅ a» на первом этапе доказательства R6. Одним из исторических мотивов разработки теории переписывания терминов было стремление избежать необходимости в таких шагах, которые трудно найти неопытному человеку, не говоря уже о компьютерной программе.

Если термин системы переписывания является сливающимся и терминатором , простой метод существует , чтобы доказать равенство между двумя выражениями (акой точки ) s и т : Начиная с й , применяется равенства [примечание 1] слева направо как можно дольше, в конечном итоге получения термин s ' . Получите из t член t ' аналогичным образом. Если оба условия s и t буквально совпадают, то s и t (что неудивительно) оказываются равными. Более важно, если они не согласны, sи t не может быть равным. То есть любые два члена s и t, которые вообще могут быть доказаны равными, могут быть таковыми с помощью этого метода.

Успех этого метода не зависит от определенного сложного порядка применения правил перезаписи, поскольку слияние гарантирует, что любая последовательность применения правил в конечном итоге приведет к одному и тому же результату (в то время как свойство завершения гарантирует, что любая последовательность в конечном итоге достигнет конца вообще). Следовательно, если для некоторой эквациональной теории может быть предусмотрена сливающаяся и завершающая система переписывания терминов, [примечание 2] не требуется ни малейшего творчества для выполнения доказательств равенства терминов; эта задача, следовательно, становится доступной для компьютерных программ. Современные подходы обрабатывать более общие абстрактные системы переписывания , а не термин переписывания системы; последние являются частным случаем первого.

Общий случай и теория [ править ]

Рис.2: На этой диаграмме a сокращается до b или c за ноль или более шагов перезаписи (обозначенных звездочкой). Чтобы отношение перезаписи было сливающимся, оба редукта должны, в свою очередь, сводиться к некоторому общему d .

Система перезаписи может быть выражена как ориентированный граф, в котором узлы представляют выражения, а ребра представляют перезаписи. Так, например, если выражение можно переписать в Ь , то мы говорим , что б является редуктом из ( в качестве альтернативы, сводится к Ь , или является расширением из б ). Это представлено стрелками; ab указывает, что a сводится к b . Интуитивно, это означает , что соответствующий граф имеет направленное ребро из а к б .

Если есть путь между двумя узлами графа c и d , то он образует редукционную последовательность . Так, например, если cc 'c' → ... → dd , то мы можем написать c * d , что указывает на существование редукционной последовательности от c до d . Формально,*является рефлексивно-транзитивным замыканием →. Используя пример из предыдущего абзаца, мы имеем (11 + 9) × (2 + 4) → 20 × (2 + 4) и 20 × (2 + 4) → 20 × 6, поэтому (11 + 9) × ( 2 + 4)* 20 × 6.

Установив это, слияние можно определить следующим образом. aS считается конфлюэнтным, если для всех пар b , cS таких, что a * б и а * с , существует dS с б * d и c * d . Если каждый aS конфлюэнтен, мы говорим, что → конфлюэнтен или обладает свойством Черча-Россера . Это свойство также иногда называют свойством ромба по форме диаграммы, показанной справа. Некоторые авторы оставляют за собой термин « алмазное свойство» для варианта диаграммы с единичными редукциями повсюду; то есть всякий раз, когда ab и ac , должно существовать d такое, что bd и cd. Вариант с одним редуктором строго сильнее, чем вариант с несколькими редукторами.

Местное слияние [ править ]

Рис.3: Циклическая, локально-конфлюэнтная, но не глобально конфлюэнтная система перезаписи [2]
Рис.4: Бесконечная нециклическая, локально конфлюэнтная , но не глобально конфлюэнтная система перезаписи [2]

Элемент aS называется локально (или слабо) конфлюэнтным, если для всех b , cS с ab и ac существует dS с b * d и c * d . Если каждый элемент aS локально конфлюэнтен, то → называется локально (или слабо) конфлюэнтным или обладает слабым свойством Черча-Россера . Это отличается от слияния тем, что b и c должны быть уменьшены с a за один шаг. По аналогии с этим слияние иногда называют глобальным слиянием .

Соотношение *, Вводятся в качестве обозначения для последовательностей сокращения, может рассматриваться как переписывания системы в своем собственном праве, чье соотношение является рефлексивным-транзитивным замыканием на . Поскольку последовательность редукционных последовательностей снова является редукционной последовательностью (или, что то же самое, поскольку формирование рефлексивно-транзитивного замыкания идемпотентно ),** знак равно *. Отсюда следует, что → конфлюэнтно тогда и только тогда, когда* локально сливается.

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

Полуслияние [ править ]

Определение локального слияния отличается от определения глобального слияния тем, что учитываются только элементы, полученные из данного элемента за один шаг переписывания. Рассматривая один элемент, достигаемый за один шаг, и другой элемент, достигаемый произвольной последовательностью, мы приходим к промежуточному понятию полуслияния: элемент aS называется полуслитым, если для всех b , cS с aб и а * с существует dS с б * d и c * d ; если каждый aS полуконфлюэнтен, мы говорим, что → полуконфлюэнтно.

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

Сильное слияние [ править ]

Сильное слияние - это еще один вариант локального слияния, позволяющий сделать вывод о глобальном слиянии системы переписывания. Элемент aS называется сильно конфлюэнтным, если для всех b , cS с ab и ac существует dS с b * d и либо cd, либо c = d ; если каждый aS сильно конфлюэнтен, мы говорим, что → сильно конфлюэнтно.

Конфлюэнтный элемент не обязательно должен быть сильно конфлюэнтным, но сильно конфлюэнтная система переписывания обязательно конфлюэнтна.

Примеры конфлюэнтных систем [ править ]

См. Также [ править ]

  • Сходимость (логика)
  • Критическая пара (логика)
  • Нормальная форма (реферат)

Заметки [ править ]

  1. ^ затем вызвал правила перезаписи, чтобы подчеркнуть их ориентацию слева направо
  2. ^ Алгоритм завершения Кнута-Bendix можно использовать для вычисления такой системы из заданного набора уравнений. Такая система, например, для групп, показана здесь с последовательной нумерацией ее предложений. Используя его, доказательство, например, R6 состоит в применении R11 и R12 в любом порядке к ( a −1 ) −1 ⋅1, чтобы получить a .; никакие другие правила не применяются.

Ссылки [ править ]

  • Системы перезаписи терминов , Тереза, Кембриджский трактат по теоретической информатике, 2003.
  • Изменение терминов и все такое , Франц Баадер и Тобиас Нипков , Cambridge University Press, 1998 г.
  1. ^ KH Власий и Х.-Ю. Bürckert, ed. (1992). Deduktionsssysteme . Ольденбург. п. 291.; здесь: с.134; Названия аксиом и предложений следуют за исходным текстом
  2. ^ a b Н. Дершовиц, Ж.-П. Жуанно (1990). «Системы перезаписи». В Яне ван Леувене (ред.). Формальные модели и семантика . Справочник по теоретической информатике. B . Эльзевир. С. 243–320. ISBN 0-444-88074-7. Здесь: стр.268, рис. 2а + б.

Внешние ссылки [ править ]

  • Вайсштейн, Эрик В. «Сливающийся» . MathWorld .