History log of /seL4-l4v-master/HOL4/src/coretypes/pairScript.sml
Revision Date Author Comments
# 2e71524f 29-Oct-2020 Michael Norrish <michael.norrish@data61.csiro.au>

Tidy pair{Script,Theory,Simps} to have less cruft

In particular, it's desirable to reduce the number of calls to
augment_srw_ss outside of Script files.


# 511e4a42 12-Jun-2020 Magnus Myreen <magnus.myreen@cl.cam.ac.uk>

Update src for strip_binop change


# 78785f8e 04-Feb-2020 Michael Norrish <michael.norrish@data61.csiro.au>

Make pair induction principle work with Induct_on

Closes #765


# 7bac59b5 10-Jan-2020 Michael Norrish <michael.norrish@data61.csiro.au>

Move DefnBase to src/coretypes, make progress with one_line_ify

DefnBase is now home to the updated literal-decider conversion


# eee03790 05-Mar-2019 Michael Norrish <Michael.Norrish@nicta.com.au>

Make equality of "tight" precedence by default

Start to work through knock-on effects of this.


# b351c993 02-Feb-2019 Michael Norrish <Michael.Norrish@nicta.com.au>

Fix a bunch of breakages caused by assuming term to be an eqtype


# 6a81a039 21-May-2018 Michael Norrish <Michael.Norrish@nicta.com.au>

Remove TABs from src

Will also make selftest to check that they aren't introduced


# 208bfeaf 16-Apr-2018 Michael Norrish <Michael.Norrish@nicta.com.au>

Generate "standard" datatype simpl rewrites as tyinfos are loaded

This saves us from having to write them out to disk, which can make
for unnecessarily large theory.dat files.


# 1418d505 09-Apr-2018 Michael Norrish <Michael.Norrish@nicta.com.au>

Use TypeBase.export to avoid adjoin_to_theory calls

Still need to use the same facility in the implementation of Datatype.


# b72e391c 20-Mar-2018 Michael Norrish <Michael.Norrish@nicta.com.au>

Move smpp to Portable - get everything up to arithmeticScript working


# 0b018443 11-Dec-2017 Michael Norrish <Michael.Norrish@nicta.com.au>

Rename TypeBase entrypoints for caseeqsplit and friends

Now use case_eq everywhere.

Work on github issue #345


# 962f50c1 29-Nov-2017 Michael Norrish <Michael.Norrish@nicta.com.au>

Automatically prove "case-eqsplit" theorems and store in TypeBase

For :num, this theorem looks like

(num_CASE n zc sc = v) <=>
(n = 0) ∧ (zc = v) ∨ ∃x. (n = SUC x) ∧ (sc x = v)

Such theorems can be powerful rewrites when (large) case-expressions
are asserted to be equal to some value or other.

These theorems have to be installed somewhat by hand for early types,
but from list onwards, the Datatype package handles this. This work
leverages earlier work done implementing prove_case_eq_thm (8f16922426).

Take the opportunity to rework TypeBasePure's code to use
FunctionalRecordUpdate.

This is progress with github issue #345.


# 84a8966a 26-Nov-2017 Michael Norrish <Michael.Norrish@nicta.com.au>

Add some theorems from CakeML

pred_set: to do with bijections and surjections
list: MAP2 and LIST_REL results
pair: rewrites with (FST x = y) and (SND x = y) as LHSs

other changes are fixes for broken proofs.


# 401e3992 27-Oct-2017 Michael Norrish <Michael.Norrish@nicta.com.au>

Move pair, one, sum and option into one combined coretypes directory