On the complexity of bidirected interleaved Dyck-reachability
On the complexity of bidirected interleaved Dyck-reachability
复制标题
双向交错Dyck可达性的复杂性
DOI:
10.1145/3434340
复制
发表时间:
2021
影响因子:
--
通讯作者:
Reps, Thomas
中科院分区:
文献类型:
--
作者:
Li, Yuanbo;Zhang, Qirun;Reps, Thomas
Many program analyses need to reason about pairs of matching actions, such as call/return, lock/unlock, or set-field/get-field. The family of Dyck languages {Dk}, whereDkhaskkinds of parenthesis pairs, can be used to model matching actions as balanced parentheses. Consequently, many program-analysis problems can be formulated as Dyck-reachability problems on edge-labeled digraphs.Interleaved Dyck-reachability(InterDyck-reachability), denoted byDk⊙Dk-reachability, is a natural extension of Dyck-reachability that allows one to formulate program-analysis problems that involvemultiplekinds of matching-action pairs. Unfortunately, the general InterDyck-reachability problem is undecidable.In this paper, we study variants of InterDyck-reachability onbidirected graphs, where for each edge ⟨p,q⟩ labeled by an open parenthesis ”(a”, there is an edge ⟨q,p⟩ labeled by the corresponding close parenthesis ”)a”, andvice versa. Language-reachability on a bidirected graph has proven to be useful both (1) in its own right, as a way to formalize many program-analysis problems, such as pointer analysis, and (2) as arelaxationmethod that uses a fast algorithm to over-approximate language-reachability on a directed graph. However, unlike its directed counterpart, the complexity of bidirected InterDyck-reachability still remains open.We establish the first decidable variant (i.e.,D1⊙D1-reachability) of bidirected InterDyck-reachability. InD1⊙D1-reachability, each of the two Dyck languages is restricted to have only a single kind of parenthesis pair. In particular, we show that the bidirectedD1⊙D1problem is in PTIME. We also show that when one extends each Dyck language to involvekdifferent kinds of parentheses (i.e.,Dk⊙Dk-reachability withk≥ 2), the problem is NP-hard (and therefore much harder).We have implemented the polynomial-time algorithm for bidirectedD1⊙D1-reachability.Dk⊙Dk-reachability provides a new over-approximation method for bidirectedDk⊙Dk-reachability in the sense thatDk⊙Dk-reachability can first be relaxed to bidirectedD1⊙D1-reachability, and then the resulting bidirectedD1⊙D1-reachability problem is solved precisely. We compare thisD1⊙D1-reachability-based approach against another known over-approximatingDk⊙Dk-reachability algorithm. Surprisingly, we found that the over-approximation approach based on bidirectedD1⊙D1-reachability computesmore precisesolutions, even though theD1⊙D1formalism is inherently less expressive than theDk⊙Dkformalism.
登录
查看更多内容
DOI:
10.1145/3385412.3386021
发表时间:
2020-06
期刊:
Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation
影响因子:
--
作者:
Yuanbo Li;Qirun Zhang;T. Reps
通讯作者:
Yuanbo Li;Qirun Zhang;T. Reps
DOI:
10.1109/lics.2009.45
发表时间:
2009
期刊:
2009 24th Annual IEEE Symposium on Logic In Computer Science
影响因子:
--
作者:
Vineet Kahlon
通讯作者:
Vineet Kahlon
影响因子:
7.4
作者:
H. Gabow;Shachindra N. Maheswari;L. Osterweil
通讯作者:
L. Osterweil
DOI:
10.1089/cmb.2013.0004
发表时间:
2011
期刊:
Journal of computational biology : a journal of computational molecular cell biology
影响因子:
--
作者:
Jakub Kovác
通讯作者:
Jakub Kovác