-
Notifications
You must be signed in to change notification settings - Fork 106
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MCS: merge master into rt #680
Commits on May 3, 2023
-
github: add manual triggers for testing
The worklow_dispatch trigger adds a button in the GitHub UI that lets one trigger the workflow manually. Useful for testing the workflows. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2545aa0 - Browse repository at this point
Copy the full SHA 2545aa0View commit details
Commits on May 4, 2023
-
docs: style: right- vs left-wrapping of operators
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 59bf9d9 - Browse repository at this point
Copy the full SHA 59bf9d9View commit details
Commits on May 25, 2023
-
run_tests: enable BaseRefine for AARCH64
Switch exclusion to Refine. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0794e0a - Browse repository at this point
Copy the full SHA 0794e0aView commit details -
aarch64 refine: first attempt at Invariants_H
Quite a few issues remain, notably validity of ASID maps and relationship to ASID table is missing from valid_arch_state' Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1483554 - Browse repository at this point
Copy the full SHA 1483554View commit details -
aarch64 refine: copy InvariantUpdates_H from RISCV64
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 01575f2 - Browse repository at this point
Copy the full SHA 01575f2View commit details -
aarch64 refine: add StateRelation
Only text replacement of RISCV64->AARCH64 for now. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1404b9c - Browse repository at this point
Copy the full SHA 1404b9cView commit details -
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 96851e8 - Browse repository at this point
Copy the full SHA 96851e8View commit details -
aarch64 refine: copy LevityCatch from RISCV64
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 44fc3ec - Browse repository at this point
Copy the full SHA 44fc3ecView commit details -
aarch64 refine: iteration on Invariants_H
Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0b0b3b3 - Browse repository at this point
Copy the full SHA 0b0b3b3View commit details -
aarch64 aspec: sync vmid bit width with Haskell+C
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 394f74b - Browse repository at this point
Copy the full SHA 394f74bView commit details -
aarch64 haskell: use ppn concept for PageTablePTEs
Don't store the bottom 12 bits of the base address for page table PTEs, because we know they are zero. This gives us implicit alignment to pageBits in the page table walker. The C code stores only 36 significant bits, whereas this commit still uses a full 64-bit machine word for the ppn in Haskell. To be adjusted in a future change. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9f25a4e - Browse repository at this point
Copy the full SHA 9f25a4eView commit details -
aarch64 refine: complete StateRelation
Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 55a01f1 - Browse repository at this point
Copy the full SHA 55a01f1View commit details -
aarch64 refine: copy Corres.thy from RISCV64
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 61bce83 - Browse repository at this point
Copy the full SHA 61bce83View commit details -
aarch64 refine: adjust Bits_R from RISCV64
Add VCPU/hyp material from ARM_HYP, fix up broken lemmas. Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for bf3929b - Browse repository at this point
Copy the full SHA bf3929bView commit details -
aarch64 refine: copy EmptyFail from RISCV64
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7cdb85f - Browse repository at this point
Copy the full SHA 7cdb85fView commit details -
aarch64 refine: copy SubMonad_R from RISCV64
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 555bff6 - Browse repository at this point
Copy the full SHA 555bff6View commit details -
aarch64 refine: copy Machine_R from RISCV64
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b882216 - Browse repository at this point
Copy the full SHA b882216View commit details -
aarch64 refine: adjust KHeap_R from RISCV64
Add VCPU/hyp lemmas from ARM_HYP, fix and update failing lemmas. Leave 1 sorry on pspace_canonical, which might not be needed for AARCH64. Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 38a65fd - Browse repository at this point
Copy the full SHA 38a65fdView commit details -
aarch64 refine: use ptTranslationBits for indices
Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b426654 - Browse repository at this point
Copy the full SHA b426654View commit details
Commits on May 26, 2023
-
aarch64 refine: first pass through ArchAcc_R
Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3b5a983 - Browse repository at this point
Copy the full SHA 3b5a983View commit details -
aarch64 refine: add CSpace_I and CSpace1_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e0114ee - Browse repository at this point
Copy the full SHA e0114eeView commit details -
aarch64 refine: copy RAB_FN from RISCV64
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a93a626 - Browse repository at this point
Copy the full SHA a93a626View commit details -
aarch64 refine: add vcpuBits_def to objBits_defs
The way we handle vcpuBits on AARCH64 is different to ARM_HYP. This seems the most logical place to put vcpuBits_def to aid automation. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 18d76ef - Browse repository at this point
Copy the full SHA 18d76efView commit details -
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2b543da - Browse repository at this point
Copy the full SHA 2b543daView commit details -
aarch64 refine: add TcbAcc_R and ArchMove_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for cb03631 - Browse repository at this point
Copy the full SHA cb03631View commit details -
aarch64 refine: add InterruptAcc_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 059afc8 - Browse repository at this point
Copy the full SHA 059afc8View commit details -
aarch64 refine: start on VSpace_R
Up to and including handleVMFault_corres which needed a major overhaul. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 97ebd07 - Browse repository at this point
Copy the full SHA 97ebd07View commit details -
aarch64 refine: progress in ArchAcc
Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0f11a7a - Browse repository at this point
Copy the full SHA 0f11a7aView commit details -
aarch64 refine: first run through VSpace_R
This required a lot of adaptation from ARM_HYP, rearranging, and fixing. The VCPU lemmas are mostly now constrained to one area, making it theoretically possible to make a VCPU theory in the future. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a79e06f - Browse repository at this point
Copy the full SHA a79e06fView commit details -
aarch64 refine: add state_hyp_refs_of' to valid_state'
Somehow we missed this on the first pass. Adjusted existing proofs. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9040568 - Browse repository at this point
Copy the full SHA 9040568View commit details -
aarch64 refine: first run through Schedule_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 044a97e - Browse repository at this point
Copy the full SHA 044a97eView commit details -
aarch64 refine: first pass through IpcCancel_R
needed some changes to Schedule_R and VSpace_R Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3a77d09 - Browse repository at this point
Copy the full SHA 3a77d09View commit details -
aarch64 refine: first pass through Retype_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e508693 - Browse repository at this point
Copy the full SHA e508693View commit details -
aarch64 refine: first pass through Detype_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a4536a1 - Browse repository at this point
Copy the full SHA a4536a1View commit details -
aarch64 refine: fill in VSpaceObject cases in Retype_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5601abc - Browse repository at this point
Copy the full SHA 5601abcView commit details -
aarch64 refine: remove kernel_mappings in Retype/Detype
These do not exist on AARCH64 Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f4c12a6 - Browse repository at this point
Copy the full SHA f4c12a6View commit details -
aarch64 refine: copy over Invocations_R from RISCV64
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0a7eaec - Browse repository at this point
Copy the full SHA 0a7eaecView commit details -
aarch64 refine: set up Untyped_R from RISCV64, add hyp/vcpu
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for be22c7b - Browse repository at this point
Copy the full SHA be22c7bView commit details -
aarch64 refine: first pass through Finalise_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4dfb6f8 - Browse repository at this point
Copy the full SHA 4dfb6f8View commit details -
aarch64 refine: first pass through Ipc_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 865facf - Browse repository at this point
Copy the full SHA 865facfView commit details -
aarch64 refine: first pass through Interrupt_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 835d82c - Browse repository at this point
Copy the full SHA 835d82cView commit details -
aarch64 refine: first pass through CNodeInv_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4834c25 - Browse repository at this point
Copy the full SHA 4834c25View commit details -
aarch64 haskell: prefer fail over error
`error` is mapped to `undefined` which does not work well with `crunch`. `fail` is mapped to monadic `fail` in Isabelle, works fine with crunch and we have to prove that it's not called in `corres`. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f3bbd47 - Browse repository at this point
Copy the full SHA f3bbd47View commit details -
aarch64 refine: remove 1 sorry
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a88bf41 - Browse repository at this point
Copy the full SHA a88bf41View commit details -
aarch64 refine: update vmattributes_map for devices
Page is cachable if not a device. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 20fad5b - Browse repository at this point
Copy the full SHA 20fad5bView commit details -
aarch64 refine: first pass through Tcb_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8de1430 - Browse repository at this point
Copy the full SHA 8de1430View commit details -
aarch64 aspec: attribs_from_word used wrong bits
bit 0 set = cachable = NOT Device bit 2 set = execute never = NOT execute Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7cea1dc - Browse repository at this point
Copy the full SHA 7cea1dcView commit details -
aarch64 haskell: update decodeARMASIDPoolInvocation
Check for mapping was incorrect (attempted to check the ASID cap for ptIsMapped) and it turns out not necessary. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7ed8476 - Browse repository at this point
Copy the full SHA 7ed8476View commit details -
aarch64 refine: first pass through Arch_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 226c2f6 - Browse repository at this point
Copy the full SHA 226c2f6View commit details -
aarch64 refine: first pass through Syscall_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 59d303b - Browse repository at this point
Copy the full SHA 59d303bView commit details -
aarch64 refine: first pass though Init_R
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ee346ba - Browse repository at this point
Copy the full SHA ee346baView commit details -
aarch64 refine: copy IncKernelLemmas+InitLemmas from RISCV64
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 72dfb53 - Browse repository at this point
Copy the full SHA 72dfb53View commit details -
aarch64 refine: copy KernelInit_R from RISCV64
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c58c007 - Browse repository at this point
Copy the full SHA c58c007View commit details -
aarch64 refine: copy PageTableDuplicates from RISCV64
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a4f944d - Browse repository at this point
Copy the full SHA a4f944dView commit details -
aarch64 haskell+design: record PT types in ghost state
For making the state relation functional in refine/ADH_H we need to know to which type of page table each PTE belongs. Record this information in ghost state, similar to what we do for CNode size and user page size. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e0ae44a - Browse repository at this point
Copy the full SHA e0ae44aView commit details -
aarch64 ainvs+refine: proof updates for PT type ghost state
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 064d102 - Browse repository at this point
Copy the full SHA 064d102View commit details -
aarch64 refine: first pass through ADT_H
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d24d2f8 - Browse repository at this point
Copy the full SHA d24d2f8View commit details -
design: fix ExecSpec for other architectures
Include the new ArchPSpace_H file, which on the other (non-AArch64) architectures will only contain an empty placeholder function. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for aa2eb9a - Browse repository at this point
Copy the full SHA aa2eb9aView commit details -
refine: update other architectures for ghost state change
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9298456 - Browse repository at this point
Copy the full SHA 9298456View commit details -
aarch64: update Init_R+PageTableDuplicates for PT ghost state
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c4dee68 - Browse repository at this point
Copy the full SHA c4dee68View commit details -
aarch64 refine: remove final mention of vs_valid_duplicates'
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7154cc9 - Browse repository at this point
Copy the full SHA 7154cc9View commit details -
aarch64 refine: first pass through Refine (sorry-free)
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 81d382e - Browse repository at this point
Copy the full SHA 81d382eView commit details -
aarch64 refine: first pass through EmptyFail_H (sorry-free)
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2f3e333 - Browse repository at this point
Copy the full SHA 2f3e333View commit details -
run_tests: enable Refine (quick_and_dirty) for AARCH64
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7b73a18 - Browse repository at this point
Copy the full SHA 7b73a18View commit details -
run_tests: fix QUICK_AND_DIRTY handling
os.environ expects a string, not an integer Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 496f70f - Browse repository at this point
Copy the full SHA 496f70fView commit details -
aarch64 refine: first run through Orphanage
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7cdd203 - Browse repository at this point
Copy the full SHA 7cdd203View commit details -
run_tests: enable RefineOrphanage for AARCH64
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 381ad05 - Browse repository at this point
Copy the full SHA 381ad05View commit details -
proof/ROOT: RefineOrphanage: add quick and dirty option
Piggybacking off of REFINE_QUICK_AND_DIRTY as they are usually linked. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1e61943 - Browse repository at this point
Copy the full SHA 1e61943View commit details
Commits on May 31, 2023
-
haskell: constrain run_tests to current L4V_ARCH
Provide L4V_ARCH targets in the Haskell Makefile and constrain run_tests to use only the current L4V_ARCH, to avoid building all architectures in all tests. A manual invocation of just `make` will still build all architectures for easier checking. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 971be5f - Browse repository at this point
Copy the full SHA 971be5fView commit details
Commits on Jun 5, 2023
-
L4V_PLAT selects a platform variation within a L4V_ARCH. This mostly affects which seL4 cmake config file is loaded when building config data and the kernel C code. This in turn affects (and will rebuild) ASpec, ExecSpec, and CSpec. Examples: L4V_ARCH=ARM L4V_FEATURES="" L4V_PLAT="" will load `ARM_verified.cmake` L4V_ARCH=ARM L4V_FEATURES="" L4V_PLAT=imx8mm will load `ARM_imx8mm_verified.cmake`, and L4V_ARCH=ARM L4V_FEATURES=MCS L4V_PLAT=imx8mm will load `ARM_MCS_imx8mm_verified.cmake` Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7c422d7 - Browse repository at this point
Copy the full SHA 7c422d7View commit details -
cspec: Use L4V_PLAT in build export script
CI is introducing an `L4V_PLAT` variable to support proof runs across more platform configurations. This commit incorporates `L4V_PLAT` into the paths generated by `export-kernel-builds.py`, to ensure that exported builds can be disambiguated. Signed-off-by: Matthew Brecknell <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c4d673b - Browse repository at this point
Copy the full SHA c4d673bView commit details -
aspec+haskell: add accessor names for scheduler_action datatype
This adds sch_act_target/schActTarget accessor names for the switch_thread/SwitchToThread constructor of the scheduler_action datatype at the aspec and Haskell level, respectively Signed-off-by: Michael McInerney <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fc44f65 - Browse repository at this point
Copy the full SHA fc44f65View commit details
Commits on Jun 6, 2023
-
run_tests: echo L4V_FEATURES and L4V_PLAT
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6da2d97 - Browse repository at this point
Copy the full SHA 6da2d97View commit details -
run_tests: update outdated comment
The Orphanage session is no longer conditional on L4V_ARCH_IS_ARM (instead it is empty for those architectures that don't support it). Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 290b7c7 - Browse repository at this point
Copy the full SHA 290b7c7View commit details -
run_tests: REFINE_QUICK_AND_DIRTY already set in Makefile
REFINE_QUICK_AND_DIRTY is already set correctly in proofs/Makefile, so doesn't need to be set here. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9752444 - Browse repository at this point
Copy the full SHA 9752444View commit details
Commits on Jun 7, 2023
-
github: distinguish proof PR checks from deployment run
Currently both workflows have the name "Proofs" which is confusing in the GitHub UI. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 443706f - Browse repository at this point
Copy the full SHA 443706fView commit details -
github: auto-rebase platform branches
The action will abort when no clean rebase is possible, and force-push the rebased branch when the rebase over origin/master was clean. The push will trigger proof runs on the rebased branches. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9fe1676 - Browse repository at this point
Copy the full SHA 9fe1676View commit details -
github: push to -rebased branch first
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6f2ea86 - Browse repository at this point
Copy the full SHA 6f2ea86View commit details
Commits on Jun 14, 2023
-
lib: docs + 2nd predicate-type guard for wpc
- document the wpc_helper predicate and setup for wpc (but not the proof method internals at this point) - add facilities for a second guard of predicate type The current setup works well for judgements with one guard of type predicate or set (valid, validE, etc), or with two guards where one is a predicate and the other is a set (ccorres), but not for judgements that have two predicate guards, i.e. plain corres. This commit adds a second such guard, which can be ignored for the judgements that don't need it in the same way that valid/validE currently ignore the set-type guard. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ea62a6c - Browse repository at this point
Copy the full SHA ea62a6cView commit details -
lib+proof: proof updates for wpc change
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0e30162 - Browse repository at this point
Copy the full SHA 0e30162View commit details
Commits on Jun 15, 2023
-
lib: split out WP_Pre.pre_tac for wp_pre
Factor out pre_tac such that we can have separate theorem sets and methods for wp_pre, monadic_rewrite_pre, corres_pre, and potentially others in the future. Leave everything in wp_pre that we expect to use wp or wpsimp on, in particular no_fail. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 29873da - Browse repository at this point
Copy the full SHA 29873daView commit details -
lib+refine+crefine: disambiguate corres_pre
- rename corres_pre set in CRefine to ccorres_pre - rename internal corres_pre method in Corres_Method to corres_pre' - use corres_pre instead of old wp_pre in refine Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f75a348 - Browse repository at this point
Copy the full SHA f75a348View commit details -
arm-hyp crefine: use monadic_rewrite_pre
Replace wp_pre with monadic_rewrite_pre in one manual proof instance. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for db44def - Browse repository at this point
Copy the full SHA db44defView commit details
Commits on Jun 16, 2023
-
lib: monadic rewrite: improve bound name retention
While in many cases using an eta form with a bind (`f >>= (λrv. g rv)`) does manage to preserve names, this was not true in general when working with monadic_rewrite. An obvious case of this was when performing a rewrite in the middle of a function, all bound variables on the way to that point would get renamed to `x`. In order to iterate over a chain of bind/bindE with a monadic_rewrite_bind_tail-style rule such that bound names are preserved, the rule's `f >>= (λrv. g rv)` must match up with the relevant bound term `do x <- f'; g' x; ...` on the RHS/LHS and only on that side: * if the rule has an eta term on both sides and the goal a schematic on any side, the schematic will match trivially producing the correct name in the first subgoal only * if the goal is not schematic and a tail rule applies, we need to choose a side to get the name from (usually the left) This means if the goal is schematic on the RHS, we need a tail rule with an eta term on its LHS, and vice-versa. Since a generic form of this is not possible, this commit introduces transformation lemmas and updates the tactics to use them for stepping on the left/right. For stopping the iteration by applying a rule to the head of a bind, the situation is reversed: to preserve the name of the bind in the tail, the head rule must not have any eta terms. The bind[E]_head rules have been updated to reflect this. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f72702f - Browse repository at this point
Copy the full SHA f72702fView commit details -
lib: add test for monadic rewrite
This demonstrates some sanity checking, a standard iterate-rewrite-refl deployment, and the three symbolic execution methods, with a lot of commentary. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ec907bf - Browse repository at this point
Copy the full SHA ec907bfView commit details -
infoflow: update for monadic rewrite changes
The `tcb` that previously became an `x` now remains a `tcb`. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 18cbdae - Browse repository at this point
Copy the full SHA 18cbdaeView commit details
Commits on Jun 19, 2023
-
haskell: upgrade to lts-20.25 and ghc 9.2.8
GHC 9.2.8 has better support for Linux/aarch64/v8 for use in Docker. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 460d99b - Browse repository at this point
Copy the full SHA 460d99bView commit details
Commits on Jun 21, 2023
-
github: use explicit token to enable push triggers
The implicit GITHUB_TOKEN does not trigger further push actions in the same repo, but in this case we do want the push action to happen on the `-rebased` branches, so we use an explicit auth token instead. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for dc093ca - Browse repository at this point
Copy the full SHA dc093caView commit details -
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 722cd25 - Browse repository at this point
Copy the full SHA 722cd25View commit details
Commits on Jun 26, 2023
-
Add safe datatype case distinction for corres -- wpc turns out to be insufficient even after generalisation of the helper predicate. - corres_cases_left: case distinction on abstract monad - corres_cases_right: case distinction on concrete monad - corres_cases: try first corres_cases_left, then corres_cases_right - corres_cases_both: simultaneous (quadratic) case distinction on both sides, with safe elimination of trivially contradictory cases. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5abb456 - Browse repository at this point
Copy the full SHA 5abb456View commit details -
crefine: remove obsolete corres wpc setup
This setup didn't actually work. Replaced by corres_cases. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 168d3aa - Browse repository at this point
Copy the full SHA 168d3aaView commit details -
arm refine: deploy corres_cases in some examples
Demonstrates use of corres_cases and corres_cases_both. Main intended benefit is less thinking about safety of schematics, fewer mentions of goal parameter names, and fewer manual guard instantiations. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 59759ed - Browse repository at this point
Copy the full SHA 59759edView commit details
Commits on Jun 30, 2023
-
crefine: remove some duplicated lemmas
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 163b9fe - Browse repository at this point
Copy the full SHA 163b9feView commit details -
lib: cong rules for ccorres_underlying
The default behaviour is now to not rewrite the return relations and extraction functions. Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0edd68f - Browse repository at this point
Copy the full SHA 0edd68fView commit details -
crefine: update for new ccorres cong rules
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1f06802 - Browse repository at this point
Copy the full SHA 1f06802View commit details -
lib+refine: rename Corres_Method to CorresK_Method
This also renames most of the corres* methods to corresK* methods, including corressimp -> corresKsimp. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c1fe4ad - Browse repository at this point
Copy the full SHA c1fe4adView commit details -
The new corres method is similar to the corresK method and calculus, but much less ambitious. Its main purpose is to automate boilerplate proof steps in corres proofs and is specifically not trying to fully automate corres proofs (although some few might be solved). The idea is that the method will make some progress with obvious steps and leave over a proof state the user can operate on further. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 865df55 - Browse repository at this point
Copy the full SHA 865df55View commit details -
lib: cleanup in Corres_UL and around liftM in Monads
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 445a8e4 - Browse repository at this point
Copy the full SHA 445a8e4View commit details -
lib: some remarks on corres_mapM*
Explain why the rule is strong enough as is before I prove the (not really) stronger version yet again. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 691c9e2 - Browse repository at this point
Copy the full SHA 691c9e2View commit details -
refine: make corres method available in Refine
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fad4b70 - Browse repository at this point
Copy the full SHA fad4b70View commit details -
riscv refine: example corres method use
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 01a4216 - Browse repository at this point
Copy the full SHA 01a4216View commit details
Commits on Jul 5, 2023
-
clib+crefine: add no_name_eta to crefine tactics
This leads to improved consistency and better names for bound variables. Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a0be68c - Browse repository at this point
Copy the full SHA a0be68cView commit details -
crefine: update for no_name_eta
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d87f5e1 - Browse repository at this point
Copy the full SHA d87f5e1View commit details
Commits on Jul 7, 2023
-
monads: synchronise with rt branch
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fa484da - Browse repository at this point
Copy the full SHA fa484daView commit details
Commits on Jul 19, 2023
-
docs/setup: add step for installing cabal
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c9dc6d2 - Browse repository at this point
Copy the full SHA c9dc6d2View commit details
Commits on Aug 9, 2023
-
lib/monads: rename OptionMonad to Reader_Option_Monad
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 26f41e1 - Browse repository at this point
Copy the full SHA 26f41e1View commit details -
lib+spec+proof+autocorres: update for renamed Reader_Option_Monad
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9b90b9e - Browse repository at this point
Copy the full SHA 9b90b9eView commit details -
lib/monads: move different monads to subdirectories
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9b9e613 - Browse repository at this point
Copy the full SHA 9b9e613View commit details -
lib+spec+proof+autocorres: consistent Nondet filename prefix
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2c8f9ee - Browse repository at this point
Copy the full SHA 2c8f9eeView commit details -
lib: consistent Trace filename prefix
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 67946d4 - Browse repository at this point
Copy the full SHA 67946d4View commit details -
lib/monads: reorder files in ROOT
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for aa8b108 - Browse repository at this point
Copy the full SHA aa8b108View commit details -
lib/monads: add select_wp and alternative_wp to wp set for Nondet monad
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0e0e0ca - Browse repository at this point
Copy the full SHA 0e0e0caView commit details -
proof+autocorres: update for select_wp and alternative_wp
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0211681 - Browse repository at this point
Copy the full SHA 0211681View commit details
Commits on Aug 14, 2023
-
arm abstract+design: reorder object_type enum
AArch64 C code changes now designate PageDirectoryObj as the VSpace object type, which comes first in the enum. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f6eaad5 - Browse repository at this point
Copy the full SHA f6eaad5View commit details -
drefine: adjust for object_type enum reorder
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f7c3ee5 - Browse repository at this point
Copy the full SHA f7c3ee5View commit details -
arm crefine: proof updates for object_type enum reorder
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 71dc79a - Browse repository at this point
Copy the full SHA 71dc79aView commit details -
arm-hyp abstract+design: object_type enum reorder
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 540bb64 - Browse repository at this point
Copy the full SHA 540bb64View commit details -
arm-hyp crefine: proof update for object_type enum reorder
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4d97b26 - Browse repository at this point
Copy the full SHA 4d97b26View commit details
Commits on Aug 23, 2023
-
lib/monads: move lifting/splitting section earlier in Nondet_VCG
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 631bc30 - Browse repository at this point
Copy the full SHA 631bc30View commit details -
lib/monads: minor cleanup and restyle in nondet monad
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fde22d7 - Browse repository at this point
Copy the full SHA fde22d7View commit details -
refine: update for changes to nondet monad
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a084de4 - Browse repository at this point
Copy the full SHA a084de4View commit details -
lib/monads: restyle Trace_Monad.thy
This should now be in sync with Nondet_Monad.thy wherever the two files have similar content. Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 477e8d2 - Browse repository at this point
Copy the full SHA 477e8d2View commit details -
lib/monads: refactor trace monad theories
This splits material out of Trace_Monad and Trace_VCG and into more specific theories, following the same approach and structure as the nondet theories. This commit is mainly focused on definitions and lemmas that also appear in the nondet monad; trace monad concepts are left where they are for now. Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 380520c - Browse repository at this point
Copy the full SHA 380520cView commit details -
lib/monads: split content out into Trace_RG and Trace_No_Trace
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6dbcf40 - Browse repository at this point
Copy the full SHA 6dbcf40View commit details -
lib/monads: restyle and reorder trace monad files
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4a44874 - Browse repository at this point
Copy the full SHA 4a44874View commit details -
lib: update for trace monad refactor
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 917fff5 - Browse repository at this point
Copy the full SHA 917fff5View commit details
Commits on Aug 30, 2023
-
lib: add a breakpoint for corres_cleanup
This is useful for debugging the proof method for solving side conditions, and will show which goals corres_cleanup is invoked on. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1482841 - Browse repository at this point
Copy the full SHA 1482841View commit details -
lib: enforce simp (no_asm) in Corres_Method
The subst_all rule in the standard simp set can circumvent the (no_asm) mode of simp, which we are using in the corres method. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 51ebfd6 - Browse repository at this point
Copy the full SHA 51ebfd6View commit details -
riscv refine: adjust for (no_asm) in Corres_Method
The (no_asm) for corres goals is now properly enforced, which means it is now really necessary to provide terminal corres rules in their proper form. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7595c02 - Browse repository at this point
Copy the full SHA 7595c02View commit details -
lib: on the use of corres_liftM_simp rules
Explain that these are not nice simp rules, what one should do instead, and why we leave them as is despite all that. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f80d7f8 - Browse repository at this point
Copy the full SHA f80d7f8View commit details -
lib: factor out is_safe_wp method
Factor out is_safe_wp from corres method, so that we can refer to it later in the documentation. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0969196 - Browse repository at this point
Copy the full SHA 0969196View commit details -
lib: add docs and test for Corres_Method
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c4369f5 - Browse repository at this point
Copy the full SHA c4369f5View commit details
Commits on Sep 14, 2023
-
crefine: change misleading proof step in CSpace_RAB_C
Trying to figure this out was very educational, since ccorres_abstract was used without intending to abstract a variable, the xf' and lambda name were both red herrings (in fact, this proof only worked if xf' was instantiated with an *irrelevant* C local var name), and the body was not transformed. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for deade60 - Browse repository at this point
Copy the full SHA deade60View commit details
Commits on Sep 27, 2023
-
aarch64 refine: remove pspace_canonical'
This concept no longer makes sense on AARCH64, we will either need to know that certain addresses are in user_region (which implies canonical_user, which is more strict than canonical), or we will need to know they are in the kernel_window, which is also more strict than canonical. We'll only find out for sure in CRefine. Both cases are liftable from valid_vspace_uses and pspace_in_kernel_window from AInvs, so instead of a new invariant, the plan is to use Haskell assertions to transport the relevant info to CRefine when needed. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 322f4f9 - Browse repository at this point
Copy the full SHA 322f4f9View commit details -
aarch64 refine: invariant update lemmas
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6e57667 - Browse repository at this point
Copy the full SHA 6e57667View commit details -
aarch64 refine: ArchAcc_R sorry free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7ae4e55 - Browse repository at this point
Copy the full SHA 7ae4e55View commit details -
aarch64 aspec: sync with Haskell
Fix two small spec bugs where ASpec was out of sync with Haskell and C. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c77d649 - Browse repository at this point
Copy the full SHA c77d649View commit details -
aarch64 ainvs: new invariant on vmid_table
The vmid_table never maps ASID 0. We managed to get through AInvs without this property, but Refine does need it later. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d16b4fd - Browse repository at this point
Copy the full SHA d16b4fdView commit details -
aarch64 aspec: cleanByVA_PoU in perform_pg_inv_map
Add missing cache machine op. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 345818d - Browse repository at this point
Copy the full SHA 345818dView commit details -
aarch64 ainvs: updates for spec change
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7713dff - Browse repository at this point
Copy the full SHA 7713dffView commit details -
aarch64 aspec: fix do_flush spec bug
cleanInvalidate should be using cleanInvalidateCacheRange_RAM. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 438e27a - Browse repository at this point
Copy the full SHA 438e27aView commit details -
aarch64 aspec+ainvs: add valid_asid_map invariant
Refine needs slightly stricter information about asid maps, in particular we need to know explicitly that asid 0 never maps to a VSpace. This is the reverse of valid_vmid_table, but unfortunately does not fully follow from valid_vmid_table, because there can be VSpaces mapped without an assigned VMID. We shift the test for 0 < asid from entry_for_asid to vspace_for_asid so we can use entry_for_asid in the formulation of the invariant. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c628181 - Browse repository at this point
Copy the full SHA c628181View commit details -
aarch64 refine: VSpace_R sorry-free
Main progress is in VSpace_R, with some fallout in ArchAcc_R, ADT_R, and Schedule_R for invariant and spec changes. General obj_at preservation for setVMRoot does not hold and is relegated to something more specific in Schedule_R Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d16d35e - Browse repository at this point
Copy the full SHA d16d35eView commit details -
aarch64 refine: progress in Retype_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f14217e - Browse repository at this point
Copy the full SHA f14217eView commit details -
aarch64 refine: progress in Retype_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e74d5fe - Browse repository at this point
Copy the full SHA e74d5feView commit details -
aarch64 haskell: tweak createNewCaps definition
Tweak formulation of createNewCaps for page tables to be in the expected "addr ~elem~ map .." form. The previous definition was not wrong, but the lemmas in Retype_R expect the set membership form. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4913aa8 - Browse repository at this point
Copy the full SHA 4913aa8View commit details -
aarch64 refine: Retype_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2ec696f - Browse repository at this point
Copy the full SHA 2ec696fView commit details -
aarch64 refine: Untyped_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1ea097a - Browse repository at this point
Copy the full SHA 1ea097aView commit details -
aarch64 refine: Schedule_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1f60044 - Browse repository at this point
Copy the full SHA 1f60044View commit details -
aarch64 refine: IpcCancel_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 73ba0ce - Browse repository at this point
Copy the full SHA 73ba0ceView commit details -
aarch64 refine: Finalise_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 522cef1 - Browse repository at this point
Copy the full SHA 522cef1View commit details -
aarch64 aspec+ainvs: sync user_vtop check with C
The user_vtop check in decode_fr_inv_map_wf can be relaxed from >= to > as done in Haskell and C. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0e8048b - Browse repository at this point
Copy the full SHA 0e8048bView commit details -
aarch64 haskell: fix syscall arg error reporting
The argument numbers in the error messages for decodeARMFrameInvocationMap are slightly off. Same bug exists in C, see also seL4/seL4#1075. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d849c0b - Browse repository at this point
Copy the full SHA d849c0bView commit details -
aarch64 haskell: check cap type in checkVSpaceRoot
Correctly check the type of the table the PageTableCap points to in checkVSpaceRoot (must be a VSRootPT, not NormalPT). Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e2355c7 - Browse repository at this point
Copy the full SHA e2355c7View commit details -
aarch64 ainvs: mark addrFromPPtr_mask_ipa
Lemma can potentially be removed if not used in the rest of Refine. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1fb96c7 - Browse repository at this point
Copy the full SHA 1fb96c7View commit details -
aarch64 aspec: fix flush type in decode_vspace_invocation
decode_vspace_invocation operates on vspace flush labels, not page flush labels. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c745d4e - Browse repository at this point
Copy the full SHA c745d4eView commit details -
aarch64 refine: Arch_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for da76bca - Browse repository at this point
Copy the full SHA da76bcaView commit details -
aarch64 refine: Ipc_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1f05109 - Browse repository at this point
Copy the full SHA 1f05109View commit details -
aarch64 refine: Interrupt_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a0311bd - Browse repository at this point
Copy the full SHA a0311bdView commit details -
aarch64 refine: ADT_H sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ffd038f - Browse repository at this point
Copy the full SHA ffd038fView commit details -
aarch64 refine: progress in Detype_R
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1fde048 - Browse repository at this point
Copy the full SHA 1fde048View commit details -
aarch64 refine: Detype_R sorry-free
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8f2710d - Browse repository at this point
Copy the full SHA 8f2710dView commit details -
aarch64 refine: Orphanage sorry-free
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2e3c97d - Browse repository at this point
Copy the full SHA 2e3c97dView commit details -
aarch64 refine: resolve trivial FIXMEs
These have either already been resolved, are trivial moves within one theory, or they are questions that the rest of the proof has now answered. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for cf0e636 - Browse repository at this point
Copy the full SHA cf0e636View commit details -
aarch64 refine: leave comment instead of FIXME
Might be useful for later proofs, but no need to fix now. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 43c0759 - Browse repository at this point
Copy the full SHA 43c0759View commit details -
aarch64 refine: defer some FIXMEs to CRefine
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6bfdecd - Browse repository at this point
Copy the full SHA 6bfdecdView commit details -
aarch64 refine: consolidate dmo_invs_no_cicd' lemmas
With a slightly better lifting rule, these can all be grouped and proved automatically. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c263749 - Browse repository at this point
Copy the full SHA c263749View commit details -
aarch64 refine: improve decode invariance crunch
With adjustment of ARMMMU_improve_cases, the decode functions can all be done in a single crunch invocation. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 62618fc - Browse repository at this point
Copy the full SHA 62618fcView commit details -
The (=) syntax is Isabelle, the ML syntax is still (op =) Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4c69a42 - Browse repository at this point
Copy the full SHA 4c69a42View commit details -
lib: move lemmas from refine/AARCH64/ArchAcc
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6793a94 - Browse repository at this point
Copy the full SHA 6793a94View commit details -
aarch64 refine: move lemmas to lib
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5f74194 - Browse repository at this point
Copy the full SHA 5f74194View commit details -
word_lib: anti-monotonicity of shiftr
Co-authored-by: Rafal Kolanski <[email protected]> Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9f7e8f8 - Browse repository at this point
Copy the full SHA 9f7e8f8View commit details -
lib: lemmas moved from aarch64 refine
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fe3ebf0 - Browse repository at this point
Copy the full SHA fe3ebf0View commit details -
aarch64 refine: lemma moved to Word_Lib
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for dc4955d - Browse repository at this point
Copy the full SHA dc4955dView commit details -
aarch64 refine: lemmas moved to lib
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2251bf8 - Browse repository at this point
Copy the full SHA 2251bf8View commit details -
aarch64 refine: lemmas moved to aarch64 ainvs
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 26a3a6e - Browse repository at this point
Copy the full SHA 26a3a6eView commit details -
aarch64 refine: move lemmas internally
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a24ddbe - Browse repository at this point
Copy the full SHA a24ddbeView commit details -
lib+aarch64 refine: move lemmas to lib
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for de50741 - Browse repository at this point
Copy the full SHA de50741View commit details -
lib+ainvs+aarch64 refine: move+consolidate vcg_op_lift lemmas
Collect all operator lifting lemmas in one place under hoare_vcg_op_lift. (Moved from Refine) Move the lifting lemmas that were still in AInvs up to lib. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0369a4b - Browse repository at this point
Copy the full SHA 0369a4bView commit details -
aarch64 ainvs+refine: move lemmas from Refine
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for dcf6ee4 - Browse repository at this point
Copy the full SHA dcf6ee4View commit details -
aarch64 ainvs+refine: remove unused dom_ucast_eq
The old version of dom_ucast_eq in AInvs is not useful, because the necessary constants are not available yet in AInvs. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5497666 - Browse repository at this point
Copy the full SHA 5497666View commit details
Commits on Oct 5, 2023
-
lib/monads: more cleanup and restyle in nondet monad
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for df31523 - Browse repository at this point
Copy the full SHA df31523View commit details -
proof: update for changes to nondet monad
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7999632 - Browse repository at this point
Copy the full SHA 7999632View commit details -
lib/monads/trace: copy in definitions and rules from nondet
This fills out the trace monad rule set by copying in as many definitions and rules as possible from the nondet monad. Most of these do not immediately work for the trace monad, see the next commit for the required changes. Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d66ac95 - Browse repository at this point
Copy the full SHA d66ac95View commit details -
lib/monads/trace: update definitions and rules taken from nondet
This commit has all of the changes required so that the definitions and rules added in the previous commit work for the trace monad. Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0aac7ac - Browse repository at this point
Copy the full SHA 0aac7acView commit details -
lib/monads/trace: prove more lemmas connecting valid and validI
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 293b97c - Browse repository at this point
Copy the full SHA 293b97cView commit details -
lib/monads: improve style of nondet and trace
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3333395 - Browse repository at this point
Copy the full SHA 3333395View commit details -
lib/monads/nondet: remove uses of _tac methods
In particular, try to remove as many as possible _tac methods that refer to system-generated variable names. Any remaining uses are explicitly protected by a rename_tac. Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 34038fc - Browse repository at this point
Copy the full SHA 34038fcView commit details -
lib/monads: add no_fail_ex_lift and no_fail_grab_asm
Signed-off-by: Michael McInerney <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6680297 - Browse repository at this point
Copy the full SHA 6680297View commit details -
lib: improve corres_underlying rules for whileLoop
Signed-off-by: Michael McInerney <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e7cca6a - Browse repository at this point
Copy the full SHA e7cca6aView commit details
Commits on Oct 6, 2023
-
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6721c7a - Browse repository at this point
Copy the full SHA 6721c7aView commit details -
lib/Eisbach_Tools: morphism type changed in Isabelle2023
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3f66cb0 - Browse repository at this point
Copy the full SHA 3f66cb0View commit details -
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for eeae2af - Browse repository at this point
Copy the full SHA eeae2afView commit details -
misc: goto-error jEdit macro: update for 2023
Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 286278d - Browse repository at this point
Copy the full SHA 286278dView commit details -
aspec: mapsto syntax update for Isabelle2023
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 450234e - Browse repository at this point
Copy the full SHA 450234eView commit details -
c-parser: sync Simpl from AFP for Isabelle2023
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 83fc513 - Browse repository at this point
Copy the full SHA 83fc513View commit details -
c-parser: update to Isabelle2023 maps-to syntax
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for be44fad - Browse repository at this point
Copy the full SHA be44fadView commit details -
c-parser: adapt standalone parser to Isabelle2023
The code draws in table.ML from the Isabelle source, which changed in the 2023 release. This commit adds further library functions from Isabelle library.ML and extracts the parts of unsynchronized.ML that work with mlton. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 26807f7 - Browse repository at this point
Copy the full SHA 26807f7View commit details -
clib: update to Isabelle2023 mapsto syntax
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f88d2d4 - Browse repository at this point
Copy the full SHA f88d2d4View commit details -
proof: update to Isabelle2023 mapsto syntax
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3141584 - Browse repository at this point
Copy the full SHA 3141584View commit details -
sep-capDL: update to Isabelle2023 mapsto syntax
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f7768ee - Browse repository at this point
Copy the full SHA f7768eeView commit details -
capdDL-api: update to Isabelle2023 mapsto syntax
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4c0b3df - Browse repository at this point
Copy the full SHA 4c0b3dfView commit details -
autocorres: update to Isabelle2023
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0f99a75 - Browse repository at this point
Copy the full SHA 0f99a75View commit details -
camkes: update to Isabelle2023 mapsto syntax
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0d984f3 - Browse repository at this point
Copy the full SHA 0d984f3View commit details -
word lib: fix broken style introduced from AFP
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ad24d95 - Browse repository at this point
Copy the full SHA ad24d95View commit details
Commits on Oct 11, 2023
-
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3036f22 - Browse repository at this point
Copy the full SHA 3036f22View commit details -
Signed-off-by: Corey Lewis <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3308a0b - Browse repository at this point
Copy the full SHA 3308a0bView commit details