是否有用于执行自动推理的库

我想编写一个能够进行如下演绎推理的程序:

前提:

1. 所有的猫都是鸟。

2. 每只鸟都会飞。

结论:每只猫都会飞。(尽管这很荒谬)

(这只是一个例子。实际上会比这更复杂)

我希望的程序能够接收用户输入的结论,并检查在程序中已存储的前提下该结论是否有效,如果可能,还能够建议哪些结论是有效的。

所以,我的疑问是,是否有可以帮助我实现这一功能的库?


回答:

你没有提到具体的编程语言,所以我不知道你是否真正需要的是一个库。你描述的听起来像是自动定理证明,因此你可以深入研究这个主题。一种自动定理证明语言 – 或者交互式证明助手,或者任何你喜欢的称呼 – 是Coq。我没有使用过它,但维基百科页面提供了有用的信息。我尝试过组装一个简单的证明,但坦白说,这有点复杂。

另一种选择是逻辑编程。例如,PROLOG可以让你做类似的事情:

canfly(X) :- isbird(X).isbird(X) :- iscat(X).iscat(tom).?- canfly(tom).Yes

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注