Page 13 - 《软件学报》2026年第1期
P. 13

10                                                         软件学报  2026  年第  37  卷第  1  期


                  2.2.2    二进制编码下  1-VASS  可达性问题的  NP-难归约
                    本节介绍下述引理的证明技巧, 同时解释了为何引理中二进制编码这一条件是必要的.
                    引理  5 [23] . 二进制编码下的  1-VASS  可达性问题是   NP-难的.
                    证明: 思路是归约经典       NP-完备问题“子集和问题”, 其定义参见第            1.4.1  节. 子集和问题中所有自然数用二进
                 制编码. 文献   [19] 中给出了从子集和问题到        1-VASS  可达性问题的对数空间归约. 这里我们展示一种更便捷的归
                 约到  1-计数器程序的构造方法.

                    给定子集和问题实例        ⟨S,c⟩, 构造对应的程序    f (⟨S,c⟩) 如图  3  所示.


                                                       for i := 1 to n
                                                         do x += a ; i  or skip;
                                                       x -= c;  halt;
                                           图 3 从子集和问题到       1-计数器程序的归约      P

                    程序中的    a 1 , a 2 ,..., a n , c 即原子集和问题中的参数. 注意, 为了保证归约的高效性, 此构造中       1-计数器程序也
                 应采用二进制编码方案        (否则原问题中的      a i  转换为对应的一进制编码需要花费指数时间).
                     P  仅使用了一个计数器  , 故是一个         1-计数器程序. 该程序的任意一次执行等价于非确定选择一个子集
                                        x

                        ∑                                               ∑
                 T ⊆ S , 若   a−c ⩾ 0  则该执行是完全的且终止格局         β T  满足  β T (x) =  a−c, 否则该执行是部分的. 显然, 若
                           a∈T                                            a∈T
                                                ∑
                 实例  ⟨S,c⟩ 为真, 则存在子集   T 0 ⊆ S  使得   a−c = 0, 程序中对应的执行路径是完全的且最终              β T 0  (x) = 0, 即  P
                                                   a∈T 0
                                                                  ∑
                 存在一个    0-执行; 若该问题实例为假, 则所有子集           T ⊆ S  都有    a−c , 0, 即  P  不存在  0-执行. 综上,  ⟨S,c⟩ ∈
                                                                    a∈T
                                                                     (∑ n            )
                 subset sum 当且仅当   f (⟨S,c⟩) ∈ 1-CP reachability. 此程序的长度为  O  log(a i )+log(c) , 归约  f  可在对数空间完
                                                                        i=1
                        subset sum⩽ L 1-CP reachability. 根据计数器程序和  VASS  的等价性即知: 1-VASS  可达性问题是  NP-难的.
                 成, 即有
                    需要指出的是, 经典的       NP-完备问题有很多, 但子集和问题与           VASS  模型都与自然数以及加减法运算有关, 二
                 者之间的关联较为紧密, 因此归约较简单. 结合第              2.2.1  节给出的上界可得如下定理.
                    定理  2 [19] . 二进制编码下普通和测零    1-VASS  可达性问题都是     NP-完备的.
                  2.2.3    二进制编码下  2-VASS  可达性问题的  PSPACE-难归约
                    正如子集和问题对应于         1-VASS  可达性问题的复杂性下界, 2-VASS       的  PSPACE-难证明源自归约子集和博弈
                 问题  [19] . 然而子集和博弈到  2-VASS  可达性问题的归约是非平凡的, 主要困难在于对              ∀ 玩家, 需要使用仅有的两个
                 计数器模拟其所有可能选择的分支. 为了完成归约, 研究者引入了两个中间模型, 即有界计数器自动机                                (bounded
                 counter automaton, BCA) 和计数器栈自动机  (counter-stack automaton, CSA). 这些模型都有各自等价的数学描述和
                 程序表示, 后续会根据具体情况选择合适的表示方式. Fearnley              等人  [24] 和  Blondin  等人  [21] 的证明路线如下:

                            subset sum game⩽ L b-Safe CSA reachability⩽ L 1-BCA reachability⩽ L 2-VASS reachability  (6)
                  2.2.3.1    有界  1-计数器自动机
                    有界  1-计数器自动机     (1-BCA) 是一个  3-元组  M = (Q,b,δ), 其中,  Q 是一个有限状态集,  b ∈ N 是一个计数器的
                                                                                             t
                                    2
                 全局上界,   δ ⊆ Q×Z×[b] 0 × Q 是有限的迁移规则集合.      M  的格局形如   p(x) ∈ Q×[b] 0 , 若迁移  p(x)→q(y) 成立, 则
                 一定存在   t = (p,y− x,lb,ub,q) ∈ δ 使得  lb ⩽ x ⩽ ub. 直观上, 1-BCA  可以判断计数器的值是否大于  lb 或小于  ub, 自
                 然也可以完成测零       (令  lb = ub = 0), 故其可达性问题至少是  NP-难的.
                    实际上, 1-BCA  可以直接看作一个格局在          Q×(N∩[0,b]) 中的  1-VASS (有界  1-VASS). 换言之, 其迁移规则中
                                                                      t = (p,a,lb,ub,q) ∈ δ, 我们可以用如下的有界
                 的局部上下界参数       lb、ub  不是必须的. 给定    M = (Q,b,δ), 若有规则
                 1-VASS  V  的运行替代:

                                              π  (p,−lb,p 0 ) (p 0 ,lb,p 1 ) (p 1 ,b−ub,p 2 ) (p 2 ,ub−b,p 3 ) (p 3 ,a,q)
                                             − →=−−−−−−→−−−−−→−−−−−−−→−−−−−−−→−−−−→                   (7)
                           t                                              π               π
                                   t

                    若   p(x)→ M q(y), 则   满足   x−lb ⩾ 0, x+b−ub ⩽ b, x+a = y, 于是   p(x)→ V q(y); 反之若  p(x)→ V q(y), 则一定有
                                                         t
                                                     p(x)→ M q(y). 此过程为每条迁移引入     4              V  状态数
                 0 ⩽ x−lb ⩽ b, 0 ⩽ x+b−ub ⩽ b, x+a = y, 于是                         个中间状态, 最终
   8   9   10   11   12   13   14   15   16   17   18