京都大学人間・環境学研究科の立木です。
7 月 3 日 (LICS サテライト Workshop の前日) に、Darmstadt 工科大学の Klaus Keimel 先生による講演会を京都大学で行います。どうぞ、お気軽にお越しください。
講演会の後に、一緒にお食事に行こうと考えています。 人数を把握しておきたいので、お食事に来られる方は、あらかじめ メールでご連絡頂けると幸いです。
多くの方のご参加をお待ちしております。
立木
------------------------------------------------------------
講演会のお知らせ
日時: 7月3日(金) 16:30 より 場所:京都大学 総合人間学部棟 1401 教室 (吉田南キャンパスに入って左側の建物の4Fです) 講演者: Klaus Keimel (Darmstadt 工科大学名誉教授) 題目: On the equivalence of state transformer semantics and predicate transformer semantics
The meaning of a program may be modeled by the input-output behavior, we call it 'state transformer semantics'. Alternatively, for verifying programs one will be interested in properties A of the output and one wants to find conditions on the input that guarantee property A for the output. One will work with the transformation that assigns to property A of the output the weakest precondition p(A) on the input that guarantees property A for the output; let us call it 'predicate transformer semantics'.
In the presence of computational effects like nondeterministic or probabilistic choice, a computation will not be modeled by a function that transforms inputs from a input domain X to an output domain Y but by a state transformer t:X --> T(Y), where T is an appropriate computational monad. The corresponding predicate transformer p associates predicates on Y to predicates on X. Not all predicate transformers will correspond to state transformers, and one looks for necessary and, if possible, sufficient conditions for predicate transformers to correspond to state transformers t:X --> T(Y). Such conditions are sometimes called 'healthiness' conditions.
Most examples in the literature dealing with the equivalence of the two semantics can be seen to be based on a domain R of 'observations' and a monad T 'subordinate' to the continuation monad [[(-) --> R] --> R]. For the continuation monad predicates on objects X take values in R. For the continuation monad the state transformers t and the predicate transformers p corresponding to another are related by 'swapping arguments': t(x)(A)= p(A)(x) for x in X and predicates A on Y. It is the aim of this paper to describe a framework of an algebraic/order theoretical nature for the monad T so that the equivalence between state and predicate transformer semantics described above for the continuation monad can be carried over. This framework always yields necessary healthiness conditions. The sufficiency criterion has to be verified in each special situation separately.
We illustrate our methods by several examples. As semantic domains we use dcpos (directed complete partially ordered sets). But the same methods can be applied to other Cartesian closed categories and beyond, as we indicate in the concluding remarks.