let normalize_tac ~pattern =
mk_tactic (reduction_tac ~reduction:CicReduction.normalize ~pattern );;
-let fold_tac ~reduction ~also_in_hypotheses ~term =
- let fold_tac ~reduction ~also_in_hypotheses ~term (proof,goal) =
+let fold_tac ~reduction ~pattern ~term =
+(*
+ let fold_tac ~reduction ~pattern:(hyp_patterns,goal_pattern) ~term (proof,goal)
+ =
let curi,metasenv,pbo,pty = proof in
let metano,context,ty = CicUtil.lookup_meta goal metasenv in
let term' = reduction context term in
- (* We don't know if [term] is a subterm of [ty] or a subterm of *)
- (* the type of one metavariable. So we replace it everywhere. *)
- (*CSC: ma si potrebbe ovviare al problema. Ma non credo *)
- (*CSC: che si guadagni nulla in fatto di efficienza. *)
let replace =
ProofEngineReduction.replace ~equality:(=) ~what:[term'] ~with_what:[term]
in
in
(curi,metasenv',pbo,pty), [metano]
in
- mk_tactic (fold_tac ~reduction ~also_in_hypotheses ~term)
+ mk_tactic (fold_tac ~reduction ~pattern ~term)
+*) assert false
;;