Datalog

Un linguaggio di programmazione logica per basi di dati derivato dal Prolog

Utilizza predicati di due tipi:

Il linguaggio è basato su regole utilizzate per “definire” i predicati estensionali

Datalog, sintassi

Regole: $testa \leftarrow corpo$

Le interrogazioni sono specificate per mezzo di predicati atomici (convenzionalmente preceduti da “?”)

Datalog, semantica

La definizione della semantica delle regole ricorsive è delicata (in particolare con la negazione)

Potere espressivo: