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.
- Parosh Aziz Abdulla, Karlis Cerans, Bengt Jonsson, and Yih-Kuen Tsay. General decidability theorems for infinite-state systems, 1996.Google Scholar
Cross Ref
- Rajeev Alur and David L. Dill. A theory of timed automata. Theoretical Computer Science, 126:183–235, 1994. Google Scholar
Digital Library
- 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 Scholar
- Clark W. Barrett, Roberto Sebastiani, Sanjit A. Seshia, and Cesare Tinelli. Satisfiability modulo theories. In Handbook of Satisfiability, pages 825–885, 2009.Google Scholar
- 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 Scholar
Digital Library
- Mikołaj Boja´nczyk, Bartek Klin, and Sławomir Lasota. Automata with group actions. In LICS, pages 355–364. IEEE Computer Society, 2011.Google Scholar
- Mikołaj Boja´nczyk, Bartek Klin, and Sławomir Lasota. Automata theory in nominal sets. Log. Meth. Comp. Sci., 10, 2014.Google Scholar
- 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 Scholar
Digital Library
- 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 Scholar
Digital Library
- 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 Scholar
- L. Clemente and S. Lasota. Reachability analysis of first-order definable pushdown systems. In Proc. CSL’15, pages 244–259, 2015.Google Scholar
- P. Erd˝os and A. Rényi. Asymmetric graphs. Acta Mathematica Academiae Scientiarum Hungarica, 14(3-4):295–315, 1963.Google Scholar
Cross Ref
- William E. Fenton and Ed Dubinsky. Introduction to discrete mathematics with ISETL. Springer, 1996. Google Scholar
Digital Library
- Alain Finkel and Ph. Schnoebelen. Well-structured transition systems everywhere! Theor. Comput. Sci., 256(1-2):63–92, 2001. Google Scholar
Digital Library
- Wilfrid Hodges. A Shorter Model Theory. Cambridge University Press, New York, NY, USA, 1997. Google Scholar
Digital Library
- 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 Scholar
- Michael Kaminski and Nissim Francez. Finite-memory automata. Theor. Comput. Sci., 134(2):329–363, 1994. Google Scholar
Digital Library
- Richard M. Karp and Raymond E. Miller. Parallel program schemata. J. Comput. Syst. Sci., 3(2):147–195, May 1969. Google Scholar
Digital Library
- 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 Scholar
Digital Library
- Eryk Kopczy´nski and Szymon Toru´nczyk. LOIS website. See http://www.mimuw.edu.pl/~erykk/lois.Google Scholar
- Eryk Kopczy´nski and Szymon Toru´nczyk. LOIS: technical documentation. See http://www.mimuw.edu.pl/~erykk/lois.Google Scholar
- 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 Scholar
- , volume 1617 of CEUR Workshop Proceedings, pages 51–60. CEUR-WS.org, 2016.Google Scholar
- 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 Scholar
- R. Rado. Universal graphs and universal functions. Acta Arithmetica, 9:331–340, 1964.Google Scholar
Cross Ref
- 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 Scholar
Digital Library
Index Terms
LOIS: syntax and semantics
Recommendations
LOIS: syntax and semantics
POPL '17: Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming LanguagesWe 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 ...
A note on 3-valued rough logic accepting decision rules
Rough sets carry, intuitively, a 3-valued logical structure related to the three regions into which any rough set <i>x</i> divides the universe., viz., the lower definable set <i>i(x)</i>, the upper definable set <i>c(x)</i>, and the boundary region <i>...
A Note on 3-valued Rough Logic Accepting Decision Rules
Rough sets carry, intuitively, a 3-valued logical structure related to the three regions into which any rough set x divides the universe., viz., the lower definable set i(x), the upper definable set c(x), and the boundary region c(x)\setminus i(x) ...







Comments