Commit Graph

287 Commits

Author SHA1 Message Date
Gerwin Klein
3196054268 isabelle2021-1: remove extend from TheoryData
No longer required in Isabelle2021-1 for TheoryData and GenericData

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2022-03-29 08:38:25 +11:00
Gerwin Klein
afb3c7291c isabelle2021-1 autocorres: context in convs
Conv.params_conv changes the context, and the inner conversion that
it runs needs to work on that inner context, otherwise information
is lost about which of the Free variables are former Bound.

Isabelle2021-1 has more thorough checking and fails when the wrong
context is provided.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2022-03-29 08:38:25 +11:00
Gerwin Klein
0fbe82511d isabelle2021-1: AutoCorres
After these changes AutoCorres type checks and compiles, and the proofs
work, but for most test cases we still get runtime exceptions.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2022-03-29 08:38:25 +11:00
Gerwin Klein
ab358b835d autocorres: update release.py to python3
Apparently, we still did releases with python2 in the past. This commit
updates the script to work cleanly with python3 and with both of Linux
and Darwin.

For the latter, untarring and executing a downloaded tarball is not
easily supported on MacOS, so instead of the tarball, we take a path to
the already unpacked Isabelle release.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2021-10-31 13:41:58 +11:00
Gerwin Klein
2cf262f2b0 autocorres: release notes for autocorres-1.8
Includes some minor documentation updates.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2021-10-31 13:41:58 +11:00
Gerwin Klein
997adaf9f3 isabelle-2021: update AutoCorresQuickstart
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2021-09-30 16:53:17 +10:00
Gerwin Klein
ee8dbcb09c isabelle-2021: AutoCorres update
includes Word_Lib tweaks

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2021-09-30 16:53:17 +10:00
Florian Haftmann
ea9a25950d isabelle-2021: ad-hoc adjustions to preview
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2021-09-30 16:53:17 +10:00
Gerwin Klein
512f62858a autocorres: update project link
Moved from D61 to https://trustworthy.systems

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2021-08-25 11:22:05 +10:00
Gerwin Klein
06e83ccff5 READMEs: update software links
These have also moved to https://trustworthy.systems

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2021-08-25 11:22:05 +10:00
Gerwin Klein
81b95eb6bf READMEs: fix publication links
PDFs and abstracts have moved to trustworthy.systems/

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2021-08-25 11:22:05 +10:00
Corey Lewis
dd6529f520 trivial: fix c-parser link
This reverts commit 985ce0d28a.

Signed-off-by: Corey Lewis <Corey.Lewis@data61.csiro.au>
2021-03-12 10:48:55 +11:00
Gerwin Klein
985ce0d28a trivial: fix c-parser link
Signed-off-by: Gerwin Klein <kleing@unsw.edu.au>
2021-03-02 11:44:22 +11:00
Matthew Brecknell
13ca552d67 autocorres: fix code inclusion in quickstart doc
The AutoCorres quickstart document includes code from `*.c` files from a
given line number, to avoid including license headers and other details
that aren't useful in the document. This updates the line numbers for
the current license headers.

Signed-off-by: Matthew Brecknell <Matthew.Brecknell@data61.csiro.au>
2020-11-24 10:17:37 +11:00
Gerwin Klein
e51ea95427 autocorres: README update for Isabelle2020 and RISCV64
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-11-02 17:16:46 +10:00
Gerwin Klein
0451a27648 autocorres: update ChangeLog
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-11-02 17:16:46 +10:00
Gerwin Klein
54224efbc5 autocorres: Isabelle2020 update for release ROOT file
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-11-02 17:16:46 +10:00
Gerwin Klein
cf34401420 autocorres: use LICENSES directory in the release
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-11-02 17:16:46 +10:00
Gerwin Klein
c64590f39b autocorres: include RISCV64 in supported architectures
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-11-02 17:16:46 +10:00
Gerwin Klein
0e9943e3a3 autocorres: fix session reference in AutoCorresSEL4
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-10-28 14:06:36 +10:00
Gerwin Klein
78717650f6 autocorres: do not store images of test sessions
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-10-27 15:52:31 +10:00
Gerwin Klein
82e116ef6c autocorres: update to Isabelle2020
Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-10-27 15:52:31 +10:00
Gerwin Klein
e7fb36b7e2 ROOT files: file reorg for new ROOT requirements
Isabelle2020 requires each session to declare it own set of directories that
may not overlap with other session's directories. This commit reorganises
files to comply with that requirement.

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-10-27 15:52:31 +10:00
Gerwin Klein
0aafe8bf80 autocorres: pull out SPDX tag
Turns out the reuse tool will get confused by the addition SPDX tag
in the file, even though it is not in a comment. This commit pulls
out the tag such that string matching will not trigger on it.

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-04-24 11:27:03 +08:00
Matthew Brecknell
306fe017c3 autocorres: more specific Makefile pattern rule
A rule to generate `%.thy` from `%.c` was previously too general, such
that it could fire for `%.thy` files that were not intended to be
generated, overwriting existing `%.thy` files.

This recently became an intermittent problem, when several `%.c` files
were updated to comply with style checks. Depending on how an `l4v`
checkout was updated, this sometimes made those `%.c` files newer than
the corresponding `%.thy` files.

This commit converts the implicit pattern rule into a static pattern
rule that applies to exactly those `%.thy` files that are intended to be
generated.

Signed-off-by: Matthew Brecknell <Matthew.Brecknell@data61.csiro.au>
2020-04-23 09:51:33 +10:00
Gerwin Klein
092b1207f7 run astyle on all C files in the repository
Leaves parse tests and generated files unchanged, and provides a style
filter for these.

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>
2020-04-19 13:50:17 +08:00
Matthew Brecknell
cf48906b26 regression: force use of python3
Python 2 has passed its sunset date, and many distributions are
withdrawing support for Python 2.

PEP 394 recommends distributions always install versioned interpreter
commands (e.g. `python3`), but does not make a recommendation about
whether or not an unversioned command (`python`) should exist, or what
version it should run.

It therefore seems advisable to explicitly run scripts using the
`python3` command, for scripts that are compatible with Python 3.

Here, we do this for Python scripts used by `run_tests`. For this to
work, some scripts have been updated in ways that will break Python 2
compatibility. But for some other scripts which were already compatible
with both Python 2 and 3, we have not yet removed Python 2
compatibility. There are also miscellaneous scripts that are not used by
`run_tests`, and these have not yet been updated to Python 3.

Signed-off-by: Matthew Brecknell <Matthew.Brecknell@data61.csiro.au>
2020-04-01 14:31:36 +11:00
Gerwin Klein
75acf19dcd style: pep8 style for python files 2020-03-25 22:42:27 +11:00
Gerwin Klein
c68915b92b license: provide documentation under CC-BY-SA-4.0
Datat61 provides all docs under CC-BY-SA-4.0.
2020-03-16 14:19:15 +08:00
Gerwin Klein
86a941e7e7 spdx: review missing copyright & license info
Some files were missing machine-readable copyright info, others were tagged
incorrectly.
2020-03-16 14:19:15 +08:00
Gerwin Klein
a424d55e3e licenses: convert license tags to SPDX 2020-03-13 14:38:24 +08:00
Gerwin Klein
8d12d8e4be licenses: tag .md and document file 2020-03-02 18:52:15 +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
dd48e0d899 proof: update for wp changes
Updated 'wp_once' to 'wp (once)' and removed several stray uses of 'wp_trace'.
2019-10-14 17:12:18 +11:00
Japheth Lim
de9c069473 c-parser: update changelog for license change 2019-10-02 22:19:21 +10:00
Japheth Lim
4f0b0558c3 autocorres: update tools for Isabelle2019 release 2019-09-05 14:18:18 +10:00
Japheth Lim
44bdf90ae8 autocorres, lib: refactor nat :: bit_operations instance
This refactors the instances in HaskellLib and AutoCorres into a new
theory, Lib.NatBitwise.
2019-07-24 11:00:02 +10:00
Japheth Lim
de97108f14 autocorres: exhaustive testsuite for arithmetic op word abstraction 2019-07-24 10:48:13 +10:00
Japheth Lim
50e79b0fdb autocorres: exhaustive testsuite for bitwise op word abstraction 2019-07-24 10:48:13 +10:00
Japheth Lim
5685af2bcb autocorres: word abs for bitwise operators
This adds translation rules for bitwise operators, along with suitable
guards. Note that the guard for signed `shiftl` follows the C standard,
rather than the incorrect c-parser guard (see VER-509).

There was no standard instance of `nat :: bit_operations` for unsigned
abstraction, so we also add one. It should be merged with the
(incomplete) HaskellLib instance later.

Closes Jira VER-1122.
2019-07-24 10:41:55 +10:00
Japheth Lim
fa0b62380a autocorres: solve a bad ":000" var name from L2Opt
Not sure if this breaks the property in the rule's comment, but
we'll probably find out if it does.
2019-07-10 13:59:53 +10:00
Japheth Lim
ec74efcb9e autocorres: fix bug between heap abs and signed word abs
Jira VER-1112
2019-07-10 13:59:53 +10:00
Gerwin Klein
4e12863b0f docs: update README files for Isabelle2019 2019-06-14 11:41:21 +10:00
Gerwin Klein
ea831ceb5c autocorres tests: port to Isabelle2019 2019-06-13 16:22:33 +10:00
Gerwin Klein
b812c74c00 autocorres SchorrWaite example: clean up and update to Isabelle2019 2019-06-13 16:22:33 +10:00
Gerwin Klein
f3db601e35 autocorres: minor cleanup, remove some warnings 2019-06-13 16:22:33 +10:00
Gerwin Klein
1cbefe0eb7 autocorres: update cartouches for Isabelle2019 2019-06-13 16:22:33 +10:00
Gerwin Klein
3b0699b656 autocorres: Isabelle2019 update 2019-06-13 16:22:33 +10:00
Japheth Lim
071ebbd398 lib: move @{mk_term} antiquotation from AutoCorres; add examples 2019-05-17 18:07:59 +10:00
Edward Pierzchalski
caf2d2cfef autocorres: use c-parser name demangler
The C parser tracks what short names a given long name corresponds to.
Change AutoCorres to use that information, instead of trying to demangle
the names 'manually'.
2019-03-07 13:34:32 +11:00