English
Related papers

Related papers: Coinduction Plain and Simple

200 papers

Orthogonality is a discipline of programming that in a syntactic manner guarantees determinism of functional specifications. Essentially, orthogonality avoids, on the one side, the inherent ambiguity of non determinism, prohibiting the…

Logic in Computer Science · Computer Science 2013-04-01 Ana Cristina Rocha Oliveira , Mauricio Ayala-Rincón

A notion of generalized regular expressions for a large class of systems modeled as coalgebras, and an analogue of Kleene's theorem and Kleene algebra, were recently proposed by a subset of the authors of this paper. Examples of the systems…

Logic in Computer Science · Computer Science 2013-03-12 Marcello Bonsangue , Georgiana Caltais , Eugen-Ioan Goriac , Dorel Lucanu , Jan Rutten , Alexandra Silva

We propose a new cyclic proof system for automated, equational reasoning about the behaviour of pure functional programs. The key to the system is the way in which cyclic proof and equational reasoning are mediated by the use of contextual…

Programming Languages · Computer Science 2022-06-16 Eddie Jones , C-. H. Luke Ong , Steven Ramsay

We introduce a coinductive definition of infinitary term rewriting. The setup is surprisingly simple, and has in contrast to the usual definitions of infinitary rewriting, neither need for ordinals nor for metric convergence. While the idea…

Logic in Computer Science · Computer Science 2014-04-11 Joerg Endrullis , Helle Hvid Hansen , Dimitri Hendriks , Andrew Polonsky , Alexandra Silva

Encodings or the proof of their absence are the main way to compare process calculi. To analyse the quality of encodings and to rule out trivial or meaningless encodings, they are augmented with quality criteria. There exists a bunch of…

Logic in Computer Science · Computer Science 2015-08-28 Kirstin Peters , Rob van Glabbeek

In this thesis we give an algebraic characterization of the syntax and semantics of simply-typed languages. More precisely, we characterize simply-typed binding syntax equipped with reduction rules via a universal property, namely as the…

Logic in Computer Science · Computer Science 2012-06-21 Benedikt Ahrens

Verification problems of programs written in various paradigms (such as imperative, logic, concurrent, functional, and object-oriented ones) can be reduced to problems of solving Horn clause constraints on predicate variables that represent…

Programming Languages · Computer Science 2016-10-24 Hiroshi Unno , Sho Torii

We introduce a high-level language with Python-like syntax for string-to-string, polyregular, first-order definable transductions. This language features function calls, boolean variables, and nested for-loops. We devise and implement a…

Formal Languages and Automata Theory · Computer Science 2025-05-16 Aliaume Lopez , Rafał Stefański

Bisimulation is crucial for verifying process equivalence in probabilistic systems. This paper presents a novel logical framework for analyzing bisimulation in probabilistic parameterized systems, namely, infinite families of finite-state…

Software Engineering · Computer Science 2025-05-16 Chih-Duo Hong , Anthony W. Lin , Philipp Rümmer , Rupak Majumdar

In this paper, we consider a method of computing minimal models in circumscription using integer programming in propositional logic and first-order logic with domain closure axioms and unique name axioms. This kind of treatment is very…

Artificial Intelligence · Computer Science 2007-05-23 Ken Satoh , Hidenori Okamoto

Traces and their extension called combined traces (comtraces) are two formal models used in the analysis and verification of concurrent systems. Both models are based on concepts originating in the theory of formal languages, and they are…

Logic in Computer Science · Computer Science 2015-07-01 Lukasz Mikulski

We discuss here constraint programming (CP) by using a proof-theoretic perspective. To this end we identify three levels of abstraction. Each level sheds light on the essence of CP. In particular, the highest level allows us to bring CP…

Programming Languages · Computer Science 2007-05-23 Krzysztof R. Apt

Consistency properties of concurrent computations, e.g., sequential consistency, linearizability, or eventual consistency, are essential for devising correct concurrent algorithms. In this paper, we present a logical formalization of such…

Logic in Computer Science · Computer Science 2013-05-13 Klaus v. Gleissenthall , Andrey Rybalchenko

A coreset (or core-set) of an input set is its small summation, such that solving a problem on the coreset as its input, provably yields the same result as solving the same problem on the original (full) set, for a given family of problems…

Machine Learning · Computer Science 2019-10-22 Ibrahim Jubran , Alaa Maalouf , Dan Feldman

The emphasis is made on the juxtaposition of (quantum~theorem) proving versus quantum (theorem~proving). The logical contents of verification of the statements concerning quantum systems is outlined. The Zittereingang (trembling input)…

Quantum Physics · Physics 2009-10-28 R. R. Zapatrin

The compactness lemma in programming language theory states that any recursive function can be simulated by a finite unrolling of the function. One important use case it has is in the logical relations proof technique for proving properties…

Programming Languages · Computer Science 2024-05-06 Matias Scharager

We present a new and formal coinductive proof of confluence and normalisation of B\"ohm reduction in infinitary lambda calculus. The proof is simpler than previous proofs of this result. The technique of the proof is new, i.e., it is not…

Logic in Computer Science · Computer Science 2023-06-22 Łukasz Czajka

Commutativity has proven to be a powerful tool in reasoning about concurrent programs. Recent work has shown that a commutativity-based reduction of a program may admit simpler proofs than the program itself. The framework of…

Programming Languages · Computer Science 2023-11-07 Azadeh Farzan , Dominik Klumpp , Andreas Podelski

In general, if there is one device A with the same performance as many devices B, it would be better to replace many devices with one device. In order to determine the number of devices that can be reduced, it is important to determine the…

Information Theory · Computer Science 2019-05-30 Kiminori Iriyama

In this paper we present a new static data type inference algorithm for logic programming. Without the need of declaring types for predicates, our algorithm is able to automatically assign types to predicates which, in most cases,…

Programming Languages · Computer Science 2021-08-17 João Barbosa , Mário Florido , Vítor Santos Costa