lh-l4v/proof/invariant-abstract
Joel Beeren efb4c61816 archirq: Remove redundant invocation, renamed
arch_decode_interrupt_control.
2016-01-14 17:50:33 +11:00
..
ADT_AI.thy more Isabelle2015 update; AInvs up to (excluding) Syscall_AI 2015-04-18 21:51:26 +01:00
AInvs.thy Merge branch 'master' into aep-merge 2015-09-10 17:06:45 +10:00
ArchAcc_AI.thy Merge branch 'master' into aep-merge 2015-09-10 17:06:45 +10:00
Arch_AI.thy Minor adjustments caused by Strengthen changes. 2015-10-29 11:27:54 +11:00
BCorres2_AI.thy Wait -> Recv: update proofs 2015-11-20 16:02:14 +11:00
BCorres_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
Bits_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
CNodeInv_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
CSpaceInv_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
CSpace_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
DetSchedAux_AI.thy history squashed patch for aep-binding 2015-09-02 15:43:39 +10:00
DetSchedInvs_AI.thy Merge branch 'master' into aep-merge 2015-09-10 17:06:45 +10:00
DetSchedSchedule_AI.thy Wait -> Recv: update proofs 2015-11-20 16:02:14 +11:00
Deterministic_AI.thy Wait -> Recv: update proofs 2015-11-20 16:02:14 +11:00
Detype_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
EmptyFail_AI.thy archirq: Remove redundant invocation, renamed 2016-01-14 17:50:33 +11:00
Finalise_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
Include_AI.thy Moved wp-specific eisbach methods higher up import chain 2015-07-10 12:51:15 +10:00
InterruptAcc_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
Interrupt_AI.thy archirq: Remove redundant invocation, renamed 2016-01-14 17:50:33 +11:00
Invariants_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
IpcCancel_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
Ipc_AI.thy Wait -> Recv: update proofs 2015-11-20 16:02:14 +11:00
KHeap_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
KernelInitSepProofs_AI.thy Import release snapshot. 2014-07-14 21:32:44 +02:00
KernelInitSep_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
KernelInit_AI.thy Merge branch 'master' into aep-merge 2015-09-10 17:06:45 +10:00
LevityCatch_AI.thy fewer warnings 2015-05-16 19:52:49 +10:00
Machine_AI.thy Updated proof with new fastpath changes removing setCurrentASID and armv_contextSwitch_fp 2015-05-28 11:30:22 +10:00
PDPTEntries_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
README.md misc: Proofing and formatting of README.md files. 2014-07-28 13:15:48 +10:00
Retype_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
Schedule_AI.thy Merge branch 'master' into aep-merge 2015-09-10 17:06:45 +10:00
SubMonad_AI.thy Import release snapshot. 2014-07-14 21:32:44 +02:00
Syscall_AI.thy Wait -> Recv: update proofs 2015-11-20 16:02:14 +11:00
TcbAcc_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
Tcb_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00
Untyped_AI.thy Minor adjustments caused by Strengthen changes. 2015-10-29 11:27:54 +11:00
VSpace_AI.thy add arch_tcb object to C, rename aep -> ntfn 2015-11-20 16:02:13 +11:00

README.md

Abstract Spec Invariant Proof

This proof defines and proves the global invariants of seL4's abstract specification. The invariants are phrased and proved using a monadic Hoare logic described in a TPHOLS '08 paper.

Building

To build from the l4v/ directory, run:

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

Important Theories

The top-level theory where the invariants are proved over the kernel is Syscall_AI; the bottom-level theory where they are defined is Invariants_AI.