History log of /seL4-l4v-master/HOL4/src/1/Pmatch.sig
Revision Date Author Comments
# 48345816 28-Feb-2015 Thomas Tuerk <thomas@tuerk-brechen.de>

add manual pattern match heuristic / improve exhaustive one

Implement a new pattern match heuristic that allows manually
specifying in which order to do case splits. This one prints
a lot of debugging information in order to allow the user to
make decent choices. The techniques for producing this debug
have also been added to the exhaustive tactic. It now prints
debugging information on how far the exhaustive search
progressed and on intermediate results


# 1d91518a 15-Apr-2013 Thomas Tuerk <tt291@cl.cam.ac.uk>

cleanup of Pmatch

Following a suggestion of Anthony, I cleaned-up the interface of Pmatch.
To this end, I moved much of the heuristics-code to a new library called
PmatchHeuristics. This new library is used by Pmatch. This allows to
clean-up the code and interface of Pmatch. If less frequently used functions
are needed, the library PmatchHeuristics has to be used now.


# 4672d2f0 18-Feb-2013 Thomas Tuerk <tt291@cl.cam.ac.uk>

added trace "pp_cases" that allows to turn pretty-printing for case-expressions off


# 0b6e5649 15-Feb-2013 Thomas Tuerk <tt291@cl.cam.ac.uk>

added exhaustive pattern match heuristic (useful only for very small examples)


# be58d73a 15-Feb-2013 Thomas Tuerk <tt291@cl.cam.ac.uk>

execute several heuristics for pattern-matching and choose the best result
interface of pattern matching simplified


# 0f0c61b2 10-Feb-2013 Thomas Tuerk <tt291@cl.cam.ac.uk>

implemented qba heurtic for pattern matching; don't do splits for which
lead to same result for all cases


# 7cc76829 08-Feb-2013 Thomas Tuerk <tt291@cl.cam.ac.uk>

started with writing more complex pattern match heuristics


# fed48c8e 08-Feb-2013 Thomas Tuerk <tt291@cl.cam.ac.uk>

modify pattern matching to use heuristics for picking the column to split on


# 945ba498 13-Dec-2012 Michael Norrish <michael.norrish@nicta.com.au>

Remove duplication of code between Pmatch and TypeBasePure.

The case-syntax code in the latter has moved entirely to Pmatch.


# 0e622824 21-Nov-2012 Michael Norrish <michael.norrish@nicta.com.au>

Changes bringing Pmatch more into line with revisions to tfl’s Functional.sml.


# f0553c0e 20-Nov-2012 Michael Norrish <michael.norrish@nicta.com.au>

Move mk_pattern_fn from old Functional structure to Pmatch.


# 1bc9f344 13-Jan-2011 Michael Norrish <Michael.Norrish@nicta.com.au>

Change src/bool to src/1 as a prelude to experimentation!