REASONING ABOUT PROBABILISTIC PARALLEL PROGRAMS

被引:3
|
作者
RAO, JR
机构
[1] IBM Thomas J. Watson Research Center, Yorktown Heights, NY
关键词
ALGORITHMS; VERIFICATION; CORRECTNESS PROOFS; PARALLEL PROGRAMMING; PROBABILISTIC ALGORITHMS; PROGRAMMING METHODOLOGY; SPECIFICATION TECHNIQUES;
D O I
10.1145/177492.177724
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The use of randomization in the design and analysis of algorithms promises simple and efficient algorithms to difficult problems, some of which may not have a deterministic solution. This gain in simplicity, efficiency, and solvability results in a trade-off of the traditional notion of absolute correctness of algorithms for a more quantitative notion: correctness with a probability between 0 and 1. The addition of the notion of parallelism to the already unintuitive idea of randomization makes reasoning about probabilistic parallel programs all the more tortuous and difficult. In this paper we address the problem of specifying and deriving properties of probabilistic parallel programs that either hold deterministically or with probability 1. We present a proof methodology based on existing proof systems for probabilistic algorithms, the theory of the predicate transformer, and the theory of UNITY. Although the proofs of probabilistic programs are slippery at best, we show that such programs can be derived with the same rigor and elegance that we have seen in the derivation of sequential and parallel programs. By applying this methodology to derive probabilistic programs, we hope to develop tools and techniques that would make randomization a useful paradigm in algorithm design.
引用
收藏
页码:798 / 842
页数:45
相关论文
共 50 条
  • [41] On Probabilistic Parallel Programs with Process Creation and Synchronisation
    Kiefer, Stefan
    Wojtczak, Dominik
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, 2011, 6605 : 296 - 310
  • [42] A Framework for Reasoning about the Semantics of Logic Programs
    Bull Eur Assoc Theor Comput Sci, 59 (426):
  • [43] REASONING ABOUT TERMINATION OF PURE PROLOG PROGRAMS
    APT, KR
    PEDRESCHI, D
    INFORMATION AND COMPUTATION, 1993, 106 (01) : 109 - 157
  • [44] Reasoning about Multi-stage Programs
    Inoue, Jun
    Taha, Walid
    PROGRAMMING LANGUAGES AND SYSTEMS, 2012, 7211 : 357 - 376
  • [45] Reasoning about Programs Using a Scientific Method
    O'Hearn, Peter W.
    FORMAL METHODS AND SOFTWARE ENGINEERING, 2011, 6991 : 14 - 14
  • [46] Algebraic rules for reasoning about BSP programs
    Stewart, A
    Clint, M
    Gabarró, J
    CONSTRUCTIVE METHODS FOR PARALLEL PROGRAMMING, 2002, 10 : 41 - 57
  • [47] TUTORIAL NOTES - REASONING ABOUT LOGIC PROGRAMS
    BUNDY, A
    LECTURE NOTES IN ARTIFICIAL INTELLIGENCE, 1992, 636 : 252 - 277
  • [48] Reasoning about multi-stage programs
    Inoue, Jun
    Taha, Walid
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2016, 26 : 1 - 53
  • [49] Probabilistic Temporal Logic for Reasoning about Bounded Policies
    Motamed, Nima
    Alechina, Natasha
    Dastani, Mehdi
    Doder, Dragan
    Logan, Brian
    PROCEEDINGS OF THE THIRTY-SECOND INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, IJCAI 2023, 2023, : 3296 - 3303
  • [50] Probabilistic Reasoning About Simply Typed Lambda Terms
    Ghilezan, Silvia
    Ivetic, Jelena
    Kasterovic, Simona
    Ognjanovic, Zoran
    Savic, Nenad
    LOGICAL FOUNDATIONS OF COMPUTER SCIENCE (LFCS 2018), 2018, 10703 : 170 - 189