skip to main content
research-article
Open Access

Witnessability of Undecidable Problems

Published:11 January 2023Publication History
Skip Abstract Section

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 20.

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.

References

  1. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  2. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  3. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  4. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  5. 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 ScholarGoogle ScholarCross RefCross Ref
  6. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  8. 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 ScholarGoogle ScholarCross RefCross Ref
  9. 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 ScholarGoogle ScholarCross RefCross Ref
  10. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  11. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  12. 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 ScholarGoogle ScholarCross RefCross Ref
  13. 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 ScholarGoogle ScholarCross RefCross Ref
  14. 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 ScholarGoogle Scholar
  15. Matthew Flatt and PLT. 2010. Reference: Racket. PLT Design Inc.. https://racket-lang.org/tr1/ Google ScholarGoogle Scholar
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. 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 ScholarGoogle ScholarCross RefCross Ref
  19. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  20. 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 ScholarGoogle Scholar
  21. 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 ScholarGoogle Scholar
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. William Landi. 1992. Undecidability of Static Analysis. LOPLAS, 1, 4 (1992), 323–337. https://doi.org/10.1145/161494.161501 Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  26. John Myhill. 1957. Creative sets. Journal of Symbolic Logic, 22, 1 (1957), https://doi.org/10.2307/2964061 Google ScholarGoogle ScholarCross RefCross Ref
  27. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  28. 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 ScholarGoogle ScholarCross RefCross Ref
  29. 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 ScholarGoogle ScholarCross RefCross Ref
  30. 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 ScholarGoogle ScholarCross RefCross Ref
  31. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  32. 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 ScholarGoogle ScholarCross RefCross Ref
  33. Joseph R Shoenfield. 1959. On degrees of unsolvability. Annals of mathematics, 644–653. https://doi.org/10.2307/1970028 Google ScholarGoogle ScholarCross RefCross Ref
  34. M. Sipser. 2012. Introduction to the Theory of Computation. isbn:9781133187790 lccn:2012938665 https://books.google.com/books?id=H94JzgEACAAJ Google ScholarGoogle Scholar
  35. 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 ScholarGoogle Scholar
  36. 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 ScholarGoogle ScholarCross RefCross Ref
  37. V.V. Vazirani. 2013. Approximation Algorithms. Springer Berlin Heidelberg. isbn:9783662045657 lccn:2001042005 https://books.google.com/books?id=bJmqCAAAQBAJ Google ScholarGoogle Scholar
  38. 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 ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Witnessability of Undecidable Problems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image Proceedings of the ACM on Programming Languages
          Proceedings of the ACM on Programming Languages  Volume 7, Issue POPL
          January 2023
          2196 pages
          EISSN:2475-1421
          DOI:10.1145/3554308
          • Editor:
          Issue’s Table of Contents

          Copyright © 2023 Owner/Author

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 11 January 2023
          Published in pacmpl Volume 7, Issue POPL

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
        • Article Metrics

          • Downloads (Last 12 months)194
          • Downloads (Last 6 weeks)26

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!