Abstract
Many problems in programming language theory and formal methods are undecidable, so they cannot be solved precisely. Practical techniques for dealing with undecidable problems are often based on decidable approximations. Undecidability implies that those approximations are always imprecise. Typically, practitioners use heuristics and ad hoc reasoning to identify imprecision issues and improve approximations, but there is a lack of computability-theoretic foundations about whether those efforts can succeed.
This paper shows a surprising interplay between undecidability and decidable approximations: there exists a class of undecidable problems, such that it is computable to transform any decidable approximation to a witness input demonstrating its imprecision. We call those undecidable problems witnessable problems. For example, if a program property P is witnessable, then there exists a computable function fP, such that fP takes as input the code of any program analyzer targeting P and produces an input program w on which the program analyzer is imprecise. An even more surprising fact is that the class of witnessable problems includes almost all undecidable problems in programming language theory and formal methods. Specifically, we prove the diagonal halting problem K is witnessable, and the class of witnessable problems is closed under complements and many-one reductions. In particular, all “non-trivial semantic properties of programs” mentioned in Rice’s theorem are witnessable. We also explicitly construct a problem in the non-witnessable (and undecidable) class and show that both classes have cardinality 2ℵ0.
Our results offer a new perspective on the understanding of undecidability: for witnessable problems, although it is impossible to solve them precisely, it is always possible to improve any decidable approximation to make it closer to the precise solution. This fact formally demonstrates that research efforts on such approximations are promising and shows there exist universal ways to identify precision issues of program analyzers, program verifiers, SMT solvers, etc., because their essences are decidable approximations of witnessable problems.
- Parosh Aziz Abdulla and Bengt Jonsson. 1996. Undecidable Verification Problems for Programs with Unreliable Channels. Inf. Comput., 130, 1 (1996), 71–90. https://doi.org/10.1006/inco.1996.0083
Google Scholar
Digital Library
- Alexander Aiken. 1999. Introduction to Set Constraint-Based Program Analysis. Sci. Comput. Program., 35, 2 (1999), 79–111. https://doi.org/10.1016/S0167-6423(99)00007-6
Google Scholar
Digital Library
- Sanjeev Arora. 1998. The Approximability of NP-hard Problems. In Proceedings of the Thirtieth Annual ACM Symposium on the Theory of Computing, Dallas, Texas, USA, May 23-26, 1998. ACM, 337–348. https://doi.org/10.1145/276698.276784
Google Scholar
Digital Library
- Andrea Asperti. 2008. The intensional content of Rice’s theorem. In Proceedings of the 35th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2008, San Francisco, California, USA, January 7-12, 2008. ACM, 113–119. https://doi.org/10.1145/1328438.1328455
Google Scholar
Digital Library
- Paolo Baldan, Francesco Ranzato, and Linpeng Zhang. 2021. A Rice’s Theorem for Abstract Semantics. In 48th International Colloquium on Automata, Languages, and Programming, ICALP 2021, July 12-16, 2021, Glasgow, Scotland (Virtual Conference) (LIPIcs, Vol. 198). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 117:1–117:19. https://doi.org/10.4230/LIPIcs.ICALP.2021.117
Google Scholar
Cross Ref
- Maria Paola Bonacina, Silvio Ghilardi, Enrica Nicolini, Silvio Ranise, and Daniele Zucchelli. 2006. Decidability and Undecidability Results for Nelson-Oppen and Rewrite-Based Decision Procedures. In Automated Reasoning, Third International Joint Conference, IJCAR 2006, Seattle, WA, USA, August 17-20, 2006, Proceedings (Lecture Notes in Computer Science, Vol. 4130). Springer, 513–527. https://doi.org/10.1007/11814771_42
Google Scholar
Digital Library
- Roberto Bruni, Roberto Giacobazzi, Roberta Gori, Isabel Garcia-Contreras, and Dusko Pavlovic. 2020. Abstract extensionality: on the properties of incomplete abstract interpretations. Proc. ACM Program. Lang., 4, POPL (2020), 28:1–28:28. https://doi.org/10.1145/3371096
Google Scholar
Digital Library
- Alonzo Church. 1936. An Unsolvable Problem of Elementary Number Theory. American Journal of Mathematics, 58, 2 (1936), 345–363. https://doi.org/10.2307/2268571
Google Scholar
Cross Ref
- Edmund M. Clarke, Orna Grumberg, Somesh Jha, Yuan Lu, and Helmut Veith. 2000. Counterexample-Guided Abstraction Refinement. In Computer Aided Verification, 12th International Conference, CAV 2000, Chicago, IL, USA, July 15-19, 2000, Proceedings (Lecture Notes in Computer Science, Vol. 1855). Springer, 154–169. https://doi.org/10.1007/10722167_15
Google Scholar
Cross Ref
- Patrick Cousot and Radhia Cousot. 1977. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Conference Record of the Fourth ACM Symposium on Principles of Programming Languages, Los Angeles, California, USA, January 1977. ACM, 238–252. https://doi.org/10.1145/512950.512973
Google Scholar
Digital Library
- Patrick Cousot and Radhia Cousot. 1995. Formal Language, Grammar and Set-Constraint-Based Program Analysis by Abstract Interpretation. In Proceedings of the seventh international conference on Functional programming languages and computer architecture, FPCA 1995, La Jolla, California, USA, June 25-28, 1995. ACM, 170–181. https://doi.org/10.1145/224164.224199
Google Scholar
Digital Library
- N. Cutland. 1980. Computability: An Introduction to Recursive Function Theory. Cambridge University Press. isbn:9780521294652 lccn:79051823 https://books.google.com/books?id=wAstOUE36kcC
Google Scholar
Cross Ref
- Joel D. Day, Vijay Ganesh, Paul He, Florin Manea, and Dirk Nowotka. 2018. The Satisfiability of Word Equations: Decidable and Undecidable Theories. In Reachability Problems - 12th International Conference, RP 2018, Marseille, France, September 24-26, 2018, Proceedings (Lecture Notes in Computer Science, Vol. 11123). Springer, 15–29. https://doi.org/10.1007/978-3-030-00250-3_2
Google Scholar
Cross Ref
- Catalin Dima and Ferucio Laurentiu Tiplea. 2011. Model-checking ATL under Imperfect Information and Perfect Recall Semantics is Undecidable. CoRR, abs/1102.4225 (2011), https://doi.org/10.48550/arXiv.1102.4225
Google Scholar
- Matthew Flatt and PLT. 2010. Reference: Racket. PLT Design Inc.. https://racket-lang.org/tr1/
Google Scholar
- Vijay Ganesh, Mia Minnes, Armando Solar-Lezama, and Martin C. Rinard. 2012. Word Equations with Length Constraints: What’s Decidable? In Hardware and Software: Verification and Testing - 8th International Haifa Verification Conference, HVC 2012, Haifa, Israel, November 6-8, 2012. Revised Selected Papers (Lecture Notes in Computer Science, Vol. 7857). Springer, 209–226. https://doi.org/10.1007/978-3-642-39611-3_21
Google Scholar
Digital Library
- Roberto Giacobazzi, Francesco Logozzo, and Francesco Ranzato. 2015. Analyzing Program Analyses. In Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2015, Mumbai, India, January 15-17, 2015. ACM, 261–273. https://doi.org/10.1145/2676726.2676987
Google Scholar
Digital Library
- Kurt Gödel. 1931. Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I. 38, Springer, 173–198. https://doi.org/10.1007/BF01700692
Google Scholar
Cross Ref
- Jason Z. S. Hu and Ondrej Lhoták. 2020. Undecidability of d_ < : and its decidable fragments. Proc. ACM Program. Lang., 4, POPL (2020), 9:1–9:30. https://doi.org/10.1145/3371077
Google Scholar
Digital Library
- T. Jech. 2013. Set Theory: The Third Millennium Edition, revised and expanded. Springer Berlin Heidelberg. isbn:9783642078996 https://books.google.com/books?id=70N-cgAACAAJ
Google Scholar
- N.D. Jones, C.K. Gomard, and P. Sestoft. 1993. Partial Evaluation and Automatic Program Generation. Prentice Hall. isbn:9780130202499 lccn:lc93016674 https://books.google.com/books?id=ZoBQAAAAMAAJ
Google Scholar
- Gary A. Kildall. 1973. A Unified Approach to Global Program Optimization. In Conference Record of the ACM Symposium on Principles of Programming Languages, Boston, Massachusetts, USA, October 1973, Patrick C. Fischer and Jeffrey D. Ullman (Eds.). ACM Press, 194–206. https://doi.org/10.1145/512927.512945
Google Scholar
Digital Library
- William Landi. 1992. Undecidability of Static Analysis. LOPLAS, 1, 4 (1992), 323–337. https://doi.org/10.1145/161494.161501
Google Scholar
Digital Library
- Shuying Liang, Weibin Sun, and Matthew Might. 2014. Fast Flow Analysis with Godel Hashes. In 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014, Victoria, BC, Canada, September 28-29, 2014. IEEE Computer Society, 225–234. https://doi.org/10.1109/SCAM.2014.40
Google Scholar
Digital Library
- Jean-Yves Moyen and Jakob Grue Simonsen. 2019. More Intensional Versions of Rice’s Theorem. In Computing with Foresight and Industry - 15th Conference on Computability in Europe, CiE 2019, Durham, UK, July 15-19, 2019, Proceedings (Lecture Notes in Computer Science, Vol. 11558). Springer, 217–229. https://doi.org/10.1007/978-3-030-22996-2_19
Google Scholar
Digital Library
- John Myhill. 1957. Creative sets. Journal of Symbolic Logic, 22, 1 (1957), https://doi.org/10.2307/2964061
Google Scholar
Cross Ref
- Benjamin C. Pierce. 1992. Bounded Quantification is Undecidable. In Conference Record of the Nineteenth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Albuquerque, New Mexico, USA, January 19-22, 1992. ACM Press, 305–315. https://doi.org/10.1145/143165.143228
Google Scholar
Digital Library
- Emil L Post. 1944. Recursively enumerable sets of positive integers and their decision problems. Bull. Amer. Math. Soc., 50, 5 (1944), 284–316. https://doi.org/10.1090/S0002-9904-1944-08111-1
Google Scholar
Cross Ref
- Emil L Post. 1946. A variant of a recursively unsolvable problem. Bull. Amer. Math. Soc., 52, 4 (1946), 264–268. https://doi.org/10.1090/S0002-9904-1946-08555-9
Google Scholar
Cross Ref
- Thomas W. Reps. 1998. Program analysis via graph reachability. Inf. Softw. Technol., 40, 11-12 (1998), 701–726. https://doi.org/10.1016/S0950-5849(98)00093-7
Google Scholar
Cross Ref
- Thomas W. Reps. 2000. Undecidability of context-sensitive data-dependence analysis. ACM Trans. Program. Lang. Syst., 22, 1 (2000), 162–186. https://doi.org/10.1145/345099.345137
Google Scholar
Digital Library
- Hartley Rogers. 1958. Gödel numberings of partial recursive functions. The journal of symbolic logic, 23, 3 (1958), 331–341. https://doi.org/10.2307/2964292
Google Scholar
Cross Ref
- Joseph R Shoenfield. 1959. On degrees of unsolvability. Annals of mathematics, 644–653. https://doi.org/10.2307/1970028
Google Scholar
Cross Ref
- M. Sipser. 2012. Introduction to the Theory of Computation. isbn:9781133187790 lccn:2012938665 https://books.google.com/books?id=H94JzgEACAAJ
Google Scholar
- R.I. Soare. 1999. Recursively Enumerable Sets and Degrees: A Study of Computable Functions and Computably Generated Sets. Springer Berlin Heidelberg. isbn:9783540152996 lccn:lc86033928 https://books.google.com/books?id=9I7Pl00LU5gC
Google Scholar
- Alan Mathison Turing. 1936. On computable numbers, with an application to the Entscheidungsproblem. J. of Math, 58, 345-363 (1936), 5. https://doi.org/10.1112/plms/s2-42.1.230
Google Scholar
Cross Ref
- V.V. Vazirani. 2013. Approximation Algorithms. Springer Berlin Heidelberg. isbn:9783662045657 lccn:2001042005 https://books.google.com/books?id=bJmqCAAAQBAJ
Google Scholar
- J. B. Wells. 1999. Typability and Type Checking in System F are Equivalent and Undecidable. Ann. Pure Appl. Log., 98, 1-3 (1999), 111–156. https://doi.org/10.1016/S0168-0072(98)00047-5
Google Scholar
Cross Ref
Index Terms
Witnessability of Undecidable Problems
Recommendations
Undecidable problems about timed automata
FORMATS'06: Proceedings of the 4th international conference on Formal Modeling and Analysis of Timed SystemsWe solve some decision problems for timed automata which were raised by S. Tripakis in [Tri04] and by E. Asarin in [Asa04]. In particular, we show that one cannot decide whether a given timed automaton is determinizable or whether the complement of a ...
Highly Undecidable Problems about Recognizability by Tiling Systems
Machines, Computations and Universality, Part IIAltenbernd, Thomas and Wöhrle have considered acceptance of languages of infinite two-dimensional words (infinite pictures) by finite tiling systems, with usual acceptance conditions, such as the Büchi andMuller ones, in [1]. It was proved in [9] that ...
Highly Undecidable Problems about Recognizability by Tiling Systems
Machines, Computations and Universality, Part IIAltenbernd, Thomas and Wöhrle have considered acceptance of languages of infinite two-dimensional words (infinite pictures) by finite tiling systems, with usual acceptance conditions, such as the Büchi andMuller ones, in [1]. It was proved in [9] that ...






Comments