Ответ 1
core.logic - это реализация miniKanren - изначально написанная и спроектированная на Схеме Дэн Фридман, Уильям Берд, Олег Киселев и другие. Это попытка встроить реляционное программирование в стиле Prolog в Lisp.
Если вы хотите понять, как это работает, вам нужно прочитать первые три главы диссертации Уильяма Берда: https://scholarworks.iu.edu/dspace/bitstream/handle/2022/8777/Byrd_indiana_0093A_10344.pdf?sequence=1
Рассматриваемый Schemer также подробно описывает унификатор. Однако гораздо более тонкая цель miniKanren не получает всестороннего лечения - вам нужно посмотреть на диссертацию Byrd для этого.
Даже тогда, как и в случае с мета-циркулярными переводчиками, многие идеи не могут быть получены без попытки реализовать систему самостоятельно на разных языках программирования.