Commit Graph

3418 Commits

Author SHA1 Message Date
Japheth Lim 1dfb962ad2 lib: add FastMap tool
Many issues remain (see TODO list), but it's now mature enough to be
used for proof automation and has a comprehensive test suite.
2018-10-23 15:44:11 +11:00
Japheth Lim 8d583a774a lib: remove reference to removed theories in ROOT 2018-10-23 15:44:11 +11:00
Gerwin Klein 5efa3bbde7 test: allow CBaseRefine to run concurrently with Refine
If Refine fails, it can still be useful to test CBaseRefine skipping over the
failed Refine proofs (when that works).
2018-10-22 13:21:11 +11:00
Gerwin Klein 52117a4a6b drefine test: record reduced dependency 2018-10-22 13:21:11 +11:00
Gerwin Klein 15bfcdd98b reduce DRefine dependencies from Refine to AInvs
This needs (and includes) some deduplication and moving of lemmas formerly in
refine.
2018-10-22 13:21:11 +11:00
Edward Pierzchalski d8552fa97d crefine: arm-hyp: add word lemma FIXMEs
Various potential improvements that became apparent during the word
lemma move.
2018-10-10 14:15:01 +11:00
Edward Pierzchalski c4dc578bc3 Fix up proofs after word lemma moves 2018-10-10 14:15:01 +11:00
Edward Pierzchalski d75740201c Remove pure word lemmas from proof/*
Removes redundant lemmas after moving them up to Word_Lib.
2018-10-10 14:15:00 +11:00
Edward Pierzchalski d3713d7990 lib: add some pure word lemmas found in proof/*
Preparation for removing duplicate word lemmas. These new lemmas
don't belong in the AFP word library, so we hook in to
`Word_Lemmas_Prefix` to expose them to our own theories.
2018-10-10 14:15:00 +11:00
Edward Pierzchalski b7d680a25e lib: speed up word8_exhaust 2018-10-10 14:15:00 +11:00
Japheth Lim 00fefcd700 lib: bump LibTests timeout to 1800s 2018-10-03 19:48:38 +10:00
Japheth Lim da6ccf7a8e lib: update qualified imports for LibTest theories 2018-10-03 19:48:38 +10:00
Japheth Lim 1a504d1f6c run_tests: move selection of RefineOrphanage to run_tests
This is more consistent with how we handle other broken proof sessions
in the run_tests framework.
2018-10-03 19:47:04 +10:00
Japheth Lim 18e0d934cc refine: move Orphanage to separate session, RefineOrphanage
Previously, the build system conditionally included Orphanage, but only
when built from run_tests. This meant that a plain ‘isabelle jedit’ or
‘make Refine’ would see a different session definition, resulting in a
slow rebuild.

NB: editing Orphanage now requires -l Refine instead of -l BaseRefine.
2018-10-03 19:47:04 +10:00
Japheth Lim f1c3f78838 lib: user-friendly commentary for Qualify_Test 2018-09-28 11:47:55 +10:00
Japheth Lim af81675fd8 lib: better description for TSubst 2018-09-28 11:46:54 +10: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
Japheth Lim 918dc061f9 lib: remove bitrotted AdjustSchematic
While the concept of cleaning schematic parameters is useful, this code
is almost entirely plumbing, and we don't lose much by deleting it.
2018-09-27 15:03:25 +10:00
Japheth Lim 1a1e1f1562 lib: remove bitrotted Trace_Attribs
This tool was created to aid a once-off cleanup during AutoCorres
development. Its functionality is no longer needed.
2018-09-27 15:03:25 +10:00
Japheth Lim 862b0c84ba lib: remove ancient show_abbrevs.ML
This script was created early on for L4.verified development but is no
longer relevant.
2018-09-27 15:03:25 +10:00
Japheth Lim dc626e99d3 autocorres, crefine: remove early AutoCorres–CRefine experiment
This has been superseded by actual AutoCorres integration with CRefine.
2018-09-27 15:03:25 +10:00
Japheth Lim 0cb839c7da lib: remove bitrotted StringOrd
This has been superseded by the LexordList theory.
2018-09-27 15:03:25 +10:00
Japheth Lim b50c2b865c lib: move bitrotted asmrefine dependencies to internal/asmrefine 2018-09-27 15:03:25 +10:00
Japheth Lim 787e5a85c4 lib: maybe bitunrot TSubst 2018-09-27 15:03:24 +10:00
Japheth Lim a4878ccb2b lib: move crunch tests to LibTest session 2018-09-27 15:03:24 +10:00
Japheth Lim a8129d0695 lib: add license header text
These two files were @TAG-ged but without copyright header text.
2018-09-27 15:03:24 +10:00
Japheth Lim e968766e12 lib: test cases for Qualify tool 2018-09-27 15:03:24 +10:00
Japheth Lim f24db02c3b lib: test cases for Insulin and ShowTypes tools 2018-09-27 15:03:24 +10:00
Japheth Lim d43680fd43 lib: add Trace_Schematic_Insts_Test to LibTest 2018-09-27 15:03:24 +10:00
Japheth Lim 9fa4dece6b run_tests: add --dot option to print test dependency graph 2018-09-27 15:03:17 +10:00
Japheth Lim 1b4c3d06cf autocorres: fix external_file declaration 2018-09-26 17:08:34 +10:00
Mitchell Buckley 331a0ee1c2 Minor adjustments to the patch for selfour-1491.
There were some sloppy last-minute changes that were not properly tested
and managed to evade testing. These contained a single logical omission
and a few typographic mistakes.
2018-09-21 10:09:49 +10:00
Edward Pierzchalski f8b7603d8a lib: TRY attribute: handle more errors
Widens the set of exceptions TRY ignores to anything that isn't
an interrupt.
2018-09-20 18:17:23 +10:00
Mitchell Buckley 8173a37c2d Updated specs and proofs for SELFOUR-1491: control IRQ triggering on ARM. 2018-09-19 16:18:09 +10:00
Edward Pierzchalski d7fd868007 lib: Add attribute to ignore errors (VER-1007)
Adds the `TRY` attribute combinator, which applies the provided
inner attribute but ignores any failure by returning the original
theorem.
2018-09-19 11:57:19 +10:00
Callum Bannister 751480007b lib+sysinit: add extended separation algebra and forward reasoning tactics
Added Extended Separation Algebra, which contains septraction and
separating coimplication.
Added Sep_Forward which contains tactics for reasoning forwards in
separation logic, updated sep_cancel.
Updated SysInit proofs.
2018-09-18 12:01:52 +10:00
Edward Pierzchalski 91ab6007e8 lib: move test theories in Lib to LibTest
Leaves out crunch tests, which seem fragile to being moved.
2018-09-14 16:35:27 +10:00
Edward Pierzchalski e82cdd149c lib: add method to shorthand larger methods
Adds the `supply_local_method` command and `local_method` methods,
which store and apply methods as a way to shorten repeated
references to large or complicated methods.
2018-09-14 16:35:27 +10:00
Edward Pierzchalski 5af827b65e lib: time_methods: add flag to skip failure output
Adds a flag `skip_fail` to the method `time_methods`, to skip
output when a timed method fails.
2018-09-14 16:35:27 +10:00
Japheth Lim 38d30a895a autocorres: record date of 1.5 release 2018-09-10 14:18:25 +10:00
Gerwin Klein 733f749e7e cspec: normalise imports + use proper session name for Kernel_C
Substitute.thy already includes Kernel_C, no need to import twice.
Not using the session name in the imports was leading to a second import
of the C code, instead of using the CKernel image/session.
2018-09-10 08:34:32 +10:00
Gerwin Klein 64ea909c4d haskell: increase timeout for Haskell compilation
(GHC setup now seems to take longer)
2018-09-08 11:36:22 +10:00
Edward Pierzchalski 552ecb9dcd Eisbach: lib: add higher-order 'repeat' method.
repeat: Repeat a given inner method a given number of times.
2018-09-07 16:40:13 +10:00
Gerwin Klein 39c11f161f riscv run_tests: enable ASpec and ASpecDoc test sessions 2018-09-07 08:13:13 +10:00
Gerwin Klein 1597395f03 riscv aspec: style + docs 2018-09-07 08:13:13 +10:00
Gerwin Klein 6301a9703f riscv aspec: implement abstract spec for RISCV64 2018-09-07 08:13:13 +10:00
Gerwin Klein 395a1eede5 riscv machine: update copyright headers for RISCV64 work 2018-09-07 08:13:13 +10:00
Gerwin Klein 7986766e95 riscv haskell: consistent name for Frame invocations 2018-09-07 08:13:13 +10:00
Gerwin Klein 340232aeb5 riscv haskell: refactor checkFreeSlot; fix test in PageRemap decoding 2018-09-07 08:13:13 +10:00