English
Related papers

Related papers: Dijkstra Monads for All

200 papers

Dependency analysis is vital to several applications in computer science. It lies at the essence of secure information flow analysis, binding-time analysis, etc. Various calculi have been proposed in the literature for analysing individual…

Programming Languages · Computer Science 2022-09-15 Pritam Choudhury

Monadic programming presents a significant challenge for many programmers. In light of category theory, we offer a new perspective on the use of monads in functional programming. This perspective is clarified through numerous examples coded…

Programming Languages · Computer Science 2024-10-14 Fethi Kadhi

Theorem provers are tools that help users to write machine readable proofs. Some of this tools are also interactive. The need of such softwares is increasing since they provide proofs that are more certified than the hand written ones. Agda…

Logic in Computer Science · Computer Science 2020-02-18 Luca Ciccone

We describe a method for building composable and extensible verification procedures within the Coq proof assistant. Unlike traditional methods that rely on run-time generation and checking of proofs, we use verified-correct procedures with…

Programming Languages · Computer Science 2013-05-29 Gregory Malecha , Adam Chlipala , Thomas Braibant , Patrick Hulin , Edward Z. Yang

Libraries of formalized mathematics use a possibly broad range of different representations for a same mathematical concept. Yet light to major manual input from users remains most often required for obtaining the corresponding variants of…

Logic in Computer Science · Computer Science 2024-02-21 Cyril Cohen , Enzo Crance , Assia Mahboubi

The goal of this paper is to prove coherence results with respect to relational graphs for monoidal monads and comonads, i.e. monads and comonads in a monoidal category such that the endofunctor of the monad or comonad is a monoidal functor…

Category Theory · Mathematics 2010-01-08 K. Dosen , Z. Petric

Two very basic constructions involving experimental procedures are the formation of coarse-grained versions of experiments, and the formation of branching sequential experiments. The latter allow for the conditioning of states on the…

Quantum Physics · Physics 2024-10-14 Alex Wilce

We present a notion of bounded quantification for refinement types and show how it expands the expressiveness of refinement typing by using it to develop typed combinators for: (1) relational algebra and safe database access, (2)…

Programming Languages · Computer Science 2015-07-03 Niki Vazou , Alexander Bakst , Ranjit Jhala

We give a leisurely introduction to our abstract framework for operational semantics based on cellular monads on transition categories. Furthermore, we relate it for the first time to an existing format, by showing that all Positive GSOS…

Logic in Computer Science · Computer Science 2019-08-30 Tom Hirschowitz

We use monads to relax the atomicity requirement for data in a database. Depending on the choice of monad, the database fields may contain generalized values such as lists or sets of values, or they may contain exceptions such as various…

Databases · Computer Science 2012-09-06 David I. Spivak

Formally verifying the properties of formal systems using a proof assistant requires justifying numerous minor lemmas about capture-avoiding substitution. Despite work on category-theoretic accounts of syntax and variable binding, raw,…

Logic in Computer Science · Computer Science 2023-12-15 Lawrence Dunn , Val Tannen , Steve Zdancewic

Shallow embeddings that use monads to represent effects are popular in proof-oriented languages because they are convenient for formal verification. Once shallowly embedded programs are verified, they are often extracted to mainstream…

Programming Languages · Computer Science 2026-03-31 Cezar-Constantin Andrici , Abigail Pribisova , Danel Ahman , Catalin Hritcu , Exequiel Rivas , Théo Winterhalter

The software patterns provide building blocks to the design and implementation of a software system, and try to make the software engineering to progress from experience to science. The software patterns were made famous because of the…

Logic in Computer Science · Computer Science 2021-10-26 Yong Wang

The goal of this lecture is to show how modern theorem provers---in this case, the Coq proof assistant---can be used to mechanize the specification of programming languages and their semantics, and to reason over individual programs and…

Programming Languages · Computer Science 2010-10-28 Xavier Leroy

We develop an algebraic underpinning of backtracking monad transformers in the general setting of monoidal categories. As our main technical device, we introduce Eilenberg--Moore monoids, which combine monoids with algebras for strong…

Programming Languages · Computer Science 2016-08-22 Maciej Piróg

Modular deductive verification is a powerful technique capable to show that each function in a program satisfies its contract. However, function contracts do not provide a global view of which high-level (e.g. security-related properties of…

Software Engineering · Computer Science 2019-02-26 Virgile Robles , Nikolai Kosmatov , Virgile Prevosto , Louis Rilling , Pascale Le Gall

One of the main issues in proof certification is that different theorem provers, even when designed for the same logic, tend to use different proof formalisms and produce outputs in different formats. The project ProofCert promotes the…

Logic in Computer Science · Computer Science 2019-10-09 Tomer Libal , Marco Volpe

Emerging computational paradigms, such as probabilistic and hybrid programming, introduce new primitive operations that often need to be combined with classic programming constructs. However, it still remains a challenge to provide a…

Logic in Computer Science · Computer Science 2018-04-13 Fredrik Dahlqvist , Renato Neves

Formalising the pi-calculus is an illuminating test of the expressiveness of logical frameworks and mechanised metatheory systems, because of the presence of name binding, labelled transitions with name extrusion, bisimulation, and…

Logic in Computer Science · Computer Science 2015-07-30 Roly Perera , James Cheney

Monads and their composition via distributive laws have many applications in program semantics and functional programming. For many interesting monads, distributive laws fail to exist, and this has motivated investigations into weaker…

Logic in Computer Science · Computer Science 2022-05-12 Aloïs Rosset , Helle Hvid Hansen , Jörg Endrullis
‹ Prev 1 4 5 6 7 8 10 Next ›