• Aucun résultat trouvé

August12,2014 AntoineAmarilli Open-WorldFiniteQueryAnsweringUnderNumberRestrictions

N/A
N/A
Protected

Academic year: 2022

Partager "August12,2014 AntoineAmarilli Open-WorldFiniteQueryAnsweringUnderNumberRestrictions"

Copied!
99
0
0

Texte intégral

(1)

Introduction Existing approaches Result Proof ideas Conclusion

Open-World Finite Query Answering Under Number Restrictions

Antoine Amarilli1,2

1Télécom ParisTech, Paris, France

2University of Oxford, Oxford, United Kingdom

August 12, 2014

(2)

Introduction Existing approaches Result Proof ideas Conclusion

Open-world query answering

Evaluatequery q overinstance I,open-world assumption:

The instanceIiscorrectbutincomplete

Consider all possiblecompletionsJsatisfyingconstraintsΣ Certain answersto queryqamong those completions

Formally: I,Σ|=qifJ|=qfor allJI s.t.J|=Σ

Constraints:

TGDs, especiallyinclusion dependencies (ID)

Unaryinclusion dependencies (UID):R[A]S[B]

Number restrictions, especiallyfunctional dependencies(FD) Finitevs unrestricted QA

Instance: List of employees

Constraint 1: Each employee reviews some employee (UID) Constraint 2: At most one reviewer per employee (FD)

Query: Are all employees reviewed?

(3)

Introduction Existing approaches Result Proof ideas Conclusion

Open-world query answering

Evaluatequery q overinstance I,open-world assumption:

The instanceIiscorrectbutincomplete

Consider all possiblecompletionsJsatisfyingconstraintsΣ Certain answersto queryqamong those completions

Formally: I,Σ|=qifJ|=qfor allJI s.t.J|=Σ Constraints:

TGDs, especiallyinclusion dependencies (ID)

Unaryinclusion dependencies (UID):R[A]S[B]

Number restrictions, especiallyfunctional dependencies(FD)

Finitevs unrestricted QA Instance: List of employees

Constraint 1: Each employee reviews some employee (UID) Constraint 2: At most one reviewer per employee (FD)

Query: Are all employees reviewed?

(4)

Introduction Existing approaches Result Proof ideas Conclusion

Open-world query answering

Evaluatequery q overinstance I,open-world assumption:

The instanceIiscorrectbutincomplete

Consider all possiblecompletionsJsatisfyingconstraintsΣ Certain answersto queryqamong those completions

Formally: I,Σ|=qifJ|=qfor allJI s.t.J|=Σ Constraints:

TGDs, especiallyinclusion dependencies (ID)

Unaryinclusion dependencies (UID):R[A]S[B]

Number restrictions, especiallyfunctional dependencies(FD) Finitevs unrestricted QA

Instance: List of employees

Constraint 1: Each employee reviews some employee (UID) Constraint 2: At most one reviewer per employee (FD)

(5)

Introduction Existing approaches Result Proof ideas Conclusion

Table of Contents

1 Introduction

2 Existing approaches

3 Result

4 Proof ideas

5 Conclusion

(6)

Introduction Existing approaches Result Proof ideas Conclusion

Undecidability barrier

Entailment of IDsandFDs is undecidable[Mitchell, 1983]

Already for binary IDs andunary FDs:

R[A,B]⊆S[C,D],R[A]→R[B]

QA (finite or not) is also undecidable[Calì et al., 2003]

(Remark: this proof requires constants in the query)

We can’t have everything

(7)

Introduction Existing approaches Result Proof ideas Conclusion

Undecidability barrier

Entailment of IDsandFDs is undecidable[Mitchell, 1983]

Already for binary IDs andunary FDs:

R[A,B]⊆S[C,D],R[A]→R[B]

QA (finite or not) is also undecidable[Calì et al., 2003]

(Remark: this proof requires constants in the query)

We can’t have everything

(8)

Introduction Existing approaches Result Proof ideas Conclusion

Idea 1: Separability

The chasefor IDs: universal model

Intuition: apply all IDs with fresh elements

FDs are separablefrom IDs if they do not impact the chase Sufficient conditions for separability, e.g., non-conflicting:

exported positions must not be astrict supersetof a key When separable, we canignore FDs (just check them onI)

The chase is infinitein general so it doesn’t work in the finite

Finite QA undecidablefor separable IDs/FDs [Rosati, 2006] (intuition: their finite consequencesmay not be separable)

(9)

Introduction Existing approaches Result Proof ideas Conclusion

Idea 1: Separability

The chasefor IDs: universal model

Intuition: apply all IDs with fresh elements

FDs are separablefrom IDs if they do not impact the chase Sufficient conditions for separability, e.g., non-conflicting:

exported positions must not be astrict supersetof a key When separable, we canignore FDs (just check them onI)

The chase is infinitein general so it doesn’t work in the finite

Finite QA undecidablefor separable IDs/FDs [Rosati, 2006]

(intuition: their finite consequencesmay not be separable)

(10)

Introduction Existing approaches Result Proof ideas Conclusion

Idea 2: Finite controllability

Finite controllability means that finite and infinite QA coincide IDs are finitely controllable [Rosati, 2006]

Construction: finite chase(chase with distant reuses) Generalizes to the guarded fragment[Barany et al., 2010]

(Guardedmeans that/must be covered by an atom)

Intuition: query acyclificationand cycleblowup Generalises to IDs/FDs with foreign keyscondition [Rosati, 2006]

FDs are not expressiblein the guarded fragment.

IDs/FDs are notfinitely controllable!

(11)

Introduction Existing approaches Result Proof ideas Conclusion

Idea 2: Finite controllability

Finite controllability means that finite and infinite QA coincide IDs are finitely controllable [Rosati, 2006]

Construction: finite chase(chase with distant reuses) Generalizes to the guarded fragment[Barany et al., 2010]

(Guardedmeans that/must be covered by an atom)

Intuition: query acyclificationand cycleblowup Generalises to IDs/FDs with foreign keyscondition [Rosati, 2006]

FDs are not expressiblein the guarded fragment.

IDs/FDs are notfinitely controllable!

(12)

Introduction Existing approaches Result Proof ideas Conclusion

Idea 3: Arity-two

Finite and unrestricted QA decidablein arity-two for the two-variable guarded fragment and counting constraints [Pratt-Hartmann, 2009]

Intuition: again, encode the acyclic partof the query Satisfiabilitydecidableby reduction to an inequation system Explicit construction for DLs [Ibáñez-García et al., 2014]

Only forarity-two signatures

No clear way to generalizeto higher arity

(13)

Introduction Existing approaches Result Proof ideas Conclusion

Idea 3: Arity-two

Finite and unrestricted QA decidablein arity-two for the two-variable guarded fragment and counting constraints [Pratt-Hartmann, 2009]

Intuition: again, encode the acyclic partof the query Satisfiabilitydecidableby reduction to an inequation system Explicit construction for DLs [Ibáñez-García et al., 2014]

Only forarity-two signatures

No clear way to generalizeto higher arity

(14)

Introduction Existing approaches Result Proof ideas Conclusion

Table of Contents

1 Introduction

2 Existing approaches

3 Result

4 Proof ideas

5 Conclusion

(15)

Introduction Existing approaches Result Proof ideas Conclusion

Our setting

So:

FiniteQA

TGDs and EGDs withinteraction (not FC) High-aritysignatures

Can we haveall three?

What if we restrict the language to UIDsandFDs? Nodirect encodingto arity-two (unlike UIDs/UKDs...) UIDsare important IDs in practice

UIDsmatch the DL intuition UIDsare less expressive than BIDs and...

(16)

Introduction Existing approaches Result Proof ideas Conclusion

Our setting

So:

FiniteQA

TGDs and EGDs withinteraction (not FC) High-aritysignatures

Can we haveall three?

What if we restrict the language to UIDsandFDs?

Nodirect encodingto arity-two (unlike UIDs/UKDs...) UIDsare important IDs in practice

UIDsmatch the DL intuition UIDsare less expressive than BIDs and...

(17)

Introduction Existing approaches Result Proof ideas Conclusion

Our setting

So:

FiniteQA

TGDs and EGDs withinteraction (not FC) High-aritysignatures

Can we haveall three?

What if we restrict the language to UIDsandFDs?

Nodirect encodingto arity-two (unlike UIDs/UKDs...) UIDsare important IDs in practice

UIDsmatch the DL intuition UIDsare less expressive than BIDs and...

(18)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure for UIDs and FDs

Implication of UIDs/FDs isdecidable and PTIME [Cosmadakis et al., 1990]

Unrestricted and finite do not coincide

For unrestricted: implication of FDs and UIDs in isolation For finite: addcycle reversal:

Consider onlyunary FDs: R[i]S[j] WhenR[i]S[j]we have|R[i]| ≤ |S[j]| WhenR[i]S[j] we have|R[i]| ≥ |S[j]| Inequalitycycleswith this encoding

In the finite, such cycles must bereversed

(19)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure for UIDs and FDs

Implication of UIDs/FDs isdecidable and PTIME [Cosmadakis et al., 1990]

Unrestricted and finite do not coincide

For unrestricted: implication of FDs and UIDs in isolation

For finite: addcycle reversal:

Consider onlyunary FDs: R[i]S[j] WhenR[i]S[j]we have|R[i]| ≤ |S[j]| WhenR[i]S[j] we have|R[i]| ≥ |S[j]| Inequalitycycleswith this encoding

In the finite, such cycles must bereversed

(20)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure for UIDs and FDs

Implication of UIDs/FDs isdecidable and PTIME [Cosmadakis et al., 1990]

Unrestricted and finite do not coincide

For unrestricted: implication of FDs and UIDs in isolation For finite: addcycle reversal:

Consider onlyunary FDs: R[i]S[j]

WhenR[i]S[j]we have|R[i]| ≤ |S[j]| WhenR[i]S[j]we have|R[i]| ≥ |S[j]| Inequalitycycleswith this encoding

In the finite, such cycles must bereversed

(21)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure for UIDs and FDs

Implication of UIDs/FDs isdecidable and PTIME [Cosmadakis et al., 1990]

Unrestricted and finite do not coincide

For unrestricted: implication of FDs and UIDs in isolation For finite: addcycle reversal:

Consider onlyunary FDs: R[i]S[j]

WhenR[i]S[j]we have|R[i]| ≤ |S[j]| WhenR[i]S[j]we have|R[i]| ≥ |S[j]| Inequalitycycleswith this encoding

In the finite, such cycles must bereversed

(22)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( )

R( )

R[2]R[2]R[1]R[1]

|R[2]| ≤ |R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]| Add R[1]⊆R[2] Add

No finite model!

(23)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( ) R( )

R( )

R[2]R[2]R[1]R[1]

|R[2]| ≤ |R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]| Add R[1]⊆R[2] Add

No finite model!

(24)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( ) R( ) R( )

R( )

R[2]R[2]R[1]R[1]

|R[2]| ≤ |R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]| Add R[1]⊆R[2] Add

No finite model!

(25)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( ) R( ) R( ) R( )

R( )

R[2]⊆R[1]

R[2]→R[1]

|R[2]| ≤ |R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]| Add R[1]⊆R[2] Add

No finite model!

(26)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( ) R( ) R( ) R( )

R( )

R[2]⊆R[1]

R[2]→R[1]

|R[2]| ≤ |R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]| Add R[1]⊆R[2] Add

No finite model!

(27)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( ) R( ) R( ) R( )

R( )

R[2]⊆R[1]

R[2]→R[1]

|R[2]| ≤ |R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]|

Add R[1]⊆R[2] Add

No finite model!

(28)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( ) R( ) R( ) R( )

R( )

R[2]⊆R[1]

R[2]→R[1]

|R[2]| ≤ |R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]| Add R[1]⊆R[2]

Add R[1]→R[2]

No finite model!

(29)

Introduction Existing approaches Result Proof ideas Conclusion

Finite closure example

I

R( ) R( ) R( ) R( )

R( )

!

R[2]R[2]|R[2]| ≤ |R[1]R[1]R[1]|

|R[1]| ≤ |R[2]|

|R[2]|=|R[1]| Add R[1]⊆R[2]

Add R[1]→R[2]

No finite model!

(30)

Introduction Existing approaches Result Proof ideas Conclusion

Finite controllability up to closure

In arity-two, UIDs/UFDs finitely controllableup to finite closure [Rosati, 2008, Ibáñez-García et al., 2014]

To perform finite QAon instance I, UIDs/UFDsΣ:

ComputeΣ thefinite closureofΣ Check ifIsatisfies the UFDsofΣ Performunrestricted QA withIandΣ

Easy because UIDs/UFDs arenon-conflictingsoseparable

Does this also hold with higher-arityrelations and FDs?

(31)

Introduction Existing approaches Result Proof ideas Conclusion

Finite controllability up to closure

In arity-two, UIDs/UFDs finitely controllableup to finite closure [Rosati, 2008, Ibáñez-García et al., 2014]

To perform finite QAon instance I, UIDs/UFDsΣ:

ComputeΣ thefinite closureofΣ Check ifIsatisfies the UFDsofΣ Performunrestricted QA withIandΣ

Easy because UIDs/UFDs arenon-conflictingsoseparable

Does this also hold with higher-arityrelations and FDs?

(32)

Introduction Existing approaches Result Proof ideas Conclusion

The result

Theorem

UIDs and FDs, though not finitely controllable, are finitely controllable up to finite closure, on arbitrary arity signatures.

It suffices to show that for any k,I, and Σ, there is afinite completionofIbyΣ which isuniversalfor queries of size≤k

(33)

Introduction Existing approaches Result Proof ideas Conclusion

The result

Theorem

UIDs and FDs, though not finitely controllable, are finitely controllable up to finite closure, on arbitrary arity signatures.

It suffices to show that for any k,I, and Σ, there is a finite completionofIbyΣ which isuniversalfor queries of size≤k

(34)

Introduction Existing approaches Result Proof ideas Conclusion

Table of Contents

1 Introduction

2 Existing approaches

3 Result

4 Proof ideas

5 Conclusion

(35)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase

R( ) R( ) R( )

Considerk-neighborhood equivalence

Quotient the chase by this relation May violate FDs

Notuniversal (cycles) even for ≤k Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(36)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase

R( ) R( ) R( )

Considerk-neighborhood equivalence Quotient the chase by this relation

May violate FDs

Notuniversal (cycles) even for ≤k Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(37)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase chase/≡2

R( ) R( ) R( )

R( ) R( ) R( ) R( )

Considerk-neighborhood equivalence Quotient the chase by this relation

May violate FDs

Notuniversal (cycles) even for ≤k Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(38)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase chase/≡2

R( ) R( ) R( )

R( ) R( ) R( ) R( )

Considerk-neighborhood equivalence Quotient the chase by this relation May violate FDs

Notuniversal (cycles) even for ≤k Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(39)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase chase/≡2

R( ) R( ) R( )

R( ) R( ) R( ) R( ) !

Considerk-neighborhood equivalence Quotient the chase by this relation May violate FDs

Notuniversal (cycles) even for ≤k Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(40)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase chase/≡2

R( ) R( ) R( )

R( ) R( ) R( ) R( )

Considerk-neighborhood equivalence Quotient the chase by this relation May violate FDs

Notuniversal (cycles) even for≤k

Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(41)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase chase/≡2

R( ) R( ) R( )

R( ) R( ) R( ) R( ) !

Considerk-neighborhood equivalence Quotient the chase by this relation May violate FDs

Notuniversal (cycles) even for≤k

Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(42)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase chase/≡2

R( ) R( ) R( )

R( ) R( ) R( ) R( )

Considerk-neighborhood equivalence Quotient the chase by this relation May violate FDs

Notuniversal (cycles) even for≤k Yet universal for ≤k acyclic queries

Keep ahomomorphismto this quotient

(43)

Introduction Existing approaches Result Proof ideas Conclusion

Quotienting the chase

R[2] ⊆ R[1]

R( )

chase chase/≡2

R( ) R( ) R( )

R( ) R( ) R( ) R( )

Considerk-neighborhood equivalence Quotient the chase by this relation May violate FDs

Notuniversal (cycles) even for≤k Yet universal for ≤k acyclic queries Keep ahomomorphismto this quotient

(44)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

Follow thechase

Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous Reuseclusters for non-dangerous created byinitial chasing

(45)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

Follow thechase

Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous Reuseclusters for non-dangerous created byinitial chasing

(46)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

S( ) * * * *

Follow thechase

Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous Reuseclusters for non-dangerous created byinitial chasing

(47)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

S( ) * * * *

Follow thechase Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous Reuseclusters for non-dangerous created byinitial chasing

(48)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

S( )

danger

non-danger

* * * *

Follow thechase Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous Reuseclusters for non-dangerous created byinitial chasing

(49)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

S( )

danger

non-danger

* * * *

Follow thechase Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous

Reuseclusters for non-dangerous created byinitial chasing

(50)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

S( )

danger

non-danger

* *

Follow thechase Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous

Reuseclusters for non-dangerous created byinitial chasing

(51)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

S( )

danger

non-danger

* *

Follow thechase Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous Reuseclusters for non-dangerous created byinitial chasing

(52)

Introduction Existing approaches Result Proof ideas Conclusion

Frugal chase steps

R( )

R[3] ⊆ S[1]

S( )

danger

non-danger initial segment

Follow thechase Partition positions:

Exportedposition Dangerouspositions (determiners for an UFD) Non-dangerouspositions (the rest)

Createfresh elementsfor dangerous Reuseclusters for non-dangerous created byinitial chasing

(53)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths... ... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

(54)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

(55)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( )

R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

(56)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

(57)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

(58)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

⊆ ←

(59)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

⊆ ←

(60)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( )

R( ) R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

⊆ ←

(61)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( ) R( ) R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

⊆ ←

(62)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements)

Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( ) R( ) R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

⊆ ←

(63)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements)

Morecomplex if many positions of many relations are involved... Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( ) R( ) R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

R( )

⊆ ←

(64)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplexif many positions of many relations are involved...

Uses cardinalityalong cycles... ... but also initial chasing

to force “generic neighborhoods”

I R( ) R( ) R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

R( )

⊆ ←

(65)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplexif many positions of many relations are involved...

Uses cardinalityalong cycles...

... but also initial chasing

to force “generic neighborhoods”

I R( ) R( ) R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

R( )

⊆ ←

(66)

Introduction Existing approaches Result Proof ideas Conclusion

Blueprint

Infinite functional paths...

... but only within acycle

Connect it back(match elements) Morecomplexif many positions of many relations are involved...

Uses cardinalityalong cycles...

... but also initial chasing

to force “generic neighborhoods”

I R( ) R( ) R( )

R( ) R( ) A( )

R[2] ⊆ R[1] R[2] → R[1]

R( )

⊆ ←

(67)

Introduction Existing approaches Result Proof ideas Conclusion

Dependency graph

R( ) * * * * ( ) * *

S

Build a DAGon the dependencycycles

We never create fresh elements for ahigher dependencyin the DAG Satisfy cycles along a topological sort

Finite extension that satisfies UIDs/UFDs with ahomomorphism to the quotient

(68)

Introduction Existing approaches Result Proof ideas Conclusion

Dependency graph

R( ) * * * * ( ) * *

S

Build a DAGon the dependencycycles

We never create fresh elements for ahigher dependencyin the DAG Satisfy cycles along a topological sort

Finite extension that satisfies UIDs/UFDs with ahomomorphism to the quotient

(69)

Introduction Existing approaches Result Proof ideas Conclusion

Dependency graph

R( ) * * * * ( ) * *

S

Build a DAGon the dependencycycles

We never create fresh elements for ahigher dependencyin the DAG Satisfy cycles along a topological sort

Finite extension that satisfies UIDs/UFDs with ahomomorphism to the quotient

(70)

Introduction Existing approaches Result Proof ideas Conclusion

Dependency graph

R( ) * * * * ( ) * *

S

Build a DAGon the dependencycycles We never create fresh elements

for ahigher dependencyin the DAG

Satisfy cycles along a topological sort

Finite extension that satisfies UIDs/UFDs with ahomomorphism to the quotient

(71)

Introduction Existing approaches Result Proof ideas Conclusion

Dependency graph

R( ) * * * * ( ) * *

S

Build a DAGon the dependencycycles We never create fresh elements

for ahigher dependencyin the DAG Satisfy cycles along a topological sort

Finite extension that satisfies UIDs/UFDs with ahomomorphism to the quotient

(72)

Introduction Existing approaches Result Proof ideas Conclusion

Dependency graph

R( ) * * * * ( ) * *

S

Build a DAGon the dependencycycles We never create fresh elements

for ahigher dependencyin the DAG Satisfy cycles along a topological sort

Finite extension that satisfies UIDs/UFDs with ahomomorphism to the quotient

(73)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

Ignored so far

May only be triggered at non-dangerous reuses

Idea: if non-dangerousbut dangerous for higher-arity FD then no unary key

R( )

export non-danger

Idea:

create manyreuse candidates combine them in differentpatterns

Lemma: if no UKD then O(n>1) patterns forO(n) elements

(74)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

Ignored so far

May only be triggered at non-dangerous reuses

Idea: if non-dangerousbut dangerous for higher-arity FD then no unary key

R( )

export non-danger

!

Idea:

create manyreuse candidates combine them in differentpatterns

Lemma: if no UKD then O(n>1) patterns forO(n) elements

(75)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

Ignored so far

May only be triggered at non-dangerous reuses

Idea: if non-dangerousbut dangerous for higher-arity FD then no unary key

R( )

export non-danger

!

Idea:

create manyreuse candidates

(76)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

I

(77)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( ) I

reuse candidates

R( )

R( )

(78)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( ) I

reuse candidates O(n)

elements

O(n>1)

patterns

R( )

R( )

(79)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( )

R( ) I

reuse candidates

...

O(n) elements

O(n>1)

patterns

R( )

R( )

(80)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( )

R( ) I

reuse candidates

...

O(n) elements

O(n>1)

patterns

R( )

R( )

(81)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( )

R( ) R( ) I

reuse candidates

...

O(n) elements

O(n>1)

patterns

R( )

R( )

(82)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( )

R( ) R( ) I

reuse candidates

...

O(n) elements

O(n>1)

patterns

R( )

R( )

(83)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( )

R( ) R( ) I

reuse candidates

...

O(n) elements

O(n>1)

patterns

R( )

R( )

(84)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( )

R( ) R( ) I

reuse candidates

...

O(n) elements

O(n>1)

patterns

R( )

R( )

(85)

Introduction Existing approaches Result Proof ideas Conclusion

Higher-arity FDs

R( )

R( ) R( ) I

reuse candidates

...

O(n) elements

O(n>1)

patterns

O(n) reuses

R( )

R( )

(86)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles

Usually: product with a group ofhigh girth[Otto, 2002]

Ensures all non-instancecyclesare large

We cannot do it directlyas it would violate theFDs

However, intuition:

FD violations can only appear onnon-dangerous reuses... ... and those facts are mapped to thesame quotient fact ... so cycles on them areself-homomorphicin the quotient

R( ) R( )

model M

non-danger reuses

Blow up cycles, but not those cycles

(87)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles

Usually: product with a group ofhigh girth[Otto, 2002]

Ensures all non-instancecyclesare large

We cannot do it directlyas it would violate theFDs However, intuition:

FD violations can only appear onnon-dangerous reuses...

... and those facts are mapped to thesame quotient fact ... so cycles on them areself-homomorphicin the quotient

R( ) R( )

model M

non-danger reuses

Blow up cycles, but not those cycles

(88)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles

Usually: product with a group ofhigh girth[Otto, 2002]

Ensures all non-instancecyclesare large

We cannot do it directlyas it would violate theFDs However, intuition:

FD violations can only appear onnon-dangerous reuses...

... and those facts are mapped to thesame quotient fact ... so cycles on them areself-homomorphicin the quotient

R( ) R( )

model M chase/≡k

non-danger reuses

R( )

h

Blow up cycles, but not those cycles

(89)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles

Usually: product with a group ofhigh girth[Otto, 2002]

Ensures all non-instancecyclesare large

We cannot do it directlyas it would violate theFDs However, intuition:

FD violations can only appear onnon-dangerous reuses...

... and those facts are mapped to thesame quotient fact ... so cycles on them areself-homomorphicin the quotient

R( ) R( )

model M chase/≡k

non-danger reuses

R( )

h

(90)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles via the product

chase/≡

k

k-acyclic-

universal

(91)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles via the product

chase/≡

k

hom

k-acyclic- universal

M

satisfies Σ*

safe overlaps

(92)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles via the product

chase/≡

k

hom

k-acyclic- universal

M

satisfies Σ*

safe overlaps

k-universal

chase/≡ ×G

k

M ×G

prod prod

satisfies Σ*

(93)

Introduction Existing approaches Result Proof ideas Conclusion

Blowing up cycles via the product

chase/≡

k

hom

k-acyclic- universal

M

satisfies Σ*

safe overlaps

k-universal

chase/≡ ×G

k

M ×G

prod prod

hom

satisfies Σ*

(94)

Introduction Existing approaches Result Proof ideas Conclusion

Table of Contents

1 Introduction

2 Existing approaches

3 Result

4 Proof ideas

5 Conclusion

(95)

Introduction Existing approaches Result Proof ideas Conclusion

Summary

UIDs/FDs finitely controllable up to closure Maindifferences with arity-two:

Clustersfor non-dangerous reuses Combinationsfor higher-arity FDs More complexreconnexionsalong cycles

More elaboratecycle elimination(via the quotient)

Generalize to richer unary languagesfor high arity?

Need construction forfinite implication Does thefinite model constructionadapt?

Thanks for your attention!

(96)

Introduction Existing approaches Result Proof ideas Conclusion

Summary

UIDs/FDs finitely controllable up to closure Maindifferences with arity-two:

Clustersfor non-dangerous reuses Combinationsfor higher-arity FDs More complexreconnexionsalong cycles

More elaboratecycle elimination(via the quotient)

Generalize to richer unary languagesfor high arity?

Need construction forfinite implication Does thefinite model constructionadapt?

Thanks for your attention!

(97)

References I

Barany, V., Gottlob, G., and Otto, M. (2010).

Querying the guarded fragment.

InLICS.

Calì, A., Lembo, D., and Rosati, R. (2003).

On the decidability and complexity of query answering over inconsistent and incomplete databases.

InPODS.

Cosmadakis, S. S., Kanellakis, P. C., and Vardi, M. Y. (1990).

Polynomial-time implication problems for unary inclusion dependencies.

JACM, 37(1).

(98)

References II

Ibáñez-García, Y., Lutz, C., and Schneider, T. (2014).

Finite model reasoning in horn description logics.

InKR.

Mitchell, J. C. (1983).

The implication problem for functional and inclusion dependencies.

Information and Control, 56(3).

Otto, M. (2002).

Modal and guarded characterisation theorems over finite transition systems.

InLICS.

(99)

References III

Pratt-Hartmann, I. (2009).

Data-complexity of the two-variable fragment with counting quantifiers.

Inf. Comput., 207(8).

Rosati, R. (2006).

On the decidability and finite controllability of query processing in databases with incomplete information.

InPODS.

Rosati, R. (2008).

Finite model reasoning in DL-Lite.

InESWC.

Références

Documents relatifs

but not finitely controllable (see above; [Rosati, 2006]) (Finite) open-world query answering is decidable for IDs and FDs with relations of arity ≤ 2.. [Pratt-Hartmann,

Roughly speaking, these approaches rewrite the ontology and/or the query into another formalism, typically a union of conjunctive queries or a datalog program; the relevant answers

3 To the best of our knowledge, and to our surprise, the fact that safe PDB queries have linear-time data complexity, and that the dichotomy of [5] is between linear time (not

In this talk, we focus on rule-based ontol- ogy languages, and we demonstrate the tight connection between classical and consistent query answering.. More precisely, we focus on

We demonstrate how openQA can be used to implement, integrate, evaluate and instantiate question answering systems easily by combining two state-of-the-art question

We hence integrate two extensions of classical ontology-based query answering, motivated by the often temporal and/or fuzzy nature of real-world data.. We also propose an algorithm

In this work, which is a short version of [10], we performed an in-depth complexity analysis of the problem of consistent query answering under the main decidable classes of

endomorphism, open continuous map, complete Heyting homomor- phism, strong graph homomorphism, Hausdorff property.. The authors gratefully acknowledge the support of