我想知道正则表达式的限制会生成哪些语言集。假设所有限制对于的每个元素都有一个恒定的符号和串联。然后,可以通过存在/不存在补体/否定,改变/联合和Kleene星形成八类。(是的,“正常”正则表达式没有 运算符,但这很方便。)
允许交替出现的表达式以及带或不带补码的Kleene星(在朋友中间是什么双指数爆破?)生成常规语言。允许交替和补语但不包含Kleene星的表达式生成无星语言。允许交替但不能互补的表达式或Kleene星生成有限语言。
但是,可以生成任何有趣的语言类别而无需更改吗?没有这三个运算符中的任何一个,可以生成的全部都是一个单词。补码运算符在这里没有太大帮助。
仅靠Kleene明星,这个班就有些有趣了……尚不清楚它们是否能比普通语言更快地被识别。(关于这些,有什么重要的知识吗?)
拥有Kleene明星和补饰元素……您有什么有趣的吗?这个班有名字吗?
这个问题的灵感来自于math.se上的正则表达式问题。
交替是什么意思?另外,它是“ Kleene”。
—
Suresh Venkat
@Suresh Venkat:联合,逻辑或,|,/ ,,。
—
查尔斯
请注意,在原始上下文中,该类没有补码,但具有反向引用。
—
彼得·泰勒
@彼得·泰勒:对。我打算问一个关于反向引用的后续问题,但是我认为这个问题太过适合了。
—
查尔斯