Rafal Kolanski
b44959a108
CRefine: fix simp loop in Invoke_C
...
Also make use of prod.collapse & prod_eq_iff, dropping old versions.
2016-02-11 11:15:59 +11:00
Ramana Kumar
66747fe2fc
remove some cpat
...
gets CKernel to build
2016-02-11 11:15:59 +11:00
Thomas Sewell
29648ac243
Reduce verbosity in GraphRefine.
2015-12-08 19:36:28 +11:00
Thomas Sewell
15d09a093a
Parallelise GraphRefine in its default run.
2015-12-08 17:39:07 +11:00
Thomas Sewell
f54964a05d
More fixes, hopefully closer.
2015-12-04 14:01:38 +11:00
Thomas Sewell
175eb2da2d
More fixes for pointer array assertions.
2015-12-03 17:30:08 +11:00
Thomas Sewell
df40425731
Repair SimplExport/GraphRefine.
2015-12-03 16:34:11 +11:00
Thomas Sewell
e2c5e1eb3d
Treat guarded_spec_body like Spec in asmrefine.
...
The parser now emits guarded_spec_body for underspecified functions,
not Spec. SimplExport now treats them the same.
2015-11-24 17:52:53 +11:00
Thomas Sewell
cc7cf154a5
Fiddling const global unfold in graph refine.
2015-08-18 17:24:23 +10:00
Thomas Sewell
bd928d1793
Try to avoid emitting const-globals via memory.
...
Sometimes it's simpler to access an unknown field of a const
global by just computing the offset from its symbol in memory
and assuming the relevant words are in the .rodata section. But
for known fields, it's easier to just figure out what the
constant value is. This complicates the proof slightly, since
it has to guess which case it is in.
2015-08-17 23:35:06 +10:00
Thomas Sewell
99e7f82d0d
Space out the CFunDump.txt file.
...
It's much easier to read that way.
2015-08-10 18:31:17 +10:00
Thomas Sewell
5f4a25b078
Improve guard handling in GraphRefine.
...
Needed for recent changes to how global validity assertions are
generated.
2015-07-28 22:43:03 +10:00
Thomas Sewell
e4ab39f0a6
Repair merge.
2015-07-28 18:12:53 +10:00
Thomas Sewell
a0b3a569df
Really add all necessary PGlobalValid assertions.
2015-07-28 17:40:21 +10:00
Thomas Sewell
0b5182bd84
More adjustments to graph export/refine.
2015-07-16 13:44:25 +10:00
Thomas Sewell
4211cd2b1a
Progress on upgrading GraphRefine.
...
Needed to handle new concepts being exported from Simpl.
2015-07-15 21:41:07 +10:00
Thomas Sewell
53e1c0c7df
Update to SimplExport, fixes.
2015-07-15 11:48:39 +10:00
Thomas Sewell
44799b7663
Really add all necessary PGlobalValid assertions.
2015-07-15 11:48:39 +10:00
Thomas Sewell
ca4391881c
WIP on WCET annotations.
2015-07-14 14:23:29 +10:00
Gerwin Klein
a9bebcfed5
asmrefine: 2015 udpate
2015-05-22 10:21:22 +10:00
Gerwin Klein
e09f88d2e7
2015 update for CBaseRefine
2015-05-17 10:42:15 +10:00
Gerwin Klein
12fa86863a
fewer warnings
2015-05-16 19:52:49 +10: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
Michael Norrish
e4a38b4c65
Fix to GlobalsSwap.thy in light of cc996ca9ca
2015-04-09 16:56:03 +10:00
Thomas Sewell
d330c7dff5
Slight adjustment.
2015-03-16 17:25:12 +11:00
Thomas Sewell
dac89a46c1
Adjustments in GraphLang to support CDSL.
2015-03-13 01:21:10 +11:00
Thomas Sewell
a818e13e3e
Don't reuse the s_footprint_intvl theorem name.
2014-10-01 11:16:40 +10:00
Thomas Sewell
665a3c15a0
Restore global valid assertions in graph refine.
...
The global-object pointer validity assertion is now created at
export time, and the graph refine mechanism now proves them. It
seems they were forgotten about once again in adjusting the globals
logic.
2014-09-30 16:09:22 +10:00
Thomas Sewell
923bfec5b7
Update graph-refine for StaticFun change, bugfix.
2014-09-23 14:44:18 +10:00
David Greenaway
cf0d1abce6
Merge 'master' into 'isabelle-2014'.
...
Conflicts:
proof/crefine/Fastpath_C.thy
proof/drefine/KHeap_DR.thy
proof/infoflow/Noninterference.thy
spec/design/version
sys-init/DuplicateCaps_SI.thy
sys-init/InitTCB_SI.thy
sys-init/Proof_SI.thy
tools/asmrefine/SimplExport.thy
tools/autocorres/tests/examples/SchorrWaite.thy
2014-09-17 14:21:13 +10:00
Thomas Sewell
aacaf3c86e
Fix asmrefine stuff for 2014 branch.
2014-09-10 15:40:54 +10:00
David Greenaway
94677feafe
cspec: Updates for Isabelle 2014.
2014-09-10 15:20:55 +10:00
Thomas Sewell
4c7ef803d7
SEL4GraphRefine now completed.
...
These final changes complete the SEL4GraphRefine process. Some
cleanup remains to be done, especially in SEL4GlobalsSwap, but the
process is now mature and working, and the testing code
in SEL4GraphRefine can be discarded.
Success depends on seL4 commit 97d6bc96d54f1f0beafb25033b03b57ba54a5113
which is compatible with crefine and will be included in the repo
manifest immediately.
2014-09-03 17:38:45 +10:00
Thomas Sewell
caf0529c7f
Move burden of 'halt' proof, use less modifies.
...
In detail:
- add a general user-specified exception to c_exntype
(for use in tools like Substitute)
- wrap calls to 'halt' in Guard {}, making it clearer that
halt is never called, simplifying asmrefine
- repair halt changes in crefine
- avoid use of some suspicious 'modifies' properties in crefine
which were generated by the parser for functions where inline
ASM blocks have been elided, and which may be inaccurate.
2014-08-29 13:57:28 +10:00
Thomas Sewell
0346fb20b6
SIMPL->Graph proofs largely working.
2014-08-27 15:30:34 +10:00
Thomas Sewell
0c52978dd8
More asmrefine work, global swapping ready.
2014-08-21 14:13:46 +10:00
Gerwin Klein
1af1d2b67b
some of the global Isabelle2014 renames
...
option_case -> case_option
sum_case -> case_sum
prod_case -> case_prod
Option.set -> set_option
Option.map -> map_option
option_rel -> rel_option
list_all2_def -> list_all2_iff
map.simps -> list.map
tl.simps -> list.sel(2-3)
the.simps -> option.sel
2014-08-09 15:39:20 +10:00
Gerwin Klein
84595f4233
release cleanup
2014-07-17 18:22:50 +02:00
Gerwin Klein
2a03e81df4
Import release snapshot.
2014-07-14 21:32:44 +02:00