skip to main content
research-article

Monadic Decomposition

Published:30 April 2017Publication History
Skip Abstract Section

Abstract

Monadic predicates play a prominent role in many decidable cases, including decision procedures for symbolic automata. We are here interested in discovering whether a formula can be rewritten into a Boolean combination of monadic predicates. Our setting is quantifier-free formulas whose satisfiability is decidable, such as linear arithmetic. Here we develop a semidecision procedure for extracting a monadic decomposition of a formula when it exists.

References

  1. Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. 2006. Compilers: Principles, Techniques, and Tools (2nd ed.). Addison Wesley.Google ScholarGoogle Scholar
  2. Hajnal Andréka, István Németi, and Johan van Benthem. 1998. Modal languages and bounded fragments of predicate logic. Journal of Philosophical Logic 27, 3 (1998), 217--274. Google ScholarGoogle ScholarCross RefCross Ref
  3. Matthias Baaz, Uwe Egly, and Alexander Leitsch. 2001. Normal form transformations. In Handbook of Automated Reasoning, A. Robinson and A. Voronkov (Eds.). Vol. I. North Holland, Chapter 5, 273--333. Google ScholarGoogle ScholarCross RefCross Ref
  4. Clark Barrett, Christopher L. Conway, Morgan Deters, Liana Hadarean, Dejan Jovanović, Tim King, Andrew Reynolds, and Cesare Tinelli. 2011. CVC4. In Proceedings of the 23rd International Conference on Computer Aided Verification (CAV’11) (LNCS). Springer, 171--177.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Michael Benedikt, Leonid Libkin, Thomas Schwentick, and Luc Segoufin. 2003. Definable relations and first-order query languages over strings. Journal of the ACM 50, 5 (2003), 694--751. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Alexis Bés. 2008. An application of the Feferman-Vaught Theorem to automata and logics for words over an infinite alphabet. Logical Methods in Computer Science 4 (2008), 1--23. Google ScholarGoogle ScholarCross RefCross Ref
  7. Garrett Birkhoff. 1935. On the structure of abstract algebras. Mathematical Proceedings of the Cambridge Philosophical Society 31 (1935), 433--454. Google ScholarGoogle Scholar
  8. Egon Börger, Erich Grädel, and Yuri Gurevich. 1997. The Classical Decision Problem. Springer. Google ScholarGoogle ScholarCross RefCross Ref
  9. Matko Botincan and Domagoj Babic. 2013. Sigma*: Symbolic learning of input-output specifications. ACM SIGPLAN Notices (POPL’13) 48, 1 (2013), 443--456.Google ScholarGoogle Scholar
  10. Aaron R. Bradley, Zohar Manna, and Henny B. Sipma. 2006. What’s decidable about arrays? In Proceedings of the 7th International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI’06), Lecture Notes in Computer Science, Vol. 3855. 427--442.Google ScholarGoogle Scholar
  11. Julius Richard Büchi. 1962. On a decision method in restricted second order arithmetic. In Logic, Methodology and Philosophy of Science (Proc. 1960 Internat. Congr.), E. Nagel, P. Suppes, and A. Tarski (Eds.). Stanford University Press, 1--11.Google ScholarGoogle Scholar
  12. Olivier Carton, Christian Choffrut, and Serge Grigorieff. 2006. Decision problems among the main subfamilies of rational relations. RAIRO-Theoretical Informatics and Applications 40, 2 (2006), 255--275. Google ScholarGoogle ScholarCross RefCross Ref
  13. Jan Chomicki, Dina Goldin, Gabriel Kuper, and David Toman. 2003. Variable independence in constraint databases. IEEE Transactions on Knowledge and Data Engineering 15, 6 (2003), 1422--1436. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Stavros Cosmadakis, Gabriel Kuper, and Leonid Libkin. 2001. On the orthographic dimension of definable sets. Information Processing Letters 79, 3 (2001), 141--145. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Loris D’Antoni and Margus Veanes. 2013. Static analysis of string encoders and decoders. In VMCAI 2013, Lecture Notes in Computer Science, Vol. 7737, R. Giacobazzi, J. Berdine, and I. Mastroeni (Eds.). Springer, 209--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Loris D’Antoni and Margus Veanes. 2014. Minimization of symbolic automata. ACM SIGPLAN Notices - POPL’14 49, 1 (2014), 541--553.Google ScholarGoogle Scholar
  17. Loris D’Antoni and Margus Veanes. 2015. Extended symbolic finite automata and transducers. Formal Methods in System Design (July 2015).Google ScholarGoogle Scholar
  18. Loris D’Antoni and Margus Veanes. 2017. Monadic second-order logic on finite sequences. In Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages (POPL’17). ACM, 232--245. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Leonardo de Moura and Nikolaj Bjørner. 2008. Z3: An efficient SMT solver. In TACAS’08 (LNCS). Springer. Google ScholarGoogle ScholarCross RefCross Ref
  20. Leonardo de Moura and Nikolaj Bjørner. 2011. Satisfiability modulo theories: Introduction and applications. Communications of the ACM 54, 9 (2011), 69--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Nachum Dershowitz. 1979. A note on simplification orderings. Information Processing Letters 9, 5 (1979), 212--215. Google ScholarGoogle ScholarCross RefCross Ref
  22. Nachum Dershowitz. 1982. Orderings for term-rewriting systems. Theoretical Computer Science 17, 3 (1982), 279--301. Google ScholarGoogle ScholarCross RefCross Ref
  23. Nachum Dershowitz and David A. Plaisted. 2001. Rewriting. In Handbook of Automated Reasoning, Alan Robinson and Andrei Voronkov (Eds.). Vol. 1. North Holland, Chapter 9, 535--610. Google ScholarGoogle ScholarCross RefCross Ref
  24. Bruno Dutertre. 2014. Yices 2.2. In Computer-Aided Verification (CAV’14), Lecture Notes in Computer Science, Vol. 8559, Armin Biere and Roderick Bloem (Eds.). Springer, 737--744.Google ScholarGoogle Scholar
  25. Calvin C. Elgot and John E. Mezei. 1965. On relations defined by finite automata. IBM Journal 10 (1965), 47--68. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Solomon Feferman and Robert L. Vaught. 1959. The first-order properties of algebraic systems. Fundamenta Mathematicae 47 (1959), 57--103.Google ScholarGoogle ScholarCross RefCross Ref
  27. Emmanuel Filiot and Sophie Tison. 2008. Regular n-ary Queries in Trees and Variable Independence. Springer, 429--443. Google ScholarGoogle ScholarCross RefCross Ref
  28. Michael J. Fischer and Michael O. Rabin. 1974. Super-exponential complexity of Presburger arithmetic. In SIAMAMS: Complexity of Computation: Proceedings of a Symposium in Applied Mathematics of the American Mathematical Society and the Society for Industrial and Applied Mathematics. 27--41.Google ScholarGoogle Scholar
  29. Harald Ganzinger, George Hagen, Robert Nieuwenhuis, Albert Oliveras, and Cesare Tinelli. 2004. DPLL(T): Fast decision procedures. In Proceedings of the 16th International Conference on Computer Aided Verification (CAV’04). 175--188. Google ScholarGoogle ScholarCross RefCross Ref
  30. Harald Ganzinger, Christoph Meyer, and Margus Veanes. 1999. The two-variable guarded fragment with transitive relations. In LICS’99. IEEE, 24--34. Google ScholarGoogle ScholarCross RefCross Ref
  31. Yeting Ge, Clark Barrett, and Cesare Tinelli. 2009. Solving quantified verification conditions using satisfiability modulo theories. Annals of Mathematics and Artificial Intelligence 55, 1--2 (2009), 101--122.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Erich Grädel. 1998. On the restraining power of guards. Journal of Symbolic Logic 64 (1998), 1719--1742. Google ScholarGoogle ScholarCross RefCross Ref
  33. Erich Grädel. 1999. Why are modal logics so robustly decidable? Bulletin EATCS 68 (1999), 90--103.Google ScholarGoogle Scholar
  34. Stéphane Grumbach, Philippe Rigaux, and Luc Segoufin. 1998. The DEDALE system for complex spatial queries. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD’98). 213--224. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Yuri Gurevich. 1976. The decision problem for standard classes. Journal of Symbolic Logic 41 (1976), 460--464. Google ScholarGoogle ScholarCross RefCross Ref
  36. Yuri Gurevich. 1985. Monadic second-order theories. In Model-Theoretical Logics, Jon Barwise and Sol Feferman (Eds.). Springer, Chapter XIII, 479--506.Google ScholarGoogle Scholar
  37. John V. Guttag, Ellis Horowitz, and David R. Musser. 1978. Abstract data types and software validation. Communications of the ACM 21, 12 (1978), 1048--1064. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Jesper G. Henriksen, Ole J. L. Jensen, Michael Jørgensen, Nils Klarlund, Robert Paige, Theis Rauhe, and Anders B. Sandholm. 1995. Mona: Monadic second-order logic in practice. In TACAS’95, Lecture Notes in Computer Science, Vol. 1019. Springer. Google ScholarGoogle ScholarCross RefCross Ref
  39. Pieter Hooimeijer, Benjamin Livshits, David Molnar, Prateek Saxena, and Margus Veanes. 2011. Fast and precise sanitizer analysis with Bek. In Proceedings of the USENIX Security Symposium.Google ScholarGoogle Scholar
  40. Pieter Hooimeijer and Margus Veanes. 2011. An evaluation of automata algorithms for string analysis. In VMCAI’11, Lecture Notes in Computer Science, Vol. 6538. Springer, 248--262. Google ScholarGoogle ScholarCross RefCross Ref
  41. Nils Klarlund, Anders Møller, and Michael I. Schwartzbach. 2002. MONA implementation secrets. International Journal of Foundations of Computer Science 13, 4 (2002), 571--586. Google ScholarGoogle ScholarCross RefCross Ref
  42. Konstantin Korovin. 2009. Instantiation-based automated reasoning: From theory to practice. In Proceedings of the 22nd International Conference on Automated Deduction (LNAI), Vol. 5663. Springer, 2--7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Konstantin Korovin. 2013. Inst-gen—A modular approach to instantiation-based automated reasoning. In Programming Logics, Essays in Memory of Harald Ganzinger. Springer. Google ScholarGoogle ScholarCross RefCross Ref
  44. Konstantin Korovin and Margus Veanes. 2014. Skolemization modulo theories. In Mathematical Software, ICMS 2014, Lecture Notes in Computer Science, Vol. 8592, Hoon Hong and Chee Yap (Eds.). Springer, 303--306. Google ScholarGoogle ScholarCross RefCross Ref
  45. Joseph B. Kruskal. 1960. Well-quasi-ordering, the tree theorem, and Vazsonyi’s conjecture. Transactions of the American Mathematical Society 95, 2 (1960), 210--225. Google ScholarGoogle ScholarCross RefCross Ref
  46. Richard E. Ladner and Michael J. Fischer. 1980. Parallel prefix computation. Journal of the ACM 27, 4 (1980), 831--838. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Dallas S. Lankford. 1975. Canonical Inference. Technical Report ATP-32. Southwestern University.Google ScholarGoogle Scholar
  48. Leonid Libkin. 2003. Variable independence for first-order definable constraints. ACM Transactions on Computational Logic 4, 4 (Oct. 2003), 431--451. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Martin Löb. 1967. Decidability of the monadic predicate calculus with unary function symbols. Journal of Symbolic Logic 32 (1967), 563.Google ScholarGoogle Scholar
  50. Leopold Löwenheim. 1915. Über möglichkeiten im relativkalkül. Mathematische Annalen 76 (1915), 447--470. Google ScholarGoogle ScholarCross RefCross Ref
  51. Anatoli Mal’cev. 1971. The Metamathematics of Algebraic Systems. North-Holland.Google ScholarGoogle Scholar
  52. Todd Mytkowicz, Madanlal Musuvathi, and Wolfram Schulte. 2014. Data-parallel finite-state machines. ACM SIGPLAN Notices - ASPLOS’14 49, 4 (2014), 529--542.Google ScholarGoogle Scholar
  53. Greg Nelson and Derek C. Oppen. 1979. Simplification by cooperating decision procedures. ACM Transactions on Programming Languages and Systems 1 (1979), 245--257. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Ggerg Nelson and Derek C. Oppen. 1980. Fast decision procedures based on congruence closure. Journal of the ACM 27, 2 (April 1980), 356--364. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. Joachim Niehren, Laurent Planque, Jean-Marc Talbot, and Sophie Tison. 2005. N-ary queries by tree automata. In Proceedings of the 10th International Conference on Database Programming Languages (DBPL’ 05). Springer, 217--231.Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Flemming Nielson, Hanne R. Nielson, and Chris Hankin. 2010. Principles of Program Analysis. Springer.Google ScholarGoogle Scholar
  57. Tobias Nipkow. 2008. Linear quantifier elimination. In Proceedings of the 4th International Joint Conference on Automated Reasoning (IJCAR’08), Lecture Notes in Artificial Intelligence, Vol. 5195. Springer, 18--33. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Maurice Nivat. 1968. Transductions des langages de Chomsky. Annales de l’institut Fourier 18, 1 (1968), 339--455. Google ScholarGoogle ScholarCross RefCross Ref
  59. Mojzesz Presburger. 1929. Über die Vollständigkeit eines gewissen systems der arithmetik ganzer zahlen, in welchem die addition als einzige operation hervortritt. In Comptes Rendus du I congrés de Mathématiciens des Pays Slaves. Warsaw, Poland, 92--101.Google ScholarGoogle Scholar
  60. Michael O. Rabin. 1969. Decidability of second-order theories and automata on infinite trees. Transactions of the American Mathematical Society 141 (1969), 1--35.Google ScholarGoogle Scholar
  61. C. Ramu Reddy and Donald W. Loveland. 1978. Presburger arithmetic with bounded quantifier alternation. In Proceedings of the 10th Annual ACM Symposium on Theory of Computing (STOC’78). ACM, New York, 320--325. Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. Henry G. Rice. 1953. Classes of recursively enumerable sets and their decision problems. Transactions of the American Mathematical Society 74 (1953), 358--366. Google ScholarGoogle ScholarCross RefCross Ref
  63. Alexei P. Stolboushkin and Michael A. Taitslin. 1999. Finite queries do not have effective syntax. Information and Computation 153, 1 (1999), 99--116. Google ScholarGoogle ScholarDigital LibraryDigital Library
  64. Wolfgang Thomas. 1996. Languages, automata, and logic. In Handbook of Formal Languages. Vol. 3. Springer, 389--455.Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Lou van den Dries. 1998. Tame Topology and O-Minimal Structures. Cambridge University Press. Google ScholarGoogle ScholarCross RefCross Ref
  66. Gertjan Van Noord and Dale Gerdemann. 2001. Finite state transducers with predicates and identities. Grammars 4 (2001), 263--286. Google ScholarGoogle ScholarCross RefCross Ref
  67. Moshe Y. Vardi. 1996. Why is modal logic so robustly decidable? In Descriptive Complexity and Finite Models (DIMACS Series in Discrete Mathematics and Theoretical Computer Science), Neil Immerman and Phokion G. Kolaitis (Eds.), Vol. 31. American Mathematical Society, 149--184.Google ScholarGoogle Scholar
  68. Margus Veanes and Nikolaj Bjørner. 2012. Symbolic automata: The toolkit. In TACAS 2012, Lecture Notes in Computer Science, Vol. 7214, C. Flanagan and B. König (Eds.). Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. Margus Veanes, Nikolaj Bjørner, and Leonardo de Moura. 2010. Symbolic automata constraint solving. In LPAR-17 (LNCS/ARCoSS), Lecture Notes in Computer Science, Vol. 6397, C. Fermüller and A. Voronkov (Eds.). Springer, 640--654. Google ScholarGoogle ScholarCross RefCross Ref
  70. Margus Veanes, Nikolaj Bjørner, Lev Nachmanson, and Sergey Bereg. 2014. Monadic decomposition. In Proceedings of the 26th international Conference on Computer Aided Verification (CAV’14), Lecture Notes in Computer Science, Vol. 8559. Springer, 628--645. Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Margus Veanes, Pieter Hooimeijer, Benjamin Livshits, David Molnar, and Nikolaj Bjørner. 2012. Symbolic finite state transducers: Algorithms and applications. In POPL’12. 137--150.Google ScholarGoogle Scholar
  72. Margus Veanes, Todd Mytkowicz, David Molnar, and Benjamin Livshits. 2015. Data-parallel string-manipulating programs. ACM SIGPLAN Notices - POPL’15 50, 1 (2015), 139--152.Google ScholarGoogle Scholar
  73. Sheng Yu. 1997. Regular languages. In Handbook of Formal Languages, G. Rozenberg and A. Salomaa (Eds.). Vol. 1. Springer, 41--110. Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Monadic Decomposition

          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 Journal of the ACM
            Journal of the ACM  Volume 64, Issue 2
            April 2017
            277 pages
            ISSN:0004-5411
            EISSN:1557-735X
            DOI:10.1145/3080497
            Issue’s Table of Contents

            Copyright © 2017 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 30 April 2017
            • Revised: 1 February 2017
            • Accepted: 1 February 2017
            • Received: 1 January 2016
            Published in jacm Volume 64, Issue 2

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Research
            • Refereed

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader