English
Related papers

Related papers: Proof Pearl: Magic Wand as Frame

200 papers

Scientists form hypotheses and experimentally test them. If a hypothesis fails (is refuted), scientists try to explain the failure to eliminate other hypotheses. The more precise the failure analysis the more hypotheses can be eliminated.…

Artificial Intelligence · Computer Science 2023-05-25 Rolf Morel , Andrew Cropper

Computational reflection allows us to turn verified decision procedures into efficient automated reasoning tools in proof assistants. The typical applications of such methodology include mathematical structures that have decidable theory…

Programming Languages · Computer Science 2022-02-10 Kazuhiko Sakaguchi

Relational descriptions have been used in formalizing diverse computational notions, including, for example, operational semantics, typing, and acceptance by non-deterministic machines. We therefore propose a (restricted) logical theory…

Logic in Computer Science · Computer Science 2010-09-02 Andrew Gacek , Dale Miller , Gopalan Nadathur

We present semantic correctness proofs of forward-mode Automatic Differentiation (AD) for languages with sources of partiality such as partial operations, lazy conditionals on real parameters, iteration, and term and type recursion. We…

Programming Languages · Computer Science 2024-05-28 Matthijs Vákár

Models of complex systems are widely used in the physical and social sciences, and the concept of layering, typically building upon graph-theoretic structure, is a common feature. We describe an intuitionistic substructural logic called…

Logic in Computer Science · Computer Science 2023-06-22 Simon Docherty , David Pym

Matching Logic is a framework for specifying programming language semantics and reasoning about programs. Its formulas are called patterns and are built with variables, symbols, connectives and quantifiers. A pattern is a combination of…

Logic in Computer Science · Computer Science 2018-11-16 Andrei Arusoaie , Dorel Lucanu

In this work we present a computation paradigm based on a concurrent and incremental construction of proof nets (de-sequentialized or graphical proofs) of the pure multiplicative and additive fragment of Linear Logic, a resources conscious…

Logic in Computer Science · Computer Science 2012-10-23 Roberto Maieli

Abstract argumentation frameworks are formal systems that facilitate obtaining conclusions from non-monotonic knowledge systems. Within such a system, an argumentation semantics is defined as a set of arguments with some desired qualities,…

Artificial Intelligence · Computer Science 2018-08-14 Renata Wong

Representing a proof tree by a combinator term that reduces to the tree lets subtle forms of duplication within the tree materialize as duplicated subterms of the combinator term. In a DAG representation of the combinator term these…

Logic in Computer Science · Computer Science 2022-09-27 Christoph Wernhard

We describe several views of the semantics of a simple programming language as formal documents in the calculus of inductive constructions that can be verified by the Coq proof system. Covered aspects are natural semantics, denotational…

Logic in Computer Science · Computer Science 2007-07-10 Yves Bertot

We introduce a logical foundation to reason on tree structures with constraints on the number of node occurrences. Related formalisms are limited to express occurrence constraints on particular tree regions, as for instance the children of…

Logic in Computer Science · Computer Science 2015-07-01 Everardo Bárcenas , Jesús Lavalle

Recently, data abstraction has been studied in the context of separation logic, with noticeable practical successes: the developed logics have enabled clean proofs of tricky challenging programs, such as subject-observer patterns, and they…

Programming Languages · Computer Science 2015-07-01 Jacob Thamsborg , Lars Birkedal , Hongseok Yang

This paper explores goal-directed proof search in first-order multi-modal logic. The key issue is to design a proof system that respects the modularity and locality of assumptions of many modal logics. By forcing ambiguities to be…

Logic in Computer Science · Computer Science 2007-05-23 Matthew Stone

This paper describes a formal proof library, developed using the Coq proof assistant, designed to assist users in writing correct diagrammatic proofs, for 1-categories. This library proposes a deep-embedded, domain-specific formal language,…

Logic in Computer Science · Computer Science 2024-03-01 Benoît Guillemet , Assia Mahboubi , Matthieu Piquerez

A principled approach to the design of program verification and con- struction tools is applied to separation logic. The control flow is modelled by power series with convolution as separating conjunction. A generic construction lifts…

Logic in Computer Science · Computer Science 2014-10-17 Brijesh Dongol , Victor B. F. Gomes , Georg Struth

It is common in various non-classical logics, especially in relevant logics, to characterize negation semantically via the operation known as Routley star. This operation works well within relational semantic frameworks based on prime…

Logic in Computer Science · Computer Science 2022-04-15 Vít Punčochář , Igor Sedlár

Finding a logical formula that separates positive and negative examples given in the form of labeled data items is fundamental in applications such as concept learning, reverse engineering of database queries, generating referring…

Logic in Computer Science · Computer Science 2022-08-18 Jean Christoph Jung , Carsten Lutz , Hadrien Pulcini , Frank Wolter

Spatial conjunction is a powerful construct for reasoning about dynamically allocated data structures, as well as concurrent, distributed and mobile computation. While researchers have identified many uses of spatial conjunction, its…

Logic in Computer Science · Computer Science 2007-05-23 Viktor Kuncak , Martin Rinard

Constraint Logic Programming (CLP) is a language scheme for combining two declarative paradigms: constraint solving and logic programming. Concurrent Constraint Programming (CCP) is a declarative model for concurrency where agents interact…

Logic in Computer Science · Computer Science 2018-12-03 Moreno Falaschi , Carlos Olarte

In concurrent verification, separation logic provides a strong story for handling both resources that are owned exclusively and resources that are shared persistently (i.e., forever). However, the situation is more complicated for…

Logic in Computer Science · Computer Science 2023-09-12 Travis Hance , Jon Howell , Oded Padon , Bryan Parno