English
Related papers

Related papers: Jeopardy: An Invertible Functional Programming Lan…

200 papers

Probabilistic programming is the idea of writing models from statistics and machine learning using program notations and reasoning about these models using generic inference engines. Recently its combination with deep learning has been…

Programming Languages · Computer Science 2019-11-19 Wonyeol Lee , Hangyeol Yu , Xavier Rival , Hongseok Yang

We consider a generalization of polynomial programs: algebraic programs, which are optimization or feasibility problems with algebraic objectives or constraints. Algebraic functions are defined as zeros of multivariate polynomials. They are…

Optimization and Control · Mathematics 2025-02-13 Muhammad Maaz , Adam W. Strzeboński

Theoretical foundations of compositional reasoning about heaps in imperative programming languages are investigated. We introduce a novel concept of compositional symbolic memory and its relevant properties. We utilize these formal…

Programming Languages · Computer Science 2019-06-27 Yurii Kostyukov , Konstantin Batoev , Dmitry Mordvinov , Michael Kostitsyn , Aleksandr Misonizhnik

Currently it is widely accepted that the language of science is mathematics. This book explores an alternative idea where the future of science is based on the language of algorithms and programs. How such a language can actually be…

Logic in Computer Science · Computer Science 2020-11-06 Garry Pantelis

Applying dynamic logics to program verifications is a challenge, because their axiomatic rules for regular expressions can be difficult to be adapted to different program models. We present a novel dynamic logic, called DLp, which supports…

Logic in Computer Science · Computer Science 2026-02-11 Yuanrui Zhang

Word embeddings are a powerful natural language processing technique, but they are extremely difficult to interpret. To enable interpretable NLP models, we create vectors where each dimension is inherently interpretable. By inherently…

Computation and Language · Computer Science 2021-09-29 Adly Templeton

The advantages of mixed approach with using different kinds of programming techniques for symbolic manipulation are discussed. The main purpose of approach offered is merge the methods of object oriented programming that convenient for…

Symbolic Computation · Computer Science 2007-05-23 Alexander Yu. Vlasov

The theory of finite term algebras provides a natural framework to describe the semantics of functional languages. The ability to efficiently reason about term algebras is essential to automate program analysis and verification for…

Logic in Computer Science · Computer Science 2016-11-10 Laura Kovacs , Simon Robillard , Andrei Voronkov

The reversible object-oriented programming language (ROOPL) was presented in late 2016 and proved that object-oriented programming paradigms works in the reversible setting. The language featured simple statically scoped objects which made…

Programming Languages · Computer Science 2018-04-17 Martin Holm Cservenka

Provably correct software is one of the key challenges in our softwaredriven society. While formal verification establishes the correctness of a given program, the result of program synthesis is a program which is correct by construction.…

Logic in Computer Science · Computer Science 2021-03-08 Andreas Humenberger , Laura Kovacs

One-time programs, computer programs which self-destruct after being run only once, are a powerful building block in cryptography and would allow for new forms of secure software distribution. However, ideal one-time programs have been…

The field of quantum algorithms is vibrant. Still, there is currently a lack of programming languages for describing quantum computation on a practical scale, i.e., not just at the level of toy problems. We address this issue by introducing…

Programming Languages · Computer Science 2013-07-08 Alexander S. Green , Peter LeFanu Lumsdaine , Neil J. Ross , Peter Selinger , Benoît Valiron

Constructive type theory combines logic and programming in one language. This is useful both for reasoning about programs written in type theory, as well as for reasoning about other programming languages inside type theory. It is…

Programming Languages · Computer Science 2024-10-25 Philipp Jan Andries Stassen , Rasmus Ejlers Møgelberg , Maaike Zwart , Alejandro Aguirre , Lars Birkedal

Almost all modern imperative programming languages include operations for dynamically manipulating the heap, for example by allocating and deallocating objects, and by updating reference fields. In the presence of recursive procedures and…

Programming Languages · Computer Science 2012-12-18 Jurriaan Rot , Irina Măriuca Asăvoae , Frank de Boer , Marcello M. Bonsangue , Dorel Lucanu

We study the properties of the constructive linear programing problems. The parameters of linear functions in such problems are constructive real numbers. To solve such a problem is to find the optimal plan with the constructive real number…

Optimization and Control · Mathematics 2024-04-24 Viktor Chernov , Vladimir Chernov

Verification of programs using floating-point arithmetic is challenging on several accounts. One of the difficulties of reasoning about such programs is due to the peculiarities of floating-point arithmetic: rounding errors, infinities,…

Programming Languages · Computer Science 2022-06-23 Roberto Bagnara , Abramo Bagnara , Fabio Biselli , Michele Chiari , Roberta Gori

Design patterns are distilled from many real systems to catalog common programming practice. However, some object-oriented design patterns are distorted or overly complicated because of the lack of supporting programming language constructs…

Programming Languages · Computer Science 2019-06-03 Gerald Baumgartner , Konstantin Läufer , Vincent F. Russo

Debuggers for logic programming languages have traditionally had a capability most other debuggers did not: the ability to jump back to a previous state of the program, effectively travelling back in time in the history of the computation.…

Programming Languages · Computer Science 2007-05-23 Zoltan Somogyi

Integer programming is concerned with solving linear systems of equations over the non-negative integers. The basic question is to find a solution which minimizes a given linear objective function for a fixed right hand side. Here we also…

Optimization and Control · Mathematics 2007-05-23 Bernd Sturmfels

Janus is a paradigmatic example of a reversible programming language. Indeed, Janus programs can be executed backwards as well as forwards. However, its current small-step semantics (useful, e.g., for debugging or as a basis for extensions…

Programming Languages · Computer Science 2026-02-27 Ivan Lanese , Germán Vidal