- (*
-(* let signature = MetadataQuery.signature_of metasenv goal in *)
-(* let newmeta = CicMkImplicit.new_meta metasenv [] in *)
- let equations =
- retrieve_equations dont_filter (* true *) signature universe cache context metasenv
- in
- debug_print
- (lazy ("ho trovato equazioni n. "^(string_of_int (List.length equations))));
- let eqs_and_types =
- HExtlib.filter_map
- (fun t ->
- let ty,_ =
- CicTypeChecker.type_of_aux'
- metasenv context t CicUniv.oblivion_ugraph
- in
- (* retrieve_equations could also return flexible terms *)
- if is_an_equality ty then Some(t,ty)
- else
- try
- let ty' = unfold context ty in
- if is_an_equality ty' then Some(t,ty') else None
- with ProofEngineTypes.Fail _ -> None)
- equations
- in
- let bag = Equality.mk_equality_bag () in
- let units, other_equalities, newmeta =
- partition_unit_equalities context metasenv newmeta bag eqs_and_types
- in
- (* SIMPLIFICATION STEP
- let equalities =
- let env = (metasenv, context, CicUniv.oblivion_ugraph) in
- let eq_uri = HExtlib.unopt (LibraryObjects.eq_URI()) in
- Saturation.simplify_equalities bag eq_uri env units
- in
- *)
- let passive = Saturation.make_passive units in
- let no = List.length units in
- let active = Saturation.make_active [] in
- let active,passive,newmeta =
- if paramod then active,passive,newmeta
- else
- Saturation.pump_actives
- context bag newmeta active passive (no+1) infinity
- in
- (active,passive,bag),cache,newmeta
-*)