(******************** OTHER USEFUL TACTICS **********************)
+(* Galla: moved in variousTactics.ml
let rewrite_tac ~term:equality ~status:(proof,goal) =
let module C = Cic in
(ReductionTactics.simpl_tac ~also_in_hypotheses:false ~term:None)
~status
;;
+*)
(******************** THE FOURIER TACTIC ***********************)
(*CSC: Patch to undo the over-simplification of RewriteSimpl *)
Tacticals.then_
~start:
- (ReductionTactics.fold_tac ~also_in_hypotheses:false
+ (ReductionTactics.fold_tac ~reduction:CicReduction.whd
+ ~also_in_hypotheses:false
~term:
(Cic.Appl
[_Rle ; _R0 ;
let metasenv' = (fresh_meta,context,a_eq_b)::metasenv in
debug("chamo rewrite tac su"^CicPp.ppterm (C.Meta (fresh_meta,irl)));
let (proof,goals) =
- rewrite_simpl_tac ~term:(C.Meta (fresh_meta,irl))
+ VariousTactics.rewrite_simpl_tac ~term:(C.Meta (fresh_meta,irl))
~status:((curi,metasenv',pbo,pty),goal)
in
let new_goals = fresh_meta::goals in
(* !!!!! fix !!!!!!!!!! *)
let contradiction_tac ~status:(proof,goal)=
Tacticals.then_
- ~start:(PrimitiveTactics.intros_tac ~name:"bo?" ) (*inutile sia questo che quello prima della chiamata*)
+ (*inutile sia questo che quello prima della chiamata*)
+ ~start:
+ (PrimitiveTactics.intros_tac ~mknames:(function () -> "boh"))
~continuation:(Tacticals.then_
- ~start:(Ring.elim_type_tac ~term:_False)
+ ~start:(VariousTactics.elim_type_tac ~term:_False)
~continuation:(assumption_tac))
~status:(proof,goal)
;;
let proof,gl = Tacticals.then_
~start:(PrimitiveTactics.apply_tac ~term:!th_to_appl)
- ~continuation:(PrimitiveTactics.intros_tac ~name:fhyp)
+ ~continuation:
+ (PrimitiveTactics.intros_tac ~mknames:(function () -> fhyp))
~status:(s_proof,s_goal) in
let goal = if List.length gl = 1 then List.hd gl
else failwith "a new goal" in