miniKanren是一类关系型编程语言。miniKanren可以通过给定的关系表达式和计算结果来反向推导，找出符合条件的输入变量的取值组合。程序员可以通过加入关系表达式对输入变量和计算结果添加约束条件。miniKanren通过“搜索树”的办法来搜索所有可能的输入变量。如果搜索空间非常大而且符合条件的结果不存在，miniKanren的搜索有可能永远也不会停止。codice_1是一个用miniKanren写的程序，evalo是以关系表达式为输入和输出的程序。在miniKanren中调用evalo的方法是：