问题标签 [formal-languages]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
66760 浏览

grammar - 左线性和右线性语法

我需要帮助为以下语言构建左线性和右线性语法?

对于a)我有以下内容:

这个对吗?我需要 b & c 方面的帮助。

0 投票
2 回答
110 浏览

formal-languages - 这个 DFA 有解决方案吗?

我试图创建一个可以识别带有字母 {a,b,c} 的字符串的 DFA,其中 a 和 c 出现偶数次,而 b 出现奇数次。

我想知道这可能只能用图灵机或无上下文语言等其他方法来表达。

您可能会觉得考虑解决方案很有趣。

0 投票
1 回答
2403 浏览

context-free-grammar - 确定给定语言是否是常规/上下文无关/非上下文无关

我需要一些帮助来确定给定的语言是常规的、上下文无关的还是非上下文无关的。答案中简短的非正式解释就足够了,因此无需使用抽水引理。

可以说我有以下语言:

这是我的解决方案:

可以为 L2 构造一个 DFA,因为 L2 不需要无限的内存,所以 L2 是规则的。对于 L3 的推理与上述相同。对于 L4,我们可以构造一个根本不接受“abc”的 DFA,因此是常规的。

L1 是正则的,因为正则语言在 ∩ 下是封闭的。

对于 L2,我们可以将语言分为:

我们知道可以为 L3 构造 DFA,因此 L3 是规则的。L4 是上下文无关的,因为我们可以构建一个 PDA,其中堆栈用于计算 a:s 和 b:s 的数量。

L2 因此是上下文无关的,因为常规语言和上下文无关语言的 ∩ 导致上下文无关语言。

对于 L3,我们可以看到它是非上下文无关的,因为我们被限制为 1 个堆栈,并且要进行超过 1 个比较,我们需要更多的堆栈。

是我的推理权利吗?我很快就要考试了,需要知道我是否有这个想法。

提前致谢

0 投票
1 回答
572 浏览

context-free-grammar - 为上下文无关语言抽取引理

我有一个关于上下文无关语言的特定泵引理问题的问题。

假设我们有以下语言:

这是我试图证明该语言不是上下文无关的尝试:

假设 L 与上下文无关。从引理中取常数 n>0。

比根据引理,Z 可以写成 Z = uvwxy,其中下列性质成立:

我们为 vwx 提供了 6 种不同的可能性

到目前为止这是对的吗?我不确定的事情是,我的不同 vwx 案例是否正确。

提前致谢

0 投票
2 回答
190 浏览

lambda - 如何在 lambda 演算中使用 β 减少来评估表达式?

我想评估以下表达式:

使用β还原

答案是:

但我不明白第二阶段:

从这里:(λx.y)((λz.zz)(λw.w))到这里(λx.y)((λw.w)(λw.w))

我们在那里做什么?根据我的理解,我需要使用α-等价规则。

0 投票
1 回答
168 浏览

parsing - 如何在 CUP 解析器语法中的两个标记之间定义至少一次出现的字符串

我正在尝试在 LALR(1) 语法(使用 CUP 解析器)中定义一个非终结符号。要求

最后我想出了这个定义:

whereSC是标记之间的分隔符(分号),并且hour_l是小时列表的非终端符号。这个解决方案有一个问题:HOUR不能存在,因为 epsilon 可以减少到hour_l. 除了指定所有可能性或使用 CUP 的语义功能(即在部分中放置多少次的计数器)之外,还有一个聪明的解决方案HOUR吗?我宁愿不使用语义来实现这一点;事实上,在我看来它与语法有关。

0 投票
3 回答
28769 浏览

r - 将数字读取为字符串

我是 R 编程新手,我想在 R 中读取文本文件。

其中一列,假设第 7 列是数字,每个数字代表一个 ID,我希望 R 读取数字,就好像它们是字符串一样。并计算每个 ID 在文件中出现的次数(以便稍后我可以将每个 ID 的频率分配给给定的 ID 以供以后使用)我尝试过

这可行,但它将 ID 作为数字。现在我试过了

但随后它将整个列 ID 作为一个字符串并从

我明白了

0 投票
4 回答
87893 浏览

grammar - 创建“上下文无关语法”的提示

我是 CFG 的新手,
有人可以给我创建生成某些语言的 CFG 的提示吗

例如

L = {am bn | m >= n}

我得到的是:

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

但我认为这个区域是错误的,因为b's 的数量有可能大于a's。

0 投票
1 回答
46576 浏览

regular-language - 是 L = {a^nb^m | n>m} 是规则的还是不规则的语言?

我在解决/证明这个问题时遇到了麻烦。请问有什么想法吗?

0 投票
1 回答
3506 浏览

theory - 两种不同字母的语言的交集是什么?

我对此进行了一些谷歌搜索,但没有任何真正确定的弹出。

假设我有两种语言 A 和 B。

A = { w 是 {a,b,c}* 的子集,因此 w 的倒数第二个字符是 b }

B = { w 是 {b,d}* 的子集,因此最后一个字符是 b }

如何定义这一点?我认为字母表将是两者的结合,使其成为 {a,b,c,d} 但除此之外,我不知道如何对此进行 DFA。

如果有人能对此有所了解,那就太好了。