Exercise Semantics of Predicate Logic: Difference between revisions
(15 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
Interpret the following formulae as true or false. If you have not defined these relations or properties in your model use the ones given in [[ExerciseFOModels-d|a previous exercise]]. | Interpret the following formulae as true or false. If you have not defined these relations or properties in your model use the ones given in [[ExerciseFOModels-d|a previous exercise]]. | ||
* [[ | * '''father-of-someone'''('''paul''','''lisa''') | ||
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> | |||
* | Check your answers | ||
<div class="mw-collapsible-content"> | |||
<nowiki>[[</nowiki>'''father-of-someone'''('''paul''','''lisa''')]] = ''true'' iff<br /> | |||
< <nowiki>[[</nowiki>'''paul''']], <nowiki>[[</nowiki>'''lisa''']] > ∈ <nowiki>[[</nowiki>'''father-of-someone''']] iff<br /> | |||
< I('''paul'''), I('''lisa''') > ∈ I('''father-of-someone''') iff<br /> | |||
< ''Paul'', ''Lisa''> ∈ {<''Paul, Tom''>,<''Paul, Lisa''>}. | |||
Since this is the case, the formula is true. | |||
</div> | |||
</div> | |||
* '''blonde'''('''walter''') | |||
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> | |||
Check your answers | |||
<div class="mw-collapsible-content"> | |||
<nowiki>[[</nowiki>'''blonde(walter)''']] = ''true'' iff<br /> | |||
< I('''walter''') > ∈ I('''blonde''') iff <br /> | |||
< ''Walter'' > ∈ {< ''Alice'' >,< ''Lisa'' >}. | |||
Since this is not the case, the overall formula is false. | |||
</div> | |||
</div> | |||
* '''enjoy-watching-football-together'''('''alice''','''tom''') | |||
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> | |||
Check your answers | |||
<div class="mw-collapsible-content"> | |||
<nowiki>[[</nowiki>'''enjoy-watching-football-togehter(alice,tom)''']] = ''true'' iff<br /> | |||
< I('''alice'''), I('''tom''') > ∈ I('''enjoy-watching-football-together''') iff<br /> | |||
< ''Alice'', ''Tom'' > ∈ {<''Alice, Paul''>,<''Paul, Alice''>,<''Alice, Lisa''>,<''Lisa, Alice''>,<''Alice, Tom''>,<''Tom, Alice''>,<''Paul, Lisa''>,<''Lisa, Paul''>,<''Paul, Tom''>,<''Tom, Paul''>,<''Tom, Lisa''>,<''Lisa, Tom''>} | |||
Since this is the case, the formula is true. | |||
</div> | |||
</div> | |||
<br/> | |||
<br/> | |||
== Interpretation of formulae with logical connectives == | == Interpretation of formulae with logical connectives == | ||
Line 14: | Line 53: | ||
'''a.)''' Alice is a dog and Lisa and Tom enjoy watching football together. | '''a.)''' Alice is a dog and Lisa and Tom enjoy watching football together. | ||
'''[[ | <div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> | ||
Check your answers | |||
<div class="mw-collapsible-content">Sentence: Alice is a dog and Lisa and Tom enjoy watching football together. | |||
Here the interpretation in predicate logic notation: | |||
<nowiki>[[</nowiki>'''dog (Alice) Ʌ enjoy-watching-football-together (Lisa,Tom)''']] = ''false''<br/> | |||
because <nowiki>[[</nowiki>'''dog (Alice)''']]= ''false'' <br/> | |||
::because I('''Alice''')= <''Alice''> and <''Alice''> is NOT an element of I('''dog''') <br/> | |||
and <nowiki>[[</nowiki>'''enjoy-watching-soccer-together (Lisa,Tom)''']] = ''true'' <br/> | |||
::because I('''Lisa''')= <''Lisa''>, I('''Tom''')= <''Tom''> and <''Lisa,Tom''> '''is''' in the set of I('''enjoy-watching-football-together'''). <br/> | |||
'''Conjunction (Ʌ)''': Both atomic formulae have to be true in order for the complex formula to be true. | |||
</div> | |||
</div> | |||
'''b.)''' Tom is not Paul's daughter or Tom is tall. | '''b.)''' Tom is not Paul's daughter or Tom is tall. | ||
'''[[ | <div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> | ||
Check your answers | |||
<div class="mw-collapsible-content"> | |||
Sentence: Tom is not Paul's daughter or Tom is tall. | |||
Here the interpretation in predicate logic notation: | |||
<nowiki>[[</nowiki>'''¬daughter-of-someone (Tom,Paul) v tall(Tom)''']] = ''true'' <br/> | |||
because <nowiki>[[</nowiki>'''¬daughter-of-someone (Tom,Paul)''']]= ''true'' <br/> | |||
::because I('''Tom''')= <''Tom''>, I('''Paul''')= <''Paul''> and <''Tom,Paul''> is NOT in the set of I('''daughter-of-someone''') <br/> | |||
and <nowiki>[[</nowiki>'''tall(Tom)''']] = ''false'' <br/> | |||
::because I('''Tom''')= <''Tom''> and <''Tom''> is NOT an element of I('''tall'''). <br/> | |||
'''Disjunction (v)''': At least one of the atomic formulae has to be true in order for the complex formula to be true. | |||
</div> | |||
</div> | |||
Latest revision as of 08:01, 14 April 2015
Interpretation of atomic formulae
Interpret the following formulae as true or false. If you have not defined these relations or properties in your model use the ones given in a previous exercise.
- father-of-someone(paul,lisa)
Check your answers
[[father-of-someone(paul,lisa)]] = true iff
< [[paul]], [[lisa]] > ∈ [[father-of-someone]] iff
< I(paul), I(lisa) > ∈ I(father-of-someone) iff
< Paul, Lisa> ∈ {<Paul, Tom>,<Paul, Lisa>}.
Since this is the case, the formula is true.
- blonde(walter)
Check your answers
[[blonde(walter)]] = true iff
< I(walter) > ∈ I(blonde) iff
< Walter > ∈ {< Alice >,< Lisa >}.
Since this is not the case, the overall formula is false.
- enjoy-watching-football-together(alice,tom)
Check your answers
[[enjoy-watching-football-togehter(alice,tom)]] = true iff
< I(alice), I(tom) > ∈ I(enjoy-watching-football-together) iff
< Alice, Tom > ∈ {<Alice, Paul>,<Paul, Alice>,<Alice, Lisa>,<Lisa, Alice>,<Alice, Tom>,<Tom, Alice>,<Paul, Lisa>,<Lisa, Paul>,<Paul, Tom>,<Tom, Paul>,<Tom, Lisa>,<Lisa, Tom>}
Since this is the case, the formula is true.
Interpretation of formulae with logical connectives
Consider these two natural language sentences. While keeping in mind the scenario given in a previous exercise, create complex formulae with logical connectives and compute the interpretation, respectively.
a.) Alice is a dog and Lisa and Tom enjoy watching football together.
Check your answers
Here the interpretation in predicate logic notation:
[[dog (Alice) Ʌ enjoy-watching-football-together (Lisa,Tom)]] = false
because [[dog (Alice)]]= false
- because I(Alice)= <Alice> and <Alice> is NOT an element of I(dog)
- because I(Alice)= <Alice> and <Alice> is NOT an element of I(dog)
and [[enjoy-watching-soccer-together (Lisa,Tom)]] = true
- because I(Lisa)= <Lisa>, I(Tom)= <Tom> and <Lisa,Tom> is in the set of I(enjoy-watching-football-together).
- because I(Lisa)= <Lisa>, I(Tom)= <Tom> and <Lisa,Tom> is in the set of I(enjoy-watching-football-together).
Conjunction (Ʌ): Both atomic formulae have to be true in order for the complex formula to be true.
b.) Tom is not Paul's daughter or Tom is tall.
Check your answers
Sentence: Tom is not Paul's daughter or Tom is tall.
Here the interpretation in predicate logic notation:
[[¬daughter-of-someone (Tom,Paul) v tall(Tom)]] = true
because [[¬daughter-of-someone (Tom,Paul)]]= true
- because I(Tom)= <Tom>, I(Paul)= <Paul> and <Tom,Paul> is NOT in the set of I(daughter-of-someone)
- because I(Tom)= <Tom>, I(Paul)= <Paul> and <Tom,Paul> is NOT in the set of I(daughter-of-someone)
and [[tall(Tom)]] = false
- because I(Tom)= <Tom> and <Tom> is NOT an element of I(tall).
- because I(Tom)= <Tom> and <Tom> is NOT an element of I(tall).
Disjunction (v): At least one of the atomic formulae has to be true in order for the complex formula to be true.
Back to
- the exercises for chapter 2
- the material for chapter 2
- the overview over all chapters