This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
# configuration file for [coq-community templates](https://github.com/coq-community/templates) | |
fullname: cpp2v | |
shortname: cpp2v | |
organization: bedrocksystems | |
community: false | |
travis: false | |
synopsis: >- | |
Axiomatic semantics for C++ built on top of Clang and Iris including |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(* Simple semantics for the Imp programming language (with function calls) | |
* using interaction trees. | |
* | |
* Note: This file requires an version of the interaction tree library before the change in the encoding that | |
* occurred at 5cf173e0a901eb7f9b9f3f44f7bd52c6e3a3a86a. | |
*) | |
Require Import Coq.Lists.List. | |
Require Import Coq.Strings.String. | |
Require Import ExtLib.Structures.Monad. | |
Require Import ExtLib.Structures.Traversable. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Section Eff. | |
Variable eff : Type -> Type. | |
CoInductive Eff (T : Type) : Type := | |
| ret (_ : T) | |
| interact {A : Type} (_ : eff A) (_ : A -> Eff T) | |
| delay (_ : Eff T). | |
Arguments ret {_} _. | |
Arguments interact {_ _} _. | |
Arguments delay {_} _. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# LANGUAGE RecordWildCards #-} | |
{-# LANGUAGE TypeOperators #-} | |
{-# LANGUAGE RankNTypes #-} | |
{-# LANGUAGE GADTs #-} | |
{-# LANGUAGE DataKinds #-} | |
{-# LANGUAGE KindSignatures #-} | |
{-# LANGUAGE PolyKinds #-} | |
{-# LANGUAGE LambdaCase #-} | |
{-# LANGUAGE TypeFamilies #-} | |
{-# LANGUAGE TypeApplications #-} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# LANGUAGE DataKinds #-} | |
{-# LANGUAGE GADTs #-} | |
{-# LANGUAGE Rank2Types #-} | |
{-# LANGUAGE KindSignatures #-} | |
{-# LANGUAGE ScopedTypeVariables #-} | |
{-# LANGUAGE LambdaCase #-} | |
module ShapeIndexed where | |
import Data.Constraint | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Require Import Coq.Lists.List. | |
Require Import Coq.Arith.Arith. | |
Require Import Coq.Bool.Bool. | |
(** | |
** Speeding up Proofs with Computational Reflection | |
** Gregory Malecha | |
** gmalecha.github.io | |
** | |
**) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Require Import Coq.Lists.List. | |
Require Import ExtLib.Data.HList. | |
Require Import ExtLib.Data.Member. | |
Set Implicit Arguments. | |
Set Strict Implicit. | |
Arguments MZ {_ _ _}. | |
Arguments MN {_ _ _ _} _. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Require Import Coq.Lists.List. | |
Require Import ExtLib.Data.HList. | |
Require Import ExtLib.Data.Member. | |
Set Implicit Arguments. | |
Set Strict Implicit. | |
Arguments MZ {_ _ _}. | |
Arguments MN {_ _ _ _} _. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Require Import Coq.Lists.List. | |
Set Implicit Arguments. | |
Set Strict Implicit. | |
Section hlist. | |
Context {T : Type}. | |
Variable F : T -> Type. | |
Inductive hlist : list T -> Type := | |
| Hnil : hlist nil |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(** An axiomatization of commutative monoids | |
**) | |
Parameter m : Type. | |
Parameter star : m -> m -> m. | |
Local Infix "*" := star. | |
Parameter one : m. | |
Axiom star_comm : forall a b : m, a * b = b * a. | |
Axiom star_assoc : forall a b c : m, (a * b) * c = a * (b * c). | |
Axiom one_star : forall a : m, one * a = a. |
NewerOlder