Vous êtes sur la page 1sur 17

Logique et bases de donnes

Plan Thorie du premier ordre Hypothses CWA, unique name, domain closure BD comme interprtation BD comme thorie du 1er ordre BD dductives Signication des diffrentes formes de clauses BDD dnies BDD indnies Systmes de programmation logique

G. Falquet

CUI - Universit de Genve

Thorie du premier ordre


Thorie = langage + axiomes + rgles dinfrence Thorie du 1er ordre langage: logique des prdicats du 1er ordre rgles dinfrence: modus ponens et gnralisation (m.p.) de A et A B on infre B (gen.) de A on infre x.A axiomes: axiomes logiques AAA A (B A) (A B) (C A (B C)) x.A A(t/x) si x napparait pas dans le terme t (x.(A B)) (A x.B) si x nest pas libre dans A + axiomes propres

G. Falquet

CUI - Universit de Genve

Drivations et thormes
Une formule w est drivable dun ensemble de formules W (W | w) si on peut driver w de W et des axiomes en appliquant un nombre ni de fois les rgles dinfrence Un thorme est une formule drivable directement partir des axiomes. | thorme On peut crer dautres rgles de drivation que m.p. et gen., p.ex. le principe de rsolution. Mais elles doivent respecter certaines rgles. Relation entre syntaxe et smantique Un systme formel est consistant (sound) si W | w implique W |= w "Tous les thormes sont des consquences logiques des axiomes" Un systme formel est complet (complete) si W |= w implique W | w "Toutes les consquences logiques des axiomes sont des thormes"
G. Falquet CUI - Universit de Genve 3

Hypothses BD + logique
Monde clos (CWA) Ce qui nest pas connu comme vrai dans la base est faux p.ex. R(a, b, c) est vrai si <a, b, c> relation-R Nom unique les individus de "nom" diffrent sont diffrents Fermeture du domaine il ny a pas dautres individus que ceux de la base Exemple tat-BD = Prof(Jean), Prof(Paul), Assistant(Andr), Assistant(Pierre) Qui nest pas professeur ? FD + NU + CWA --> rponse: Andr et Paul

G. Falquet

CUI - Universit de Genve

BD comme interprtation
Langage L(BD) correspondant BD: A chaque schma de relation R(A1, A2, , An) on associe un symbole de prdicat R (Extension) on ajoute les symboles de prdicat =, , <, >, , quon interprte sur D Les constantes sont les valeurs trouves dans la base Interprtation I(BD) Le domaine dinterprtation D est lunion de toutes les valeurs dattributs qui apparaissent dans la base. La relation r correspondant au schma R(A1, A2, , An) donne linterprtation du symbole de prdicat R Consistance La base est consistante si pour chaque contrainte C exprime en L(BD), linterprtation de C selon I(BD) = vrai Requte La rponse w(x1, x2, , xn) est lensemble des tuples <d1, d2, , dn> qui rendent w vraie selon linterprtation I(BD)

G. Falquet

CUI - Universit de Genve

BD comme thorie du 1er ordre


Principe: construire une thorie (axiomes) T(BD) qui admet BD comme unique modle (unique interprtation qui rend vrais les axiomes). Axiomes dassertion Pour chaque r de BD et chaque tuple <e1, , en> de r R(e1, , e n) Particularisation (i) compltion Si r = {<e1,1, , en,1>, <e1,p, , en,p>} -> x1.xn.R(x1.xn) (x1 = e1,1 xn = en,1) (x1 = e1,p xn = en,p) (ii) nom unique Si D = {e1, , er} -> (e1 e2) (er1 e r) (iii) fermeture du domaine x.x = e1 x = er
G. Falquet CUI - Universit de Genve 6

Axiomes de lgalit rexivit, symetrie, transitivit, substitution des termes gaux x1. xn. y1. yn. P(x1, , x n) x1 = y1 xn = yn P(y1, , yn) Contraintes dintgrit BD satisfait w si T(BD) | w Requtes La rponse une requte w(x1, , xn) est lensemble des tuples <e1, , en> tels que T(BD) | w(e1, , en)

G. Falquet

CUI - Universit de Genve

Langages dinterrogation
Le langage de la logique du 1er ordre permet de poser des questions sous forme non procdurale. > calcul relationnel (Codd) Problmes: Questions pas raisonnables R(x, y, z) la rponse dpend du domaine de valeur P(x, y, z) R(x, y, z) la rponse ne dpend que de P et R. Limitations fonctions du second ordre ( count(P) ) ? > extensions impures du langage > SQL fonctions non reprsentables: fermeture transitive > imbrication dans un langage de programmation > bd dductives

G. Falquet

CUI - Universit de Genve

BD dductives
BDD = ensemble de constantes + ensemble de clauses + contraintes dintgrit clauses P1 Pk R1 Rq quivalent P1 Pk R1 Rq Classication des diffrentes formes de clauses Type 1 R1(t1, , tk) Constantes -> assertion dun fait Variables -> assertion gnrale Type 2 P1(t1, , tr) Constantes -> assertion dun fait ngatif Variables -> contrainte dintgrit
G. Falquet CUI - Universit de Genve 9

Type 3 P1 Pk Contrainte dintgrit Prof(x) Etudiant(x) Type 4 P1 Pk R1 R.i. ou rgle de dduction pour calculer R1 Type 5 R1 Rq Constantes -> assertion indnie Type 6 P1 Pk R1 Rq C.I. : Parent(x1, y1) Parent(x1, y2) Parent(x1, y3) (y1 = y2) (y1 = y3) (y2 = y3) R.D. : Parent(x, y) Mere(x, y) Pere(x, y)

G. Falquet

CUI - Universit de Genve

10

BDD dnies
Principe: viter le non dterminisme de type "A ou B est vrai" BDD dnie = thorie (axiomes) + contraintes dintgrit Thorie du 1er ordre = thorie pour les bd conventionnelles + axiomes pour les rgles de dductions Axiomes: 1. particularisation et galit, 2. faits lmentaires, 3. rgles de dduction Ax. 2: faits (clauses de type 1 avec constantes) R1(e1,1, en,1), , R1(e1,p, en,p) Ax. 3. : clauses de type 4 uniquement P1 Pk R1 Ax. 1. : reformulation de la compltude pour R1 x1.xn.R1(x1.xn) (x1 = e1,1 xn = en,1) (x1 = e1,p xn = en,p) (* fait lmentaires *) P1() Pk() (* rgle *) etc.
G. Falquet CUI - Universit de Genve 11

Comme la vision "thorie de la preuve" des bd conventionnelles La rponse une requte w(x1, , xn) est lensemble des tuples <e1, , en> tels que T(BD) | w(e1, , en) La base satisfait la contrainte si T(BD) | . Les axiomes de compltude permettent de driver un fait ngatif R1(a1.an) quand R1(a1.an) nest pas un fait R1(a1.an) nest pas drivable par les axiomes 3

G. Falquet

CUI - Universit de Genve

12

Dnition oprationnelle
Eliminer les axiomes de fermeture du domaine -> requtes domaine restreint Eliminer nom unique et compltude par negation as nite failure Introduction dune mta-rgle: P est vrai ssi |-/- P (i.e. ssi on ne peut prouver P) Il faut que le procd de preuve se termine toujours ! Possible car il existe un unique modle minimal de la thorie La logique devient non monotone: plus daxiomes peut entrainer moins de faits prouvables

Il ny a plus besoin des axiomes dgalit

G. Falquet

CUI - Universit de Genve

13

Rgles de dductions ou contraintes dintgrit ?


Les rdd et les c.i. ont la mme forme 1. 2. 3. 4. les rdd gnrent de nouveaux faits les c.i. "limitent" le contenu de la base (faits et rgles) Les rdd ne doivent pas contenir de fonctions, sinon rponses ininies et non explicites => les formules contenant des doivent tre des c.i. Les clauses de type 5 et 6 donnent des c.i., sinon rponses indnies Les clauses de type 3 ne produisent pas de noveaux faits -> c.i. Certaines connaissances gnrales ne produisent pas de nouveaux faits Pere(x, y), Pere(z, y) x = y (lgalit est dj connue indpendamment de la base)

Quelques critres

p.ex. les dpendances fonctionnelles

G. Falquet

CUI - Universit de Genve

14

BDD indnies
Les axiomes 3 sont des clauses indnies ou dnies P(a, b) P(a, c) R(x, y) S(y, z) P(x, y) Q(x, y, z) Plus compliqu que les BDD dnies 1. Inconsistance par rapport CWA si on applique negation as failure vole(titi) vole(x) -> oiseau(x) avion(x) Comme on ne peut prouver ni oiseau(titi) ni avion(titi) on dduit oiseau(titi) et avion(titi) Mais {vole(titit), vole(x) -> oiseau(x) avion(x), oiseau(titi), avion(titi)} est inconsistant

G. Falquet

CUI - Universit de Genve

15

Generalized Closed World Assumption E lensemble des clauses positives non prouvables On a le droit de dduire P(x) seulement si C E. P(x) C est non prouvable Les mcanismes de dductions doivent tre plus sophistiqus pour tre complets input resolution et rsolution LUSH sont complets pour les clauses de Horn mais pas pour les clauses non-Horn. Utiliser rsolution linaire, rsolution linaire avec slection(SL) ou LUST Les rponses ne sont plus dnies. p.ex. si on a le fait P(a) P(b) la rponse P(x) sera x = (a ou b)

G. Falquet

CUI - Universit de Genve

16

, , , ,

G. Falquet

CUI - Universit de Genve

17

Vous aimerez peut-être aussi