Higher-order functions and imperative references are language features supported by many mainstream languages. Their combination enables the ability to package references to code blocks with the captured state from their environment. Higher-order imperative programs are expressive and useful, but complicate formal specification and reasoning due to the use of yet-to-be-instantiated function parameters, especially when their invocations may mutate memory captured by or reachable from their arguments. Existing state-of-the-art works for verifying higher-order imperative behaviors are restricted in two ways: achieving strong theoretical results without automated implementations, or achieving automation with the help of strong assumptions fro...
Abstract. Higher-order programming languages (i.e., languages in which procedures or labels can occu...
We present an automated approach to relatively completely veri-fying safety (i.e., reachability) pro...
Formal specification languages improve the flexibility and reliability of software. They capture pro...
We establish a strong completeness property called observational completeness of the program logic f...
We present a new approach for constructing and verifying higher-order, imperative programs using the...
In this thesis I show is that it is possible to give modular correctness proofs of interesting highe...
AbstractWe formalize higher-order separation logic for a first-order imperative language with proced...
We present a Hoare logic for a simple imperative while-language with stored commands, ie. stored par...
Higher order store programs are programs which store, manipulate and invoke code at runtime. Importa...
Recent years have seen a surge in techniques and tools for automatic and semi-automatic static check...
We introduce an extension of Hoare logic for call-by-value higher-orderfunctions with ML-like local ...
Abstract. We introduce an extension of Hoare logic for call-by-value higher-order functions with ML-...
Formal reasoning about computer programs can be based directly on the semantics of the programming l...
(to appear)International audienceWe incorporate higher-order functions and state monads in Maude, th...
We present an automated approach to relatively completely verifying safety (i.e., reachability) prop...
Abstract. Higher-order programming languages (i.e., languages in which procedures or labels can occu...
We present an automated approach to relatively completely veri-fying safety (i.e., reachability) pro...
Formal specification languages improve the flexibility and reliability of software. They capture pro...
We establish a strong completeness property called observational completeness of the program logic f...
We present a new approach for constructing and verifying higher-order, imperative programs using the...
In this thesis I show is that it is possible to give modular correctness proofs of interesting highe...
AbstractWe formalize higher-order separation logic for a first-order imperative language with proced...
We present a Hoare logic for a simple imperative while-language with stored commands, ie. stored par...
Higher order store programs are programs which store, manipulate and invoke code at runtime. Importa...
Recent years have seen a surge in techniques and tools for automatic and semi-automatic static check...
We introduce an extension of Hoare logic for call-by-value higher-orderfunctions with ML-like local ...
Abstract. We introduce an extension of Hoare logic for call-by-value higher-order functions with ML-...
Formal reasoning about computer programs can be based directly on the semantics of the programming l...
(to appear)International audienceWe incorporate higher-order functions and state monads in Maude, th...
We present an automated approach to relatively completely verifying safety (i.e., reachability) prop...
Abstract. Higher-order programming languages (i.e., languages in which procedures or labels can occu...
We present an automated approach to relatively completely veri-fying safety (i.e., reachability) pro...
Formal specification languages improve the flexibility and reliability of software. They capture pro...