Global ETD Search
Search theses and dissertations gathered from participating repositories worldwide. Every result links back to the library that holds it. No account is needed.
Results
Showing 1 to 11 of 11 for “"separation logic"”.
-
Forward with separation logic
The use of Hoare logic in combination with weakest preconditions and strongest postconditions is a standard tool for program verification, known as backward and forward reasoning. Separation logic, an extension of Hoare logic, finds countless applications in the areas of program verification, but …
-
Verification of Go Channels
… translator to support channels, and a library of separation logic specifications that define the expected behavior of channel operations on open channels. Finally, this thesis evaluates how effective this model and library is for verifying Go code containing channels, and discuss some limitations …
-
MECHANIZED VERIFICATION OF GRAPH-MANIPULATING PROGRAMS
… about abstract mathematical graphs. We use separation logic to define how such abstract graphs are represented concretely in the heap. To facilitate the spatial entailments involving graphs, we propose an inference rule called Localize which generalize the Ramify rule. We show how this rule …
-
Memory-safe microcontroller applications with the Bedrock structured programming system
… library for the Coq proof assistant that applies separation logic to a small c-like language, allowing programmers to prove memory-related properties about their code. I used Bedrock to build a security peripheral out of a Cortex-m3 microcontroller; my peripheral provides both AES encryption and …
-
Modular Verification of Distributed Systems with Grove
… systems, Grove uses the idea of ownership from separation logic. Using Grove, we built a verified unreliable RPC library, where we captured unreliability in the formal specification by using duplicable ownership. We also built a verified exactly-once RPC library, where we reasoned about …
-
Automatic techniques for proving correctness of heap-manipulating programs
… verification. This dissertation presents two logic-based automatic software verification systems, namely Strand and Dryad, that help in the task of verification of heap-manipulating programs, which is one of the most complex aspects of modern software that eludes automatic verification. Strand …
-
Formal verification-driven parallelisation synthesis
… version. The sequential proof, written in separation logic, need only represent shape properties, meaning we can parallelise complex heap-manipulating programs without verifying every aspect of their behaviour. The second method proposes specification-directed synthesis: given a sequential …
-
Concurrent verification for sequential programs
… method of presenting program proofs conducted in separation logic. Building on work by Jules Bean, the ribbon proof is a diagrammatic alternative to the standard 'proof outline'. By emphasising the structure of a proof, ribbon proofs are intelligible and hence useful pedagogically. Because they …
-
Advancements in automated first-order verification
Submission original under an indefinite embargo labeled 'Open Access'. The submission was exported from vireo on 2022-11-11 without embargo terms
-
FORMAL VERIFICATION-BASED PROGRAM REPAIR
Automated program repair has been an active research field in software engineering in the last decade. It aims to help developers automatically localize and fix program bugs, consequently reducing debugging efforts. Automated repair tools have been incorporated into continuous integration and code …
-
Enabling Rich Lightweight Verification of Rust Software
… of Rust types in the implicit dynamic frames logic — a variant of separation logic — using the Viper language. We then develop a new static analysis that tracks the capabilities of Rust types (e.g., the ability to read or write a certain memory location), and we use its results in an algorithm …