这种语言有下推自动机(PDA)吗?

2024-01-01

the language is: { An B(2n) Cn | where n>=0 }

我认为是有的,因为你可以这样处理:推入A,推入B,每个C从堆栈中弹出3次,如果没有C并且堆栈为空,则返回true,否则返回false。


使用泵引理来证明这不是上下文无关的语言。

Consider s = ap b2p cp
Then we consider vxy, |vxy|<=p, |vy|>0 and uvixyiz in L
We have the possibilities

  1. vxy = aj, j<=p
  2. vxy = aj bk, j+k<=p
  3. vxy = bj, j<=p
  4. vxy = bj ck, j+k<=p
  5. vxy = cj, j <=p

无论如何,没有常数u and v英石。该字符串位于 L 中,因为 L 中只能有两个符号vxy然后我们需要可变数量的第三个来显示u or v

您提出的自动机在 AAAC 上失败,返回 true。它并不能保证 B 的数量是 A 的两倍。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这种语言有下推自动机(PDA)吗? 的相关文章

  • CFG 的扩展,它是什么?

    考虑以下上下文无关语法的扩展 它允许规则在左侧有一个 或多个 终端在非终端的右侧 即 形式规则 A b gt 右侧可以是任何东西 就像在上下文无关语法中一样 特别是 它是not要求右侧末尾具有完全相同的终端符号 在这种情况下 此扩展将是上下
  • 为什么 C++ 不能用 LR(1) 解析器解析?

    我正在阅读有关解析器和解析器生成器的内容 并在维基百科的 LR 解析页面中找到了此声明 许多编程语言都可以使用 LR 解析器的某些变体进行解析 一个值得注意的例外是 C 为什么会这样呢 C 的什么特殊属性导致它无法用 LR 解析器进行解析
  • 不允许使用外括号的表达式语法

    对于涉及二元运算符 gt 的表达式 我有以下语法 expression expression BITWISE OR xor expression xor expression xor expression xor expression BI
  • 如何修改解析语法以允许赋值和非赋值语句?

    所以问题是关于下面的语法 我正在研究一种小型解释语言 我们在课堂上学习了一些编译器设计 所以我想将其提升到一个新的水平并自己尝试一些东西 我被困在试图制作非终结符号Expr Statement Expr SC Expr I need hel
  • 将上下文无关语法转换为正则表达式

    我目前正在查看 CFG 并看到答案 但我不确定他们是如何得到它的 他们是如何将其从 CFG 转换为正则表达式的 S gt aS bX a X gt aX bY a Y gt aY a answer R E gt a a ba a ba ba
  • 是否有工具可以在 ANTLR 和其他形式的 BNF 之间进行转换? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何工具可以将 ANTLR 语法与其他 BNF 语法相互转换 巴科斯 诺尔范式有多种形式 BNF
  • 如何确定上下文无关语法是否描述了常规语言?

    给定任意上下文无关语法 我如何检查它是否描述了常规语言 我不是在寻找考试 技巧 我正在寻找一种可以编写代码的万无一失的机械测试 如果有帮助 这里是我可能会收到的 CFG 作为输入的示例 具体来说 请注意 答案一定比仅仅寻找左递归或右递归复杂
  • 用堆栈实现的 LL(1) 解析器:如何构建 AST?

    我目前正在手工构建一个解析器 它是一个 LL 1 解析器 目前 它是一个很棒的识别器 它的函数 parse List tokens 决定标记是否是该语言的成员 现在 我想为该输入构建相应的 AST 但是 我知道如何以递归下降的方式实现它 已
  • JavaScript 是上下文无关语言吗?

    这篇文章关于浏览器如何工作 http taligarsiel com Projects howbrowserswork1 htm解释了 CSS 如何是上下文无关的 而 HTML 是not 但是 JavaScript 呢 JavaScript
  • EcmaScript 语法中的 [Yield、Await、In、Return] 是什么意思

    EcmaScript 中的许多产生式都带有以下 修饰符 Yield Await In Return 这里有一些例子 ArrayLiteral Yield Await ElementList Yield Await AssignmentExp
  • 简单英语中的乔姆斯基层次结构

    我试图找到乔姆斯基提出的 4 个级别的正式语法 无限制 上下文相关 上下文无关 常规 的简单 即非形式 解释 我已经很久没有学习正式语法了 各种定义现在让我难以想象 明确地说 我是not寻找随处可见的正式定义 例如here http en
  • 泵送引理(常规语言)

    我需要一些帮助来解决泵引理问题 L a b c a L lt b L lt c L 这是我到目前为止得到的 y uvw is the string from the pumping lemma 我让 y abbc n n 是泵引理的长度 y
  • “现代”正则表达式的识别能力

    真正的现代正则表达式实际上可以识别哪一类语言 每当存在带有反向引用的无限长度捕获组时 例如 1 正则表达式现在匹配非常规语言 但这本身并不足以匹配类似的东西S S 匹配括号对的上下文无关语言 递归正则表达式 这对我来说是新的 但我确信 Pe
  • 为什么不能为函数的形参指定存储类别?

    当我执行以下操作时 代码工作正常 include
  • 对于上下文无关语法,如何将其转换为等效的下推自动机?

    对于 0 1 2 上的上下文无关文法 G 起始变量为 S S 0S0 1S1 2S2 是是 22 我如何将其变成等效的下推自动机 下推自动机可以将符号推入堆栈顶部并将其弹出 它还可以将其转换基于最顶层的堆栈符号 我们需要考虑一种机制 允许我
  • D的语法真的是上下文无关的吗?

    几个月前我在 D 新闻组上发布了这个问题 但由于某种原因 答案从未真正说服我 所以我想我应该在这里问 D 的语法显然是上下文无关的 http www digitalmars com d 2 0 template comparison htm
  • 在打字稿 AST 中获取变量声明类型的正确方法?

    看了一眼declarationEmitter对于变量声明 它具有以下功能 emitVariableDeclaration最终调用 writeTypeOfDeclaration 这段代码的作用就是它所说的 它需要一个变量声明并打印变量及其类型
  • BNF 可以处理远期消费吗?

    最近我发现了 python 模块pyparsing 一个通过编写来解析数据的绝佳工具grammar 而不是解析器 我对上下文无关语法的概念很陌生 所以请纠正这个问题中的任何错误假设 Pyparsing 可以实现 BNF 巴科斯 诺尔范式 h
  • 现代正则表达式引擎可以解析什么样的形式语言?

    人们有时会说 你不能用正则表达式解析 X 因为 X 不是正则语言 然而 根据我的理解 现代正则表达式引擎可以匹配的不仅仅是正则语言乔姆斯基的感觉 http en wikipedia org wiki Chomsky hierarchy 我的
  • 什么是上下文无关语法和巴科斯诺尔范式?

    有人可以用通俗的语言解释一下吗 什么是上下文无关语法 什么是巴科斯诺尔范式 如何使用这个记号 如何进行字符串推导 如何描述语言语法 上下文无关语法 CFG G 是一个四元组 V R S 其中 V 一组非终结符号 一组端子 V R 一组规则

随机推荐

  • 如何使用 jQuery 查找特定类型(表)的最后一个子项?

    假设我有以下结构 div table tbody tr td div table tbody tr td div table Last table here table div td tr tbody table div td tr tbo
  • 使用 Android NDK 中的系统函数在 Android 嵌入式设备上运行 Shell 脚本文件

    All 这里我想通过android NDK中的系统调用运行 sh文件 我能跑cp rm通过系统调用命令 但 sh 命令无法通过系统调用运行 我还在 android 上安装 busybox 我使用下面的代码 我设置了所有权限test sh C
  • Swift 中根据 String 计算出 UILabel 的大小

    我正在尝试根据不同的字符串长度计算 UILabel 的高度 func calculateContentHeight gt CGFloat var maxLabelSize CGSize CGSizeMake frame size width
  • AWS Textract - GetDocumentAnalysisRequest 仅返回文档第一页的正确结果

    我编写了使用 Amazon Textract 从 pdf 中提取表和名称值对的代码 我按照这个例子 https docs aws amazon com texttract latest dg async analyzing with sqs
  • ES6 的参数名称?

    我定义了一个函数 例如 function call api url callback query body 我期望有一种可以提供正文并跳过查询的语法 call api api clients new function x console l
  • 为什么 swift 不警告这个不可发送的全局传递到不同的任务?

    考虑以下代码 class Cat var name Tom class Globals var cat Cat let glob Globals func one Task glob cat name Max Expected Warnin
  • ocamlbuild;建筑顶层

    已成功使用子目录重新组织了我的 ocamlbuild 项目 https stackoverflow com questions 2209532 properly compiling modules in subfolders ocamlbu
  • 在 GAE 中实施独特的约束

    我正在尝试 Google App Engine Java 但是缺乏独特的约束使事情变得困难 我已经通过这篇文章 https stackoverflow com questions 2626978 unique constraint at d
  • 隐藏 Jinja2 模板中无法访问的链接

    我们正在工作中使用 Flask Jinja2 编写一个 Web 应用程序 该应用程序具有注册用户 可以根据其角色访问某些页面 为了在服务器端实现这一点 我们只需使用装饰页面 app route action1 security requir
  • 如何根据 Unix 时间戳计算本地时间

    如果unix时间戳在世界各地都是相同的 我如何才能获得本地时间 或者是根据不同的时区时间戳不同 也就是说 我在美国 UTC 1970 的当前秒数是 5 000 但如果我在亚洲并检查时间戳 那么它将是 4 000 秒 世界上每个国家的 UTC
  • 使用由单个安装程序安装的 SQLite 的 Java 桌面应用程序

    我是与数据库交互的 Java 桌面应用程序编程的初学者 我的目标是制作一个简单的java应用程序 它使用数据库在本地存储数据 经过一番谷歌搜索后 我发现 SQLite Derby 可以满足我的需求 我用谷歌搜索了 SQLite 和 Derb
  • App 类中的静态上下文 - 内存泄漏

    为了能够在应用程序中的任何位置获取应用程序上下文 我创建了这样的 App 类 public class App extends Application private static Context mContext public stati
  • 带 if 语句的 Postgresql 函数

    我怎样才能使这个伪代码在 Postgresql 中工作 create or replace function getf arg character varying 255 returns int as if arg a then retur
  • Python 网页抓取被阻止

    我想抓取德国房地产网站 immobilienscout24 de 的网页 我想下载给定 URL 的 HTML 然后离线使用该 HTML 它不适合商业用途或出版 我也不打算向该网站发送垃圾邮件 它只是用于编码练习 我想编写一个 python
  • 核心数据谓词日期比较

    我试图获取与用户 selectedDate 匹配的实体中的所有对象 它是 NSDate 核心数据代码很好 但我的谓词一直返回 0 结果 数据库中的日期与用户选择的日期相同 应如何使用谓词将 selectedDate 与实体中的日期进行比较
  • 使用 VS 2005 C# 将 Excel 转换为 Oracle 数据库

    我想构建一个实用程序 可以将 Excel 工作表 列是固定的 但工作表可以是任意数量 中的数据导入到 Oracle 数据库 你能建议我应该如何 读取Excel表格 n张 最好的方法 验证数据 批量插入数据库 我关心的是这里的表现 每张纸可以
  • 为什么 cython 嵌入插件在 python 解释器中比 rust-c 接口版本具有更高的性能?

    我想问一些关于python解释器的底层原理的问题 因为我自己搜索的过程中并没有得到太多有用的信息 我最近一直在使用 rust 编写 python 插件 这为 python 的 cpu 密集型任务提供了显着的加速 并且与 c 相比 编写速度也
  • C++ tmpnam 替代方案

    我有一个 C 库 它使用tmpnam NULL 创建一个临时文件 我需要破解这个 因为它在根文件夹 c 或 中生成临时文件 因此它需要管理权限 如何使用有效的临时路径将此功能更改为其他功能 Thanks Though tmpnam返回前面加
  • OBJECT 和 EMBED 标签是否始终位于顶部?

    我有一个我制作的网站 我在该网站上流式传输视频 它开始 看起来很酷 但我用 CSS 制作的菜单总是在视频下方 因此某些链接会在对象后面消失 有谁知道我是否可以解决这个问题 我想我尝试过一次 z index 无济于事 我刚刚重新发布了这个问题
  • 这种语言有下推自动机(PDA)吗?

    the language is An B 2n Cn where n gt 0 我认为是有的 因为你可以这样处理 推入A 推入B 每个C从堆栈中弹出3次 如果没有C并且堆栈为空 则返回true 否则返回false 使用泵引理来证明这不是上下