问题标签 [first-order-logic]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
8951 浏览

logic - 什么时候用连词,什么时候用蕴涵?(一阶逻辑)

我现在正在学习一阶逻辑。我正在看这个例子:

一些狗吠 ∃x (dog(X) Λ bark(x))

所有的狗都有四条腿 ∀x (dog(x) -> have_four_legs(x))

我的问题是:第二个例子有可能是:∀x (dog(x) Λ have_four_legs(x))

为什么第一个例子不能是:∃x (dog(X) -> bark(x))

0 投票
1 回答
1049 浏览

logic - 嵌入“there exists”(∃)和“for all”(∀)如何工作?

我想知道在谓词演算中嵌入如何用于“存在”(∃)和“对于所有人”(∀)。具体来说,我正在尝试使用存在实例化 (EI) 和存在泛化 (EG) 来正式证明 ∃x∃y(R(x,y)) --> ∃y∃x(R(x,y)) .

不是在寻找全部证据。但是关于嵌入如何与这些实体一起工作(以及如何开始证明)的一些提示将是一个巨大的帮助!

提前致谢。

0 投票
3 回答
8642 浏览

nlp - 将句子转换为一阶逻辑

在一阶逻辑中,我知道规则。但是,每当我将一些句子转换为 FOL 时,我都会出错,我阅读了很多书籍和教程,你有什么技巧可以帮助我吗?

我犯错误的一些例子

有些孩子会吃任何食物

编辑 No2:我犯的第二类错误:海龟比兔子更长寿。

当然,我同意这本书,但是我的版本有什么问题吗?

0 投票
3 回答
3132 浏览

artificial-intelligence - 如何将此句子转换为一阶逻辑格式良好的公式?

我正在尝试使用一阶逻辑(谓词逻辑)将以下句子转换为格式良好的公式。

所有的塔都是相同的颜色。

我定义了以下谓词:

Tower(x) :: x 是一个塔。

颜色(x, y) :: x 的颜色为 y

我无法使用上述谓词将上述句子转换为格式良好的公式。是否可以使用上述谓词进行转换,或者需要一些新的谓词。请指教。

编辑:忘记添加细节。世界上只有三种可用的颜色(红、绿、蓝)。这个细节可以用吗。这对解决方案有什么影响吗?

0 投票
5 回答
15894 浏览

algorithm - 一阶逻辑中的谓词与函数

我最近对一阶逻辑中谓词和函数之间的区别感到非常困惑。

到目前为止我的理解是,

谓词是显示两个对象之间的比较或关系,例如,

函数用于指定特定对象是什么,例如,

现在我是在正确的轨道上区分这两个术语,还是我完全错了,需要一个简短的解释,我想听听专家的意见来澄清我的知识(或批准我的理解)。提前致谢

克里奥

0 投票
1 回答
547 浏览

logic - 合金表达式无法进行类型检查

我是 Alloy(规范语言)的初学者,需要根据案例研究做一些进一步的工作,可以在这里找到(代码在第 5 页)。相关代码:

更正一些语法后,我收到此错误消息:“此表达式无法进行类型检查”,并t'let t' = T0/t.next. 如何进行类型检查t'

0 投票
1 回答
248 浏览

logic - 为什么不能证明这个逻辑陈述?

在下文中,我看不出第二个语句与第四个语句有何不同。

我认为我们可以证明 21 是自然数,就像我们可以证明 2 一样。

你能解释一下为什么第二个陈述可以被证明而第四个不能被证明或者它们有什么不同吗?谢谢你。


以下英语陈述是逻辑陈述:

  • 0 是自然数
  • 2是自然数
  • 对于所有x,如果x是自然数,则x的后继也是自然数。
  • 21是自然数


谓词演算:

在这些逻辑陈述中,第一个和第三个可以被视为自然数的公理:假设为真的陈述,并且可以证明所有关于自然数的真实陈述。可以证明第二个陈述:

2 = successor(successor(0)) and natural(0) → natural(sucessor(0)) → natural(successor(successor(0))).

另一方面,第四个陈述不能从公理证明,因此可以假定为假。

0 投票
1 回答
455 浏览

pattern-matching - sml 中的逻辑简化

我正在用 sml 创建逻辑简化程序。但我对这个输入有一个问题:

而且它处于无限循环中。

这是我的代码:

0 投票
2 回答
2707 浏览

prolog - 一阶逻辑和序言

我试图了解序言如何表示一阶逻辑。例如,我如何在动物类型列表中表示:

狗(现货)。

猫(nyny)。

飞(哈利)

所有的动物都是哺乳动物还是昆虫?

0 投票
1 回答
880 浏览

nlp - 将一阶逻辑表达式映射到数据库条目(从 FOL 表达式中提取信息)

我正在构建一个仅限于医疗查询的问答系统。我使用一阶逻辑(FOL)来表示提出的问题。我已经设法使用NLTK BOOK概述的程序得出了 FOL 表达式。

例如,对于这样的问题:

糖尿病的症状是什么?

,我得到了一个看起来像这样的表示:

WHQ(list,exists y.(symptoms(y) & referTo(y,diabetes)))

这里,WHQ表示问题是 What question;list表示输出必须是某种值列表;y是映射到症状的一些值(变量) 。

我的问题是,

  1. 这种方法(或表示)是否有效?

  2. 考虑到 FOL 表达式是有效的,我将如何“以编程方式”映射此 FOL 表达式以从数据库中检索答案

任何额外的见解将不胜感激。

谢谢你。