CicTypeChecker.type_of_aux' metasenv context rhs CicUniv.empty_ugraph in
let just =
match just with
- None ->
- Tactics.auto ~dbd ~params:["paramodulation","1"; "timeout","3"] ~universe
- | Some just -> Tactics.apply just
+ `Auto params ->
+ let params =
+ if not (List.exists (fun (k,_) -> k = "paramodulation") params) then
+ ("paramodulation","1")::params
+ else params in
+ let params =
+ if not (List.exists (fun (k,_) -> k = "timeout") params) then
+ ("timeout","3")::params
+ else params
+ in
+ Tactics.auto ~dbd ~params ~universe
+ | `Term just -> Tactics.apply just
in
match lhs with
None ->
~continuations:
[ Tactics.apply prhs ;
Tactics.apply (Cic.Rel 1) ;
- just]) status
+ Tacticals.then_
+ ~start:(Tactics.clear ~hyps:[last_hyp_name])
+ ~continuation:just]) status
| Some name ->
let mk_fresh_name_callback =
fun metasenv context _ ~typ ->
~continuations:
[ Tactics.apply prhs ;
Tactics.apply (Cic.Rel 1) ;
- just]
+ Tacticals.then_
+ ~start:(Tactics.clear ~hyps:[last_hyp_name])
+ ~continuation:just]
]) status)
| Some lhs ->
match conclude with