编译原理中V*是什么意思

问题描述:

编译原理中V*是什么意思

V是一个符号集合,假设V指的是三个符号a,b,c的集合,记为 V = {a,b,c }
V* 读作“V的闭包”,它的数学定义是V自身的任意多次自身连接(乘法)运算的积,也是一个集合.
也就是说,用V中的任意符号进行任意多次(包括0次)连接,得到的符号串,都是V*这个集合中的元素.
0次连接的结果是不含任何符号的空串,记为 ε
1次连接就是只有一个符号的符号串,比如,a,b,c
2次连接是两个符号构成的符号串,比如,aa,ab,ac,ba,bb,bc,等等
……
n次连接是一个长度为n、由a、b、c三个符号构成的符号串,比如abaacbbac……
因此,V*包含一切由a,b,c三个符号连接而成的、任意长度的符号串(以及空串ε)那如果题目中没给V包含什么,那是包含终结符号还是非终结符号?一般说来,Vt表示终结符集合,Vn表示非终结符集合,V表示文法符号集合(即既包含终结符,也包含非终结符)