74.406 natural language processing first-order predicate logic - predicates short introduction to...

23
74.406 Natural Language Processing First-Order Predicate Logic - Predicates Short Introduction to Description Logics PowerLoom

Post on 19-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

74.406 Natural Language Processing

First-Order Predicate Logic - Predicates Short Introduction to Description Logics PowerLoom

Page 2: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

Semantic Representations

Semantic Representation based on some form of (formal) Representation Language.

– Semantics Networks– Conceptual Dependency Graphs– Case Frames– Ontologies– DL and similar KR languages– First-Order Predicate Logic

Page 3: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

Example

Define Hierarchy of Concepts

mother person female

has-child

mother

(defconcept mother (person AND female

AND (has-child.person))

Page 4: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

Example

Define Hierarchy of Concepts

mother 1. x: mother(x) person(x) IS-A

2. x: mother(x) female(x) IS-A

3. x: mother(x) y: has-child(x,y) Role

person(y)

Page 5: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

Example

Define Hierarchy of Concepts

mother person female

has-child

mother

(defconcept mother (person AND female

AND (has-child.person))

Page 6: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

First-Order Predicate Logic (FOPL)

Predicates• core of formulae• applied to variables (constants, terms)• correspond to classes, concepts, sets

e.g. student(x)

describes the class / set of all students• unary, binary, n-ary predicates possible in FOPL

e.g. siblings(x,y) or brothers(x,y) represents pairs of siblings or pairs of brothers.

Page 7: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

First-Order Predicate Logic (FOPL)

Terms

• inside predicate in formulae

• functions, variables (x,y,...), constants (c,d,...)

• constants stand for concrete values or objects

• variables are referring to (sets of) values

• functions represent functions:

e.g. plus(x,y) represents a function with two arguments;

could mean + in arithmetic;

could also mean something else, e.g. depends on Interpretation!

Page 8: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

First-Order Predicate Logic (FOPL)

Formulae wff

• atomic formula P(x), P(c), P(<term>),

P(<term_1>,...,<term_n>)

• complex formula <wff> <connective><wff>

; ; ;

• quantified formula <quantifier> <variable(s)> <wff>

x,y: P(x,y) ; x: P(x)

Interpretation into domain assigns meaning to formulae!

Page 9: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

First-Order Predicate Logic (FOPL)

Interpretation I into domain D (or ), D={d1, d2, ..., dn}

• term I(c)D ; I(x)D ;

I(f(t1,...,tn) ) = I(f) (I(t1),..., I(tn))

I(f) is a function in Domain D

• atomic formula I(P(t1,...,tn)) true if (I(t1),..., I(tn))I(P)

I(P) is a relation in Domain D

• complex formula I() true if I() not true;

I() true if I() true and I() true;

equivalent for and

Page 10: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

First-Order Predicate Logic (FOPL)

Interpretation I into domain D (or ), D={d1, d2, ..., dn}

• quantified formula (just simple atomic formula here)

x: (x) true if I() is true if you substitute x in with d, for one dI(x).

x: (x) true if I() is true if you substitute x in with d, for all dI(x).

Note: for nested quantifiers, apply I from left to right:

x y: (x,y) true if I((d,d')) is true when you

1. substitute x in with d for all dI(x), and then

2. find for each d one d'I(y) so that I((d,d')) is true.

Page 11: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 12: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 13: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 14: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 15: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 16: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 17: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 18: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 19: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 20: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 21: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 22: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom
Page 23: 74.406 Natural Language Processing  First-Order Predicate Logic - Predicates  Short Introduction to Description Logics  PowerLoom

References

• www.dl.kr.org

• see Tutorial - Horrocks and Sattler