Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Monadic Decomposition

Published: 30 April 2017 Publication History

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.
[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.
[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.
[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.
[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.
[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.
[7]
Garrett Birkhoff. 1935. On the structure of abstract algebras. Mathematical Proceedings of the Cambridge Philosophical Society 31 (1935), 433--454.
[8]
Egon Börger, Erich Grädel, and Yuri Gurevich. 1997. The Classical Decision Problem. Springer.
[9]
Matko Botincan and Domagoj Babic. 2013. Sigma*: Symbolic learning of input-output specifications. ACM SIGPLAN Notices (POPL’13) 48, 1 (2013), 443--456.
[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.
[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.
[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.
[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.
[14]
Stavros Cosmadakis, Gabriel Kuper, and Leonid Libkin. 2001. On the orthographic dimension of definable sets. Information Processing Letters 79, 3 (2001), 141--145.
[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.
[16]
Loris D’Antoni and Margus Veanes. 2014. Minimization of symbolic automata. ACM SIGPLAN Notices - POPL’14 49, 1 (2014), 541--553.
[17]
Loris D’Antoni and Margus Veanes. 2015. Extended symbolic finite automata and transducers. Formal Methods in System Design (July 2015).
[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.
[19]
Leonardo de Moura and Nikolaj Bjørner. 2008. Z3: An efficient SMT solver. In TACAS’08 (LNCS). Springer.
[20]
Leonardo de Moura and Nikolaj Bjørner. 2011. Satisfiability modulo theories: Introduction and applications. Communications of the ACM 54, 9 (2011), 69--77.
[21]
Nachum Dershowitz. 1979. A note on simplification orderings. Information Processing Letters 9, 5 (1979), 212--215.
[22]
Nachum Dershowitz. 1982. Orderings for term-rewriting systems. Theoretical Computer Science 17, 3 (1982), 279--301.
[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.
[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.
[25]
Calvin C. Elgot and John E. Mezei. 1965. On relations defined by finite automata. IBM Journal 10 (1965), 47--68.
[26]
Solomon Feferman and Robert L. Vaught. 1959. The first-order properties of algebraic systems. Fundamenta Mathematicae 47 (1959), 57--103.
[27]
Emmanuel Filiot and Sophie Tison. 2008. Regular n-ary Queries in Trees and Variable Independence. Springer, 429--443.
[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.
[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.
[30]
Harald Ganzinger, Christoph Meyer, and Margus Veanes. 1999. The two-variable guarded fragment with transitive relations. In LICS’99. IEEE, 24--34.
[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.
[32]
Erich Grädel. 1998. On the restraining power of guards. Journal of Symbolic Logic 64 (1998), 1719--1742.
[33]
Erich Grädel. 1999. Why are modal logics so robustly decidable? Bulletin EATCS 68 (1999), 90--103.
[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.
[35]
Yuri Gurevich. 1976. The decision problem for standard classes. Journal of Symbolic Logic 41 (1976), 460--464.
[36]
Yuri Gurevich. 1985. Monadic second-order theories. In Model-Theoretical Logics, Jon Barwise and Sol Feferman (Eds.). Springer, Chapter XIII, 479--506.
[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.
[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.
[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.
[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.
[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.
[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.
[43]
Konstantin Korovin. 2013. Inst-gen—A modular approach to instantiation-based automated reasoning. In Programming Logics, Essays in Memory of Harald Ganzinger. Springer.
[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.
[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.
[46]
Richard E. Ladner and Michael J. Fischer. 1980. Parallel prefix computation. Journal of the ACM 27, 4 (1980), 831--838.
[47]
Dallas S. Lankford. 1975. Canonical Inference. Technical Report ATP-32. Southwestern University.
[48]
Leonid Libkin. 2003. Variable independence for first-order definable constraints. ACM Transactions on Computational Logic 4, 4 (Oct. 2003), 431--451.
[49]
Martin Löb. 1967. Decidability of the monadic predicate calculus with unary function symbols. Journal of Symbolic Logic 32 (1967), 563.
[50]
Leopold Löwenheim. 1915. Über möglichkeiten im relativkalkül. Mathematische Annalen 76 (1915), 447--470.
[51]
Anatoli Mal’cev. 1971. The Metamathematics of Algebraic Systems. North-Holland.
[52]
Todd Mytkowicz, Madanlal Musuvathi, and Wolfram Schulte. 2014. Data-parallel finite-state machines. ACM SIGPLAN Notices - ASPLOS’14 49, 4 (2014), 529--542.
[53]
Greg Nelson and Derek C. Oppen. 1979. Simplification by cooperating decision procedures. ACM Transactions on Programming Languages and Systems 1 (1979), 245--257.
[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.
[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.
[56]
Flemming Nielson, Hanne R. Nielson, and Chris Hankin. 2010. Principles of Program Analysis. Springer.
[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.
[58]
Maurice Nivat. 1968. Transductions des langages de Chomsky. Annales de l’institut Fourier 18, 1 (1968), 339--455.
[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.
[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.
[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.
[62]
Henry G. Rice. 1953. Classes of recursively enumerable sets and their decision problems. Transactions of the American Mathematical Society 74 (1953), 358--366.
[63]
Alexei P. Stolboushkin and Michael A. Taitslin. 1999. Finite queries do not have effective syntax. Information and Computation 153, 1 (1999), 99--116.
[64]
Wolfgang Thomas. 1996. Languages, automata, and logic. In Handbook of Formal Languages. Vol. 3. Springer, 389--455.
[65]
Lou van den Dries. 1998. Tame Topology and O-Minimal Structures. Cambridge University Press.
[66]
Gertjan Van Noord and Dale Gerdemann. 2001. Finite state transducers with predicates and identities. Grammars 4 (2001), 263--286.
[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.
[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.
[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.
[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.
[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.
[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.
[73]
Sheng Yu. 1997. Regular languages. In Handbook of Formal Languages, G. Rozenberg and A. Salomaa (Eds.). Vol. 1. Springer, 41--110.

Cited By

View all
  • (2024)Ramsey Quantifiers in Linear ArithmeticsProceedings of the ACM on Programming Languages10.1145/36328438:POPL(1-32)Online publication date: 5-Jan-2024
  • (2022)Ramsey Quantifiers over Automatic Structures: Complexity and Applications to VerificationProceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer Science10.1145/3531130.3533346(1-14)Online publication date: 2-Aug-2022
  • (2022)Quantifier elimination for counting extensions of Presburger arithmeticFoundations of Software Science and Computation Structures10.1007/978-3-030-99253-8_12(225-243)Online publication date: 29-Mar-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

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
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
Accepted: 01 February 2017
Revised: 01 February 2017
Received: 01 January 2016
Published in JACM Volume 64, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Symbolic automata
  2. monadic logic
  3. satisfiability modulo theories
  4. variable independence

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)17
  • Downloads (Last 6 weeks)2
Reflects downloads up to 09 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Ramsey Quantifiers in Linear ArithmeticsProceedings of the ACM on Programming Languages10.1145/36328438:POPL(1-32)Online publication date: 5-Jan-2024
  • (2022)Ramsey Quantifiers over Automatic Structures: Complexity and Applications to VerificationProceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer Science10.1145/3531130.3533346(1-14)Online publication date: 2-Aug-2022
  • (2022)Quantifier elimination for counting extensions of Presburger arithmeticFoundations of Software Science and Computation Structures10.1007/978-3-030-99253-8_12(225-243)Online publication date: 29-Mar-2022
  • (2021)Learning Union of Integer Hypercubes with QueriesComputer Aided Verification10.1007/978-3-030-81688-9_12(243-265)Online publication date: 15-Jul-2021
  • (2020)Monadic Decomposition in Integer Linear ArithmeticAutomated Reasoning10.1007/978-3-030-51074-9_8(122-140)Online publication date: 1-Jul-2020
  • (2019)Decision procedures for path feasibility of string-manipulating programs with complex operationsProceedings of the ACM on Programming Languages10.1145/32903623:POPL(1-30)Online publication date: 2-Jan-2019
  • (2019)Programming Z3Challenging the Borders of Justice in the Age of Migrations10.1007/978-3-030-17601-3_4(148-201)Online publication date: 14-Apr-2019
  • (2018)Enhancing set constraint solvers with bound consistencyExpert Systems with Applications: An International Journal10.1016/j.eswa.2017.09.05692:C(485-494)Online publication date: 1-Feb-2018
  • (2017)The Power of Symbolic Automata and TransducersComputer Aided Verification10.1007/978-3-319-63387-9_3(47-67)Online publication date: 13-Jul-2017

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media