The semantics of second order polymorphic lambda calculus.
Proc. of the international symposium on Semantics of data types
A generalization of Dijkstra's calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
Predicate calculus and program semantics
Predicate calculus and program semantics
Category theory for computing science
Category theory for computing science
Type systems for programming languages
Handbook of theoretical computer science (vol. B)
Handbook of theoretical computer science (vol. B)
Methods and logics for proving programs
Handbook of theoretical computer science (vol. B)
Fundamentals of Algebraic Specification I
Fundamentals of Algebraic Specification I
Semantics in Data and Knowledge Bases
Semantics in Data and Knowledge Bases
Hi-index | 0.00 |
Dijkstra's predicate transformer calculus in its extended form gives an axiomatic semantics to program specifications including partiality and recursion. However, even the classical theory is based on infinitary first order logic which is needed to guarantee the existence of predicate transformers for weakest (liberal) preconditions. This theory can be generalized to higher-order intuitionistic logic. Such logics can be interpreted in topoi. Then each topos E canonically corresponds to a definitionally complete theory T such that E is equivalent to the topos IE(T) of definable types over T. Furthermore, each model of T in an arbitrary topos F canonically corresponds to a logical morphism IE(T) → F. This correspondence enables the definition of a type specification discipline with a semantics based on topoi such that the predicate transformers in the associated logic give an axiomatic semantics for typed program specifications.