Commit 2bc00178 authored by Ralf Jung's avatar Ralf Jung

document side-effects of importing std++

parent 7bb46268
Pipeline #4970 canceled with stages
......@@ -20,6 +20,20 @@ The key features of this library are as follows:
`set_solver` for goals involving set operations.
- It is entirely dependency- and axiom-free.
## Side-effects
Importing std++ has some side effects as the library sets some global options.
Notably:
* `Generalizable All Variables`: This option enables implicit generalization in
arguments of the form `` `{...}`` (i.e., anonymous arguments). Unfortunately, it
also enables implicit generalization in `Instance`. We think that the fact
taht both behaviors are coupled together is a
[bug in Coq](https://github.com/coq/coq/issues/6030).
* The behavior of `Program` is tweaked: `Unset Transparent Obligations`,
`Obligation Tactic := idtac`, `Add Search Blacklist "_obligation_"`. See
[`base.v`](`theories/base.v`) for further details.
## History
Coq-std++ has originally been developed by Robbert Krebbers as part of his
......
......@@ -4,12 +4,20 @@
that are used throughout the whole development. Most importantly it contains
abstract interfaces for ordered structures, collections, and various other data
structures. *)
Global Generalizable All Variables.
From Coq Require Export Morphisms RelationClasses List Bool Utf8 Setoid.
Set Default Proof Using "Type".
Export ListNotations.
From Coq.Program Require Export Basics Syntax.
(** Enable implicit generalization. *)
(* This option enables implicit generalization in arguments of the form
`{...} (i.e., anonymous arguments). Unfortunately, it also enables
implicit generalization in `Instance`. We think that the fact taht both
Please register or sign in to reply
behaviors are coupled together is a [bug in
Coq](https://github.com/coq/coq/issues/6030). *)
Global Generalizable All Variables.
(** * Tweak program *)
(** 1. Since we only use Program to solve logical side-conditions, they should
always be made Opaque, otherwise we end up with performance problems due to
......
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