#
65d33e15 |
|
15-Feb-2015 |
Thomas Tuerk <thomas@tuerk-brechen.de> |
fix bug in congLib fix a bug introduced by the change of REDUCER interface in 3af1cefc94914690ff91c70ec41fda103152bd56.
|
#
059e250f |
|
15-Oct-2014 |
Piotr Trojanek <piotr.trojanek@gmail.com> |
rename Ho_Net.empty_net to Ho_Net.empty All similar structures (e.g. Net and Raw) use "empty" not "empty_net"; it seems right to follow a single naming convention.
|
#
11247f75 |
|
22-Aug-2011 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Remove unnecessary abstype constructions in {simp,cong}Lib. These just make debugging more painful than it needs to be.
|
#
a9f2f2d3 |
|
25-Oct-2010 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Get congLib to compile again by changing Traverse API again. Rewriters get access both to the term of the current relation and a function that will give them an instance of reflexivity for that relation. Thomas's code was using this possibility.
|
#
d38ec0a9 |
|
18-Oct-2010 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Generalise congruence API to handle terms with free vars as equivs.
|
#
4761143b |
|
10-Aug-2009 |
Tjark Weber <Tjark.Weber@cl.cam.ac.uk> |
Removed trailing whitespace from all .sml and .sig files. This affects over 900 files and was done using emacs's delete-trailing-whitespace function in batch mode. Building the system with Poly/ML and Moscow ML seems to work, so I'm hoping these changes don't break anything. Please complain if they do!
|
#
1d1ecce4 |
|
29-May-2009 |
Thomas Tuerk <Thomas.Tuerk@cl.cam.ac.uk> |
A check "thm_rel = preorder" in "cong_rewrite" has been replaced by "samerel thm_rel preorder". This allows the preorder in congruence rules to have different type instantiations.
|
#
2252b17c |
|
10-Mar-2009 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Change relations that have congruence rules stored for them (they have to be preorders) to be stored as terms rather than string pairs (the latter encoded theory and term name, allowing constants only). The samerel function is now what should be used to determine if two preorders are compatible. The use of same_const and aconv means that only single constants can be used polymorphically, but arbitrary monomorphic terms can be used elsewhere. (It's possible this breaks Thomas Türk's examples; I have run selftest 1 on everything else.)
|
#
162a458a |
|
12-Oct-2008 |
Michael Norrish <Michael.Norrish@nicta.com.au> |
Implement a scheme whereby a simpset can be limited to apply no more than a limited number of rewrites/conversions/d.p. invocations. The limit is stored in a simpset. By default all simpsets are unlimited. To limit a simpset, use limit n simpset and it will then stop simplifying after n actions. There is a border case: if a conditional rewrite requires exactly as many rewrites to solve its side-conditions as it is limited to, it will still go through with the rewrite, thereby exceeding the limit by one (n side conditions, plus the final simplification) The design is there to give a (better) guarantee of termination than simpLib currently provides. For this reason, I didn't go with the otherwise appealing idea of just letting side-condition discharge ignore the limit entirely.
|
#
aed05f4e |
|
20-Jul-2008 |
Konrad Slind <konrad.slind@gmail.com> |
A whole mess of small changes intended at making simpsets prettyprint informatively in the interactive loop. Very possibly I haven't updated all the files in the examples directories.
|
#
c76376ed |
|
29-Apr-2008 |
Konrad Slind <konrad.slind@gmail.com> |
Additional functionality for abbreviations. 1. The labels library has been merged into markerLib and the src/labels directory eliminated. 2. Have added markerSyntax structure. 3. Operations on abbrevs used to all be in structure Q, even those that didn't deal with quotations (like UNABBREV_ALL_TAC). Now markerLib provides all abbrev. operations and these take terms. Operations that benefit from quotes, e.g., ABBREV_TAC, MATCH_ABBREV_TAC, etc. are still to be found in Q. 4. Abbrevs are kept reduced by the simplifiers and there is a REABBREV_TAC which can be separately called. This sorts abbrevs topologically, so that they get restored in a sensible order. 5. For situations where one wants to get rid of all abbrevs, apply a tactic, and then restore the abbrevs, there is WITHOUT_ABBREVS: tactic->tactic. 6. Have added a simple topological sort to Lib. 7. Updated proofs in the src directories, and also in examples/lambda.
|
#
fa932613 |
|
05-Apr-2006 |
Thomas Tuerk <Thomas.Tuerk@cl.cam.ac.uk> |
Added some tactics, EQ-CONV and rules. Also fixed some bugs with adding context and optimised some things.
|
#
9b8241ae |
|
29-Mar-2006 |
Thomas Tuerk <Thomas.Tuerk@cl.cam.ac.uk> |
Uses the new interface of CONGPROC. Thereby, a bug that occured, when multiple congruence relations in a congruence rule are used, has been eliminated.
|
#
f2f9b533 |
|
28-Mar-2006 |
Thomas Tuerk <Thomas.Tuerk@cl.cam.ac.uk> |
Initial revision
|