Skip to main content

On the Satisfiability of Modular Arithmetic Formulae

  • Conference paper
Automated Technology for Verification and Analysis (ATVA 2006)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4218))

Abstract

Modular arithmetic is the underlying integral computation model in conventional programming languages. In this paper, we discuss the satisfiability problem of propositional formulae in modular arithmetic over the finite ring \(\textbf{Z}_{2^\omega}\). Although an upper bound of \(2^{2^{O (n^4)}}\) can be obtained by solving alternation-free Presburger arithmetic, it is easy to see that the problem is in fact NP-complete. Further, we give an efficient reduction to integer programming with the number of constraints and variables linear in the length of the given linear modular arithmetic formula. For non-linear modular arithmetic formulae, an additional factor of ω is needed. With the advent of efficient integer programming packages, our algorithm could be useful to software verification in practice.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Babić, D., Musuvathi, M.: Modular arithmetic decision procedure. Technical Report MSR-TR-2005-114, Microsoft Research (2005)

    Google Scholar 

  2. Barrett, C., Berezin, S.: CVC Lite: A new implementation of the cooperating validity checker. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, pp. 515–518. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  3. Biere, A., Cimatti, A., Clarke, E.M., Fujita, M., Zhu, Y.: Symbolic model checking using SAT procedures instead of BDDs. In: Design Automation Conference, pp. 317–320. ACM Press, New York (1999)

    Google Scholar 

  4. Boigelot, B., Wolper, P.: Representing arithmetic constraints with finite automata: An overview. In: Stuckey, P.J. (ed.) ICLP 2002. LNCS, vol. 2401, pp. 1–19. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  5. Clarke, E., Kroening, D., Sharygina, N., Yorav, K.: Predicate abstraction of ANSI-C programs using SAT. Formal Methods in System Design 25(2–3), 105–127 (2004)

    Article  MATH  Google Scholar 

  6. Cooper, D.C.: Theorem proving in arithmetic without multiplication. Machine Intelligence 7 (1972)

    Google Scholar 

  7. Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: ACM Symposium on Principles of Programming Languages, pp. 238–252 (1977)

    Google Scholar 

  8. Enderton, H.: A Mathematical Introduction to Logic. Academic Press, London (1972)

    MATH  Google Scholar 

  9. Geist, A., Beguelin, A., Dongarra, J., Jiang, W., Manchek, R., Sunderam, V.: PVM: Parallel Virtual Machine – A Users’ Guide and Tutorial for Networked Parallel Computing. MIT Press, Cambridge (1994)

    MATH  Google Scholar 

  10. Huet, G., Kahn, G.: Paulin-Mohring: The Coq proof assistant: a tutorial: version 6.1. Technical Report 204, Institut National de Recherche en Informatique et en Automatique (1997)

    Google Scholar 

  11. Hungerford, T.W.: Algebra. Graduate Texts in Mathematics, vol. 73. Springer, Heidelberg (1980)

    MATH  Google Scholar 

  12. Knuth, D.E.: The Art of Computer Programming. Seminumerical Algorithms, vol. II. Addison-Wesley, Reading (1997)

    Google Scholar 

  13. Melham, T.F.: Introduction to the HOL theorem prover. University of Cambridge, Computer Laboratory (1990)

    Google Scholar 

  14. Murtagh, B.A.: Advanced Linear Programming: Computation and Practice. McGraw-Hill, New York (1981)

    MATH  Google Scholar 

  15. Oppen, D.C.: Elementary bounds for presburger arithmetic. In: ACM Symposium on Theory of Computing, pp. 34–37. ACM, New York (1973)

    Google Scholar 

  16. Papadimitriou, C.H.: Computational Complexity. Addison-Wesley, Reading (1994)

    MATH  Google Scholar 

  17. Paulson, L.C., Nipkow, T.: Isabelle tutorial and user’s manual. Technical Report TR-189, Computer Laboratory, University of Cambridge (1990)

    Google Scholar 

  18. Ralphs, T.K., Guzelsoy, M.: The SYMPHONY callable library for mixed integer programming. In: INFORMS Computing Society (2005)

    Google Scholar 

  19. Reddy, C.R., Loveland, D.W.: Presburger arithmetic with bounded quantifier alternation. In: ACM Symposium on Theory of Computing, pp. 320–325. ACM, New York (1978)

    Chapter  Google Scholar 

  20. Saídi, H., Graf, S.: Construction of abstract state graphs with PVS. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 72–83. Springer, Heidelberg (1997)

    Google Scholar 

  21. Seshia, S.A., Bryant, R.E.: Deciding quantifier-free presburger formulas using parameterized solution bounds. In: Logic in Computer Science, pp. 100–109. IEEE Computer Society, Los Alamitos (2004)

    Google Scholar 

  22. Stinson, D.R.: Cryptography: Theory and Practice. CRC Press, Boca Raton (1995)

    MATH  Google Scholar 

  23. Wang, B.Y.: On the satisfiability of modular arithmetic formula. Technical Report TR-IIS-06-001, Institute of Information Science, Academia Sinica (2006), http://www.iis.sinica.edu.tw/LIB/TechReport/tr2006/tr06.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wang, BY. (2006). On the Satisfiability of Modular Arithmetic Formulae. In: Graf, S., Zhang, W. (eds) Automated Technology for Verification and Analysis. ATVA 2006. Lecture Notes in Computer Science, vol 4218. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11901914_16

Download citation

  • DOI: https://doi.org/10.1007/11901914_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-47237-7

  • Online ISBN: 978-3-540-47238-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics