谓词逻辑之 语法规则

简介:   谓词逻辑公式涉及两种事物: ⑴是我们谈及的对象,如a和p这样的个体,以及x和u这样的变量和函数符号。在谓词逻辑中,用来表示对象的表达式称为项(terms); ⑵是表示真值,即公式,例如Y(x,m(x))是公式。
 

谓词逻辑公式涉及两种事物:

是我们谈及的对象,如ap这样的个体,以及xu这样的变量和函数符号。在谓词逻辑中,用来表示对象的表达式称为(terms)

是表示真值,即公式,例如Y(x,m(x))是公式。

谓词公式由三个集合构成:谓词符号集P函数符号集F常值符号集C

其中常值符号视为没有任何变量的函数符号,因此常值与必须变量的真正函数均属于集合F

为方便起见,我们丢弃常值符号集C,将常值市委0元,即零元(nullary)函数。

语言的由变量、常值符号、作用在其上的函数构成。函数可以嵌套。

任何变量都是项;

c属于F是零元函数,则c是项;

t1,t2…tn是项,且f属于F的元n>0,则f(t1,t2…tn)是项;

没有其他的项。

 

BNF可以写为:T::=x|c|f(t,…t)

其中x取遍一个变量的集合var,c取遍F中的零元函数符号,f取遍F中的元n>0的符号。

项的第一批构建块内容是常量(零元函数)和变量;

更复杂的项是由以前构造好的项与其元数相匹配数码的函数符号得到的;

项的概念依赖于集合F。如果改变了F,就改变了项的集合。

 

应用前面定义的F上项的集合,递归定义(F,P)上的公式集如下:

p属于Pn>=1元的谓词符号,t1,t2,是F上的项,P(t1,…tn)是公式

Φ是公式,则¬Φ也是公式

Φ和是公式,则(Φψ)(Φψ)(Φ->ψ)也是公式

Φ是公式,x是变量,则(xΦ)(xΦ)也是公式

没有其他形式的公式

BNF表示为Φ::=P(t1,t2,…tn)|(Φ)|(ΦΦ)|(ΦΦ)|(Φ->ψ)|(xΦ| (xΦ)

﹁,xx绑定优先级最高;

其次为

然后是,它是右结合的。

只要不致引起歧义,可以省去关于量词的括号。

 

来看一个例子:将下面语句翻译成谓词逻辑公式:

我父亲的每个儿子都是我的兄弟

我们需要考虑的是要选择把父亲表示成一个谓词还是一个函数符号。

作为一个谓词,常量m表示m是项。选择谓词集{S,F,B}

S(x,y): xy的儿子

F(x,y): xy的父亲

B(x,y): xy的兄弟

这样的结果是x y(F(x,m) S(y,x)->B(y,m)),对所有的xy,若xm的父亲,yx的儿子,则ym的兄弟;

f表示一个变量的函数,返回值是该变量的父亲,因为父亲存在且唯一,所以f确实是一个函数而不是一个关系。上述语句经符号编码后得:

x(S(x,f(m))->B(x,m)),对所有x,xm的父亲的儿子,则xm的兄弟。

实际上,上面的两个结果都有问题,你能看出来吗?

 

目录
相关文章
【编译原理】语法分析:从顶向下、最左推导
【编译原理】语法分析:从顶向下、最左推导
|
2月前
|
自然语言处理 编译器 C语言
软考:区分词法分析、语法分析、语义分析
本文解释了编译过程中的词法分析、语法分析和语义分析三个阶段的区别,并提供了相关练习题,帮助读者理解各阶段在编译过程中的作用和重要性。
90 4
|
7月前
语法树的画法(根据文法求字符串)
语法树的画法(根据文法求字符串)
78 1
|
7月前
|
存储 算法 编译器
【c 语言】算术操作符详解
【c 语言】算术操作符详解
131 0
|
7月前
|
SQL 关系型数据库 MySQL
MySQL数据类型、运算符以及数据库范式
MySQL数据类型、运算符以及数据库范式
81 0
MySQL数据类型、运算符以及数据库范式
|
7月前
|
算法
运算符的妙用以及部分机理解析
运算符的妙用以及部分机理解析
73 0
|
存储 自然语言处理
词法分析器的设计与实现
加深对词法分析器的工作过程的理解;加强对词法分析方法的掌握;能够采用一种编程语言实现简单的词法分析程序;能够使用自己编写的分析程序对简单的程序段进行词法分析。
210 0
|
JavaScript 前端开发
【重温基础】5.表达式和运算符
【重温基础】5.表达式和运算符
131 0