diff options
| author | Yves Bertot | 2018-05-03 22:57:55 +0200 |
|---|---|---|
| committer | Yves Bertot | 2018-05-03 22:57:55 +0200 |
| commit | 93273e29708ff5c24024bde0e4b9955cb94a0dc0 (patch) | |
| tree | 6760daa45ad76199b16d54f73ddc569fe62f7f77 | |
| parent | 3da6c143c9d9b8d419d5445f2ee906ca2e21648c (diff) | |
little cleanup on the defining command, and question in comments
| -rw-r--r-- | tuto1/src/simple_declare.ml | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/tuto1/src/simple_declare.ml b/tuto1/src/simple_declare.ml index 932c4c9bb3..4740de435f 100644 --- a/tuto1/src/simple_declare.ml +++ b/tuto1/src/simple_declare.ml @@ -4,18 +4,22 @@ let packed_declare_definition ident let evalue, st = value_with_constraints in let evd = Evd.from_ctx st in let value = EConstr.to_constr evd evalue in +(* Question to developers: could the next 3 lines be removed: + similar stuff present in comDefinition and elpi, but not in Mtac2 *) let evd = Evd.minimize_universes evd in let used = Univops.universes_of_constr (Global.env()) value in - let norm_used = Evd.restrict_universe_context evd used in + let evd = Evd.restrict_universe_context evd used in let decl = Univdecls.default_univ_decl in - let uctx = Evd.check_univ_decl ~poly:true norm_used decl in + let uctx = Evd.check_univ_decl ~poly:true evd decl in let ce = Declare.definition_entry ~univs:uctx value in let _ = - Pretyping.check_evars_are_solved (Global.env ()) norm_used Evd.empty in + Pretyping.check_evars_are_solved (Global.env ()) evd Evd.empty in let k = (Decl_kinds.Global, true (* polymorphic *), Decl_kinds.Definition) in let binders = Evd.universe_binders evd in let implicits = [] in let hook = Lemmas.mk_hook (fun _ x -> x) in ignore(DeclareDef.declare_definition ident k ce binders implicits hook) - end
\ No newline at end of file + end + +(* But this definition cannot be undone by Reset ident *)
\ No newline at end of file |
