A well-known challenge in the semantics of programming languages is how to combine non-determinism and probability. At a technical level, the problem arises from the fact that there is a no distributive law between the powerset monad and the distribution monad - as noticed some twenty years ago by Plotkin. More recently, it has become clear that there is a distributive law of the multiset monad over the distribution monad. This article elaborates the details of this distributivity and shows that there is a rich underlying theory relating multisets and probability distributions. It is shown that the new distributive law, called parallel multinomial law, can be defined in (at least) four equivalent ways. It involves putting multinomial distributions in parallel and commutes with hypergeometric distributions. Further, it is shown that this distributive law commutes with a new form of zipping for multisets. Abstractly, this can be described in terms of monoidal structure for a fixed-size multiset functor, when lifted to the Kleisli category of the distribution monad. Concretely, an application of the theory to sampling semantics is included.
翻译:在编程语言的语义学中,一个众所周知的挑战是如何将非确定性和概率结合起来。在技术层面,问题源于以下事实:20年前Plotkin注意到的Plotkin 20年前Plotkin 20年前Plotkin 所注意到的, 权力元月球和分配月球之间没有分化法。 最近, 很明显的是, 多元月球在发行月球上有一个分化法。 这篇文章详细描述了该分配法的细节, 并表明存在着与多元和概率分布有关的丰富基础理论。 这表明, 被称为平行多元法的新的分配法可以用( 至少)四种同等方式来定义。 它涉及将多元分布法平行和通勤以超几何分布。 此外, 已经显示出这种分解法与多元新形式的拉链通通。 简而言之, 这可以用固定规模的多位喜好结构来描述, 当它被提升到分配元月球的 Kleisli 类别时, 它可以被具体地应用到 sestriclestical 。