Questions tagged «formal-languages»

与形式语言,语法和自动机理论有关的问题

1
线性无上下文语法的语言相等性可以决定吗?
让我们考虑两个与上下文无关的语法和并提出以下问题:,即,这两个语法是否等效?G1个G1个G_1G2G2G_2大号(ģ1个)= L (G2)大号(G1个)=大号(G2)L(G_1) = L(G_2) 通常,这个问题是无法确定的。但是,如果和都是左线性(或右线性)语法,则问题是可以确定的,因为两个语法都描述了常规语言。G1个G1个G_1G2G2G_2 我的问题是,当两个语法都是线性的时,是否可以确定相同的问题。此外,如果有人可以指向相关文献,将不胜感激!

4
使用抽水引理证明语言不规则
我正在尝试使用抽运引理来证明是不规则的。L={(01)m2m∣m≥0}L={(01)m2m∣m≥0}L = \{(01)^m 2^m \mid m \ge0\} 到目前为止,这就是我的假设:假设是规则的,令为泵浦长度,所以。考虑任何抽运分解使得 和。LLLpppw=(01)p2pw=(01)p2pw = (01)^p 2^pw=xyzw=xyzw = xyz|y|>0|y|>0|y| >0|xy|≤p|xy|≤p|xy| \le p 我不确定下一步该怎么做。 我在正确的轨道上吗?还是我要离开?




1
对一元字母进行反向引用的正则表达式
设置: 具有反向引用的正则表达式 一元语言(1个符号的字母) 在此设置中是否可以确定以下问题: 给定带有反向引用的正则表达式,它是否定义了正则语言? 例如,(aa+)\1定义一种常规语言,而(aa+)\1+没有。我们可以决定是哪种情况吗? 为了具体起见,“带有反向引用的正则表达式”在这里指的是例如与Perl兼容的常规正则表达式的以下子集: a匹配字符a(字母中唯一的字符) X* 匹配0个或多个出现 X X|Y比赛X或Y 括号可用于分组和捕获 \1。\2等匹配与第一对,第二对等括号相同的字符串 我们还可以使用常规的简写形式,例如X+= XX*。

3
测试语言是否无上下文的算法
是否有一种算法/系统程序来测试一种语言是否不受上下文限制? 换句话说,在给定的代数形式指定的语言(想到像),测试的语言是否是与否上下文无关。想象一下,我们正在编写一个Web服务,以帮助学生完成所有作业。您指定语言,Web服务将输出“无上下文”或“无上下文”。有没有什么好的方法可以自动执行此操作?L={anbnan:n∈N}L={anbnan:n∈N}L=\{a^n b^n a^n : n \in \mathbb{N}\} 当然,还有一些用于手动证明的技术,例如抽运引理,奥格登引理,帕里克引理,互换引理等等。但是,它们每个人都需要在某个时候进行手动洞察,因此尚不清楚如何将它们中的任何一种转化为算法。 我看到Kaveh在其他地方写过,非上下文无关的语言集不是可递归枚举的,因此似乎没有希望任何算法都能在所有可能的语言上运行。因此,我认为Web服务将需要能够输出“无上下文”,“非上下文”或“我无法分辨”。在教科书中很可能会看到的多种语言上,是否有除“我无法分辨”以外的其他算法通常能够提供答案?您将如何构建这样的Web服务? 为了使这个问题更好地解决,我们需要确定用户如何指定语言。我愿意接受建议,但我在想这样的事情: L={E:S}L={E:S}L = \{E : S\} 其中是一个单词表达式,S是一个在长度变量上的线性不等式的系统,具有以下定义:EEESSS 每个就是一个字表达。(这些代表可以容纳∑ ∗中任何单词的变量。)x,y,z,…x,y,z,…x,y,z,\dotsΣ∗Σ∗\Sigma^* 中的每一个都是单词表达。(示例性地,Σ = { a ,b ,c ,… },因此a ,b ,c ,…表示基础字母中的单个符号。)a,b,c,…a,b,c,…a,b,c,\dotsΣ={a,b,c,…}Σ={a,b,c,…}\Sigma=\{a,b,c,\dots\}a,b,c,…a,b,c,…a,b,c,\dots 每是一个字表达式中,如果η是一个长度可变。aη,bη,cη,…aη,bη,cη,…a^\eta,b^\eta,c^\eta,\dotsηη\eta 单词表达的串联是单词表达。 每个的是一个长度可变。(这些代表可以包含任何自然数的变量。)m,n,p,q,…m,n,p,q,…m,n,p,q,\dots 每个是长度可变的。(这些代表相应单词的长度。)|x|,|y|,|z|,…|x|,|y|,|z|,…|x|,|y|,|z|,\dots 这似乎足以处理我们在教科书练习中看到的许多情况。当然,如果愿意,您可以替换以代数形式指定语言的任何其他文本方法。

1
满足激进式引理但不规则的语言?
给定一个正规语言,那么很容易证明,有一个恒定的ñ,从而为σ ∈ 大号,用| σ | ≥ Ñ存在串α,β和γ,使得| α β | ≤ ñ和| β | ≠ ε,并为所有ķ它是α β ķ γ ∈ 大号LLLNNNσ∈Lσ∈L\sigma \in L|σ|≥N|σ|≥N\lvert \sigma \rvert \ge Nαα\alphaββ\betaγγ\gamma|αβ|≤N|αβ|≤N\lvert \alpha \beta \rvert \le N|β|≠ϵ|β|≠ϵ\lvert \beta \rvert \ne \epsilonkkkαβkγ∈Lαβkγ∈L\alpha \beta^k \gamma \in L。人们普遍说相反的说法是不正确的,但是我还没有看到任何明确的例子。有什么建议么?显然,证明冒犯性语言不规则的证据必须使用比典型的“不满足抽提引理”更强的方法。我会对简单的示例感兴趣,以介绍入门形式语言类。


3
常规语言的字数
根据维基百科,对于任何正则语言存在常数和多项式,使得对于每数长度的字的在满足方程LLLλ1,…,λkλ1,…,λk\lambda_1,\ldots,\lambda_kp1(x),…,pk(x)p1(x),…,pk(x)p_1(x),\ldots,p_k(x)nnnsL(n)sL(n)s_L(n)nnnLLL sL(n)=p1(n)λn1+⋯+pk(n)λnksL(n)=p1(n)λ1n+⋯+pk(n)λkn\qquad \displaystyle s_L(n)=p_1(n)\lambda_1^n+\dots+p_k(n)\lambda_k^n。 语言是常规语言(与之匹配)。如果n为偶数,则,否则为。L={02n∣n∈N}L={02n∣n∈N}L =\{ 0^{2n} \mid n \in\mathbb{N} \}(00)∗(00)∗(00)^*sL(n)=1sL(n)=1s_L(n) = 1sL(n)=0sL(n)=0s_L(n) = 0 但是,我找不到和(上面已经存在)。由于必须是可微的并且不是常数,所以它必须以某种方式像波浪一样,而且我看不到如何用多项式和指数函数来做到这一点,而不必以无穷大的求和数结束,例如泰勒展开式 谁能启发我?λiλi\lambda_ipipip_isL(n)sL(n)s_L(n)

2
什么时候两种常规语言的连接才是明确的?
由于语言的和乙,让我们说,他们的级联一乙是明确的,如果所有的单词w ^ ∈ 一乙,恰好有一个分解w ^ = 一b有一个∈ 一和b ∈ 乙,和暧昧否则。(我不知道该属性是否存在一个确定的术语,这很难搜索!)作为一个简单的示例,{ ε ,a }与自身的串联是不明确的(w = aAAABBBABABABw∈ABw∈ABw \in ABw=abw=abw = aba∈Aa∈Aa \in Ab∈Bb∈Bb \in B{ε,a}{ε,a}\{\varepsilon, \mathrm{a}\}),但的级联 { 一个 }与本身是明确的。w=a=εa=aεw=a=εa=aεw = \mathrm{a} = \varepsilon \mathrm{a} = \mathrm{a} \varepsilon{a}{a}\{\mathrm{a}\} 是否有一种算法来确定两种常规语言的连接是否明确?

1
我想知道如果这甚至可能的,因为{anbncn∣n≥0}∉CFL{anbncn∣n≥0}∉CFL\{a^n b^n c^n \mid n \geq 0\} \not\in \mathrm{CFL}。因此,一个PDA,可以区分词w∈{anbncn∣n≥0}w∈{anbncn∣n≥0}w\in\{a^n b^n c^n \mid n \geq 0\}从其余{a∗b∗c∗}{a∗b∗c∗}\{a^*b^*c^*\}倒不如接受它,这听起来矛盾给我。 我想我需要利用PDA的不确定性,但是我没有主意。如果您能提供一些建议,我将不胜感激。


2
语法和自动机语言的可判定性
请注意,这是在一所大学的CS固然与研究的一个问题,这不是功课,可以发现这里在2011年秋季exam2。 这是我过去考试所关注的两个问题。它们似乎是相关的,第一个是: 让 FINITECFG={&lt;G&gt;∣G is a Context Free Grammar with |L(G)|&lt;∞}FINITECFG={&lt;G&gt;∣G is a Context Free Grammar with |L(G)|&lt;∞}\qquad \mathrm{FINITE}_{\mathrm{CFG}} = \{ < \! G \! > \mid G \text{ is a Context Free Grammar with } |\mathcal{L}(G)|<\infty \} 证明是一种可判定的语言。 FINITECFGFINITECFG\mathrm{FINITE}_{\mathrm{CFG}} 和... 让 FINITETM={&lt;M&gt;∣M is a Turing Machine with |L(M)|&lt;∞}FINITETM={&lt;M&gt;∣M is …

1
在最小堆自动机接受的语言反转的情况下证明关闭
这是一个后续问题这一个。 在先前关于奇异状态机的问题中,亚历克斯·十·布林克和拉斐尔谈到了一种特殊的状态机的计算能力:最小堆自动机。他们能够证明这些机器接受的语言集(HALHALHAL)既不是上下文无关语言集的子集也不是其超集。鉴于已成功解决该问题并对该问题有明显的兴趣,我继续提出几个后续问题。 众所周知,常规语言在各种操作下都是封闭的(我们可能将自己限制为基本操作,例如并集,交点,补码,差,串联,Kleene星号和反转),而上下文无关的语言则具有不同的闭合属性(这些属性在并集,串联,Kleene星号和反向条件下关闭)。 HAL是否在逆转下关闭?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.