English
Related papers

Related papers: On Propositional Program Equivalence (extended abs…

200 papers

Kleene Algebra (KA) is a useful tool for proving that two programs are equivalent. Because KA's equational theory is decidable, it integrates well with interactive theorem provers. This raises the question: which equations can we (not)…

Formal Languages and Automata Theory · Computer Science 2026-03-11 Tobias Kappé

In order to prove that the P of problems is different to the NP class, we consider the satisfability problem of propositional calculus formulae, which is an NP-complete problem. It is shown that, for every search algorithm A, there is a set…

Computational Complexity · Computer Science 2007-11-09 Alfredo von Reckow

There are many different semantics for general logic programs (i.e. programs that use negation in the bodies of clauses). Most of these semantics are Turing complete (in a sense that can be made precise), implying that they are undecidable.…

Logic in Computer Science · Computer Science 2015-07-15 Levon Haykazyan

We target the problem of provably computing the equivalence between two complex expression trees. To this end, we formalize the problem of equivalence between two such programs as finding a set of semantics-preserving rewrite rules from one…

Programming Languages · Computer Science 2021-06-10 Steve Kommrusch , Théo Barollet , Louis-Noël Pouchet

Guarded Kleene Algebra with Tests (GKAT) is a fragment of Kleene Algebra with Tests (KAT) that was recently introduced to reason efficiently about imperative programs. In contrast to KAT, GKAT does not have an algebraic axiomatization, but…

Logic in Computer Science · Computer Science 2024-10-02 Tobias Kappé , Todd Schmid , Alexandra Silva

Checking the semantic equivalence of operations is an important task in software development. For instance, regression testing is a routine task performed when software systems are developed and improved, and software package managers…

Programming Languages · Computer Science 2019-09-23 Sergio Antoy , Michael Hanus

Gradual dependent types can help with the incremental adoption of dependently typed code by providing a principled semantics for imprecise types and proofs, where some parts have been omitted. Current theories of gradual dependent types,…

Programming Languages · Computer Science 2022-05-04 Joseph Eremondi , Ronald Garcia , Éric Tanter

We investigate the concept of strong equivalence within the extended framework of Answer Set Programming with constraints. Two groups of rules are considered strongly equivalent if, informally speaking, they have the same meaning in any…

Artificial Intelligence · Computer Science 2025-02-07 Pedro Cabalar , Jorge Fandinno , Torsten Schaub , Philipp Wanko

The non-classical, nonmonotonic inference relation associated with the answer set semantics for logic programs gives rise to a relationship of 'strong equivalence' between logical programs that can be verified in 3-valued Goedel logic, G3,…

Logic in Computer Science · Computer Science 2007-05-23 Dick de Jongh , Lex Hendriks

This dissertation is concerned with the study of program equivalence and algebraic effects as they arise in the theory of programming languages. Algebraic effects represent impure behaviour in a functional programming language, such as…

Programming Languages · Computer Science 2019-02-14 Cristina Matache

We explore the following question: Is a decision-making program fair, for some useful definition of fairness? First, we describe how several algorithmic fairness questions can be phrased as program verification problems. Second, we discuss…

Programming Languages · Computer Science 2016-10-20 Aws Albarghouthi , Loris D'Antoni , Samuel Drews , Aditya Nori

Answer set programming - the most popular problem solving paradigm based on logic programs - has been recently extended to support uninterpreted function symbols. All of these approaches have some limitation. In this paper we propose a…

Artificial Intelligence · Computer Science 2010-07-22 Sabrina Baselice , Piero A. Bonatti

Equilibrium logic is an approach to nonmonotonic reasoning that extends the stable-model and answer-set semantics for logic programs. In particular, it includes the general case of nested logic programs, where arbitrary Boolean combinations…

Logic in Computer Science · Computer Science 2009-12-30 David Pearce , Hans Tompits , Stefan Woltran

Epistemic Logic Programs (ELPs), that is, Answer Set Programming (ASP) extended with epistemic operators, have received renewed interest in recent years, which led to a flurry of new research, as well as efficient solvers. An important…

Logic in Computer Science · Computer Science 2018-11-13 Wolfgang Faber , Michael Morak , Stefan Woltran

We consider the problem of refuting equivalence of probabilistic programs, i.e., the problem of proving that two probabilistic programs induce different output distributions. We study this problem in the context of programs with…

Programming Languages · Computer Science 2025-01-14 Krishnendu Chatterjee , Ehsan Kafshdar Goharshady , Petr Novotný , Đorđe Žikelić

We introduce partially observable concurrent Kleene algebra (POCKA), an algebraic framework to reason about concurrent programs with control structures, such as conditionals and loops. POCKA enables reasoning about programs that can access…

Logic in Computer Science · Computer Science 2023-02-06 Jana Wagemaker , Paul Brunet , Simon Docherty , Tobias Kappé , Jurriaan Rot , Alexandra Silva

We show a projective Beth definability theorem for logic programs under the stable model semantics: For given programs $P$ and $Q$ and vocabulary $V$ (set of predicates) the existence of a program $R$ in $V$ such that $P \cup R$ and $P \cup…

Logic in Computer Science · Computer Science 2024-08-19 Jan Heuer , Christoph Wernhard

In this paper, we study classes of structures and individual structures for which programs implementing functions defined everywhere are equivalent to finite tree-programs. The programs under consideration may have cycles and at most…

Logic in Computer Science · Computer Science 2025-01-06 Mikhail Moshkov

Kleene algebra with tests (KAT) is an algebraic framework for reasoning about the control flow of sequential programs. Generalising KAT to reason about concurrent programs is not straightforward, because axioms native to KAT in conjunction…

Logic in Computer Science · Computer Science 2023-02-03 Tobias Kappé , Paul Brunet , Jurriaan Rot , Alexandra Silva , Jana Wagemaker , Fabio Zanasi

Kleene algebras (KA) and Kleene algebras with tests (KAT) provide an algebraic framework to capture the behavior of conventional programming constructs. This paper explores a broader understanding of these structures, in order to enable the…

Logic in Computer Science · Computer Science 2025-06-09 Juliana Cunha , Alexandre Madeira , Luís S. Barbosa