Reachability problem
From Wikipedia the free encyclopedia
Reachability is a fundamental problem that appears in several different contexts: finite- and infinite-state concurrent systems, computational models like cellular automata and Petri nets, program analysis, discrete and continuous systems, time critical systems, hybrid systems, rewriting systems, probabilistic and parametric systems, and open systems modelled as games.[1]
In general the reachability problem can be formulated as follows: Given a computational (potentially infinite state) system with a set of allowed rules or transformations, decide whether a certain state of a system is reachable from a given initial state of the system.
Variants of the reachability problem may result from additional constraints on the initial or final states, specific requirement for reachability paths as well as for iterative reachability or changing the questions into analysis of winning strategies in infinite games or unavoidability of some dynamics.
Typically, for a fixed system description given in some form (reduction rules, systems of equations, logical formulas, etc.) a reachability problem consists of checking whether a given set of target states can be reached starting from a fixed set of initial states. The set of target states can be represented explicitly or via some implicit representation (e.g., a system of equations, a set of minimal elements with respect to some ordering on the states). Sophisticated quantitative and qualitative properties can often be reduced to basic reachability questions. Decidability and complexity boundaries, algorithmic solutions, and efficient heuristics are all important aspects to be considered in this context. Algorithmic solutions are often based on different combinations of exploration strategies, symbolic manipulations of sets of states, decomposition properties, or reduction to linear programming problems, and they often benefit from approximations, abstractions, accelerations and extrapolation heuristics. Ad hoc solutions as well as solutions based on general purpose constraint solvers and deduction engines are often combined in order to balance efficiency and flexibility.
Variants of reachability problems
[edit]Finite explicit graph
[edit]The reachability problem in an oriented graph described explicitly is NL-complete. Reingold, in a 2008 article, proved that the reachability problem for a non-oriented graph is in LOGSPACE.[2]
In model checking, reachability corresponds to a property of liveliness.
Finite implicit graph
[edit]In planning, more precisely in classical planning, one is interested in knowing if one can attain a state from an initial state from a description of actions. The description of actions defines a graph of implicit states, which is of exponential size in the size of the description.
In symbolic model checking, the model (the underlying graph) is described with the aid of a symbolic representation such as binary decision diagrams.
Petri nets
[edit]The reachability problem in a Petri net is decidable.[3] Since 1976, it is known that this problem is EXPSPACE-hard.[4] There are results on how much to implement this problem in practice.[5] In 2018, the problem was shown to be a nonelementary problem.[6] In 2022 it was shown to be complete for Ackermann function time complexity.[7][8]
Vector addition systems
[edit]In 2022 reachability in vector addition systems was shown to be Ackermann-complete and therefore a nonelementary problem.[9][8]
Open problems
[edit]This section is empty. You can help by adding to it. (April 2013) |
International Conference on Reachability Problems (RP)
[edit]The International Conference on Reachability Problems series, previously known as Workshop on Reachability Problems, is an annual academic conference which gathers together researchers from diverse disciplines and backgrounds interested in reachability problems that appear in algebraic structures, computational models, hybrid systems, infinite games, logic and verification. The workshop tries to fill the gap between results obtained in different fields but sharing common mathematical structure or conceptual difficulties.
References
[edit]- ^ Giorgio Delzanno, Igor Potapov (Eds.): Reachability Problems - 5th International Workshop, RP 2011, Genoa, Italy, September 28–30, 2011. Proceedings. Lecture Notes in Computer Science 6945, Springer 2011, ISBN 978-3-642-24287-8
- ^ Reingold, Omer (3 May 2008). "Undirected Connectivity in Log-Space". omereingold.files.wordpress.com. Archived from the original on 2007-06-15. Retrieved 9 December 2021.
- ^ Mayr, Ernst W. (1981-05-11). "An algorithm for the general Petri net reachability problem". Proceedings of the thirteenth annual ACM symposium on Theory of computing - STOC '81. New York, NY, USA: Association for Computing Machinery. pp. 238–246. doi:10.1145/800076.802477. ISBN 978-1-4503-7392-0. S2CID 15409115.
- ^ Lipton, R. (1976). The Reachability Problem Requires Exponential Space. Technical Report 62. Department of Computer Science, Yale University.
- ^ Küngas, Peep (2005). "Petri Net Reachability Checking is Polynomial with Optimal Abstraction Hierarchies". In Zucker, Jean-Daniel; Saitta, Lorenza (eds.). Abstraction, Reformulation and Approximation. Lecture Notes in Computer Science. Vol. 3607. Berlin, Heidelberg: Springer. pp. 149–164. doi:10.1007/11527862_11. ISBN 978-3-540-31882-8.
- ^ Czerwinski, Wojciech; Lasota, Slawomir; Lazic, Ranko; Leroux, Jerome; Mazowiecki, Filip (2019-04-11). "The Reachability Problem for Petri Nets is Not Elementary". arXiv:1809.07115 [cs.FL].
- ^ Leroux, Jerome (February 2022). "The Reachability Problem for Petri Nets is Not Primitive Recursive". 2021 IEEE 62nd Annual Symposium on Foundations of Computer Science (FOCS). IEEE. pp. 1241–1252. arXiv:2104.12695. doi:10.1109/FOCS52979.2021.00121. ISBN 978-1-6654-2055-6.
- ^ a b Brubaker, Ben (4 December 2023). "An Easy-Sounding Problem Yields Numbers Too Big for Our Universe". Quanta Magazine.
- ^ Czerwiński, Wojciech; Orlikowski, Łukasz (2021). Reachability in Vector Addition Systems is Ackermann-complete. 2021 IEEE 62nd Annual Symposium on Foundations of Computer Science (FOCS). arXiv:2104.13866.