相关疑难解决方法(0)

创建"Context Free Grammar"的提示

我是CFG的新手,
有人可以给我一些关于创建生成某种语言的CFG的技巧

例如

L = {am bn | m >= n}

我得到的是:

So -> a | aSo | aS1 | e
S1 -> b | bS1 | e

但是我认为这个领域是错误的,因为有可能的数量b可能大于a.

grammar lexical-analysis context-free-grammar formal-languages

12
推荐指数
2
解决办法
7万
查看次数

为给定的正则表达式绘制minmal DFA

绘制minimal的直接简单方法是什么DFA,它接受与给定语言相同的语言Regular Expression(RE).
我知道可以通过以下方式完成:

Regex ---to----? NFA ---to-----? DFA ---to-----? minimized DFA
Run Code Online (Sandbox Code Playgroud)

但是有没有捷径?像(a+b)*ab

dfa nfa regular-language

5
推荐指数
1
解决办法
1万
查看次数

证明某种语言是正常的

在我的计算理论课中,我们有一个证明语言是常规的任务.该语言定义为:

B = { | 在与含有至少 1秒,对}1kyy{0, 1}*ykk >= 1

这种语言在我看来就像需要一个下推自动机来为此创建一台机器,但是如果有人能够推动我朝着正确的方向努力来证明这是一种常规语言.向我展示其中一种证明方法:创建NFA,DFA,正则表达式或常规语法会很有帮助.

regex regular-language

5
推荐指数
1
解决办法
1692
查看次数

将上下文无关的语法转换为正则表达式

我目前正在浏览CFG,看到了答案,但不确定他们是如何得到的。他们是如何在这里将其从CFG转换为正则表达式的?

S -> aS|bX|a
X -> aX|bY|a
Y -> aY|a


answer:
R.E -> (a*(a+ba*a+ba*ba*a))
Run Code Online (Sandbox Code Playgroud)

regex context-free-grammar

3
推荐指数
1
解决办法
5434
查看次数