{"title":"Smart Choices and the Selection Monad","authors":"Martin Abadi, Gordon Plotkin","doi":"10.46298/lmcs-19(2:3)2023","DOIUrl":null,"url":null,"abstract":"Describing systems in terms of choices and their resulting costs and rewards offers the promise of freeing algorithm designers and programmers from specifying how those choices should be made; in implementations, the choices can be realized by optimization techniques and, increasingly, by machine-learning methods. We study this approach from a programming-language perspective. We define two small languages that support decision-making abstractions: one with choices and rewards, and the other additionally with probabilities. We give both operational and denotational semantics. In the case of the second language we consider three denotational semantics, with varying degrees of correlation between possible program values and expected rewards. The operational semantics combine the usual semantics of standard constructs with optimization over spaces of possible execution strategies. The denotational semantics, which are compositional, rely on the selection monad, to handle choice, augmented with an auxiliary monad to handle other effects, such as rewards or probability. We establish adequacy theorems that the two semantics coincide in all cases. We also prove full abstraction at base types, with varying notions of observation in the probabilistic case corresponding to the various degrees of correlation. We present axioms for choice combined with rewards and probability, establishing completeness at base types for the case of rewards without probability.","PeriodicalId":49904,"journal":{"name":"Logical Methods in Computer Science","volume":null,"pages":null},"PeriodicalIF":0.6000,"publicationDate":"2023-04-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Logical Methods in Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.46298/lmcs-19(2:3)2023","RegionNum":4,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0
Abstract
Describing systems in terms of choices and their resulting costs and rewards offers the promise of freeing algorithm designers and programmers from specifying how those choices should be made; in implementations, the choices can be realized by optimization techniques and, increasingly, by machine-learning methods. We study this approach from a programming-language perspective. We define two small languages that support decision-making abstractions: one with choices and rewards, and the other additionally with probabilities. We give both operational and denotational semantics. In the case of the second language we consider three denotational semantics, with varying degrees of correlation between possible program values and expected rewards. The operational semantics combine the usual semantics of standard constructs with optimization over spaces of possible execution strategies. The denotational semantics, which are compositional, rely on the selection monad, to handle choice, augmented with an auxiliary monad to handle other effects, such as rewards or probability. We establish adequacy theorems that the two semantics coincide in all cases. We also prove full abstraction at base types, with varying notions of observation in the probabilistic case corresponding to the various degrees of correlation. We present axioms for choice combined with rewards and probability, establishing completeness at base types for the case of rewards without probability.
期刊介绍:
Logical Methods in Computer Science is a fully refereed, open access, free, electronic journal. It welcomes papers on theoretical and practical areas in computer science involving logical methods, taken in a broad sense; some particular areas within its scope are listed below. Papers are refereed in the traditional way, with two or more referees per paper. Copyright is retained by the author.
Topics of Logical Methods in Computer Science:
Algebraic methods
Automata and logic
Automated deduction
Categorical models and logic
Coalgebraic methods
Computability and Logic
Computer-aided verification
Concurrency theory
Constraint programming
Cyber-physical systems
Database theory
Defeasible reasoning
Domain theory
Emerging topics: Computational systems in biology
Emerging topics: Quantum computation and logic
Finite model theory
Formalized mathematics
Functional programming and lambda calculus
Inductive logic and learning
Interactive proof checking
Logic and algorithms
Logic and complexity
Logic and games
Logic and probability
Logic for knowledge representation
Logic programming
Logics of programs
Modal and temporal logics
Program analysis and type checking
Program development and specification
Proof complexity
Real time and hybrid systems
Reasoning about actions and planning
Satisfiability
Security
Semantics of programming languages
Term rewriting and equational logic
Type theory and constructive mathematics.