Skip to content
Snippets Groups Projects
Commit eac00ee5 authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

Make `solve_inG` faster.

1.) First `simpl` away all the functors 2.) Don't use `done`, which calls `split`.
parent 93429372
No related branches found
No related tags found
No related merge requests found
...@@ -45,12 +45,12 @@ Ltac solve_inG := ...@@ -45,12 +45,12 @@ Ltac solve_inG :=
repeat match goal with repeat match goal with
| H : subG _ _ |- _ => move:(H); (apply subG_inG in H || clear H) | H : subG _ _ |- _ => move:(H); (apply subG_inG in H || clear H)
end; end;
(* Again get all assumptions *) (* Again get all assumptions and simplify the functors *)
intros; intros; simpl in *;
(* We support two kinds of goals: Things convertible to inG; (* We support two kinds of goals: Things convertible to inG;
and records with inG and typeclass fields. Try to solve the and records with inG and typeclass fields. Try to solve the
first case. *) first case. *)
try done; try assumption;
(* That didn't work, now we're in for the second case. *) (* That didn't work, now we're in for the second case. *)
split; (assumption || by apply _). split; (assumption || by apply _).
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment