问题标签 [finite-state-automaton]
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.
regex - 在不将 XFST 替换规则应用于词典的情况下检测循环馈送交互
以下两个 XFST 替换规则表示循环馈送交互,其中最终结果包括原始形式,因为第一个规则馈入第二个规则,第二个馈入第一个规则。例如,第一条规则将(可选)bat
变为cat
,第二条规则将(可选)cat
变为bat
。
当然,可以将规则应用于词典,然后与原始词典进行比较,但这非常低效。我已经有一种方法可以检测这种涉及两个或多个规则的循环馈送交互(通过使用 python 读取源文件),但它对条件替换不敏感,例如c (<-) b || _ x
.
是否可以通过使用来检测一组规则是否是循环的HFST
,而不必将规则应用于词典?
dfa - 是否有用于操作 DFA(确定性有限自动机)的工具/库?
这可以进行诸如联合/叉积/补码/连接 DFA 之类的计算。我试过JFLAP结合DFA,但它不允许直接应用叉积等操作。
dfa - 画出一个 FSA 来识别:(A∗ | AB+)。(条形超出了其他运算符的范围,因此它等于:(A∗) | (AB+)。)使用尽可能少的状态
我已经附上了我所拥有的。我的问题是我不知道它是否正确,以及我是否使用了尽可能少的状态来回答这个问题。非常感谢对我目前做错的任何帮助这是我目前所拥有的