Commit Graph

712 Commits

Author SHA1 Message Date
Gerwin Klein ca88de6611 Merge from master. 2015-05-26 07:47:54 +10:00
Japheth Lim 74bc3f5548 autocorres: print more useful error when \<Gamma> is absent. 2015-05-25 16:30:56 +10:00
Gerwin Klein 99e8228c2e autocorres: prune unused functions 2015-05-24 22:21:27 +10:00
Gerwin Klein b3bbcbd4d4 autocorres: add test case for autocorres in different thy
When install_C_file is in a theory different to the autocorres command,
more care is needed to get struct type names right.
2015-05-24 22:18:37 +10:00
Gerwin Klein afd8493379 c-parser: allow isa_type_to_typ from other contexts
When isa_type_to_typ is called from a theory other than the one the type was
declared in, it would pick the wrong fully qualified name. Now the function
should be robust against a) yet undeclared types (for record decls), b)
existing types in same theory (normal case), and c) existing struct types
from other theories (e.g. from autocorres).
2015-05-24 22:15:45 +10:00
Gerwin Klein b880019ea1 ignore more 2015-05-22 15:48:52 +10:00
Gerwin Klein 3432b0a20a autocorres/doc: more robust isabelle.sty customization 2015-05-22 15:47:18 +10:00
Gerwin Klein ce51c71fc7 crefine: remove unused ML file 2015-05-22 12:52:35 +10:00
Gerwin Klein 7a8f9cfab6 record more dependencies to avoid redundant rebuilds 2015-05-22 11:48:11 +10:00
Gerwin Klein 297fbebfef ignore generated file 2015-05-22 10:22:48 +10:00
Gerwin Klein a9bebcfed5 asmrefine: 2015 udpate 2015-05-22 10:21:22 +10:00
Gerwin Klein 398b22935b autocorres/tests: 2015 update 2015-05-21 19:49:11 +10:00
Gerwin Klein 854b89f071 autocorres: 2015 update 2015-05-21 19:49:11 +10:00
Gerwin Klein c6564cb4cb infoflow: 2015 update for infoflow C refinement 2015-05-20 21:10:59 +10:00
Gerwin Klein d4be402559 crefine: even more complete 2015 update 2015-05-20 21:03:48 +10:00
Gerwin Klein bfef1e10d3 crefine: 2015 update complete 2015-05-20 20:39:47 +10:00
Matthew Fernandez 221cb74dd5 Fix: Description of `SORRY_BITFIELD_PROOFS` in cspec README.
The kernel's Makefile expects this value to be `1` and will incorrectly detect
`yes` as a directive *not* to sorry these proofs.
2015-05-19 12:27:37 +10:00
Gerwin Klein eea646c84a crefine: 2015 update up to Tcb_C 2015-05-18 09:11:43 +10:00
Gerwin Klein 0f943ec13c clib: 2015 update 2015-05-17 22:24:25 +10:00
Gerwin Klein e09f88d2e7 2015 update for CBaseRefine 2015-05-17 10:42:15 +10:00
Gerwin Klein cba6a4f59e infoflow: minor cleanup 2015-05-16 21:49:01 +10:00
Gerwin Klein a6f1ab41f8 ainvs: some more cleanup 2015-05-16 21:48:24 +10:00
Gerwin Klein a09c92bdce lib/Focus: 2015 update 2015-05-16 21:47:45 +10:00
Gerwin Klein f2cfeb2a0c lib: fewer warnings in crunch and wps 2015-05-16 21:46:45 +10:00
Gerwin Klein bfe0cf85d1 bump to 2015 2015-05-16 19:55:42 +10:00
Gerwin Klein 12fa86863a fewer warnings 2015-05-16 19:52:49 +10:00
Gerwin Klein b46bc4e78d infoflow: 2015 update (apart from C refinement) 2015-05-16 18:14:59 +10:00
Gerwin Klein c124554d83 Dpolicy 2015 udpate 2015-05-14 18:56:32 +02:00
Gerwin Klein c7cccbf7ce sys-init: Isabelle2015 update 2015-05-14 18:43:29 +02:00
Gerwin Klein 164f1db611 proof/capDL-api: 2015 update 2015-05-14 11:41:20 +02:00
Gerwin Klein 7072c8e4a9 lib/sep_algebra: 2015 update 2015-05-14 11:40:55 +02:00
Gerwin Klein 330e730fa3 retire old obsolete ADT refinement phrasing
The observable state has been strengthened significantly years ago and
this theory has fallen into disrepair. The toplevel refinement statement
here was nicely concise for a paper, but the practical value is in the
much stronger corres statement, so instead of attempting proof
acrobatics with a new observable state, I'm retiring this theory.
2015-05-13 10:49:30 +02:00
Gerwin Klein f6124669fc 2015 update for DRefine 2015-05-13 09:52:32 +02:00
Gerwin Klein a979379e3a remove now obsolete delaration 2015-05-12 17:18:24 +02:00
Gerwin Klein d05b74ada6 misc/proof-indent.bsh: add installation instructions 2015-05-12 17:17:46 +02:00
Gerwin Klein 0c67e0bfa1 2015 update for Refine 2015-05-12 17:17:31 +02:00
Gerwin Klein eccc345f67 make unused-wp-warning a config option; false by default 2015-05-11 09:05:17 +02:00
Gerwin Klein 60c0573cf0 remove warnings 2015-05-11 09:04:59 +02:00
Gerwin Klein e4b54fea78 capDL spec: fewer warnings 2015-05-09 13:05:01 +02:00
Gerwin Klein 277ecdf2bb remove syntax ambiguity 2015-05-09 13:04:11 +02:00
Gerwin Klein be52a7c684 lib: more 2015 update 2015-05-09 13:03:30 +02:00
Michael Norrish d29c6d1fb2 Fix for JIRA VER-443 (scalability of UMM tactic)
The tactic used to establish that a large struct is a umm type doesn't
cope with large number of fields (>= 108 in this case). The translation
used to create a struct containing fields corresponding to all of the
program's addressed globals, but this is actually unnecessary now that
the translation handles these via the locale parameter "symbol_table".

So, the fix is to simply not generate that struct and so not to attempt
to prove the umm-type property of it. Grepping for adglobs in the
verification proof reveals that it isn't used anywhere (as one would
hope), so I'm reasonably confident that this shouldn't cause any wider
regressions. (Fingers crossed.)
2015-05-08 14:03:34 +10:00
Gerwin Klein 177e5bf185 2015 update for access 2015-05-06 13:46:20 -04:00
Gerwin Klein b2b88d8cf6 be less chatty 2015-05-05 21:49:03 -04:00
Gerwin Klein b3dba84255 C-Parser 2015 update 2015-05-02 21:43:17 +02:00
Gerwin Klein bdc72d3bdd convert to 2015 and Isar 2015-05-02 21:43:17 +02:00
Gerwin Klein 618bff3f5d update recursive record package to 2015; make less chatty 2015-05-02 21:43:11 +02:00
Gerwin Klein 2c2de8c17d better context management 2015-05-01 18:12:59 +02:00
Michael Norrish 2a24e22bca Standalone parser now handles large enum consts
Even if the value given to the constant inside the enum was "just"
2147483647, the loop that processed enumeration declarations would then
add 1 to that number, and in mlton, this would cause an Overflow
exception.  By using IntInf in this position, mlton does the right
thing, and Poly/ML's behaviour is completely unchanged.
2015-04-29 12:04:22 +10:00
Matthew Fernandez b5b9248583 camkes: Update architectural model.
This brings the architectural model in line with the current implementation by
making the following adjustments:
 - Remove "trait" terminology and replace with "procedure." This was already
   done in the datatypes, but had not been updated in the accompanying text.
 - Remove both fixed size and NULL-terminated arrays and replace with the more
   recent arbitrary sized arrays. Neither of the former are supported, but can
   now be emulated if necessary.
 - Remove references to `RPCEvent` and `DirectCall` connectors. `RPCEvent` no
   longer exists and `DirectCall`, while still present, introduces complexities
   that are not adequately explained in the context of this document.
 - Remove legacy comments.
 - Various typo fixes.
2015-04-23 14:37:11 +10:00