LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 414|回复: 0

如何用逻辑编程解决问题

[复制链接]
发表于 2023-12-26 16:25:00 | 显示全部楼层 |阅读模式

如何用逻辑编程解决问题

逻辑编程使用事实和规则来解决问题。 这就是为什么他们被称为逻辑编程的基石。 在逻辑编程中需要为每个程序指定一个目标。要理解在逻辑编程中如何解决问题,我们需要了解构建块 - 事实和规则 -
事实

实际上,每个逻辑程序都需要事实来处理,以达到既定目标。 事实上基本上是关于计划和数据的真实陈述。 例如,北京是中国的首都。

规则

实际上,规则是允许我们对问题域做出结论的约束条件。 规则基本上写成逻辑条款来表达各种事实。 例如,如果构建游戏,那么必须定义所有规则。

规则对于解决逻辑编程中的任何问题都非常重要。 规则基本上是可以表达事实的合乎逻辑的结论。 以下是规则的语法 -

A∶− B1,B2,...,Bn.

在这里,A是头部,B1,B2,… Bn是主体。

例如 - ancestor(X,Y): - father(X,Y)。

ancestor(X,Z): - father(X,Y),ancestor(Y,Z)。

对于每一个X和Y,如果X是Y的父亲,Y是Z的祖先,那么X是Z的祖先。对于每个X和Y,X是Z的祖先,如果X是 Y和Y的父亲是Z的祖先。


安装必需的包

为了在Python中开始逻辑编程,需要安装以下两个包 -
  
Kanren

它为我们提供了一种简化业务逻辑编写代码的方式。 它让我们用规则和事实来表达逻辑。 以下命令来安装

kanren -

pip install kanren

SymPy

SymPy是符号数学的Python库。 它旨在成为一个全功能的计算机代数系统(CAS),同时保持代码尽可能简单,以便易于理解和扩展。 以下命令是用来安装SymPy -

pip install sympy


//更多请阅读:https://www.yiibai.com/ai_with_python/ai_with_python_logic_programming.html




您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表