We introduce a Hoare logic for call-by-value higher-order functional languages with control operators such as callcc. The key idea is to build the assertion language and proof rules around an explicit logical representation of jumps and their dual 'places-to-jump-to'. This enables the assertion language to capture precisely the intensional and extensional effects of jumping by internalising rely/guarantee reasoning, leading to simple proof rules for higher-order functions with callcc. We show that the logic can reason easily about non-trivial uses of callcc. The logic matches exactly with the operational semantics of the target language (observational completeness), is relatively complete in Cook's sense and allows efficient generation of c...
Formal reasoning about computer programs can be based directly on the semantics of the programming l...
AbstractBuilding on the work of Burstall, this paper develops sound modelling and reasoning methods ...
Previous deforestation and supercompilation algorithms may introduce accidental termination when app...
Abstract. We propose a simple compositional program logic for an imperative extension of call-by-val...
Continuations are programming abstractions that allow for manip-ulating the “future ” of a computati...
International audienceWe present a Hoare logic for a call-by-value programming language equipped wit...
We introduce an extension of Hoare logic for call-by-value higher-orderfunctions with ML-like local ...
50 pagesRelying on the formulae-as-types paradigm for classical logic, we define a program logic for...
Abstract. This paper establishes a strong completeness property of composi-tional program logics for...
Abstract. We introduce an extension of Hoare logic for call-by-value higher-order functions with ML-...
Abstract. This paper establishes a strong completeness property of composi-tional program logics for...
AbstractWe derive a Floyd–Hoare logic for non-local jumps and mutable higher-order procedural variab...
Previous deforestation and supercompilation algorithms may introduce accidental termination when app...
International audienceWe derive a Floyd-Hoare logic for non-local jumps and mutable higher-order pro...
Higher-order functions and imperative references are language features supported by many mainstream ...
Formal reasoning about computer programs can be based directly on the semantics of the programming l...
AbstractBuilding on the work of Burstall, this paper develops sound modelling and reasoning methods ...
Previous deforestation and supercompilation algorithms may introduce accidental termination when app...
Abstract. We propose a simple compositional program logic for an imperative extension of call-by-val...
Continuations are programming abstractions that allow for manip-ulating the “future ” of a computati...
International audienceWe present a Hoare logic for a call-by-value programming language equipped wit...
We introduce an extension of Hoare logic for call-by-value higher-orderfunctions with ML-like local ...
50 pagesRelying on the formulae-as-types paradigm for classical logic, we define a program logic for...
Abstract. This paper establishes a strong completeness property of composi-tional program logics for...
Abstract. We introduce an extension of Hoare logic for call-by-value higher-order functions with ML-...
Abstract. This paper establishes a strong completeness property of composi-tional program logics for...
AbstractWe derive a Floyd–Hoare logic for non-local jumps and mutable higher-order procedural variab...
Previous deforestation and supercompilation algorithms may introduce accidental termination when app...
International audienceWe derive a Floyd-Hoare logic for non-local jumps and mutable higher-order pro...
Higher-order functions and imperative references are language features supported by many mainstream ...
Formal reasoning about computer programs can be based directly on the semantics of the programming l...
AbstractBuilding on the work of Burstall, this paper develops sound modelling and reasoning methods ...
Previous deforestation and supercompilation algorithms may introduce accidental termination when app...