【编译原理】关于克林闭包与正闭包的讨论
作者:互联网
文章目录
1 字母表: 元素的非空有穷集合。不同的语言有他自己不同的字母表,我们的计算机语言字母表就是数字,字母,标点等若干符号了。中文的字母表就是汉字了。
记作:倒M
2 符号串: 字母表的符号组成任何又穷序列的符号串。例如字母表 A={a,b,c} 则由这个字母表组成的符号串包括: {ab,ac,bc,abc,a,b,c.。。。。。}。
有了这些就相当于有了 123456,接下来就是一些运算了,符号串的一些运算了。
3 克林闭包与正闭包的关系克林闭包是任意符号串长度可以为0构成的集合。正闭包是长度为正数的符号串构成的集合
两个字母表乘积:∑1={0,1},∑2={a,b},∑1∑2 ={0a,0b,1a,1b};(小学数学结合运算)
∑的正闭包:
∑+=∑∪∑2∪∑3∪∑4∪……
∑的克林闭包(kleene Closure):
∑*=∑0∪∑+(与正闭包区别哦,这算是新概念)
例如:{0,1}+ = {0,1,00,01,11,000,001,010,011,100,……}
{0,1}* = {ε,0,1,00,01,11,000,001,010,011,100,…}
标签:运算,正闭,克林闭,010,编译,字母表,符号串 来源: https://blog.51cto.com/u_14013325/2916515