Описание тега minikanren

KANREN - это система декларативного логического программирования с первоклассными отношениями, встроенная в чисто функциональное подмножество Scheme. miniKANREN - это упрощенное подмножество KANREN без множества наворотов и оптимизаций.

KANREN - это система декларативного логического программирования с первоклассными отношениями, встроенная в чисто функциональное подмножество Scheme. Система имеет теоретико-множественную семантику, истинные союзы, справедливое планирование, первоклассные отношения, логические переменные с лексической областью видимости, стратегии "сначала в глубину" и стратегии итеративного углубления. Система обеспечивает высокую производительность и выразительность без разрезов.

Применения системы варьируются от экспертных систем до вывода полиморфных типов и разрешения перегрузки, до проверки моделей и доказательства теорем. Систему можно использовать как мета-логическую систему.

KANREN работает на любой компьютерной платформе, для которой существует реализация схемы (от PalmPilot и iPAQ до рабочих станций и серверов Unix/Linux/Winxx/Mac и блоков MindLego). Система может быть скомпилирована или интерпретирована. KANREN, по сути, являясь библиотекой схемы, может взаимодействовать с пользователем через любой графический интерфейс или интерфейс командной строки, предоставляемый реализацией схемы хоста.

miniKANREN - это упрощенный KANREN без множества наворотов и оптимизаций всей системы. Целью упрощения было облегчить объяснение miniKANREN.