Ограниченный таблинг
Совсем недавно я начал играть с таблингом в Прологе; некоторые эксперименты, которые я проводил с b- prolog и xsb, можно найти в этом вопросе.
Поскольку таблицы становились все больше и больше, я понял, что мне нужно найти некоторые параметры / параметры табулирования, которые позволили бы мне ограничить объем памяти, выделяемой для табулирования.
Пока что я не нашел ничего подходящего в руководствах по yap, b- prolog и xsb.
Не могли бы вы указать мне некоторую полезную информацию?
1 ответ
В случае с YAP существуют некоторые публикации, в которых подробно описывается реализация таблиц. Одним из наиболее важных из них, вероятно, является включение и применение режима в системе YapTab:
http://cracs.fc.up.pt/node/4962
У меня есть некоторые примеры из этой статьи, адаптированные в Logtalk (я в той же исследовательской группе - CRACS - как авторы):
https://github.com/LogtalkDotOrg/logtalk3/blob/master/examples/tabling/tabling.lgt
(см. код, начинающийся со строки 63).
На веб-сайте CRACS ( http://cracs.fc.up.pt/) вы можете оштрафовать несколько других статей по табулированию.