Commit Graph

30 Commits

Author SHA1 Message Date
Gerwin Klein 0f633ce387 isabelle2021-1 lib: update Lib session, retire wpx
The benefit of the wpx method is not worth the maintenance effort.
There are still a few instances of wpx left in AInvs, which will have
to be fixed later.

We are keeping the wps method from the same file (WPEx.thy), because
that is used more widely and does not break with Isabelle2021-1

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2022-03-29 08:38:25 +11:00
Gerwin Klein 4bf1635b2f cleanup: reduce warnings
This mostly refactors ML code to avoid non-exhaustive matches, restore
the (op infix) syntax that got lost in a previous Isabelle update, and
removes some unused functions/parameters.

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2021-09-30 16:53:17 +10:00
Gerwin Klein 2e8cf15b2d lib + proof: Isabelle2020 Method.NO_CONTEXT_TACTIC rename
Method.NO_CONTEXT_TACTIC -> NO_CONTEXT_TACTIC

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-10-27 15:52:31 +10:00
Edward Pierzchalski b153cb9571 lib: add some list utilities
Adds `unfold` for constructing a list from a generating function, and
adds `range` for constructing a range of numbers.

Signed-off-by: Edward Pierzchalski <ed.pierzchalski@data61.csiro.au>
2020-05-13 11:53:35 +08:00
Gerwin Klein a424d55e3e licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Corey Lewis 5120e351b3 lib: improve wp tracing
When tracing wp can now print the instantiated version of the rules being used.
It also says which set each used rule is from.
2020-01-29 09:26:18 +11:00
Corey Lewis 7107f9abaf lib: implement instantiate_thm for Trace_Schematic_Insts
This is a function that instantiates a thm with the instantiations provided by
trace_schematic_insts.
2020-01-29 09:26:16 +11:00
Corey Lewis 9b9ae104fc lib: restructure the instantiations type of Trace_Schematic_Insts
This allows us to explicitly record the bound variables from the subgoal so that
they can be more easily handled. We also now drop binders when constructing typ
instantiations.
2020-01-29 09:26:15 +11:00
Corey Lewis 96588daf92 lib: improve message printing for crunch and wp, and refactor common printing functions 2019-10-14 17:23:41 +11:00
Edward Pierzchalski 8ffebe8f94 lib: add utilities for using options. 2019-08-27 16:12:06 +10:00
Gerwin Klein c34840d09b global: isabelle update_cartouches 2019-06-14 11:41:21 +10:00
Edward Pierzchalski 7ac89448a1 lib: Add `find_index`. 2019-06-12 10:35:32 +10:00
Japheth Lim 071ebbd398 lib: move @{mk_term} antiquotation from AutoCorres; add examples 2019-05-17 18:07:59 +10:00
Japheth Lim 9cbf5e6ab5 lib: use `@{term_pat}` in FP_Eval; refactor term_pat testsuite 2019-05-17 13:58:13 +10:00
Edward Pierzchalski 9809f4001f lib tutorial: Add `SELECT_GOAL` example. 2019-05-08 10:42:33 +10:00
Edward Pierzchalski ea06b8b708 lib: Add tutorial on tactic basics.
This is an explicit walkthrough about how one goes about doing a proof
in Isabelle/ML. The goal is that someone can run into such a proof, look
at this tutorial, and then at least be equipped to ask the right
questions about fixing the proof.
2019-05-03 11:38:56 +10:00
Corey Lewis 88c5850462 lib: add an implementation of the sum type 2019-04-16 15:18:49 +10:00
Edward Pierzchalski 7cea1ad1b4 lib: don't extend core signatures.
Just because we *can* extend the core SML `List` signature, that doesn't
mean we *should*. It's a neat trick, but it makes it harder to find uses
of the new modules, and obfuscates definitions for very little gain.
2019-03-07 15:29:13 +11:00
Edward Pierzchalski 9e2a04f2b6 lib: add ML utilties 'bucket' file.
The SML standard library is pretty bare-bones compared to that of other
functional languages, so in a large enough SML project you end up with a
bunch of reimplementations of basic combinators scattered all over the
place. We'd be able to collect them if we had somewhere to collect them,
so here it is.
2019-03-07 13:34:32 +11:00
Japheth Lim f158751ba5 lib: add @{inline_tactic} and @{inline_method} ML antiquotations
This resurrects a useful part of the removed TacticAPI theory, with a
much more generic implementation.
2018-09-27 18:54:19 +10:00
Japheth Lim 6a4070bf01 lib: remove bitrotted TacticAPI
This was a fledgling framework that was never used.
2018-09-27 18:44:08 +10:00
Gerwin Klein 6b9d9d24dd Isabelle2018: new "op x" syntax; now is "(x)"
(result of "isabelle update_op -m <dir>")
2018-08-20 09:06:35 +10:00
Matthew Brecknell 30122b5d80 Isabelle2016-1: update to new ML API
Update references to renamed ML constants; supply default arguments to
functions with additional parameters; etc.
2017-01-05 14:26:14 +11:00
Alejandro Gomez-Londono 93adccc141 license-tool: missing license headers + .licenseignore [VER-551] 2016-07-14 16:34:31 +10:00
Japheth Lim f8d4d9db68 lib: fix unexpected behaviour of dummy vars in term_pat. 2016-04-20 17:13:27 +10:00
Japheth Lim 65e48e236b lib: add regression test for term_pat fix 2016-04-18 14:26:25 +10:00
Japheth Lim ff81d35ebe lib: remove unnecessary string escape in term_pat. 2016-04-18 14:24:10 +10:00
Japheth Lim 55c6cca7fb lib: add term_pat: ML antiquotation for pattern matching on terms. 2015-11-11 18:57:46 +11:00
Gerwin Klein 17826f9b49 more Isabelle2015 update; AInvs up to (excluding) Syscall_AI
also includes some global replacements
2015-04-18 21:51:26 +01:00
Gerwin Klein 2a03e81df4 Import release snapshot. 2014-07-14 21:32:44 +02:00