Commit Graph

2 Commits

Author SHA1 Message Date
Edwin Brady
3034fb619c Remove argument ordering hack in elaborator
This used to be needed because the elaborator wasn't good at going back
and patching up things that didn't work right, but now it just gets in
the way and causes all sorts of other problems. This tidies up
elaboration/unification a bit more.
2015-05-17 00:46:16 +01:00
Edwin Brady
13a36a3d32 Annotate functions as %hint for auto search
This allows extra hints, as well as constructors, to guide proof search
for auto implicit arguments.
Added test proof010 which shows how this works to simulate type classes
with overlapping instances (and consequently no injectivity restriction
or assumption)

%hint only works on functions which return an instance of a data type.
Proof search exhaustively searches hints and constructors, so use with
care especially when adding lots of recursive or overlapping hints.
2015-03-29 21:24:04 +01:00