CLP(BN): Constraint Logic Programming for Probabilistic Knowledge

Vítor Santos Costa, David Page, Maleeha Qazi, James Cussens

Research output: Chapter in Book/Report/Conference proceedingConference contribution


In Datalog, missing values are represented by Skolem constants. More generally, in logic programming missing values, or existentially-quantified variables, are represented by terms built from Skolem functors. In an analogy to probabilistic relational models (PRMs), we wish to represent the joint probability distribution over missing values in a database or logic program using a Bayesian network. This paper presents an extension of logic programs that makes it possible to specify a joint probability distribution over terms built from Skolem functors in the program. Our extension is based on constraint logic programming (CLP), so we call the extended language CLP($lBN$). We show that CLP($lBN$) subsumes PRMs; this greater expressivity carries both advantages and disadvantages for CLP($lBN$). We also show that algorithms from inductive logic programming (ILP) can be used with only minor modification to learn CLP($lBN$) programs. An implementation of CLP($lBN$) is publicly available as part of YAP Prolog at
Original languageEnglish
Title of host publicationProceedings of the Nineteenth Annual Conference on Uncertainty in Artificial Intelligence (UAI--2003)
EditorsUffe Kjæ rulff, Christopher Meek
Place of PublicationAcapulco, Mexico
Number of pages8
Publication statusPublished - 2003

Cite this