The XSB Programmer's Manual Version 1.7.1

To date (Version 1.7.1), the core engine development of the SLG-WAM has been mainly implemented by Terrance Swift, Kostis Sagonas, Prasad Rao and Juliana Freire. The breakdown, roughly, was that Terrance Swift wrote the initial tabling engine, Prasad Rao wrote the trie-based table access routines, and Kostis Sagonas implemented most of tabled negation. Juliana Freire revised the table scheduling mechanism starting from Version 1.5.0 to create a more eecient engine, as well as adding local emulator, new to version 1.7. David Warren and Prasad Rao implemented the aggregate code. The auto table and suppl table directives were written by Kostis Sagonas. Memory management code and the command line execution interface were written by Ernie Johnson, Prasad Rao and Bart Demoen. Rui Marquez improved the trailing of the SLG-WAM. The safety check for tabling within the scope of cuts was written by Kate Dvortsova. Of other features in the system, Kostis Sagonas added HiLog compilation to XSB, along with the associated builtins. Steve Dawson implemented Uniication Factoring. wrote the mode analyzer for XSB. Harald Schroepfer helped the XSB group with the Solaris port, and Yiorgos Adamopou-los suggested the bits to use for the HP-700 series port. were responsible for the MkLinux and Solaris x86 ports. Thanks are also due to Weidong Chen for his early work on Prolog clause indexing and Richard O'Keefe, who contributed the Prolog code for the Prolog reader and the C code for the tokenizer.

[1]  Kenneth A. Ross The semantics of deductive databases , 1992 .

[2]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.

[3]  Kenneth A. Ross,et al.  Unfounded sets and well-founded semantics for general logic programs , 1988, PODS.

[4]  Michael Kifer,et al.  HILOG: A Foundation for Higher-Order Logic Programming , 1993, J. Log. Program..

[5]  David Scott Warren,et al.  Efficient Top-Down Computation of Queries under the Well-Founded Semantics , 1995, J. Log. Program..

[6]  Richard A. O'Keefe,et al.  Efficient Implementation of a Defensible Semantics for Dynamic PROLOG Code , 1987, International Conference on Logic Programming.

[7]  T. Swift,et al.  Uni cation Factoring for E cient Execution of Logic Programs , 1995 .

[8]  Teodor C. Przymusinski Every logic program has a natural stratification and an iterated least fixed point model , 1989, PODS.

[9]  William F. Clocksin,et al.  Programming in Prolog , 1987, Springer Berlin Heidelberg.

[10]  Konstantinos Sagonas,et al.  Efficient Execution of HiLog in WAM-based Prolog Implementations , 1995, ICLP.

[11]  Catriel Beeri,et al.  On the power of magic , 1987, J. Log. Program..

[12]  David Scott Warren,et al.  Analysis of Sequential SLG Evaluation , 1994 .

[13]  Konstantinos Sagonas,et al.  An Abstract Machine for Computing the Well-Founded Semantics , 1996, JICSLP.

[14]  David Scott Warren Programming the PTQ Grammar in XSB , 1993, Workshop on Programming with Logic Databases , ILPS.

[15]  Suzanne Wagner Dietrich Extension tables for recursive query evaluation , 1987 .

[16]  Laurent Vieille,et al.  Recursive Query Processing: The Power of Logic , 1989, Theor. Comput. Sci..

[17]  Juliana Freire,et al.  Beyond Depth-First: Improving Tabled Logic Programs through Alternative Scheduling Strategies , 1996, PLILP.

[18]  C. R. Ramakrishnan,et al.  Practical program analysis using general purpose logic programming systems—a case study , 1996, PLDI '96.

[19]  K. A. Ross,et al.  Tabled Evaluation with Delaying for General Logic Programs , 1996 .

[20]  Terrance Swift,et al.  Efficient evaluation of normal logic programs , 1994 .

[21]  David B. Kemp,et al.  Completeness of a Top-Down Query Evaluation Procedure for Stratified Databases , 1988, ICLP/SLP.

[22]  Konstantinos Sagonas,et al.  Xsb as an Eecient Deductive Database Engine , 1994 .

[23]  David Scott Warren,et al.  The slg-wam: a search-efficient engine for well-founded evaluation of normal logic programs , 1996 .