History log of /seL4-l4v-master/HOL4/src/IndDef/IndDefLib.sig
Revision Date Author Comments
# 9168664f 26-Oct-2020 Michael Norrish <michael.norrish@data61.csiro.au>

Present IndDefLib's rule-induction-map as a theorem-set with ancestry

Only required change to the underlying API is to acknowledge that a
call to merge may result in no value if none of the desired parents
have a value either.


# 8d8bae96 01-Jul-2019 Michael Norrish <Michael.Norrish@nicta.com.au>

Complete implementation of smarter Induct_on

This massages a goal to pull out a negative occurrence of a inductive
relation term, replacing compound terms with variables and
generalising appropriately to make the goal suitable for a subsequent
call to ho_match_mp_tac (which is done inside Induct_on).

Not sure yet quite what should be done with mutually recursive
relations and Induct_on.

Closes #244


# 74e527fa 23-Jun-2019 Michael Norrish <Michael.Norrish@nicta.com.au>

Start with test-cases for isolation of induction terms

Work on github issue #244


# a71a3086 18-Aug-2015 Andrea Condoluci <andreacondoluci@gmail.com>

Fix sigs to share co-mmon funs


# 69eb5904 22-Jun-2010 Michael Norrish <Michael.Norrish@nicta.com.au>

Inductive definitions now make their core definitions with provided stem name.


# ad59256e 19-Jun-2010 Michael Norrish <Michael.Norrish@nicta.com.au>

Rule-induction theorem map needs to be on Name-Thy pairs, not terms directly.

This is because of polymorphic constants.


# a828d758 13-Jun-2010 Michael Norrish <Michael.Norrish@nicta.com.au>

Add xHol_reln, allowing user to specify 'stem', by analogy with xDefine.


# 5c8b895f 10-Jun-2010 Michael Norrish <Michael.Norrish@nicta.com.au>

Automatically store 'strong' induction principles in theories.

The plan is to have Induct_on use these to perform rule inductions as well
as data type inductions.


# 2be13f20 02-Feb-2010 Michael Norrish <Michael.Norrish@nicta.com.au>

Make IndDefLib's monotonicity result store use generic theory data.


# a20a4544 06-Dec-2007 Michael Norrish <Michael.Norrish@nicta.com.au>

Improve error reporting for Hol_reln by making common errors (and
messages) be accompanied by location information.


# aa666209 20-Sep-2006 Peter Homeier <palantir@trustworthytools.com>

----------------------------------------------------------------------

Committing in fixes to bugs in literals in pattern matching discovered by
Michael Norrish.

Also committing in changes to the IndDef library, changing the names
of two functions from "prim_..." to "..._mono_...".

Modified Files:
hol98/src/IndDef/IndDefLib.sig hol98/src/IndDef/IndDefLib.sml
hol98/src/IndDef/IndDefRules.sig
hol98/src/IndDef/IndDefRules.sml hol98/src/bool/Pmatch.sml
hol98/src/tfl/src/Functional.sml
----------------------------------------------------------------------


# b458dfe5 12-Sep-2006 Michael Norrish <Michael.Norrish@nicta.com.au>

Change to the inductive relations definition code to support a global, and
updated "monoset", which can be updated as theories load, thereby invisibly
increasing the capabilities of Hol_reln. Also simplify the implementation
of derive_strong_induction, and move the entrypoint to IndDefLib. New
test in src/IndDef/selftest.sml wouldn't have passed before (I believe).
It is more onerous than Peter's original monoset example, which didn't
feature recursion under the EVERY operator. Documented in Description and
release notes. Still to update theories with appropriate calls to
export_mono. (export_mono and export_rewrites are now part of bossLib's
interface.)


# 9d05ef44 08-Sep-2006 Peter Homeier <palantir@trustworthytools.com>

----------------------------------------------------------------------

Committing in revisions to rule induction library, supporting the
proof of strong induction theorems for rules that involve new
monotonic operators. There is now a new function,
prim_derive_strong_induction, available in IndDefLib.

Modified Files:
IndDefLib.sig IndDefLib.sml IndDefRules.sig IndDefRules.sml
selftest.sml
----------------------------------------------------------------------


# 645919bb 05-Jun-2001 Michael Norrish <Michael.Norrish@nicta.com.au>

Relatively minor changes in order to enable definitions to be made
from stages later in the parsing process than mere quotations. (In
particular, wanted this to enable definitions from Absyn values.)


# 8b365a0f 05-Jan-2001 Konrad Slind <konrad.slind@gmail.com>

Nearly finished with IndDefLib. Added the ability to reload
definitions (bunch of Absyn hacking). Finalized the names
and locations of various entrypoints.


# fe6a33e2 02-Jan-2001 Konrad Slind <konrad.slind@gmail.com>

Ongoing changes to merge jrh and tfm ind. def. libs.


# 44b569f4 28-Dec-2000 Konrad Slind <konrad.slind@gmail.com>

Merge of jrh and tfm packages. The stuff from jrh will be used to
define the predicates and derive the rules, induction, and cases
theorems. The stuff from tfm will provide proof support. I hope
that this will be a fairly innocuous change, but I'm still in
the process of getting old examples to build.


# a6d19133 27-Dec-2000 Konrad Slind <konrad.slind@gmail.com>

Added RULE_INDUCT_TAC to signature.


# a4b262b1 28-Nov-2000 Konrad Slind <konrad.slind@gmail.com>

Added derivation of strong induction.


# 78da2ef9 20-Nov-2000 Konrad Slind <konrad.slind@gmail.com>

Upgrade to work in Kananaskis 0.


# 0cde7b84 10-Oct-2000 Michael Norrish <Michael.Norrish@nicta.com.au>

Type in signature wasn't correct.


# 8bf60d3c 14-Sep-2000 Konrad Slind <konrad.slind@gmail.com>

Need to add BACKCHAIN_TAC to signature, in order to build monoset
additions.


# aca69e2e 14-Sep-2000 Konrad Slind <konrad.slind@gmail.com>

Generalized new_inductive_definition so that it takes a monoset as
an argument.


# e950a4b7 18-Nov-1999 Michael Norrish <Michael.Norrish@nicta.com.au>

Revealed a function from the implementation that needs to be visible for
John's inductive datatype package to work properly.


# 0058df84 28-Jun-1999 Michael Norrish <Michael.Norrish@nicta.com.au>

Fixed to bring it up to date with Taupo release 0.
(Changes have come across from parse_branch development.)


# 58841e67 29-Apr-1999 Michael Norrish <Michael.Norrish@nicta.com.au>

Initial revision