Declarative Probabilistic Programming with Datalog

被引:20
|
作者
Barany, Vince [1 ,4 ]
Ten Cate, Balder [1 ,4 ]
Kimelfeld, Benny [2 ]
Olteanu, Dan [3 ]
Vagena, Zografoula [1 ,5 ]
机构
[1] LogicBlox Inc, Atlanta, GA 30309 USA
[2] Technion Israel Inst Technol, Fac Comp Sci, Taub 703, IL-32000 Haifa, Israel
[3] Univ Oxford, Wolfson Bldg,Pk Rd, Oxford OX1 3QD, England
[4] Google Inc, 1600 Amphitheatre Pkwy, Mountain View, CA 94043 USA
[5] Infor Inc, 1349 West Peachtree St, Atlanta, GA 30309 USA
来源
ACM TRANSACTIONS ON DATABASE SYSTEMS | 2017年 / 42卷 / 04期
基金
英国工程与自然科学研究理事会; 以色列科学基金会;
关键词
Chase; Datalog; declarative; probability measure space; probabilistic programming; LOGIC; INFERENCE; NETWORKS; LANGUAGE; QUERIES;
D O I
10.1145/3132700
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Probabilistic programming languages are used for developing statistical models. They typically consist of two components: a specification of a stochastic process (the prior) and a specification of observations that restrict the probability space to a conditional subspace (the posterior). Use cases of such formalisms include the development of algorithms in machine learning and artificial intelligence. In this article, we establish a probabilistic-programming extension of Datalog that, on the one hand, allows for defining a rich family of statistical models, and on the other hand retains the fundamental properties of declarativity. Our proposed extension provides mechanisms to include common numerical probability functions; in particular, conclusions of rules may contain values drawn from such functions. The semantics of a program is a probability distribution over the possible outcomes of the input database with respect to the program. Observations are naturally incorporated by means of integrity constraints over the extensional and intensional relations. The resulting semantics is robust under different chases and invariant to rewritings that preserve logical equivalence.
引用
收藏
页数:35
相关论文
共 50 条
  • [31] DECLARATIVE PROGRAMMING AND PARALLEL COMPUTING
    MARTINO, JP
    BYTE, 1985, 10 (12): : 14 - &
  • [32] Declarative programming with function patterns
    Antoy, Sergio
    Hanus, Michael
    LOGIC BASED PROGRAM SYNTHESIS AND TRANSFORMATION, 2006, 3901 : 6 - 22
  • [33] Declarative Parallel Programming for GPUs
    Holk, Eric
    Byrd, William
    Mahajan, Nilesh
    Willcock, Jeremiah
    Chauhan, Arun
    Lumsdaine, Andrew
    APPLICATIONS, TOOLS AND TECHNIQUES ON THE ROAD TO EXASCALE COMPUTING, 2012, 22 : 297 - 304
  • [34] A DECLARATIVE LOGIC PROGRAMMING ENVIRONMENT
    KOMOROWSKI, HJ
    JOURNAL OF SYSTEMS AND SOFTWARE, 1988, 8 (02) : 77 - 89
  • [35] Declarative programming for agent applications
    J. W. Lloyd
    K. S. Ng
    Autonomous Agents and Multi-Agent Systems, 2011, 23 : 224 - 272
  • [36] Declarative programming for a messy world
    Pereira, F
    LOGIC PROGRAMMING: PROCEEDINGS OF THE 1999 INTERNATIONAL CONFERENCE ON LOGIC PROGRAMMING, 1999, : 3 - 5
  • [37] Declarative Programming of User Interfaces
    Hanus, Michael
    Kluss, Christof
    PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES, 2009, 5418 : 16 - 30
  • [38] Declarative programming for agent applications
    Lloyd, J. W.
    Ng, K. S.
    AUTONOMOUS AGENTS AND MULTI-AGENT SYSTEMS, 2011, 23 (02) : 224 - 272
  • [39] A new framework for declarative programming
    Finkelstein, SE
    Freyd, P
    Lipton, J
    THEORETICAL COMPUTER SCIENCE, 2003, 300 (1-3) : 91 - 160
  • [40] A language for declarative robotic programming
    Peterson, J
    Hager, GD
    Hudak, P
    ICRA '99: IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION, VOLS 1-4, PROCEEDINGS, 1999, : 1144 - 1151