Антиунификация (информатика) - Anti-unification (computer science)

Антиунификация - это процесс построения обобщения, общего для двух данных символических выражений. Как и в случае унификации , несколько структур различаются в зависимости от того, какие выражения (также называемые терминами) разрешены и какие выражения считаются равными. Если в выражении разрешены переменные, представляющие функции, процесс называется «антиунификация высшего порядка», в противном случае - «антиунификация первого порядка». Если требуется, чтобы в обобщении был экземпляр, буквально равный каждому входному выражению, процесс называется «синтаксическая анти-унификация», иначе «E-анти-унификация» или «теория анти-унификации по модулю».

Алгоритм антиунификации должен вычислять для заданных выражений полный и минимальный набор обобщений, то есть набор, охватывающий все обобщения и не содержащий лишних элементов, соответственно. В зависимости от структуры полный и минимальный набор обобщений может иметь один, конечное число или, возможно, бесконечно много членов, или может не существовать вовсе; оно не может быть пустым, поскольку в любом случае существует тривиальное обобщение. Для синтаксического антиунификации первого порядка Гордон Плоткин дал алгоритм, который вычисляет полное и минимальное единичное обобщение, содержащее так называемое «наименьшее общее обобщение» (lgg).

Анти-объединение не следует путать с разобщением . Последнее означает процесс решения системы неравенств , то есть нахождение значений переменных, при которых выполняются все заданные неравенства. Эта задача сильно отличается от поиска обобщений.

Предпосылки

Формально антиунификационный подход предполагает

  • Бесконечное множество V из переменных . Для антиунификации более высокого порядка удобно выбрать V, не пересекающуюся, из набора переменных, связанных с лямбда-членами .
  • Множество Т из терминов , таких , что VT . Для антиунификации первого и более высокого порядка T обычно представляет собой набор терминов первого порядка (термины, построенные из переменных и функциональных символов) и лямбда-членов (термины, содержащие некоторые переменные более высокого порядка), соответственно.
  • Отношение эквивалентности на , что указывает , какие условия считаются равными. Для антиунификации более высокого порядка, обычно if и являются альфа-эквивалентами . Для Е-антиунификации первого порядка отражает базовые знания об определенных функциональных символах; например, if считается коммутативным, если получается в результате замены аргументов некоторых (возможно, всех) вхождений. Если базовых знаний нет вообще, то одинаковые термины считаются равными только буквально или синтаксически.

Срок первого порядка

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

  • каждый переменный символ является термом: VT ,
  • каждый постоянный символ - это терм: CT ,
  • из каждого n термов t 1 , ..., t n и любого n -арного функционального символа fF n можно построить больший член .

Например, если x  ∈ V - переменный символ, 1 ∈ C - постоянный символ, а add ∈ F 2 - двоичный функциональный символ, то x  ∈ T , 1 ∈ T , и (следовательно) add ( x , 1) ∈ T по первому, второму и третьему правилу построения слагаемых соответственно. Последний термин обычно записывается как x +1, с использованием инфиксной нотации и более распространенного символа оператора + для удобства.

Член высшего порядка

Замена

Замещение является отображением из переменных в терминах; нотация относится к замене, отображающей каждую переменную в термин , for и любую другую переменную в себя. Применение этой замены к терму t записывается в постфиксной записи как ; это означает (одновременно) заменять каждое вхождение каждой переменной в термине t на . Результат применения подстановки σ к термину t называется экземпляром этого члена t . В качестве примера первого порядка, применяя замену к термину

f ( Икс , а , г ( z ), у ) дает
f ( ч ( а , у ) , а , г ( б ), у ) .

Обобщение, специализация

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

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

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

Проблема антиунификации, набор обобщений

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

Синтаксическая антиунификация первого порядка

Рамки синтаксической антиунификации первого порядка на основе является набором терминов первого порядка ( в течение некоторого заданного набора переменных, константы и из ичных функциональных символов) и на время синтаксического равенства . В этой структуре каждая проблема противодействия унификации имеет полный и, очевидно, минимальный набор одноэлементных решений . Его член называется наименьшим общим обобщением (lgg) проблемы, он имеет синтаксически равный экземпляр, а другой синтаксически равный . Любое общее обобщение и перечисление . Lgg уникален до вариантов: если и являются как полным, так и минимальным набором решений одной и той же синтаксической проблемы антиунификации , то и для некоторых терминов и , которые являются переименованием друг друга.

Плоткин дал алгоритм для вычисления lgg двух заданных членов. Он предполагает инъективное сопоставление , то есть сопоставление, присваивающее каждой паре терминов собственную переменную , так что никакие две пары не используют одну и ту же переменную. Алгоритм состоит из двух правил:

если предыдущее правило неприменимо

Например ,; это наименее общее обобщение отражает общее свойство обоих входных данных быть квадратными числами.

Плоткин использовал свой алгоритм для вычисления « относительного наименьшего общего обобщения (rlgg) » двух наборов предложений в логике первого порядка, которая была основой подхода Голема к индуктивному логическому программированию .

Теория модуля первого порядка антиобъединения

  • Якобсен, Эрик (июнь 1991 г.), Объединение и антиунификация (PDF) , Технический отчет
  • Эстволд, Бьярте М. (апрель 2004 г.), Функциональная реконструкция антиунификации (PDF) , NR Note, DART / 04/04, Норвежский вычислительный центр
  • Бойчева Светла; Марков, Здравко (2002). «Алгоритм, вызывающий наименьшее обобщение при относительной импликации» (PDF) . Цитировать журнал требует |journal=( помощь )
  • Куция, Темур; Леви, Хорди; Вилларе, Матеу (2014). «Антиунификация для условий без рейтинга и хеджирования» (PDF) . Журнал автоматизированных рассуждений . 52 (2): 155–190. DOI : 10.1007 / s10817-013-9285-6 . Программное обеспечение.

Уравнительные теории

  • Одна ассоциативная и коммутативная операция: Поттье, Лоик (февраль 1989 г.), Алгоритмы завершения и обобщения в логике первого порядка.; Pottier, Loic (1989), Generalization de termes en theorie equalle - Cas associatif-commutatif , Отчет INRIA, 1056 , INRIA
  • Коммутативные теории: Баадер, Франц (1991). «Объединение, слабое объединение, верхняя граница, нижняя граница и проблемы обобщения». Proc. 4-я конф. по методам и приложениям перезаписи (RTA) . LNCS. 488 . Springer. С. 86–91.
  • Свободные моноиды: Biere, A. (1993), Normalisierung, Unifikation und Antiunifikation in Freien Monoiden (PDF) , Univ. Карлсруэ, Германия
  • Регулярные занятия по конгруэнтности: Хайнц, Биргит (декабрь 1995 г.), Anti-Unifikation modulo Gleichungstheorie und deren Anwendung zur Lemmagenerierung , GMD Berichte, 261 , TU Berlin, ISBN 978-3-486-23873-0; Бургхардт, Йохен (2005). «Электронное обобщение с использованием грамматик». Искусственный интеллект . 165 (1): 1–35. arXiv : 1403,8118 . DOI : 10.1016 / j.artint.2005.01.008 .
  • A-, C-, AC-, ACU-теории с упорядоченными сортами: Alpuente, Maria; Эскобар, Сантьяго; Эсперт, Хавьер; Месегер, Хосе (2014). «Модульный алгоритм обобщения по уравнениям с сортировкой по порядку» (PDF) . Информация и вычисления . 235 : 98–136. DOI : 10.1016 / j.ic.2014.01.006 . ЛВП : 2142/25871 .
  • Чисто идемпонентные теории: Черна, Дэвид; Куция, Темур (2019). «Идемпотентное антиобъединение» . ACM-транзакции в вычислительной логике . 21 (2). HDL : 10,1145 / 3359060 .

Сортированное антиунификация первого порядка

  • Таксономические сорта: Frisch, Alan M .; Пейдж, Дэвид (1990). «Обобщение с таксономической информацией». AAAI : 755–761.; Frisch, Alan M .; Пейдж-младший, К. Дэвид (1991). «Обобщение атомов в логике ограничений» . Proc. Конф. по представлению знаний .; Фриш, AM; Пейдж, компакт-диск (1995). "Построение теорий в экземплярах". В Меллиш, CS (ред.). Proc. 14-й IJCAI . Морган Кауфманн. С. 1210–1216.
  • Ключевые слова: Плаза, Э. (1995). «Дела как термины: подход с использованием терминов к структурированному представлению случаев». Proc. 1-я Международная конференция по прецедентному мышлению (ICCBR) . LNCS. 1010 . Springer. С. 265–276. ISSN  0302-9743 .
  • Идестам-Альмквист, Питер (июнь 1993 г.). «Обобщение под следствием рекурсивного антиунификации» . Proc. 10-я конф. по машинному обучению . Морган Кауфманн. С. 151–158.
  • Фишер, Корнелия (май 1994 г.), PAntUDE - Антиунификационный алгоритм для выражения уточненных обобщений , исследовательский отчет, TM-94-04, DFKI
  • A-, C-, AC-, ACU-теории с упорядоченными видами: см. Выше

Номинальная антиунификация

Приложения

Зохар Манна ; Ричард Уолдингер (декабрь 1978 г.). Дедуктивный подход к синтезу программ (PDF) (Техническая записка). SRI International . - препринт статьи 1980 г.
Зохар Манна и Ричард Уолдингер (январь 1980 г.). «Дедуктивный подход к синтезу программ». Транзакции ACM по языкам и системам программирования . 2 : 90–121. DOI : 10.1145 / 357084.357090 .

Антиобъединение высшего порядка

Примечания

использованная литература