lh-l4v/proof/capDL-api
David Greenaway 0c004d2a93 Merge branch 'master' into 'isabelle-2014'.
Conflicts:
	proof/drefine/Arch_DR.thy
	proof/drefine/Finalise_DR.thy
	proof/drefine/StateTranslation_D.thy
	sys-init/DuplicateCaps_SI.thy
	sys-init/Proof_SI.thy
	tools/autocorres/tests/examples/SchorrWaite.thy
2014-09-23 14:31:33 +10:00
..
API_DP.thy Add a top-level file for the capDL API proofs. 2014-07-24 19:56:24 +10:00
Arch_DP.thy Merge branch 'master' into 'isabelle-2014'. 2014-09-23 14:31:33 +10:00
CNode_DP.thy capDL-api: Port to Isabelle 2014. 2014-09-12 11:40:28 +10:00
IRQ_DP.thy capDL-api: Port to Isabelle 2014. 2014-09-12 11:40:28 +10:00
Invocation_DP.thy capDL-api: Port to Isabelle 2014. 2014-09-12 11:40:28 +10:00
KHeap_DP.thy Merge branch 'cdl_page_map_cancel' 2014-09-18 17:21:17 +10:00
Kernel_DP.thy Fix seL4_TCB_Resume 2014-09-12 15:28:47 +10:00
ProofHelpers_DP.thy Import release snapshot. 2014-07-14 21:32:44 +02:00
README.md misc: Proofing and formatting of README.md files. 2014-07-28 13:15:48 +10:00
RWHelper_DP.thy capDL-api: Port to Isabelle 2014. 2014-09-12 11:40:28 +10:00
Retype_DP.thy some of the global Isabelle2014 renames 2014-08-09 15:39:20 +10:00
Sep_Tactic_Examples.thy release cleanup 2014-07-17 18:22:50 +02:00
TCB_DP.thy Merge branch 'master' into 'isabelle-2014'. 2014-09-23 14:31:33 +10:00

README.md

CapDL API Proofs

This proof develops a formal API description for a number of the seL4 system calls, of the capDL kernel specification. This API description is a set of lemmas describing the behaviour of various system calls in terms of a separation logic defined over that kernel specification.

When reasoning about system calls this proof treats the kernel like a library invoked directly from user-space and does not reason about scheduling. These proofs are used by the system initialiser proof, as described in the ICFEM '13 paper and Andrew Boyton's PhD thesis.

Building

To build from the l4v/ directory, run:

./isabelle/bin/isabelle build -d . -v -b DSpecProofs

Important Theories

The top-level theory is API_DP. The seL4 API and kernel model are located in Kernel_DP.