chore(library/init/data/rbtree,library/init/data/rbmap): remove auto_param dependency

The problem is that `auto_param` is defined in the old `init/meta/name` module,
and we don't want to have `init/meta` dependencies in the `init/lean` modules.
This commit is contained in:
Leonardo de Moura 2018-04-30 13:24:13 -07:00
parent ead68376b7
commit 4fa43f18dd
4 changed files with 13 additions and 20 deletions

View file

@ -11,12 +11,10 @@ universes u v w
def rbmap_lt {α : Type u} {β : Type v} (lt : αα → Prop) (a b : α × β) : Prop :=
lt a.1 b.1
set_option auto_param.check_exists false
def rbmap (α : Type u) (β : Type v) (lt : αα → Prop . rbtree.default_lt) : Type (max u v) :=
def rbmap (α : Type u) (β : Type v) (lt : αα → Prop) : Type (max u v) :=
rbtree (α × β) (rbmap_lt lt)
def mk_rbmap (α : Type u) (β : Type v) (lt : αα → Prop . rbtree.default_lt) : rbmap α β lt :=
def mk_rbmap (α : Type u) (β : Type v) (lt : αα → Prop) : rbmap α β lt :=
mk_rbtree (α × β) (rbmap_lt lt)
namespace rbmap
@ -85,10 +83,10 @@ to_value (m.find_entry k)
def contains (m : rbmap α β lt) (k : α) : bool :=
(find_entry m k).is_some
def from_list (l : list (α × β)) (lt : αα → Prop . rbtree.default_lt) [decidable_rel lt] : rbmap α β lt :=
def from_list (l : list (α × β)) (lt : αα → Prop) [decidable_rel lt] : rbmap α β lt :=
l.foldl (λ m p, insert m p.1 p.2) (mk_rbmap α β lt)
end rbmap
def rbmap_of {α : Type u} {β : Type v} (l : list (α × β)) (lt : αα → Prop . rbtree.default_lt) [decidable_rel lt] : rbmap α β lt :=
def rbmap_of {α : Type u} {β : Type v} (l : list (α × β)) (lt : αα → Prop) [decidable_rel lt] : rbmap α β lt :=
rbmap.from_list l lt

View file

@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Leonardo de Moura
-/
prelude
import init.data.ordering
import init.data.ordering.basic init.coe init.data.option.basic
universes u v
@ -162,12 +162,10 @@ end rbnode
open rbnode
set_option auto_param.check_exists false
def rbtree (α : Type u) (lt : αα → Prop . rbtree.default_lt) : Type u :=
def rbtree (α : Type u) (lt : αα → Prop) : Type u :=
{t : rbnode α // t.well_formed lt }
def mk_rbtree (α : Type u) (lt : αα → Prop . rbtree.default_lt) : rbtree α lt :=
def mk_rbtree (α : Type u) (lt : αα → Prop) : rbtree α lt :=
⟨leaf, well_formed.leaf_wff lt⟩
namespace rbtree
@ -218,7 +216,7 @@ def find : rbtree α lt → α → option α
def contains (t : rbtree α lt) (a : α) : bool :=
(t.find a).is_some
def from_list (l : list α) (lt : αα → Prop . rbtree.default_lt) [decidable_rel lt] : rbtree α lt :=
def from_list (l : list α) (lt : αα → Prop) [decidable_rel lt] : rbtree α lt :=
l.foldl insert (mk_rbtree α lt)
def all : rbtree α lt → (α → bool) → bool
@ -235,5 +233,5 @@ subset t₁ t₂ && subset t₂ t₁
end rbtree
def rbtree_of {α : Type u} (l : list α) (lt : αα → Prop . rbtree.default_lt) [decidable_rel lt] : rbtree α lt :=
def rbtree_of {α : Type u} (l : list α) (lt : αα → Prop) [decidable_rel lt] : rbtree α lt :=
rbtree.from_list l lt

View file

@ -5,6 +5,3 @@ Authors: Leonardo de Moura
-/
prelude
import init.data.rbtree.basic
meta def rbtree.default_lt : tactic unit :=
`[apply has_lt.lt]

View file

@ -43,14 +43,14 @@ structure resolved :=
meta instance resolved.has_to_format : has_to_format resolved := ⟨λ r, to_fmt (r.decl, r.prefix)⟩
structure resolve_cfg :=
(global_scope : rbmap name syntax)
(global_scope : rbmap name syntax (<))
@[reducible] def resolve_map := rbmap syntax_id resolved
@[reducible] def resolve_map := rbmap syntax_id resolved (<)
structure resolve_state :=
(resolve_map : resolve_map)
def scope := rbmap (name × option macro_scope_id) syntax_id
def scope := rbmap (name × option macro_scope_id) syntax_id (<)
@[reducible] def resolve_m := parse_m resolve_cfg resolve_state
@ -65,7 +65,7 @@ structure macro :=
-- (elaborate : list syntax → expr → tactic expr)
structure parse_state :=
(macros : rbmap name macro)
(macros : rbmap name macro (<))
(resolve_cfg : resolve_cfg)
-- identifiers in macro expansions are annotated with incremental tags