Sunday, February 1, 2009

Blatt 10

1.


1. alle verheirateten Paare, die ein gemeinsames Kind haben

Mann(x) ∧ Frau(y) ∧ verheiratetMit(x, y) ∧ kindVon(z, x) ∧ kindVon(z, y)

- unbestimmte Variable: z


2. alle verheirateten weiblichen katholischen Priester

Frau(x) ∧ Katholisch(x) ∧ Priester(x) ∧ verheiratetMit(x, y)

- unbestimmte Variable: y


3. alle Personen, deren Eltern verheiratet sind

- nur alle Männer oder alle Frauen bestimmbar und keine Vereinigung beider

Mann(x) ∧ kindVon(x, y) ∧ kindVon(x, z) ∧ verheiratetMit(y, z)

- unbestimmte Variable: y, z


4. alle Frauen, die ihren Gatten umbringen

Frau(x) ∧ verheiratetMit(x, y) ∧ ermordet(x, y)

- unbestimmte Variable: y


5. alle verheirateten Paare von Selbstmördern

Mann(x) ∧ Frau(y) ∧ verheiratetMit(x, y) ∧ ermordet(x, x) ∧ ermordet(y, y)



2.


1. (Weise(x) ∧ Kahl(x)) ∨ ¬Maennlich(x) ← (Klug(x) ∨ Alt(x)) ∧ ∃ y.(verheiratetMit(x,y))

(Weise(x) ∧ Kahl(x)) ∨ ¬Maennlich(x) ← (Klug(x) ∨ Alt(x)) ∧ verheiratetMit(x, ehepartner(x)))

(Weise(x) ∧ Kahl(x)) ∨ ¬Maennlich(x) ∨ ¬((Klug(x) ∨ Alt(x)) ∧ verheiratetMit(x, ehepartner(x))))

(Weise(x) ∧ Kahl(x)) ∨ ¬Maennlich(x) ∨ (¬Klug(x) ∧ ¬Alt(x)) ∨ ¬verheiratetMit(x, ehepartner(x))

- in keine Klauselform umwandelbar



2. Stolz(vater(x)) ∨ Stolz(mutter(x)) ← Klug(x)

Stolz(vater(x)) ∨ Stolz(mutter(x)) ∨ ¬Klug(x)

- Klausel



3. Clever(x) ← Klug(x) ∨ (kennt(x,y) ∧ Klug(y))

Clever(x) ← (Klug(x) ∨ kennt(x,y)) ∧ (Klug(x) ∨ Klug(y))

Clever(x) ∨ ¬((Klug(x) ∨ kennt(x,y)) ∧ (Klug(x) ∨ Klug(y)))

Clever(x) ∨ (¬Klug(x) ∧ ¬kennt(x,y)) ∨ (¬Klug(x) ∧ ¬Klug(y)))

- in keine Klauselform umwandelbar



4. ¬Dominant(vater(x)) ← Dominant(mutter(x))

¬Dominant(vater(x)) ∨ ¬Dominant(mutter(x))

- Hornklausel



5. Klein(x) ∧ Stark(x) ← Seemann(x) ∧ liebt(x,y) ∧ Spinat(y) ∧ liebt(x, Olive_Oyl)

Klein(x) ∧ Stark(x) ∨ ¬Seemann(x) ∨ ¬liebt(x,y) ∨ ¬Spinat(y) ∨ ¬liebt(x, Olive_Oyl)

- in keine Klauselform umwandelbar



3.


a)

Künstler(x) → ZuordnungKünstlerEpoche(x, z) ∧ Stilepoche(z)

Künstler(x) ∧ Kunstwerk(y) ∧ Schöpfer(x, y) → ZuordnungKunstwerkEpoche(y, z) ∧ Stilepoche(z)


<ruleml:imp>

  <ruleml:_rlab ruleml:href="#epochekünstler"/>

  <owlx:Annotation>

    <owlx:Documentation>Zuordnung eines Künstlers zu einer Epoche</owlx:Documentation>

  </owlx:Annotation>

  <ruleml:_body>

    <swrlx:classAtom>

      <owlx:Class owlx:name="&kunst;Künstler"/>

      <ruleml:var>x</ruleml:var>

    </swrlx:classAtom>

  </ruleml:_body>

  <ruleml:_head>

    <swrlx:individuaPropertyAtom swrlx:property="&kunst;ZuordnungKünstlerEpoche">

      <ruleml:var>x</ruleml:var>

      <ruleml:var>z</ruleml:var>

    </swrlx:individuaPropertyAtom>

    <swrlx:classAtom>

      <owlx:Class owlx:name="&kunst;Stilepoche"/>

      <ruleml:var>z</ruleml:var>

    </swrlx:classAtom>

  </ruleml:_head>

</ruleml:imp>



<ruleml:imp>

  <ruleml:_rlab ruleml:href="#epochekunstwerk"/>

  <owlx:Annotation>

    <owlx:Documentation>Zuordnung eines Kunstwerks zu einer Epoche</owlx:Documentation>

  </owlx:Annotation>

  <ruleml:_body>

    <swrlx:classAtom>

      <owlx:Class owlx:name="&kunst;Künstler"/>

      <ruleml:var>x</ruleml:var>

    </swrlx:classAtom>

    <swrlx:classAtom>

      <owlx:Class owlx:name="&kunst;Kunstwerk"/>

      <ruleml:var>y</ruleml:var>

    </swrlx:classAtom>

    <swrlx:individualPropertyAtom swrlx:property="&kunst;Schöpfer">

      <ruleml:var>x</ruleml:var>

      <ruleml:var>y</ruleml:var>

    </swrlx:individualPropertyAtom>

  </ruleml:_body>

  <ruleml:_head>

    <swrlx:individualPropertyAtom swrlx:property="&kunst;ZuordnungKunstwerkEpoche">

      <ruleml:var>y</ruleml:var>

      <ruleml:var>z</ruleml:var>

    </swrlx:individualPropertyAtom>

    <swrlx:classAtom>

      <owlx:Class owlx:name="&kunst;Stilepoche"/>

      <ruleml:var>z</ruleml:var>

    </swrlx:classAtom>

  </ruleml:_head>

</ruleml:imp>



b)


Def-hasMother

Woman(y) ∧ hasParent(x, y) → hasMother(x, y)


Wenn eine Person ein Elternteil hat, das weiblich ist, ist dieses Elternteil seine Mutter.



Def-hasDaughter

Woman(x) ∧ hasChild(x, y) → hasDaughter(x, y)


Fehler im SWRL-Codefragment; es soll wohl heißen:

Woman(y) ∧ hasChild(x, y) → hasDaughter(x, y)


Wenn eine Person ein weibliches Kind hat, ist dieses Kind die Tochter der Person.



Def-hasParent

hasConsort(y, z) ∧ hasParent(x, y) → hasParent(x, z)


Wenn eine Person ein Elternteil hat, das einen Partner besitzt, ist der Partner auch Elternteil der Person.



Def-hasSister

hasSister(x, y) ← Woman(y) ∧ hasSibling(x, y)


Wenn eine weibliche Person ein Geschwister einer Person ist, ist sie die Schwester der Person.



Def-hasBrother

hasBrother(x, y) ← Man(y) ∧ hasSibling(x, y)


Wenn eine männliche Person ein Geschwister einer Person ist, ist er der Bruder der Person.



Def-hasSon

Man(x) ∧ hasChild(x, y) → hasSon(x, y)


Fehler im SWRL-Codefragment; es soll wohl heißen:

Man(y) ∧ hasChild(x, y) → hasSon(x, y)


Wenn eine Person ein männliches Kind hat, ist dieses Kind der Sohn der Person.



Def-hasUncle

hasUncle(x, z) ← hasParent (x, y) ∧ hasBrother(y, z)


Wenn ein Elternteil einer Person einen Bruder hat, ist er der Onkel der Person.



Def-hasSibling

hasChild(x, y) ∧ hasChild(z, y) ∧ differentFrom(x, z) → hasSibling(x, z)


Fehler im SWRL-Codefragment; es soll wohl heißen:

isChild(x, y) ∧ isChild(z, y) ∧ differentFrom(x, z) → hasSibling(x, z)


Wenn zwei Personen das gleiche Elternteil haben, sind sie Geschwister.



Def-hasNiece

hasNiece(x, z) ← hasDaughter(y, z) ∧ hasSibling(x, y)


Wenn eine Person ein Geschwister hat und das Geschwister eine Tochter, dann ist sie die Nichte dieser Person.



Def-hasNephew

hasSon(y, z) ∧ hasSibling(x, y) → hasNiece(x, z)


Wenn eine Person ein Geschwister hat und das Geschwister einen Sohn, dann ist er die Neffe dieser Person.



Def-hasFather

hasFather(x, y) ← Man(y) ∧ hasParent(x, y)


Das männliche Elternteil einer Person ist der Vater dieser Person.



Def-hasAunt

hasSister(y, z) ∧ hasParent(x, y) → hasAunt(x, z)


Wenn ein Elternteil einer Person eine Schwester hat, dann ist sie die Tante der Person.

No comments: