Commit 7dd32d7d authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

Use new Import/Export syntax everywhere.

Also, make our redefinition of done more robust under different
orders of Importing modules.
parent 86803d3a
......@@ -7,7 +7,7 @@ structures. *)
Global Generalizable All Variables.
Global Set Automatic Coercions Import.
Global Set Asymmetric Patterns.
Require Export Morphisms RelationClasses List Bool Utf8 Program Setoid.
From Coq Require Export Morphisms RelationClasses List Bool Utf8 Program Setoid.
Obligation Tactic := idtac.
(** * General *)
......
(* Copyright (c) 2012-2015, Robbert Krebbers. *)
(* This file is distributed under the terms of the BSD license. *)
(** This file implements bsets as functions into Prop. *)
Require Export prelude.prelude.
From stdpp Require Export prelude.
Record bset (A : Type) : Type := mkBSet { bset_car : A bool }.
Arguments mkBSet {_} _.
......
......@@ -2,8 +2,8 @@
(* This file is distributed under the terms of the BSD license. *)
(** This files implements an efficient implementation of finite/cofinite sets
of positive binary naturals [positive]. *)
Require Export prelude.collections.
Require Import prelude.pmap prelude.gmap prelude.mapset.
From stdpp Require Export collections.
From stdpp Require Import pmap gmap mapset.
Local Open Scope positive_scope.
(** * The tree data structure *)
......
......@@ -3,7 +3,7 @@
(** This file collects definitions and theorems on collections. Most
importantly, it implements some tactics to automatically solve goals involving
collections. *)
Require Export prelude.base prelude.tactics prelude.orders.
From stdpp Require Export base tactics orders.
Instance collection_subseteq `{ElemOf A C} : SubsetEq C := λ X Y,
x, x X x Y.
......
(* Copyright (c) 2012-2015, Robbert Krebbers. *)
(* This file is distributed under the terms of the BSD license. *)
Require Export prelude.list.
From stdpp Require Export list.
Local Open Scope positive.
Class Countable A `{ x y : A, Decision (x = y)} := {
......
......@@ -3,7 +3,7 @@
(** This file collects theorems, definitions, tactics, related to propositions
with a decidable equality. Such propositions are collected by the [Decision]
type class. *)
Require Export prelude.proof_irrel.
From stdpp Require Export proof_irrel.
Hint Extern 200 (Decision _) => progress (lazy beta) : typeclass_instances.
......
(* Copyright (c) 2012-2015, Robbert Krebbers. *)
(* This file is distributed under the terms of the BSD license. *)
Require Export prelude.list.
From stdpp Require Export list.
Definition error (S E A : Type) : Type := S E + (A * S).
......
......@@ -3,8 +3,9 @@
(** This file collects definitions and theorems on finite collections. Most
importantly, it implements a fold and size function and some useful induction
principles on finite collections . *)
Require Import Permutation prelude.relations prelude.listset.
Require Export prelude.numbers prelude.collections.
From Coq Require Import Permutation.
From stdpp Require Import relations listset.
From stdpp Require Export numbers collections.
Instance collection_size `{Elements A C} : Size C := length elements.
Definition collection_fold `{Elements A C} {B}
......
......@@ -3,7 +3,7 @@
(** This file provides an axiomatization of the domain function of finite
maps. We provide such an axiomatization, instead of implementing the domain
function in a generic way, to allow more efficient implementations. *)
Require Export prelude.collections prelude.fin_maps.
From stdpp Require Export collections fin_maps.
Class FinMapDom K M D `{FMap M,
A, Lookup K A (M A), A, Empty (M A), A, PartialAlter K A (M A),
......
......@@ -4,8 +4,8 @@
finite maps and collects some theory on it. Most importantly, it proves useful
induction principles for finite maps and implements the tactic
[simplify_map_equality] to simplify goals involving finite maps. *)
Require Import Permutation.
Require Export prelude.relations prelude.vector prelude.orders.
From Coq Require Import Permutation.
From stdpp Require Export relations vector orders.
(** * Axiomatization of finite maps *)
(** We require Leibniz equality to be extensional on finite maps. This of
......
(* Copyright (c) 2012-2015, Robbert Krebbers. *)
(* This file is distributed under the terms of the BSD license. *)
Require Export prelude.countable prelude.list.
From stdpp Require Export countable list.
Class Finite A `{ x y : A, Decision (x = y)} := {
enum : list A;
......
......@@ -2,8 +2,8 @@
(* This file is distributed under the terms of the BSD license. *)
(** This file implements finite maps and finite sets with keys of any countable
type. The implementation is based on [Pmap]s, radix-2 search trees. *)
Require Export prelude.countable prelude.fin_maps prelude.fin_map_dom.
Require Import prelude.pmap prelude.mapset.
From stdpp Require Export countable fin_maps fin_map_dom.
From stdpp Require Import pmap mapset.
(** * The data structure *)
(** We pack a [Pmap] together with a proof that ensures that all keys correspond
......
......@@ -3,8 +3,8 @@
(** This file implements finite set using hash maps. Hash sets are represented
using radix-2 search trees. Each hash bucket is thus indexed using an binary
integer of type [Z], and contains an unordered list without duplicates. *)
Require Export prelude.fin_maps prelude.listset.
Require Import prelude.zmap.
From stdpp Require Export fin_maps listset.
From stdpp Require Import zmap.
Record hashset {A} (hash : A Z) := Hashset {
hashset_car : Zmap (list A);
......
......@@ -2,7 +2,7 @@
(* This file is distributed under the terms of the BSD license. *)
(** This files defines a lexicographic order on various common data structures
and proves that it is a partial order having a strong variant of trichotomy. *)
Require Import prelude.numbers.
From stdpp Require Import numbers.
Notation cast_trichotomy T :=
match T with
......
......@@ -2,8 +2,8 @@
(* This file is distributed under the terms of the BSD license. *)
(** This file collects general purpose definitions and theorems on lists that
are not in the Coq standard library. *)
Require Export Permutation.
Require Export prelude.numbers prelude.base prelude.decidable prelude.option.
From Coq Require Export Permutation.
From stdpp Require Export numbers base decidable option.
Arguments length {_} _.
Arguments cons {_} _ _.
......
......@@ -2,7 +2,7 @@
(* This file is distributed under the terms of the BSD license. *)
(** This file implements finite set as unordered lists without duplicates
removed. This implementation forms a monad. *)
Require Export prelude.base prelude.decidable prelude.collections prelude.list.
From stdpp Require Export base decidable collections list.
Record listset A := Listset { listset_car: list A }.
Arguments listset_car {_} _.
......
......@@ -3,7 +3,7 @@
(** This file implements finite as unordered lists without duplicates.
Although this implementation is slow, it is very useful as decidable equality
is the only constraint on the carrier set. *)
Require Export prelude.base prelude.decidable prelude.collections prelude.list.
From stdpp Require Export base decidable collections list.
Record listset_nodup A := ListsetNoDup {
listset_nodup_car : list A; listset_nodup_prf : NoDup listset_nodup_car
......
......@@ -3,7 +3,7 @@
(** This files gives an implementation of finite sets using finite maps with
elements of the unit type. Since maps enjoy extensional equality, the
constructed finite sets do so as well. *)
Require Export prelude.fin_map_dom.
From stdpp Require Export fin_map_dom.
Record mapset (M : Type Type) : Type :=
Mapset { mapset_car: M (unit : Type) }.
......
......@@ -3,7 +3,7 @@
(** This files implements a type [natmap A] of finite maps whose keys range
over Coq's data type of unary natural numbers [nat]. The implementation equips
a list with a proof of canonicity. *)
Require Import prelude.fin_maps prelude.mapset.
From stdpp Require Import fin_maps mapset.
Notation natmap_raw A := (list (option A)).
Definition natmap_wf {A} (l : natmap_raw A) :=
......
......@@ -2,8 +2,8 @@
(* This file is distributed under the terms of the BSD license. *)
(** This files extends the implementation of finite over [positive] to finite
maps whose keys range over Coq's data type of binary naturals [N]. *)
Require Import prelude.pmap prelude.mapset.
Require Export prelude.prelude prelude.fin_maps.
From stdpp Require Import pmap mapset.
From stdpp Require Export prelude fin_maps.
Local Open Scope N_scope.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment