| _ ->
raise (Fail "status_of_single_goal_tactic_result: the tactic did not produce exactly a new goal")
+(* Galla: spostata in variousTactics.ml
(**
auxiliary tactic "elim_type"
@param status current proof engine status
warn "in Ring.elim_type_tac";
Tacticals.thens ~start:(cut_tac ~term)
~continuations:[elim_simpl_intros_tac ~term:(Cic.Rel 1) ; Tacticals.id_tac] ~status
+*)
(**
auxiliary tactic, use elim_type and try to close 2nd subgoal using proof
@param proof term used to prove second subgoal generated by elim_type
*)
let elim_type2_tac ~term ~proof ~status =
+ let module E = EliminationTactics in
warn "in Ring.elim_type2";
- Tacticals.thens ~start:(elim_type_tac ~term)
+ Tacticals.thens ~start:(E.elim_type_tac ~term)
~continuations:[Tacticals.id_tac ; exact_tac ~term:proof] ~status
-(* spostata in variousTactics.ml
+(* Galla: spostata in variousTactics.ml
(**
Reflexivity tactic, try to solve current goal using "refl_eqT"
Warning: this isn't equale to the coq's Reflexivity because this one tries
Tacticals.try_tactics
~status
~tactics:[
- "reflexivity", VariousTactics.reflexivity_tac ;
+ "reflexivity", EqualityTactics.reflexivity_tac ;
"exact t1'_eq_t1''", exact_tac ~term:t1'_eq_t1'' ;
"exact t2'_eq_t2''", exact_tac ~term:t2'_eq_t2'' ;
"exact sym_eqt su t1 ...", exact_tac
in
try (* try to solve main goal *)
warn "trying reflexivity ....";
- VariousTactics.reflexivity_tac ~status:status'
+ EqualityTactics.reflexivity_tac ~status:status'
with (Fail _) -> (* leave conclusion to the user *)
warn "reflexivity failed, solution's left as an ex :-)";
purge_hyps_tac ~count:!new_hyps ~status:status')]