Probabilistic Concurrent Reasoning in Outcome Logic: Independence, Conditioning, and Invariants

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Zilberstein, Noam, Silva, Alexandra, Tassarotti, Joseph
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866915636848885760
author Zilberstein, Noam
Silva, Alexandra
Tassarotti, Joseph
author_facet Zilberstein, Noam
Silva, Alexandra
Tassarotti, Joseph
contents Although randomization has long been used in distributed computing, formal methods for reasoning about probabilistic concurrent programs have lagged behind. No existing program logics can express specifications about the full distributions of outcomes resulting from programs that are both probabilistic and concurrent. To address this, we introduce Probabilistic Concurrent Outcome Logic (pcOL), which incorporates ideas from concurrent and probabilistic separation logics into Outcome Logic to introduce new compositional reasoning principles. At its core, pcOL reinterprets the rules of Concurrent Separation Logic in a setting where separation models probabilistic independence, so as to compositionally describe joint distributions over variables in concurrent threads. Reasoning about outcomes also proves crucial, as case analysis is often necessary to derive precise information about threads that rely on randomized shared state. We demonstrate pcOL on a variety of examples, including to prove almost sure termination of unbounded loops.
format Preprint
id arxiv_https___arxiv_org_abs_2411_11662
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Probabilistic Concurrent Reasoning in Outcome Logic: Independence, Conditioning, and Invariants
Zilberstein, Noam
Silva, Alexandra
Tassarotti, Joseph
Logic in Computer Science
Programming Languages
Although randomization has long been used in distributed computing, formal methods for reasoning about probabilistic concurrent programs have lagged behind. No existing program logics can express specifications about the full distributions of outcomes resulting from programs that are both probabilistic and concurrent. To address this, we introduce Probabilistic Concurrent Outcome Logic (pcOL), which incorporates ideas from concurrent and probabilistic separation logics into Outcome Logic to introduce new compositional reasoning principles. At its core, pcOL reinterprets the rules of Concurrent Separation Logic in a setting where separation models probabilistic independence, so as to compositionally describe joint distributions over variables in concurrent threads. Reasoning about outcomes also proves crucial, as case analysis is often necessary to derive precise information about threads that rely on randomized shared state. We demonstrate pcOL on a variety of examples, including to prove almost sure termination of unbounded loops.
title Probabilistic Concurrent Reasoning in Outcome Logic: Independence, Conditioning, and Invariants
topic Logic in Computer Science
Programming Languages
url https://arxiv.org/abs/2411.11662