Version: 5.0.1

Datalog: Deductive database programming

Jay McCarthy <jay@racket-lang.org>

  • a declarative logic language in which each formula is a function-free Horn clause, and every variable in the head of a clause must appear in the body of the clause.

  • a lightweight deductive database system where queries and database updates are expressed in the logic language.

The use of Datalog syntax and an implementation based on tabling intermediate results ensures that all queries terminate.

    1 Datalog Module Language

    2 Tutorial

    3 Parenthetical Datalog Module Language

    4 Racket Interoperability

    5 Acknowledgments