当前位置:文档之家› 第五章:一阶逻辑的语法和语义

第五章:一阶逻辑的语法和语义

一阶谓词逻辑部分——一阶语法:1定义字母表的定义一个一阶语言L的字母表由以下符号组成:1)一组非逻辑符号,其中包含:i)一个(可能空的)个体常项集;{a1,a2,…}ii)对每个n ≥1, 一个(可能空的)n元谓词集;{F11,F12,…,F21,F22,…,F n1,F n2,…,…}iii)对每个n ≥1, 一个(可能空的)n元函数符号集{f11,f12,…,f21,f22,…,f n1,f n2,…,…}2)一组固定的逻辑符号,其中包含:i)个体变项x0, x1, x2,…(可数无穷多);ii)量词∀,[∃];iii)联结词⌝,→,[∧,∨,↔];iv)等词[≡];v)括号),(。

注1:我们上面定义的,可以叫做带等词的一阶语言的字母表。

形式语言对其字母集(及其每个子类)的大小做了限定,要求它(它们)是可数的。

这是因为,对不可数集合,一般没有一个能行的方法来判定一个对象是否属于它。

注2:所有一阶语言有共同的逻辑符号,它们的字母表的差别完全由非逻辑符号决定,所以,在不引起误解的情况下,我们不妨把一个一阶语言就简单地看成它的非逻辑符号集。

注3:一个语言(的字母表)虽然可能是为了描述某个特殊的结构而设计的,但字母表一旦给定,这个语言也可以用来描述其他的结构,只要这些结构的组成与这些字母(的一部分)相匹配就行。

注4:在谈论一个一阶语言的时候,我们需要一些元语言的变项来代表这个(对象)语言字母表中的任意某类符号。

我们约定,在元语言中用x, y, z等代表一阶语言的个体变项;c, d, e等代表一阶语言的个体常项;P, Q, R等代表一阶语言的谓词;f, g, h等代表一阶语言的函数符号。

2 项的归纳定义下一步我们要从字母表中构造一阶语言的词项(以下简称项)。

项的作用是指称或表示结构中的个体,所以个体常项是一种项,个体变项是另一种项,而函数,如f(x) = x的母亲,其函数值也代表个体,所以函数表达式也是项。

现在的问题是:到底哪些东西是项,或者,我们如何确切定义项的集合?设L为一阶语言。

L-项定义为:1)基始条件:i)L字母表中的每个个体常项是L-项。

ii)每个个体变项是L-项。

2)归纳条件:对任意n 1,若f是L的n元函数符号,且符号串t1,…, t n是n个L-项,则它们的连接ft1…t n也是L-项。

3)封闭条件:没有其他东西是L-项。

注1:叙述这个定义时,我们用到了新的元语言变项t。

以后我们就用r,s,t等代表项。

注2:如此定义的L中的项具有可判定性,具体的判定步骤我们省略。

项的长度是有穷的,但是项的集合可以是可数无穷的。

3 公式的归纳定义语言中有了项,我们便可以用不同的方式指称结构中的个体。

但是,仅能指称个体,还不足以描述结构。

我们还需要语言中其他的表达式,来表达个体具有什么性质(属于什么集合)以及个体间具有什么关系(个体的有序组属于什么集合),或者说,表达关于结构的一阶命题。

这种表达式,叫做公式。

公式与项类似,也是字母表中的符号组成的符号串,也能用归纳定义把它确定下来。

定义设L为任意一阶语言。

L的公式(或L-公式)定义为:1)基始条件:i)对L的任意n(n ≥ 1)元谓词P和任意n个L-项t1, t2,…, t n,Pt1…t n是L-公式;2)归纳条件:ⅰ)如果A是L-公式,则⌝A也是L-公式;ⅱ)如果A,B是L-公式,则(A → B)也是L-公式;ⅲ)如果A是L-公式,x是个体变项,则∀x A也是L-公式;3)封闭条件:没有其他东西是L-公式。

注1:可以看出,这里定义的还是L-串的某种连接形成的L-串。

基始条件确定的公式,称为原子公式。

原子公式由谓词和项直接连接而成。

其他非原子公式都是从原子公式出发,添加真值联结词或量词形成的。

归纳条件确定的公式ⅰ)ⅱ)ⅲ)分别称为否定式、蕴涵式、全称式。

注意,∀x或∃x放在一个公式A之前形成新公式的时候,并不要求A中出现x。

注2:定义中出现了元语言变项A和B,我们约定以后就用它们代表公式。

注意,象Pt1…t n、A、(A ∧ B)、∀x A等等的,有元语言变项出现于其中的,本身作为符号串都不是公式(公式只由对象语言中的符号组成),它们称为公式模式。

每个公式模式都代表形如自身的一切公式。

显然,与L-项的情形一样,每个L-公式也是有穷长的。

公式的集合可以是可数无穷的。

注3:对于一个符号串是否是公式,我们也有能行的可判定程序。

4自由和约束、代入4.1 定义对一个量化式∀x A(或∃x A),称其子公式A是量词∀x(或∃x)的辖域。

一般而言,如果∀x A(或∃x A)作为子公式出现在公式B中,则称A是这个量词在B中的辖域。

直观上看,一个量词的辖域就是紧跟着它的最短公式。

比如,在L1st-公式∀x1(P01c1→ (P01c1∧P11x1)) 中,∀x1的辖域就是(P01c1→ (P01c1∧P11x1));而在(P01c1→∀x1 (P01c1∧P11x1))中,∀x1的辖域则是(P01c1∧P11x1)。

一个量词在一个公式中可能有多次出现,此时它的每一次出现都有一个辖域。

例如,在∀x1 (P01c1→∀x1 (P01c1∧P11x1))中,∀x1的第一次出现的辖域是(P01c1→∀x1 (P01c1∧P11x1)),而第二次出现的辖域则是(P01c1∧P11x1)。

4.2 定义在公式ϕ中,一个变项x如果出现在某个形如∀x (或∃x)的量词的辖域中,或它就紧跟在∀(或∃)后面,则称x在A中的这处出现是约束的。

变项的非约束的出现,称为自由出现。

如果x在A中有一处自由出现,则称x是A中的自由变项。

如果x在A中的所有出现都是约束的,则x是A中的约束变项。

4.3 例考虑以下L ord-公式:⌝ x0≡x1;∀x0(⌝ x0≡x1∧≤x0x1)∀x0(⌝ x0≡x1∧∃x1≤x0x1)在第一个公式中,所有变项的所有出现都是自由的,因此两个变项都是自由变项。

第二个公式中,x0的三处出现都是约束的,因此是约束变项,而x1的两处出现都是自由的,所以x1是自由变项。

第三个公式中,x1的第一处出现是自由的,第二处出现是约束的,但既然x1有自由出现,它就是这个公式中的自由变项。

4.4 定义设L是一个一阶语言,s是一个L-项。

对任意变项x和L-项t,我们如下递归定义t在s中对x的代入,记为s[x/t]:1)若s为个体常项,则s[x/t] = s。

2)若s为个体变项y,则s[x/t]=y 若y≠x;否则t若y = x。

3)若s为ft1…t n,则s[x/t]=ft1[x/t]…t n[x/t]。

容易归纳证明,s[x/t]仍然是L-项。

4.5 定义设L是一个一阶语言,A是一个L-公式。

对任意变项x和L-项t,我们如下递归定义t在A中对x的代入,记为A[x/t]:容易归纳证明,A [x/t]仍然是L-公式。

4.6 定义 设L 是一个一阶语言,A 是一个L-公式。

对任意变项x 和L-项t ,称t 在A 中对x 可代入,如果x 在A 中不自由地出现于某个∀y (或∃y )的辖域中,这里的y 是出现于t 中的一个变项。

t 在A 中对x 可代入也称为t 在A 中对x 是替换自由的。

4.7 举例及练习(1) x 3对公式 中的x 2是自由的,而x 1对公式中的x 2则是不自由的。

因为x 2自由地出现在∀x 1的辖域中,而x 2并没有自由地出现在∀x 3的辖域中(在这里有两个意思:或者x 2没有出现在∀x 3的辖域中,或者 x 2出现在∀x 3的辖域中,但是x 2的出现是不自由的)。

对于(1)1112()x A x ∀11111111111111,...,,...,(/,...,/),...,,...,(,...,),(/,...,/)(/,...,/,...,/,...,/),n n n n n n n n n n n n n n x x t t A A x t x t t t A x x A P u u A x t x t P u x t x t u x t x t A B ⌝ 令两两不同,令是项,且令是公式。

我们用表示用同时替换中的所有自由出现而得到的结果。

(1)若=则= ()() (2)若=111111111111(/,...,/)(/,...,/).,{,...,},(/,...,/)/,...,/(1),{,...,},(/,...,/)n n n n n n n n n i i n n n A x t x t B x t x t A B C A xB x x x A x t x t xB x t x t A x B i n x x x A x t x t ⌝→∀∉∀∀≤≤∈∀则==的情况也是如此。

(3)若=且则 =(). (4)若=即则 =111111/,...,/,,/,...,/i i i i i n n i i x B x t x t x t x t x B x --++∀()(也就是说,对公式中出现的地方不进行替换)。

中所举的例子来说,是因为x 2没有出现在∀x 3的辖域中。

(2)也有可能出现x 2约束地出现在∀x 3的辖域中的情况,例如x 3对公式 中的x 2是自由的。

因为在这个公式中没有x 2的自由出现。

由上不难看出,项t 对公式A 中的变元x 是自由的,主要是看t 对x 在A 中的自由出现进行代入是不是自由的。

而对x 的约束出现进行代入则没有太多的意义。

就好像这个例子所看到的那样。

(3)(4)课堂练习13212()x x A x ∀∃2211123231211422121141222322232223122113131(,)(,)(,)(,)(,)(,)(,)A x A x x x A x x f x x x x x f x x x f x x x x x x f x x x x x x f x x x ∀→∀∀∀∀令=则对是不自由的(自由地出现在的辖域中)对是自由的;对是自由的(没有自由地出现在或的辖域中)对是不自由的;对是自由的(注意仅自由出现一次);对是不自由的。

12221121211313121121121112112222221112112321221132((,)(,)).()(,,).()(,).(4)(((,),)(,(,))).(,)i x x A x x A x a A x x x A x x a x A x x A x x x A f x x x x A x f x x f x x x A x ∀→→⌝∀∀∀→∀∀→∀1.下列公式中的哪些出现是自由的,哪些是约束的。

(1)(2)(3)项对哪些公式中的是自由的。

2.令()是L i j i j i i i j j j i i j x x A x x A x x x A x x A x A x x x 中一公式,其中自由出现,令是在公式()中并不自由出现的一变元。

相关主题