TU Wien:Einführung in wissensbasierte Systeme VU (Egly)/Prüfung 2013-03-22/Beispiel 3

Aus VoWi
Zur Navigation springen Zur Suche springen

Answer Set Programming (ASP)

Sei M eine Interpretation und P ein grundiertes Programm.

1. Definieren Sie den Begriff des Reduktes PM.

2. Wann ist M ein Answer Set von P?

(8 Punkte)

Lösungsvorschlag: JasonLeroy (Diskussion) 11:09, 25. Jan. 2014 (CET)

1. PM={a1,...,an:− b1,...,bk|a1,...,an:− b1,...,bk,not bk+1,...,not bm∈P{bk+1,...,bm}∩M=∅}

2. M is an answer set of a ground program P iff it is a minimal set of literals (w.r.t. set inclusion) which is a model of PM.

Quelle: Seite 23, asp1.pdf, WS2013/14

In welcher Weise kann ein grundiertes, normales Programm P als Default Theorie T übersetzt werden, sodass die Answer Sets von P zu den Extensionen von T korrespondieren?

(6 Punkte)

r ... Regel der Form a:− b1,...,bk,not bk+1,...,not bn

δ(r)=b1,...,bk: ¬bk+1,...,¬bna

Δ={δ(r)|r∈P}

T=(0,Δ)

Betrachten Sie folgendes Programm (a, b, c sind Grundatome):

P={¬c∨¬d:−,a∨b:− not c}

Geben Sie eine Menge Q von Constraints an, sodass P∪Q zwei Answer Sets, {¬c,a} und {¬c,b} besitzt.

(6 Punkte)

Lösungsvorschlag:

AS(P)={(¬c,a),(¬c,b),(¬d,a),(¬d,b)}

Die Answer Sets mit d müssen eliminiert werden:

Q={:− ¬d}

Welche der folgenden Aussagen treffen zu:

1. Es gibt ein disjunktives logisches Programm P sodass P Answer Sets von X1,X2 besitzt, welche die Bedingung X1⊂X2 erfüllen, d.h. sodass X1 eine echte Teilmenge von X2 ist.

2. Es gibt ein normales logisches Programm welches ein inkonsistentes Answer Set besitzt.

(5 Punkte)

Lösungsvorschlag: von Stampi

Korrigiert am 28.01.2015 von jasonLeroy. Grund ist das Ergebnis der Diskussion weiter unten.

1) FALSCH, weil ein Answer Set immer minimal sein muss.

2) FALSCH, weil ein Answer Set niemals inkonsistent ist.


Ursprüngliche Lösung welche zu folgender Diskussion geführt hat: 2) RICHTIG, P={a:−,¬a:−}

Kommentar: 2) ist falsch gelöst, weil ein normales Programm keine Regel besitzen darf die disunktiv ist oder strong-negation enthält (siehe asp1.pdf Seite 18)

Mein Vorschlag wäre: P={a:−not a}


Vorschlag von --Stampi (Diskussion) 14:25, 27. Jan. 2014 (CET)

mMn ist 2) auch FALSCH, weil wenn P={a:−not a} dann gibt es keine Answer Sets für das Programm P und es kann deshalb auch nicht inkonsistent sein. D.h. AS(P) = {}

Siehe asp1.pdf Seite 26

Vorschlag von --me.name 19. Jan. 2015 (CET)

laut asp1.pdf Seite 28 hat P={a:−,¬a:−} kein Model daher auch kein Answer Set. ich denke das 2 ebenfalls falsch ist denn so etwas wäre ja nur möglich mit einem konstrukt wie:

a.

b :- a, not c.

-b :- a, not c.

aber das ganze hat ja gar kein Answerset. Habe auch nirgends gefunden das es inkonsitente Answersets überhapt gibt.


[vik_xxxl] d2: Nicht nur für normale Programme, sondern es gibt gar kein Programm das inkonsistente Answer Set besitzt.
Beweis: answer set => classical model. classical model => interpretation. interpretation <=> consistent set.
Oder in wort: Jede answer set ist klasische model. Jede klasische model ist interpretation. Jede interpretation ist konsistente menge.
Also es gibt keine Menge die inkonsistent ist und gleichzeitig answer set ist und egal ob normal, basic oder horn Programm.