190 likes | 315 Views
First-Order Logic. Chapter 8 Modified by Vali Derhami. Outline. Why FOL? Syntax and semantics of FOL Using FOL Wumpus world in FOL Knowledge engineering in FOL. propositional logic. Propositional logic is declarative ( (اظهاری
E N D
First-Order Logic Chapter 8 Modified by Vali Derhami
Outline • Why FOL? • Syntax and semantics of FOL • Using FOL • Wumpus world in FOL • Knowledge engineering in FOL
propositional logic • Propositional logic is declarative ((اظهاری جدا بودن دانش و استنتاج (کنترل) در منطق گزاره ای، در حالیکه در برنامه ریزی سنتی برای تازه سازی ساختار داده از یک رویه یِ وابسته به مساله و جزییات ان توسط برنامه نویس تعیین می شود انجام می پذیرد. Propositional logic allows partial/disjunctive/negated information • (unlike most data structures and databases) • Propositional logic is compositional: • meaning of B1,1 P1,2 is derived from meaning of B1,1 and of P1,2 Meaning in propositional logic is context-independent • (unlike natural language, where meaning depends on context) Propositional logic has very limited expressive power • (unlike natural language) • E.g., cannot say "pits cause breezes in adjacent squares“ • except by writing one sentence for each square
First-order logic • Whereas propositional logic assumes the world contains facts, • first-order logic (like natural language) assumes the world contains • Objects: people, houses, numbers, colors, baseball games, wars, … • Relations: یک ارتباط یگانی یا خصوصیات • verbs and verb phrases that refer to relations among objects Ex. : red, round, prime, brother of, bigger than, part of, comes between, … • Functions: father of, best friend, one more than, plus, … در توابع تنها یک مقدار برای یک ”ورودی“ مفروض وجود دارد
Some examples • "One plus two equals three" • Objects: one, two, three, one plus two; Relation: equals; Function: plus. ("One plus • two" is a name for the object that is obtained by applying the function "plus" to the • objects "one" and "two." Three is another name for this object.) • "Squares neighboring the wumpus are smelly." • Objects: wumpus, squares; Property: smelly; Relation: neighboring. • "Evil King John ruled England in 1200." • Objects: John, England, 1200; Relation: ruled; Properties: evil, king.
Five different logic یک منطق می تواند با تعهدات هستی شناسی اش (حالات ممکن دانش که با توجه به واقعیت مجاز می باشد) مشخص شود
Syntax of FOL: Basic elements • Constants(for objects): KingJohn, 2, NUS,... • Predicates (for relation): Brother, >,... • Functions (for functions): Sqrt, LeftLegOf,... سه مورد فوق با حرف بزرگ شروع میشوند. • Variables x, y, a, b,... • Connectives , , , , • Equality = • Quantifiers ,
Atomic sentences Atomic sentence = predicate (Term1,...) or Term1 = Term2 Term = function (Term1,...) or constant or variable • E.g., Brother(KingJohn,RichardTheLionheart) Length(LeftLegOf(Richard)) Length(LeftLegOf(KingJohn))
Complex sentences • Complex sentences are made from atomic sentences using connectives S, S1 S2, S1 S2, S1 S2, S1S2, • Sentence —> Atomic Sentence or ( Sentence Connective Sentence ) or Quantifier Variable,... Sentence or Sentence E.g. Sibling(KingJohn,Richard) Sibling(Richard,KingJohn) >(1,2) ≤ (1,2) >(1,2) >(1,2)
Truth in first-order logic • Sentences are true with respect to a model and an interpretation • Model contains objects (domainelements) and relations among them • Interpretation specifies referents for constantsymbols→objects predicatesymbols→relations functionsymbols→ functional relations • An atomic sentence predicate(term1,...,termn) is true iff the objects referred to by term1,...,termn are in the relation referred to by predicate
Models for FOL: Example Brother (Richard, John). LeftLeg(John).
Universal quantification: سورهای عمومی • <variables> <sentence> Example: "All kings are persons," x King(x) => Person(x) . Everyone at NUS is smart: x At(x,NUS) Smart(x) خوانده می شود : ”به ازای تمامی x ها ... • A term with no variables is called a ground term. • x P is true in a model m iff P is true with x being each possible object in the model • Roughly speaking, equivalent to the conjunction of instantiations of P x At(x,NUS) Smart(x) باید همه مصداقهای زیر درست باشد At(KingJohn,NUS) Smart(KingJohn) At(Richard,NUS) Smart(Richard) At(NUS,NUS) Smart(NUS) ...
A common mistake to avoid • Typically, is the main connective with • Common mistake: using as the main connective with : x King(x) Person(x) x At(x,NUS) Smart(x) means “Everyone is at NUS and everyone is smart”
Existential quantification • <variables> <sentence> • Someone at NUS is smart: • x At(x,NUS) Smart(x) • xP is true in a model m iff P is true with x being some possible object in the model • Roughly speaking, equivalent to the disjunction of instantiations of P کافی است یکی از مصداقهای زیر درست باشد. At(KingJohn,NUS) Smart(KingJohn) At(Richard,NUS) Smart(Richard) At(NUS,NUS) Smart(NUS) ...
Another common mistake to avoid • Typically, is the main connective with • Common mistake: using as the main connective with : x At(x,NUS) Smart(x) is true if there is anyone who is not at NUS!
Properties of quantifiers • x y is the same as yx • x y Brother(x,y) => Sibling(x,y) x,y Brother(x,y) => Sibling(x,y) • x y is the same as yx • x y is not the same as yx x y Loves(x,y) • “There is a person who loves everyone in the world” yx Loves(x,y) • “Everyone in the world is loved by at least one person” • Example: • Quantifier duality: each can be expressed using the other • x Likes(x,IceCream) x Likes(x,IceCream) • x Likes(x,Broccoli) xLikes(x,Broccoli)
The De Morgan rules for quantified and unquantified sentences
Equality • term1 = term2is true under a given interpretation if and only if term1and term2refer to the same object • Father (Ali)= Hasan E.g., definition of Sibling in terms of Parent: x,ySibling(x,y) [(x = y) m,f (m = f) Parent(m,x) Parent(f,x) Parent(m,y) Parent(f,y)] Richard has at least two brothers, x, y Brother(x, Richard) Brother(y, Richard) , x, y Brother(x, Richard) Brother(y, Richard) (x = y) .