skip to main content
research-article

LOIS: syntax and semantics

Published:01 January 2017Publication History
Skip Abstract Section

Abstract

We present the semantics of an imperative programming language called LOIS (Looping Over Infinite Sets), which allows iterating through certain infinite sets, in finite time. Our semantics intuitively correspond to execution of infinitely many threads in parallel. This allows to merge the power of abstract mathematical constructions into imperative programming. Infinite sets are internally represented using first order formulas over some underlying logical structure, and SMT solvers are employed to evaluate programs.

References

  1. Parosh Aziz Abdulla, Karlis Cerans, Bengt Jonsson, and Yih-Kuen Tsay. General decidability theorems for infinite-state systems, 1996.Google ScholarGoogle ScholarCross RefCross Ref
  2. Rajeev Alur and David L. Dill. A theory of timed automata. Theoretical Computer Science, 126:183–235, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Clark Barrett, Aaron Stump, and Cesare Tinelli. The SMT-LIB Standard: Version 2.0. Technical report, Department of Computer Science, The University of Iowa, 2010. Available at www.SMT-LIB.org.Google ScholarGoogle Scholar
  4. Clark W. Barrett, Roberto Sebastiani, Sanjit A. Seshia, and Cesare Tinelli. Satisfiability modulo theories. In Handbook of Satisfiability, pages 825–885, 2009.Google ScholarGoogle Scholar
  5. Mikołaj Boja´nczyk, Laurent Braud, Bartek Klin, and Sławomir Lasota. Towards nominal computation. In John Field and Michael Hicks, editors, POPL, pages 401–412. ACM, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Mikołaj Boja´nczyk, Bartek Klin, and Sławomir Lasota. Automata with group actions. In LICS, pages 355–364. IEEE Computer Society, 2011.Google ScholarGoogle Scholar
  7. Mikołaj Boja´nczyk, Bartek Klin, and Sławomir Lasota. Automata theory in nominal sets. Log. Meth. Comp. Sci., 10, 2014.Google ScholarGoogle Scholar
  8. Mikołaj Boja´nczyk and Sławomir Lasota. A machine-independent characterization of timed languages. In Artur Czumaj, Kurt Mehlhorn, Andrew M. Pitts, and Roger Wattenhofer, editors, Automata, Languages, and Programming - 39th International Colloquium, ICALP 2012, Warwick, UK, July 9-13, 2012, Proceedings, Part II, volume 7392 of Lecture Notes in Computer Science, pages 92–103. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Mikołaj Boja´nczyk and Sławomir Lasota. A machine-independent characterization of timed languages. In Artur Czumaj, Kurt Mehlhorn, Andrew Pitts, and Roger Wattenhofer, editors, Automata, Languages, and Programming, volume 7392 of Lecture Notes in Computer Science, pages 92–103. Springer Berlin Heidelberg, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Mikołaj Boja´nczyk and Szymon Toru´nczyk. Imperative programming in sets with atoms. In Deepak D’Souza, Telikepalli Kavitha, and Jaikumar Radhakrishnan, editors, FSTTCS, volume 18 of LIPIcs, pages 4– 15. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 2012.Google ScholarGoogle Scholar
  11. L. Clemente and S. Lasota. Reachability analysis of first-order definable pushdown systems. In Proc. CSL’15, pages 244–259, 2015.Google ScholarGoogle Scholar
  12. P. Erd˝os and A. Rényi. Asymmetric graphs. Acta Mathematica Academiae Scientiarum Hungarica, 14(3-4):295–315, 1963.Google ScholarGoogle ScholarCross RefCross Ref
  13. William E. Fenton and Ed Dubinsky. Introduction to discrete mathematics with ISETL. Springer, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Alain Finkel and Ph. Schnoebelen. Well-structured transition systems everywhere! Theor. Comput. Sci., 256(1-2):63–92, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Wilfrid Hodges. A Shorter Model Theory. Cambridge University Press, New York, NY, USA, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Jean-Baptiste Jeannin, Dexter Kozen, and Alexandra Silva. Co-Caml: Programming with coinductive types. Technical Report http://hdl.handle.net/1813/30798, Computing and Information Science, Cornell University, December 2012. Fundamenta Informaticae, to appear.Google ScholarGoogle Scholar
  17. Michael Kaminski and Nissim Francez. Finite-memory automata. Theor. Comput. Sci., 134(2):329–363, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Richard M. Karp and Raymond E. Miller. Parallel program schemata. J. Comput. Syst. Sci., 3(2):147–195, May 1969. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Ali Sinan Köksal, Viktor Kuncak, and Philippe Suter. Constraints as control. In Proceedings of the 39th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL ’12, pages 151–164, New York, NY, USA, 2012. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Eryk Kopczy´nski and Szymon Toru´nczyk. LOIS website. See http://www.mimuw.edu.pl/~erykk/lois.Google ScholarGoogle Scholar
  21. Eryk Kopczy´nski and Szymon Toru´nczyk. LOIS: technical documentation. See http://www.mimuw.edu.pl/~erykk/lois.Google ScholarGoogle Scholar
  22. Eryk Kopczynski and Szymon Toru´nczyk. LOIS: an application of SMT solvers. In Tim King and Ruzica Piskac, editors, Proceedings of the 14th International Workshop on Satisfiability Modulo Theories affiliated with the International Joint Conference on Automated Reasoning, [email protected] 2016, Coimbra, Portugal, July 1-2, 2016.Google ScholarGoogle Scholar
  23. , volume 1617 of CEUR Workshop Proceedings, pages 51–60. CEUR-WS.org, 2016.Google ScholarGoogle Scholar
  24. Andrzej S. Murawski, Steven J. Ramsay, and Nikos Tzevelekos. Reachability in pushdown register automata. In Erzsébet Csuhaj-Varj´u, Martin Dietzfelbinger, and Zoltán Ésik, editors, Mathematical Foundations of Computer Science 2014 - 39th International Symposium, MFCS 2014, Budapest, Hungary, August 25-29, 2014. Proceedings, Part I, volume 8634 of Lecture Notes in Computer Science, pages 464–473. Springer, 2014.Google ScholarGoogle Scholar
  25. R. Rado. Universal graphs and universal functions. Acta Arithmetica, 9:331–340, 1964.Google ScholarGoogle ScholarCross RefCross Ref
  26. J. T. Schwartz, R. B. Dewar, E. Schonberg, and E. Dubinsky. Programming with Sets; an Introduction to SETL. Springer-Verlag New York, Inc., New York, NY, USA, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. LOIS: syntax and semantics

    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 ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 52, Issue 1
      POPL '17
      January 2017
      901 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/3093333
      Issue’s Table of Contents
      • cover image ACM Conferences
        POPL '17: Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages
        January 2017
        901 pages
        ISBN:9781450346603
        DOI:10.1145/3009837

      Copyright © 2017 ACM

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 1 January 2017

      Check for updates

      Qualifiers

      • research-article

    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!