有限自动机理论
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 证明和证明的方法

形式语言和有限自动机有很强的理论性,许多论断是以定理的形式给出的,而定理的正确性是需要进行证明的。

形式语言和有限自动机理论中定理的证明,大多使用反证法和归纳法进行。

1.3.1 反证法

反证法也称为归谬法。利用反证法证明一个命题时,一般步骤为:

1)假设该命题不成立。

2)进行一系列的推理。

3)如果在推理的过程中,出现了下列情况之一:

(1)得出的结论与已知条件矛盾;

(2)得出的结论与公理矛盾;

(3)得出的结论与已证过的定理矛盾;

(4)得出的结论与临时的假定矛盾;

(5)得出的结论自相矛盾。

4)由于上述矛盾的出现,可以断言“假设该命题不成立”的假定是不正确的。

5)肯定原来的命题是正确的。

例1.6 反证法例子。

利用反证法证明是无理数。

证明:假设不是无理数,那么是有理数;则可以记为 而且nm是互质的,即nm的最大公约数为1。

n2=2m2

所以,n是偶数。令n=2k,

(2k2=2m2

4k2=2m2

2k2=m2

所以,m是偶数。

nm都是偶数,而nm的最大公约数为1,矛盾。所以,假设不成立,是无理数。

思考:18是完全平方数吗?

1.3.2 归纳法

归纳法就是从特殊到一般的推理方法。

归纳法分为完全归纳法和不完全归纳法两种形式。

完全归纳法是根据一切情况的分析而做出的推理。由于必须考虑所有的情况,所以得出的结论是完全可靠的。

不完全归纳法是根据一部分情况做出的推理,因此它不能作为严格的证明方法。

在形式语言与有限自动机理论中,大量使用数学归纳法来证明某个命题。

数学归纳法可以使用“有限”步骤来解决“无限”的问题。

数学归纳法的原理为:

假定对于一切非负整数n,有一个命题Mn):

(1)M(0)为真。

(2)设对于任意 k≥0,Mk)为真;若能够推出 Mk + 1)为真,则对一切 n≥0,Mn)为真。

因此,在使用数学归纳法证明某个关于非负整数n的命题Pn)时,只需要证明(1)、(2)两点即可。第(1)步称为归纳基础,第(2)步称为归纳步骤。第(2)步中“设对于任意的k≥0, Mk)为真”称为归纳假设。

在实际应用中,某些命题Pn)并非对n≥0都成立,而是对nNN为大于0的某个自然数)成立,此时,也一样可以使用该归纳法。具体步骤为:

假定对于一切非负整数n,有一个命题Mn):

(1)MN)为真。

(2)设对于任意kNMk)为真;若能够推出Mk + 1)为真,则对一切nNMn)为真。

1.3.3 递归的定义与归纳证明

递归定义提供了集合的一种良好定义方式,使得集合中的元素的构造规律较为明显,同时给集合性质的归纳证明提供了良好的基础。

递归定义集合的步骤如下:

(1)基础:首先定义该集合中的最基本的元素。

(2)递归:若该集合的元素为x1,x2,x3,…,则使用某种运算、函数或组合方法对这些元素进行处理后所得的新元素也在该集合中。

(3)有限性:只有满足(1)和(2)的元素才包含在集合中。

归纳方法证明递归定义集合的性质的步骤如下:

(1)基础:证明该集合中的最基本元素具有性质P;而且使得该集合非空。

(2)归纳:证明若该集合的元素x1, x2, x3,…具有性质P,则使用某种运算、函数或组合方法对这些元素进行处理后所得的元素也具有性质P

(3)根据归纳法原理,集合中的所有元素也具有性质P

例1.7 Fibonacci数组成的集合的定义。

Fibonacci数组成的集合为{0,1,1,2,3,5,8,13,21,34,55,…}

按照下列步骤生成该集合中的所有元素:

(1)基础:0和1是该集合的最基本的两个元素;

(2)归纳:若m是第i个元素,n是第i+1个元素,则第i+2个元素为n+m,其中i≥1;

(3)只有满足(1)和(2)的数,才是集合的元素。

例1.8 括号匹配的串所构成的集合的定义。

该集合是指所有左括号和右括号相匹配的串的集合,例如()、(())、()()等都是该集合的元素;而)(、(()等就不是该集合的元素。

按照下列步骤生成该集合中的所有元素:

(1)基础:()是该集合的最基本的元素。

(2)归纳:若 A是该集合的元素,则(A)是该集合的元素;若 AB是该集合的元素,则AB是该集合的元素;

(3)只有满足(1)和(2)的串,才是集合的元素。