Индексация сроков
В информатике — индекс термина это структура данных, облегчающая быстрый поиск терминов и предложений в логической программе . [1] дедуктивная база данных или автоматизированное средство доказательства теорем .
Обзор
[ редактировать ]Многие операции в автоматических средствах доказательства теорем требуют поиска в огромных коллекциях терминов и предложений. Такие операции обычно укладываются в следующую схему. Учитывая коллекцию терминов (пунктов) и термина запроса (пункта) , найди в некоторые/все термины связанный с в соответствии с определенным условием поиска. Наиболее интересные условия поиска формулируются как наличие подстановки, которая особым образом связывает запрос и извлекаемые объекты. . Вот список условий поиска, часто используемых в пруверах:
- срок унифицирован с термином , т. е. существует замена , такой, что =
- срок является примером , т. е. существует замена , такой, что =
- срок представляет собой обобщение , т. е. существует замена , такой, что =
- пункт θ- предложение , т. е. существует замена , такой, что является подмножеством/подмножеством
- пункт является θ-отнесенным к , т. е. существует замена , такой, что является подмножеством/подмножеством
Чаще всего мы действительно заинтересованы в поиске подходящего замены явно, вместе с полученными терминами ,а не просто в установлении существования таких замен.
Очень часто размеры наборов терминов, подлежащих поиску, велики, вызовы поиска происходят часто, и проверка условия поискаявляется довольно сложным. В таких ситуациях линейный поиск по , когда поискусловие проверяется на каждом члене, начиная с , становится непомерно дорогостоящим. Чтобы решить эту проблему, специальные структуры данных, называемые индексами создаются . разработан для поддержки быстрого поиска. Такие структуры данных, вместе с сопутствующими алгоритмами обслуживания индексаи поиск называются методами индексации терминов .
Классические методы индексации
[ редактировать ]Деревья подстановки превосходят индексацию путей, индексацию дерева дискриминации и деревья абстракции. [2]
Индекс терминов дерева дискриминации хранит свою информацию в древовидной структуре данных. [3]
Методы индексирования, используемые в логическом программировании
[ редактировать ]Индексирование по первому аргументу — это наиболее распространенная стратегия, в которой первый аргумент используется в качестве индекса. Он различает атомарные значения и главный функтор составных термов.
Индексация без первого аргумента — это разновидность индексации по первому аргументу, в которой используются те же или аналогичные методы, что и при индексации по первому аргументу для одного или нескольких альтернативных аргументов. Например, если вызов предиката использует переменные в качестве первого аргумента, система может вместо этого использовать второй аргумент в качестве индекса.
Индексация с несколькими аргументами создает комбинированный индекс по нескольким экземплярам аргументов, если не существует достаточно избирательного индекса с одним аргументом.
Глубокая индексация используется, когда несколько предложений используют один и тот же главный функтор для некоторого аргумента. Он рекурсивно использует те же или похожие методы индексации аргументов составных терминов.
Индексация Trie использует дерево префиксов для поиска применимых предложений. [4]
Ссылки
[ редактировать ]- ^ Коломб, Роберт М. (1991). «Улучшение унификации в PROLOG посредством индексации предложений». Журнал логического программирования . 10 : 23–44. дои : 10.1016/0743-1066(91)90004-9 .
- ^ Питер Граф. «Индексирование дерева замен» .1994.
- ^ Джон В. Уилер; Гуарионекс Джордан. «Эмпирическое исследование индексации терминов в дарвиновской реализации модели эволюционного исчисления» .2004.п. 5.
- ^ Кернер, Филипп; Леушель, Майкл; Барбоза, Жуан; Коста, Витор Сантос; Даль, Вероника; Эрменегильдо, Мануэль В.; Моралес, Хосе Ф.; Вилемакер, Ян; Диас, Дэниел; Абреу, Сальвадор; Чатто, Джованни (2022). «Пятьдесят лет Пролога и не только» . Теория и практика логического программирования . 22 (6): 776–858. дои : 10.1017/S1471068422000102 . hdl : 10174/33387 . ISSN 1471-0684 . В эту статью включен текст из этого источника, доступного по лицензии CC BY 4.0 .
Дальнейшее чтение
[ редактировать ]- П. Граф, Индексирование терминов, Конспекты лекций по информатике 1053, 1996 г. (немного устаревший обзор)
- Р. Секар, И. В. Рамакришнан и А. Воронков, Индексирование терминов, в книге А. Робинсона и А. Воронкова, редакторы, Справочник по автоматическому рассуждению , том 2, 2001 г. (недавний обзор)
- WW МакКьюн, Эксперименты с индексированием дерева дискриминации и индексированием путей для поиска терминов, Журнал автоматизированного рассуждения, 9 (2), 1992 г.
- Граф П. Индексирование дерева замен. RTA, Конспекты лекций по информатике 914, 1995 г.
- Стикель М., Метод индексации путей для терминов индексирования, Tech. Представитель 473, Центр искусственного интеллекта , SRI International , 1989 г.
- С. Шульц, Простое и эффективное обобщение предложений с индексированием векторов признаков, Proc. семинара IJCAR-2004 ESFOR, 2004 г.
- Рязанов А., Воронков А., Частично адаптивные деревья кодов, Учеб. ДЖЕЛИЯ, Конспекты лекций по искусственному интеллекту, 1919, 2000 г.
- Х. Ганцингер, Р. Ньювенхейс и П. Нивела, Быстрое индексирование с помощью кодированных деревьев контекста, Журнал автоматизированного рассуждения, 32 (2), 2004 г.
- А. Рязанов и А. Воронков, Эффективный поиск экземпляров с помощью индексации стандартных и реляционных путей, Информация и вычисления, 199 (1–2), 2005 г.