基于 SAT 的最小 DFA 推理的高效对称性破缺
1. 命题公式化
假设目标确定性有限自动机(DFA) $S = (S, Σ, σ, s1, S+, S−)$,DFA $S$ 的状态需根据目标 DFA 的广度优先搜索(BFS)所诱导的树进行编号。对符号集 $Σ$ 需有固定顺序(如字典序),符号从 1 到 $L$ 编号,且编号遵循该固定顺序。
使用的命题变量如下:
1. $p_{q,r}$,其中 $1 ≤ r < q ≤ M$。当且仅当在 BFS 树中状态 $r$ 是 $q$ 的父状态时,$p_{q,r} = 1$。
2. $t_{p,q}$,其中 $1 ≤ p < q ≤ M$。当且仅当在 $S$ 中存在从 $p$ 到 $q$ 的转移时,$t_{p,q} = 1$。
3. $m_{v,p,q}$,其中 $v ∈ Σ$ 且 $1 ≤ p < q ≤ M$。当且仅当在符号 $l_v$ 上存在从状态 $p$ 到状态 $q$ 的转移,且不存在字典序更小的符号的此类转移时,$m_{v,p,q} = 1$。
命题公式的子句总结如下:
[
\begin{align}
&\bigvee_{2\leq q\leq M} (p_{q,1} \vee p_{q,2} \vee \cdots \vee p_{q,q - 1}) \tag{1}\
&\bigwedge_{1\leq r<s<q<M} (p_{q,s} \to \neg p_{q + 1,r}) \tag{2}\
&\bigwedge_{1\leq r<q\leq M} (t_{r,q} \le
超级会员免费看
订阅专栏 解锁全文
3960

被折叠的 条评论
为什么被折叠?



