DPDA自动机规则

DPDA automata rules

我无法理解 npda 与 dpda 之间的区别 我认为它是这样的

NPDA- 从一个状态可以选择多个选项到达下一个状态

DPDA-从一个状态到下一个状态只能走1条路径

..但是关于 DPDA 有 2 条规则我无法理解

..根据维基百科

对于第一条规则:

"has at most one element" 是什么意思

我不知道第二条规则是什么意思。

有人可以将其翻译成通俗易懂的英语吗?我将不胜感激。

对于第一条规则,"has at most one element" 意味着特定输入和堆栈符号只有一个增量转换(增量转换在形式上被视为 PDA 的集合)。换句话说,如果堆栈顶部有东西并且有输入进来,就永远不会有多个状态可以去。

正如您所说,"DPDA- from a state, only 1 path can be taken to the next state."这条规则是表示只能采用一条路径的正式方式。

违反规则 1 可能会指定两个具有相同输入符号和堆栈符号的相同状态的增量转换。例如,从状态 q 可能有两个转换,每个转换都需要堆栈上的 b 和输入的 a,但会转到不同的状态。这不会是 DPDA。

第二条规则指出,如果堆栈符号下的空字符串存在增量转换,则该堆栈符号下的任何字母表字母都没有增量转换。

这意味着如果您允许在没有任何输入的状态下弹出特定堆栈符号,则不能允许它在有输入的相同状态下也弹出。

违反规则 2 可能允许在 2 个状态之间没有任何输入的情况下从堆栈中弹出 as,但也允许以 b 作为输入从堆栈中弹出 a。