• Keine Ergebnisse gefunden

Goethe-Universität Frankfurt am Main 11. Dezember 2012 Institut für Informatik

N/A
N/A
Protected

Academic year: 2021

Aktie "Goethe-Universität Frankfurt am Main 11. Dezember 2012 Institut für Informatik"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Goethe-Universität Frankfurt am Main 11. Dezember 2012 Institut für Informatik

Theorie komplexer Systeme Prof. Dr. Nicole Schweikardt

Logik und Datenbanken

Wintersemester 2012/13

Übungsblatt 7

Zu bearbeiten bis Donnerstag, 20. Dezember 2012

Aufgabe 1: (30 Punkte)

(a) Betrachten Sie das Datalog-Programm P, welches aus folgenden Regeln besteht.

R(x) ← S(x)

B(x) ← R(y), E(x, y) R(x) ← B(y), E(x, y) F (x) ← B(x), R(x)

In einer Datenbankinstanz I vom Schema edb(P) sei ein nicht leerer, ungerichter Graph G = (V, E) modelliert, derart das {u, v} ∈ V (G) genau dann, wenn die Tupel (u, v), (v, u) in I(E) und ∅ 6= I(S) ⊆ V .

Was bedeutet es für einen zusammenhängenden Graphen, falls J (P, F ) K (I) = ∅?

(b) Finden Sie zwei Datalog-Programme P

1

und P

2

mit edb(P

1

) = edb(P

2

) und idb(P

1

) = idb(P

2

), so dass für R := edb(P

1

) = edb(P

2

) gilt:

(i) Es gibt eine Datenbank J ∈ inst(R) so dass J P

1

K (J) 6⊆ J P

2

K (J).

(D.h.: P

1

6⊆ P

2

im Sinne von “uniformem Containment” von Datalog-Programmen) (ii) Es gibt ein R ∈ idb(P

1

), so dass für alle I ∈ inst(R) gilt: J (P

1

, R) K (I) ⊆ J (P

2

, R) K (I).

(D.h.: (P

1

, R) ⊆ (P

2

, R) im Sinne von Query Containment von Datalog-Anfragen.

Aufgabe 2: (30 Punkte)

(a) Zeigen Sie,

(i) für jedes Datalog-Programm P ist der T

P

-Operator monoton. (Lemma 3.3) (ii) jede Datalog-Anfrage ist monoton.

(b) Finden Sie einen Algorithmus, der bei Eingabe einer Dataloganfrage Q = (P, R) entscheidet,

ob Q erfüllbar ist.

(2)

Aufgabe 3: (20 Punkte) Zeigen Sie das Lemma ∆ aus der Vorlesung, d.h. zeigen Sie:

Sei Σ ⊆ dom. Sei G = (Σ, V, S, P ) eine kontextfreie Grammatik, für die gilt:

(i) Es gibt keine Produktion der Form X → , für X ∈ V ,

(ii) Es gibt keine Produktion auf deren rechter Seite das Startsymbol S steht.

Sei P

G

das Datalog-Programm, welches für jede Produktion A → B

1

· · · B

n

aus G die Regel

R

A

(x

1

, x

n+1

) ← B ˜

1

, . . . , B ˜

n

mit B ˜

i

:=

( E(x

i

, a, x

i+1

) falls B

i

= a ∈ Σ R

X

(x

i

, x

i+1

) falls B

i

= X ∈ V enthält. Sei m ≥ 1 und seien a

1

, . . . , a

m

, b

1

, . . . , b

m−1

∈ dom. Dann gilt:

b

1

· · · b

m−1

∈ L(G) ⇔

Es gibt einen Beweisbaum für das Faktum R

S

(a

1

, a

m

) bzgl P

G

, dessen Blätter mit den Fakten E(a

1

, b

1

, a

2

), E(a

2

, b

2

, a

3

), . . . , E(a

m−1

, b

m−1

, a

m

) markiert sind.

Aufgabe 4: (20 Punkte)

Zeigen Sie, dass das folgende A

USWERTUNGSPROBLEM FÜR

B

OOLSCHE

D

ATALOG

-A

NFRAGEN

(kombinierte Komplexität) EXPTIME-vollständig ist.

A

USWERTUNGSPROBLEM FÜR

B

OOLSCHE

D

ATALOG

-A

NFRAGEN

Eingabe: Datalog-Anfrage Q = (P, R), Datenbank I.

Frage: Ist J Q K (I) 6= ∅?

Hierbei ist:

EXPTIME := [

k∈N

DTIME(2

(nk)

),

wobei DTIME(2

(nk)

) die Klasse aller Entscheidungsprobleme ist, die von einer deterministischen Turing-Maschine in Zeit 2

(nk)

gelöst werden können.

Hinweise zur Lösung der Aufgabe finden Sie auf Seite 387 in [Datalog].

Referenzen

ÄHNLICHE DOKUMENTE

(i) Stellen Sie den Konfliktgraph auf, in dem die Stände durch Knoten repräsentiert wer- den und eine Kante zwischen zwei Knoten anzeigt, dass die entsprechenden Stände

November 2012 Institut für Informatik.. Theorie komplexer

Die folgenden Aufgaben behandeln grundlegende Schreibweisen sowie Zusammenhänge, deren Kenntnis wichtig zum Verständnis der Vorlesung ist. Die Aufgaben dieses Blattes werden in

Wenn ja, beschreiben Sie eine solche Strategie und geben Sie in asymptotischer Notation an, wie viele Versuche von Bob bei dieser Strategie nötig sind, um das Geheimnis zu erraten.

Dazu sei die Klasse liste2 gegeben, die genauso wie die Klasse liste aus der Vorlesung definiert ist, außer, dass sie zusätzlich eine Funktion movetoend() besitzt, welche

Da- bei soll jeder Film einem Knoten in V entsprechen und für a, b ∈ V soll eine gerichtete Kante (a, b) genau dann in E sein, wenn der durch a repräsentierte Film vor dem durch

Für diese Aufgabe ist kein Code gefordert, eine Beschreibung der wesentlichen Schritte des Algorithmus zusammen mit der Begründung der Korrektheit und einer Laufzeitanalyse reichen

Wie oft mindestens und für welche Flüge muss der Duke sein Jetpack einsetzen, um bei seiner Tour von Gipfel D zu Gipfel G jeden Gebirgskamm genau einmal zu benutzen. Geben Sie