Similitude et dissimilitude dans les systèmes dinformation Philippe Balbiani Institut de recherche...

Post on 03-Apr-2015

106 views 2 download

Transcript of Similitude et dissimilitude dans les systèmes dinformation Philippe Balbiani Institut de recherche...

Similitude et dissimilitude dans les systèmes d’information

Philippe Balbiani

Institut de recherche en informatique de Toulouse

Introduction

Information : définie en termes d’objets et de propriétés

Propriété : décrite en termes d’attributs et de valeurs d’attributs

Plan

Systèmes d’information

Relations dérivées des systèmes d’information

Opérateurs dérivés des systèmes d’information

Logiques dérivées des systèmes d’information

Systèmes d’information

Ensemble des « objets  » : OB

Ensemble des « attributs » : AT

Ensemble des « valeurs de l’attribut a » : VALa

f : (x,a)OBAT f(x,a)VALa

Système d’attributs : (OB,AT,(VALa)aAT,f)

Systèmes d’information

S=(OB,AT) est :« total » ssi xOB aAT a(x)≠« déterministe » ssi xOB aAT Card(a(x))≤1

xOB, AAT :x est « A-déterministe » ssi aA Card(a(x))≤1

D(A)={xOB : x est A-déterministe}

Systèmes d’information

Couleur des pétales

Mois de plantation

F1 {rose} {février, mars}

F2 {jaune, rose} {mars, avril, mai}

F3 {jaune, rose, rouge}

{mars, avril, mai}

F4 {rouge} {février, mars}

F5 {jaune, rouge} {mars, avril, mai}

Systèmes d’information

Langue étrangère Langage de programmation

P1 {français, italien} {Ada, C++, Java}

P2 {allemand, anglais} {Ada}

P3 {français, italien, russe}

{Ada, C++}

P4 {français, italien} {Prolog, Scheme}

P5 {français, italien} {Prolog, Scheme}

P6 {anglais} {Ada, C++}

Systèmes d’information

S=(OB,AT), AAT :S est « A-séparable » ssi aA u,vVALa ({xOB :

ua(x)}=({yOB : va(y)} ssi u=v)

S est « séparable » ssi S est AT-séparable

Systèmes d’information

Ensemble des « objets  » : OB

Ensemble des « propriétés » : PR

f : xOB f(x)PR

Système de propriétés : S=(OB,PR,f)

Systèmes d’information

Langage de programmation

P1 {Ada, C++, Java}

P2 {Ada}

P3 {Ada, C++}

P4 {Prolog, Scheme}

P5 {Prolog, Scheme}

P6 {Ada, C++}

Relations dérivées

Relations de similitude

S=(OB,AT), x,yOB, AAT :x ind(A) y ssi aA a(x)=a(y) : « indiscernabilité forte »

x fin(A) y ssi aA a(x)a(y) : « inclusion avant forte »

x bin(A) y ssi aA a(x)a(y) : « inclusion arrière forte »

Relations dérivées

Relations de similitude

S=(OB,AT), x,yOB, AAT :x wind(A) y ssi aA a(x)=a(y) : « indiscernabilité

faible »

x wfin(A) y ssi aA a(x)a(y) : « inclusion avant faible »

x wbin(A) y ssi aA a(x)a(y) : « inclusion arrière faible »

Relations dérivées

Relations de similitude

S=(OB,AT), x,yOB, AAT :x icom(A) y ssi aA a(x)=-a(y) : « incomplémentarité

forte »

x sim(A) y ssi aA a(x)-a(y) : « similarité positive forte »

x nim(A) y ssi aA a(x)-a(y) : « similarité négative forte »

Relations dérivées

Relations de similitude

S=(OB,AT), x,yOB, AAT :x wicom(A) y ssi aA a(x)=-a(y) : « incomplémentarité

faible »

x wsim(A) y ssi aA a(x)-a(y) : « similarité positive faible »

x wnim(A) y ssi aA a(x)-a(y) : « similarité négative faible »

Relations dérivées

Relations de dissimilitude

S=(OB,AT), x,yOB, AAT :x div(A) y ssi aA a(x)=a(y) : « diversité forte »

x rnim(A) y ssi aA a(x)a(y) : « similarité négative droite forte »

x lnim(A) y ssi aA a(x)a(y) : « similarité négative gauche forte »

Relations dérivées

Relations de dissimilitude

S=(OB,AT), x,yOB, AAT :x wdiv(A) y ssi aA a(x)=a(y) : « diversité faible »

x wrnim(A) y ssi aA a(x)a(y) : « similarité négative droite faible  »

x wlnim(A) y ssi aA a(x)a(y) : « similarité négative gauche faible  »

Relations dérivées

Relations de dissimilitude

S=(OB,AT), x,yOB, AAT :x com(A) y ssi aA a(x)=-a(y) : « complémentarité

forte »

x rort(A) y ssi aA a(x)-a(y) : « orthogonalité droite forte »

x lort(A) y ssi aA a(x)-a(y) : «  orthogonalité gauche forte »

Relations dérivées

Relations de dissimilitude

S=(OB,AT), x,yOB, AAT :x wcom(A) y ssi aA a(x)=-a(y) : « complémentarité

faible »

x wrort(A) y ssi aA a(x)-a(y) : « orthogonalité droite faible »

x wlort(A) y ssi aA a(x)-a(y) : «  orthogonalité gauche faible »

Relations dérivées

S=(OB,AT), x,yOB, AAT, Bool expression booléenne :

x R(=,,Bool)(A) y ssi aA Bool(a(x),a(y))=x R(≠,,Bool)(A) y ssi aA Bool(a(x),a(y))≠x R(=,,Bool)(A) y ssi aA Bool(a(x),a(y))=x R(≠,,Bool)(A) y ssi aA Bool(a(x),a(y))≠

Relations dérivées

S=(OB,AT), AAT, aAT :ind(A) est réflexive, symétrique et transitive

fin(A) et bin(A) sont réflexives et transitives

icom(A) est symétrique; si A≠ alors icom(A) est réflexive; icom(a) est co-3-transitive

sim(A) et nim(A) sont faiblement réflexives et symétriques; si S est total alors sim(A) est réflexive

Relations dérivées

S=(OB,AT), AAT, aAT :wind(A) est réflexive et symétrique; wind(a) est transitive

wfin(A) et wbin(A) sont réflexives; wfin(a) et wbin(a) sont transitives

wicom(A) est réflexive, symétrique et co-3-transitive

wsim(A) est réflexive et symétrique

wnim(A) est faiblement réflexive et symétrique

Relations dérivées

S=(OB,AT), AAT, aAT :div(A) est symétrique; si A≠ alors div(A) est irréflexive;

div(a) est co-transitive

Si A≠ alors rnim(A) et lnim(A) sont irréflexives; rnim(a) et lnim(a) sont co-transitives

com(A) est symétrique et 3-transitive; si A≠ alors com(A) est irréflexive

rort(A) est symétrique; si A≠ alors rort(A) est irréflexive

lort(A) est faiblement co-réflexive et symétrique

Relations dérivées

S=(OB,AT), AAT, aAT :wdiv(A) est irréflexive, symétrique et co-transitive

wrnim(A) et wlnim(A) sont irréflexives et co-transitives

wcom(A) est irréflexive et symétrique; wcom(a) est 3-transitive

wrort(A) est symétrique; si S est total alors wrort(A) est irréflexive

wlort(A) est faiblement co-réflexive et symétrique

Relations dérivées

S=(OB,AT), A,BAT, Bool expression booléenne, R{R(=,,Bool), R(≠,,Bool)} :

R()=OBOB

R(AB)=R(A)R(B)

Si AB alors R(A)R(B)

Relations dérivées

S=(OB,AT), A,BAT, Bool expression booléenne, R{R(=,,Bool), R(≠,,Bool)} :

R()=R(AB)=R(A)R(B)

Si AB alors R(A)R(B)

Relations dérivées

ind(a) : {x1, x2}, {x3, x4}, {x5, x6, x7}

ind(b) : {x1, x3}, {x2, x4}, {x5}, {x6, x7}

ind(a)ind(b) : {x1}, {x2}, {x3}, {x4}, {x5}, {x6, x7}

ind(a)ind(b) : {x1, x2, x3, x4}, {x5, x6, x7}

a b

x1 1 1

x2 1 2

x3 2 1

x4 2 2

x5 3 3

x6 3 4

x7 3 4

Relations dérivées

S=(OB,AT), x,yOB, A,BAT :cx,y={aAT : x div(a) y}

cx,x=

cx,y=cy,x

x ind(A) y ssi cx,yA=

Relations dérivées

a b c d e

x1 - + + + +

x2 + 0 - - -

x3 + - - - 0

x4 0 - - 0 -

x5 + - - - -

x6 0 + - 0 +

Relations dérivées

ind(a) : {x1}, {x2, x3, x5}, {x4, x6}

ind(b) : {x1, x6}, {x2}, {x3, x4, x5}

ind(c) : {x1}, {x2, x3, x4, x5, x6}

ind(d) : {x1}, {x2, x3, x5}, {x4, x6}

ind(e) : {x1, x6}, {x2, x4, x5}, {x3}

Relations dérivées

x1 x2 x3 x4 x5 x6

x1 // // // // //

x2 AT // // // //

x3 AT {b, e} // // //

x4 AT {a, b, d}

{a, d, e}

// //

x5 AT {b} {e} {a, d} //

x6 {a, c, d}

{a, b, d, e}

{a, b, d, e}

{b, e} {a, b, d, e}

Relations dérivées

S=(OB,AT), x,yOB :x fin y ssi x fin(AT) y

x bin y ssi x bin(AT) y

x wfin y ssi x wfin(AT) y

x wbin y ssi x wbin(AT) y

x sim y ssi x sim(AT) y

x nim y ssi x nim(AT) y

x wsim y ssi x wsim(AT) y

x wnim y ssi x wnim(AT) y

Relations dérivées

S=(OB,AT), x,yOB :x fin x

Si x fin y et y fin z alors x fin z

Si x sim y alors y sim y

Si x sim y alors y sim x

Si x sim y et y fin z alors x sim z

x sim x ou x wfin y

x sim y ou y wnim z ou x wfin z

Relations dérivées

S=(OB,AT), x,yOB :x wfin x

Si x wfin y et y fin z alors x wfin z

Si x fin y et y wfin z alors x wfin z

Si x wsim y alors y wsim y

Si x wsim y alors y wsim x

Si x wsim y et y fin z alors x wsim z

x wsim x ou x fin y

x wsim y ou y wnim z ou x fin z

Relations dérivées

S=(OB,AT), x,yOB :x bin x

Si x bin y et y bin z alors x bin z

Si x nim y alors y nim y

Si x nim y alors y nim x

Si x nim y et y bin z alors x nim z

x nim x ou x wbin y

x nim y ou y wsim z ou x wbin z

Relations dérivées

S=(OB,AT), x,yOB :x wbin x

Si x wbin y et y bin z alors x wbin z

Si x bin y et y wbin z alors x wbin z

Si x wnim y alors y wnim y

Si x wnim y alors y wnim x

Si x wnim y et y bin z alors x wnim z

x wnim x ou x bin y

x wnim y ou y wsim z ou x bin z

Relations dérivées

S=(OB,PR,f), x,yOB :x fin y ssi f(x)f(y)

x bin y ssi f(x)f(y)

x sim y ssi f(x)-f(y)

x nim y ssi f(x)-f(y)

Relations dérivées

S=(OB,PR,f), x,yOB :x fin x

Si x fin y et y fin z alors x fin z

Si x sim y alors y sim y

Si x sim y alors y sim x

Si x sim y et y fin z alors x sim z

x sim x ou x fin y

x sim y ou y nim z ou x fin z

Relations dérivées

S=(OB,PR,f), x,yOB :x bin x

Si x bin y et y bin z alors x bin z

Si x nim y alors y nim y

Si x nim y alors y nim x

Si x nim y et y bin z alors x nim z

x nim x ou x bin y

x nim y ou y sim z ou x bin z

Opérateurs dérivés

S=(OB,AT), XOB, A,BAT :L(A)(X)={ind(A)(x) : xOB et ind(A)(x)X}

U(A)(X)={ind(A)(x) : xOB et ind(A)(x)-X}

L(A)(X)=-U(A)(-X)

U(A)(X)=-L(A)(-X)

Si AB alors :ind(A)ind(B)

L(A)(X)L(B)(X)

U(A)(X)U(B)(X)

Opérateurs dérivés

S=(OB,AT), X,YOB, AAT :L(A)(X)X

XU(A)(X)

L(A)(XY)=L(A)(X)L(A)(Y)

U(A)(XY)=U(A)(X)U(A)(Y)

L(A)(L(A)(X))=L(A)(X)

U(A)(U(A)(X))=U(A)(X)

L(A)(OB)=OB

U(A)()=

Opérateurs dérivés

S=(OB,AT), XOB, A,BAT :L(AB)(X)L(A)(X)L(B)(X)

U(AB)(X)U(A)(X)U(B)(X)

L(AB)(X)L(A)(X)L(B)(X)

U(AB)(X)U(A)(X)U(B)(X)

Si X≠OB alors L()(X)=; L()(OB)=OB

Si X≠ alors U()(X)=OB; U()()=

Opérateurs dérivésTaille Distance Satellite

Mercure S Proche Non

Vénus S Proche Non

Terre S Proche Oui

Mars S Proche Oui

Jupiter L Lointaine Oui

Saturne L Lointaine Oui

Uranus M Lointaine Oui

Neptune M Lointaine Oui

Pluton S Lointaine Oui

Opérateurs dérivés

A={Taille, Distance, Satellite}, X={Mercure, Vénus, Jupiter, Saturne, Pluton} :

L(A)(X)={Jupiter, Saturne}

U(A)(X)={Mercure, Vénus, Terre, Mars, Jupiter, Saturne, Pluton}

Opérateurs dérivés

S=(OB,AT), XOB, A,BAT :Pos(A)(X)=L(A)(X)

Neg(A)(X)=-U(A)(X)

BL(A)(X)=X-L(A)(X)

BU(A)(X)=-XU(A)(X)

B(A)(X)=BL(A)(X)BU(A)(X)

Si AB alors :BL(A)(X)BL(B)(X)

BU(A)(X)BU(B)(X)

Opérateurs dérivés

S=(OB,AT), X,YOB, AAT :BL(A)(XY)BL(A)(X)BL(A)(Y)

BU(A)(XY)BU(A)(X)BU(A)(Y)

BL(A)(XY)BL(A)(X)BL(A)(Y)

BU(A)(XY)BU(A)(X)BU(A)(Y)

BL(A)()=BU(A)()=OB

BL(A)(OB)=OB

BU(A)(OB)=

Opérateurs dérivés

S=(OB,AT), XOB, A,BAT :BL(AB)(X)BL(A)(X)BL(B)(X)

BU(AB)(X)BU(A)(X)BU(B)(X)

BL(AB)(X)BL(A)(X)BL(B)(X)

BU(AB)(X)BU(A)(X)BU(B)(X)

Si X≠OB alors BL()(X)=X; BL()(OB)=Si X≠ alors BU()(X)=-X; BU()()=

Logiques dérivées

Logique SIM1 :

Syntaxe :::=P()[fin][bin][sim][nim]

Sémantique :M=((OB,PR,f),V)

V(P)OB

M, x sat [fin] ssi yW si x fin y alors M, y sat …

M, x sat [all] ssi yW M, y sat

Logiques dérivées

Logique SIM2 :

Syntaxe :::=P()[fin][bin][wfin][wbin][sim]

[nim][wsim][wnim]

Sémantique :M=((OB,AT),V)

V(P)OB

M, x sat [fin] ssi yW si x fin y alors M, y sat …

Logiques dérivées

Logique S4+5 :Syntaxe :

::=P()[ind][fin][bin]

Sémantique :M=((OB,PR,f),V)

V(P)OB

M, x sat [ind] ssi yW si x ind y alors M, y sat …

Logiques dérivées

Logique IL :Syntaxe :

::=P()[ind][fin][sim]

Sémantique :M=((OB,PR,f),V)

V(P)OB

M, x sat [ind] ssi yW si x ind y alors M, y sat …

Logiques dérivées

Logique MLSim :Syntaxe :

::=P()[ind][wind][wsim]

Sémantique :M=((OB,AT),V)

V(P)OB

M, x sat [ind] ssi yW si x ind y alors M, y sat …

Logiques dérivées

REL :Syntaxe :

Bool::=e-Bool(BoolBool)

::=ind(Bool)()

::=P()[]

Sémantique :M=((OB,AT),V)

V(e)AT

V(P)OB

R(ind(Bool))=ind(V(Bool))

R()=R()R()

M, x sat [] ssi yW si x R() y alors M, y sat

Logiques dérivées

DAL :Syntaxe :

Bool::=e-Bool(BoolBool)::=ind(Bool)()()::=P()[]

Sémantique :M=((OB,AT),V)V(e)ATV(P)OBR(ind(Bool))=ind(V(Bool))R()=R()R()R()=R()R()M, x sat [] ssi yW si x R() y alors M, y sat

Conclusion

Représentabilité des relations dérivées

Axiomatisation et complétude des logiques dérivées

Décidabilité et complexité des logiques dérivées