ACM Transactions on Programming Languages and Systems · 2019 · 23 citations · 25 references
ComputingComputer ScienceAlgorithmsFormal MethodsProgramming LanguagesData TypesRecursion TheoryTermination AnalysisType CheckingType SystemsHigher-order Type CheckingMonadic SemanticsNormalizationProbabilistic ProgrammingType Soundness
We introduce a system of monadic affine sized types, which substantially generalizes usual sized types and allows in this way to capture probabilistic higher-order programs that terminate almost surely. Going beyond plain, strong normalization without losing soundness turns out to be a hard task, which cannot be accomplished without a richer, quantitative notion of types, but also without imposing some affinity constraints. The proposed type system is powerful enough to type classic examples of probabilistically terminating programs such as random walks. The way typable programs are proved to be almost surely terminating is based on reducibility but requires a substantial adaptation of the technique.
25
Church: a language for generative models
Noah D. Goodman, Vikash K. Mansinghka, Daniel M. Roy et al. · arXiv (Cornell University) · 2012 · 510 citations · Full text
Proving the correctness of reactive systems using sized types
John Hughes, Lars Pareto, Amr Sabry · 1996 · 314 citations · Full text