13 Hits in 2.6 sec

Axiomatic Constructor Classes in Isabelle/HOLCF [chapter]

Brian Huffman, John Matthews, Peter White
2005 Lecture Notes in Computer Science  
We have definitionally extended Isabelle/HOLCF to support axiomatic Haskell-style constructor classes.  ...  We have subsequently defined the functor and monad classes, together with their laws, and implemented state and resumption monad transformers as generic constructor class instances.  ...  classes in Isabelle/HOLCF.  ... 
doi:10.1007/11541868_10 fatcat:saqpeqvxtrd5fbgtkzgds5dqsu

Formal Verification of Monad Transformers [article]

Brian Huffman
2012 arXiv   pre-print
The Tycon library provides various axiomatic type constructor classes, including functors and monads. It also provides automation for instantiating those classes, and for defining further subclasses.  ...  We do not require a logic with first-class type constructors, first-class polymorphism, or type quantification; instead, we rely on a domain-theoretic model of the type system in a universal domain to  ...  Acknowledgments Thanks to John Matthews for many discussions about HOLCF which helped to develop the ideas in this paper.  ... 
arXiv:1207.3208v1 fatcat:4i25rjaosncsdftbfndlyv75ci

The Isabelle Framework [chapter]

Makarius Wenzel, Lawrence C. Paulson, Tobias Nipkow
2008 Lecture Notes in Computer Science  
Other notable object-logics are Isabelle/ZF (Zermelo-Fraenkel set-theory, see [34, 36] ) and Isabelle/HOLCF [26] (Scott's domain theory within HOL).  ...  The logical core is implemented according to the well-known "LCF approach" of secure inferences as abstract datatype constructors in ML [16]; explicit proof terms are also available [8] .  ...  Other notable object-logics are Isabelle/ZF (Zermelo-Fraenkel set-theory, see [34, 36] ) and Isabelle/HOLCF [26] (Scott's domain theory within HOL).  ... 
doi:10.1007/978-3-540-71067-7_7 fatcat:y75g4zyzmjdgbkmosmujtq7yra

The Design of a Practical Proof Checker for a Lazy Functional Language [chapter]

Adam Procter, William L. Harrison, Aaron Stump
2013 Lecture Notes in Computer Science  
MProver features first-class support for reasoning about potentially undefined computations (particularly important in a lazy setting), and an extended notion of Haskell-like type classes, enabling a highly  ...  Pure, lazy functional languages like Haskell provide a sound basis for formal reasoning about programs in an equational style. In practice, however, equational reasoning is underutilized.  ...  Marko van Eekelen provided many helpful insights and pointers into the literature, especially relating to Sparkle's handling of type classes and (co-)induction.  ... 
doi:10.1007/978-3-642-40447-4_8 fatcat:atmr7h7rmrg7tc4y5qn45ltsru

HasCasl: Integrated higher-order specification and program development

Lutz Schröder, Till Mossakowski
2009 Theoretical Computer Science  
Moreover, HasCasl covers type class based overloading and constructor classes in full generality, whereas P-logic [35] seems to be equipped with specific built-in rules for one particular constructor class  ...  The full HasCasl logic extends the core logic by subtyping and type-classed based shallow polymorphism, including higher-order type constructors and constructor classes; the semantics of the latter is  ...  In terms of the logic employed, HasCasl is related in many ways to Isabelle/HOL [54] and Isabelle/HOLCF [64] , respectively, with the crucial difference being that HasCasl works with a more flexible  ... 
doi:10.1016/j.tcs.2008.11.020 fatcat:fvluuyjf7ra2dk2izvb2br4uou

Partiality and recursion in interactive theorem provers – an overview

2014 Mathematical Structures in Computer Science  
In this article, we review several techniques that have been proposed in the literature to simplify the formalization of partial and general recursive functions in interactive theorem provers.  ...  We focus on theorem provers based on constructive type theory (in particular, Agda and Coq) and higher-order logic (in particular Isabelle/HOL).  ...  The most comprehensive formalisation of domain theory today is Isabelle/HOLCF, a library built on top of Isabelle/HOL.  ... 
doi:10.1017/s0960129514000115 fatcat:y3gdgilgd5bvlev3haw4l3fyxi

Imperative Functional Programming with Isabelle/HOL [chapter]

Lukas Bulwahn, Alexander Krauss, Florian Haftmann, Levent Erkök, John Matthews
2008 Lecture Notes in Computer Science  
It is based on shallow embedding of programs, a polymorphic heap model using enumeration encodings and type classes, and a state-exception monad similar to known counterparts from Haskell.  ...  A more pragmatic option is to store only a representable subset of the full function space in the heap, for example just the continuous functions as is done in Isabelle/HOLCF [8] .  ...  Representable Types Using encodings to circumvent restrictions in the type system seems very awkward at first, but we can make this transparent to the user by defining an axiomatic type class countable  ... 
doi:10.1007/978-3-540-71067-7_14 fatcat:lcedkeoly5fzxol5ttbj6ezv24

History of Interactive Theorem Proving [chapter]

John Harrison, Josef Urban, Freek Wiedijk
2014 Handbook of the History of Logic  
ACKNOWLEDGEMENTS The authors are grateful to Jörg Siekmann for inviting them to prepare this chapter and for his patience in the face of our lengthy delays.  ...  Isabelle/HOL extends the simple type theory of HOL with a system of axiomatic type classes, so in some sense is richer.  ...  ) • Constructive type theory (Coq, NuPRL) • First-order set theory (Mizar, EVES, Isabelle/ZF) • Logics of partial terms (LCF, IMPS, Isabelle/HOLCF) Some of this diversity arises because of specific philosophical  ... 
doi:10.1016/b978-0-444-51624-4.50004-6 fatcat:sngnxnl3ivectj5taj3dgsaa7m

Separation logic for sequential programs (functional pearl)

Arthur Charguéraud
2020 Proceedings of the ACM on Programming Languages (PACMPL)  
The formalization serves as support for a course that follows the style of the successful Software Foundations series, with all the statement and proofs formalized in Coq.  ...  Varming and Birkedal [2008] demonstrate the possibility to formalize higher-order Separation Logic as a shallow embedding in Isabelle/HOLCF.  ...  Definition 8.1 (Axiomatization of affine heaps).  ... 
doi:10.1145/3408998 fatcat:do7vjcwo2rc4pmqpdcnq6leshy

A Monad-Based Modeling and Verification Toolbox with Application to Security Protocols [chapter]

Christoph Sprenger, David Basin
Lecture Notes in Computer Science  
We have validated the toolbox's usefulness in a substantial security protocol verification project. 2 Background Isabelle/HOL notation In Isabelle/HOL, t :: T denotes a term t of type T.  ...  It is implemented in Isabelle/HOL using shallow embeddings and incorporates as much modeling and reasoning power as possible from Isabelle/HOL.  ...  They formalize axiomatic constructor classes in Isabelle/HOLCF, an extension of Isabelle/HOL with domain theory.  ... 
doi:10.1007/978-3-540-74591-4_23 fatcat:phylrd6rlzd5ff3g6qdvu36jhe

A mechanized Theory of Aspects [article]

Henry Sudhof, Technische Universität Berlin, Technische Universität Berlin, Stefan Jähnichen
This thesis employs the method of rigorous language development on Aspect Orientation in order to show what classes of aspects maintain the safety of an application.  ...  In den vergangenen zehn Jahren hat sich Aspektorientierung als ein neues Paradigma in der Softwaretechnik etabliert.  ...  /ZF and the combination of HOL and the logic of computable functions in Isabelle/HOLCF.  ... 
doi:10.14279/depositonce-2501 fatcat:535e54yvmzfa7it6irj6svhmve

Arrows for knowledge-based circuits [article]

Peter Gammie, University, The Australian National, University, The Australian National
Here we present a scheme for compiling KBPs to executable automata in finite environments with a proof of correctness in Isabelle/HOL.  ...  We use Arrows, a functional programming abstraction, to structure a prototype domain-specific synchronous language embedded in Haskell.  ...  Implicit in the first two definitions were the constructors of the Bit type, which we need to make manifest for the abstract type bit.  ... 
doi:10.25911/5d78d9f7865db fatcat:rhsri4b2zbhvphsr2qc4zv6dze

Formal verification of cryptographic security proofs [article]

Matthias Berg, Universität Des Saarlandes, Universität Des Saarlandes
In the first part of this dissertation we present Verypto: a framework to formally verify game-based cryptographic security proofs in a machineassisted manner.  ...  Verypto has been implemented in the Isabelle proof assistant and provides a formal language to specify the constructs occurring in typical cryptographic games, including probabilistic behavior, the usage  ...  The extension Isabelle/HOLCF [101] which includes Scott's logic for computable functions allows such datatypes, but we decided not to introduce this additional domain-theoretic complexity.  ... 
doi:10.22028/d291-26528 fatcat:omsabagpqvatpeltskinmkkssy