Artificial Intelligence

Slides:



Advertisements
Similar presentations
The Predicate Calculus
Advertisements

Artificial Intelligence
Artificial Intelligence Chapter 13 The Propositional Calculus Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Biointelligence Lab School of Computer Sci. & Eng.
1 A formula in predicate logic An atom is a formula. If F is a formula then (~F) is a formula. If F and G are Formulae then (F /\ G), (F \/ G), (F → G),
Standard Logical Equivalences
1 Logic Logic in general is a subfield of philosophy and its development is credited to ancient Greeks. Symbolic or mathematical logic is used in AI. In.
First Order Logic Resolution
Inference and Reasoning. Basic Idea Given a set of statements, does a new statement logically follow from this. For example If an animal has wings and.
Knowledge Representation Methods
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Outline Recap Knowledge Representation I Textbook: Chapters 6, 7, 9 and 10.
Computability and Complexity 9-1 Computability and Complexity Andrei Bulatov Logic Reminder (Cnt’d)
The Predicate Calculus
NEWELL & SIMON All sciences characterize the essential nature of the systems they study. These characteristics are invariably qualitative in nature, for.
Inference and Resolution for Problem Solving
The Predicate Calculus
The Predicate Calculus
CSE (c) S. Tanimoto, 2007 Unification 1 Unification Predicate calculus rules are sometimes so general that we need to create specializations of.
Predicate Calculus.
1 Knowledge Representation and Reasoning. 2 Knowledge Representation & Reasoning How knowledge about the world can be represented How knowledge about.
CSC411Artificial intelligence 1 Chapter 2 The Predicate Calculus Contents The Propositional Calculus The Predicate Calculus Using Inference Rules to Produce.
Introduction to Logic for Artificial Intelligence Lecture 2 Erik Sandewall 2010.
Adapted from Discrete Math
Predicates and Quantifiers
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
1 CS 385 Fall 2006 Part 2 Artificial Intelligence as Representation and Search.
1st-order Predicate Logic (FOL)
Propositional Calculus Composed of symbols –P – some true statement P might represent something like “It is Monday” or “the car is red” And sentences –a.
Conjunctive normal form: any formula of the predicate calculus can be transformed into a conjunctive normal form. Def. A formula is said to be in conjunctive.
Chapter 1, Part II: Predicate Logic With Question/Answer Animations.
CS 415 – A.I. Slide Set 4. Yamauchi Paper Exploration via data about frontier space – How to detect frontier space – How to use it to choose navigation.
Pattern-directed inference systems
First Order Predicate Logic
ARTIFICIAL INTELLIGENCE Lecture 3 Predicate Calculus.
1.  Provides the ability to access individual assertions. e.g. in Predicate calculus we may say: P denotes “It rained on Tuesday” but in predicate calculus.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
1 Predicate (Relational) Logic 1. Introduction The propositional logic is not powerful enough to express certain types of relationship between propositions.
CS Introduction to AI Tutorial 8 Resolution Tutorial 8 Resolution.
Hazırlayan DISCRETE COMPUTATIONAL STRUCTURES Propositional Logic PROF. DR. YUSUF OYSAL.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
CS6133 Software Specification and Verification
Artificial Intelligence Chapter 15 The Predicate Calculus Artificial Intelligence Chapter 15 The Predicate Calculus Biointelligence Lab School of Computer.
Propositional & Predicate Calculus _I
CSE (c) S. Tanimoto, 2008 Predicate Calculus II 1 Predicate Calculus 2 Outline: Unification: definitions, algorithm Formal interpretations and satisfiability.
Semantics of Predicate Calculus For the propositional calculus, an interpretation was simply an assignment of truth values to the proposition letters of.
Artificial Intelligence Lecture 4 Faculty of Computer Science International Islamic University Islamabad. Pakistan.
PREDICATE CALCULS In Propositional Calculus, each atomic symbol denotes a proposition. But there is no way to access the components of an individual assertion.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
First-Order Logic Semantics Reading: Chapter 8, , FOL Syntax and Semantics read: FOL Knowledge Engineering read: FOL.
ARTIFICIAL INTELLIGENCE Lecture 2 Propositional Calculus.
Discrete Mathematical Structures: Theory and Applications 1 Logic: Learning Objectives  Learn about statements (propositions)  Learn how to use logical.
1 Section 7.1 First-Order Predicate Calculus Predicate calculus studies the internal structure of sentences where subjects are applied to predicates existentially.
Chapter 3 Propositional calculus Predicate calculus Artificial Intelligence Dr.Hassan Al-Tarawneh.
March 3, 2016Introduction to Artificial Intelligence Lecture 12: Knowledge Representation & Reasoning I 1 Back to “Serious” Topics… Knowledge Representation.
Propositional Calculus
The Predicate Calculus
Introduction to Logic for Artificial Intelligence Lecture 2
Knowledge Representation and Reasoning
The function of knowledge representation scheme is
Artificial Intelligence
CS201: Data Structures and Discrete Mathematics I
1st-order Predicate Logic (FOL)
Back to “Serious” Topics…
CSNB234 ARTIFICIAL INTELLIGENCE
Propositional Calculus
CS201: Data Structures and Discrete Mathematics I
Predicate Logic: Syntax.
Predicate Logic.
An Application in Prolog
Presentation transcript:

Artificial Intelligence 고려대학교 컴퓨터학과 자연어처리 연구실 임 해 창

The Predicate Calculus 2.0 Introduction 2.1 The Propositional Calculus 2.2 The Predicate Calculus 2.3 Using Inference Rules to Produce Predicate Calculus 2.4 A Logic-Based Financial Advisor Artificial Intelligence

2.0 Introduction Predicate Calculus A representation language for AI Well-defined formal semantics Sound and complete inference rules Serves as a standard of comparison for other representation and reasoning methods 지식 표현언어로 한 객체의 속성이나 객체와 객체사이의 관계를 표현 Network representation(p202), conceptual dependency(p208), script(p212), Frame(p216), Conceptual Graph(p227) Artificial Intelligence

2.1 Propositional Calculus (1) Symbols Sentences Semantics Equivalences Proposition(명제)--참이나 거짓 중 단 하나만 갖는 문장 하나의 언어를 정의하는 첫 단계로 Symbol을 정의 하는 것 Artificial Intelligence

2.1 Propositional Calculus (1) Definition - Symbols the propositional symbols P, Q, R, S, T, ... truth symbols true, false connectives Ù, Ú, Ø, Þ, = Propositional symbols denote propositions about the world that may be either “true” or “false” “the car is red”, “water is wet” Proposition(명제)--참이나 거짓 중 단 하나만 갖는 문장 하나의 언어를 정의하는 첫 단계로 Symbol을 정의 하는 것 Artificial Intelligence

2.1 Propositional Calculus (2) Definition – Propositional Calculus Sentences Every propositional symbol and truth symbol is a sentence. Ex) true, P, Q, and R are sentences. The negation of a sentence is a sentence. Ex) Ø P and Ø false are sentences. The conjunction, or and, of two sentences is a sentence. Ex) P Ù Ø P is a sentence. The disjunction, or or, of two sentences is a sentence. Ex) P Ú Ø P is a sentence. The implication of one sentence for another is a sentence. Ex) P Þ Q is a sentence. The equivalence of two sentences is a sentence. Ex) P Ú Q = R is a sentence. Legal sentences are called well-formed formulas or WFFs. Conjunction—논리곱, disjunction—논리합, implication—논리함축, equivalence—동치 Artificial Intelligence

2.1 Propositional Calculus (3) Definition - Propositional Calculus Semantics The truth assignment of negation, Ø P, where P is any propositional symbol, is F if the assignment to P is T, and T if the assignment to P is F. The truth assignment of conjunction, Ù, is T only when both conjuncts have truth value T; otherwise it is F. The truth assignment of disjunction, Ú, is F only when both disjuncts have truth value F; otherwise it is T. The truth assignment of implication, Þ, is F only when the premise or symbol before the implication is T and the truth value of the consequent or symbol after the implication is F; otherwise it is T. The truth assignment of equivalence, =, is T only when both expressions have same truth assignment for all possible interpretations; otherwise it is F. 합성명제들의 의미, 진리표(Truth table)로 표현 가능 Artificial Intelligence

2.1 Propositional Calculus (4) Definition - Equivalences Ø ( Ø P) = P (P Ú Q) = (ØP Þ Q) the contrapositive law (P Þ Q) = (ØQ Þ ØP) de Morgan’s law Ø(P Ú Q) = (ØP Ù ØQ) and Ø(P Ù Q) = (ØP Ú ØQ) the commutative laws (P Ù Q) = (Q Ù P) and (P Ú Q) = (Q Ú P) associative law ((P Ù Q) Ù R) = (P Ù (Q Ù R)) , ((P Ú Q) Ú R) = (P Ú (Q Ú R)) distributive law P Ú (Q Ù R) = (P Ú Q) Ù (P Ú R), P Ù (Q Ú R) = (P Ù Q) Ú (P Ù R) Equivalence=항등법칙 Contrapositive=대우, commutative=교환, associative=결합, distirbutive=분배 Artificial Intelligence

2.2 Predicate Calculus (1) Propositional Calculus vs. Predicate Calculus a symbol P denote the sentence “it rained on Tuesday” weather(Tuesday, rain), weather(X, rain) friends(father(David), father(Andrew)) $Y friends(Y, peter), "X likes(X, ice_cream) Predicate란 한 객체의 성질이나 객체와 객체사이의 관계를 표현하는것 Predicate calculus는 argument에 상수나 변수 또는 function을 가질수 있고, Quantifier로 variable을 한정 지울 수 있다. Artificial Intelligence

2.2 Predicate Calculus (2) Definition – Predicate Calculus Symbols The alphabet that makes up the symbols of the predicate calculus consists of: The set of letters, both upper- and lowercase, of the alphabet. The set of digits, 0, 1, …, 9. The underscore, _. Symbols in the predicate calculus begin with a letter and are followed by any sequence of these legal characters. Legitimate characters include : a R 6 9 p _ z Examples of illegal characters include : # % @ / & “ Legitimate predicate calculus symbols include : George fire3 tom_and_jerry bill XXXX friends_of Examples of illegal strings include : 3jack “no blanks allowed” ab%cd Artificial Intelligence

2.2 Predicate Calculus (3) Definition - Symbols and Terms Predicate calculus symbols include: Truth symbols true and false (these are reserved symbols). Constant symbols are symbol expressions having the first character lowercase. Variable symbols are symbol expressions beginning with an uppercase character. Function symbols are symbol expressions having the first character lowercase. A function expression consists of a function constant of arity n, followed by n terms, t1, t2, …, tn, enclosed in parentheses and separated by commas. f(X,Y), father(david), price(bananas) A term is either a constant, variable, or function expression. cat, times(2,3), X, blue, mother(jane) Artificial Intelligence

2.2 Predicate Calculus (4) Definition - Predicates and Atomic Sentences Predicate symbols are symbols beginning with a lowercase letter. Predicates have an associated positive integer referred to as the arity or “argument number” for the predicate. Predicates with the same name but different arities are considered distinct. An atomic sentence is a predicate constant of arity n, followed by n terms, t1, t2, …, tn, enclosed in parentheses and separated by commas. likes(george,kate) The truth values, true and false, are also atomic sentences. Artificial Intelligence

2.2 Predicate Calculus (5) Definition – Predicate Calculus Sentences Every atomic sentence is a sentence If s is a sentence, then so is its negation, Øs. If s1 and s2 are sentences, then so is their conjunction, s1 Ù s2. If s1 and s2 are sentences, then so is their disjunction, s1 Ú s2. If s1 and s2 are sentences, then so is their implication, s1 Þ s2. If s1 and s2 are sentences, then so is their equivalence, s1 = s2. If X is a variable and s a sentence, then " X s is a sentence. If X is a variable and s a sentence, then $ X s is a sentence. Artificial Intelligence

2.2 Predicate Calculus (6) Verifying a sentence - algorithm Procedure verify_sentence(expression); begin case expression is an atomic sentence: return(success); expression is of the form Q X s, where Q is either " or $, X is a variable and s is a sentence: if verify_sentence(s) returns success then return(success); else return(fail); expression is of the form Øs: then return (success); else return(fail); Verify_sentence takes as argument a candidate expression and return success if the expression is a sentence. Recursion– 1. Termination condition 2. How to reduce the size of the input Artificial Intelligence

2.2 Predicate Calculus (7) Verifying a sentence - algorithm (continued) expression is of the form s1 op s2, where op is a binary logical operator: if verify_sentence(s1) returns success and verify_sentence(s2) returns success then return (success); else return(fail); otherwise: return(fail) end end. Artificial Intelligence

2.2 Predicate Calculus (8) Definition - Interpretation Let the domain D be a nonempty set. An interpretation over D is an assignment of the entities of D to each of the constant, variable, predicate, and function symbols of a predicate calculus expression, such that: Each constant is assigned an element of D. Each variable is assigned to a nonempty subset of D; these are the allowable substitutions for that variable. Each function f of arity m is defined on m arguments of D and defines a mapping from Dm into D. each predicate p of arity n is defined on n arguments from D and defines a mapping from Dn into {T, F}. Given an interpretation, the meaning of an expression is a truth value assignment over the interpretation Artificial Intelligence

2.2 Predicate Calculus (9) Definition - Truth value of P.C. Expressions Assume an expression E and an interpretation I for E over a nonempty domain D. The truth value for E is determined by: The value of a constant is the element of D it is assigned to by I. The value of a variable is set of elements of D it is assigned to by I. The value of a function expression is that element of D obtained by evaluating the function for the parameter values assigned by the interpretation. The value of truth symbol “true” is T and “false” is F. The value of an atomic sentence is either T or F, as determined by the interpretation I. The value of the negation of a sentence is T if the value of the sentence is F and is F if the value of the sentence is T. The value of the conjunction of two sentences is T if the value of both sentences is T and is F otherwise. Artificial Intelligence

2.2 Predicate Calculus (10) Definition - Truth value of Expressions (continued) The truth assignment of negation, Ø P, where P is any symbol, is F if the assignment to P is T, and T if the assignment to P is F. The truth assignment of conjunction, Ù, is T only when both conjuncts have truth value T; otherwise it is F. The truth assignment of disjunction, Ú, is F only when both disjuncts have truth value F; otherwise it is T. The truth assignment of implication, Þ, is F only when the premise or symbol before the implication is T and the truth value of the consequent or symbol after the implication is F; otherwise it is T. The truth assignment of equivalence, =, is T only when both expressions have same truth assignment for all possible interpretations; otherwise it is F. Artificial Intelligence

2.2 Predicate Calculus (11) Definition - Truth value of Expressions (continued) Finally, for a variable X and a sentence S containing X: The value of " X S is T if S is T for all assignments to X under I, and it is F otherwise. The value of $ X S is T if there is an assignment to X in the interpretation under which S is T; otherwise it is F. Artificial Intelligence

2.2 Predicate Calculus (12) Relationships between negation and quantifiers Ø$ X p(X) = " X Øp(X) Ø" X p(X) = $ X Øp(X) $ X p(X) = $ Y p(Y) ; variable rename " X q(X) = " Y q(Y) ; variable rename " X (p(X) Ù q(X)) = " X p(X) Ù " Y q(Y) $ X (p(X) Ú q(X)) = $ X p(X) Ú $ Y q(Y) Artificial Intelligence

2.2 Predicate Calculus (13) Definition - First-order Predicate Calculus First-order predicate calculus allows quantified variables to refer to objects in the domain of discourse and not to predicates or functions. Examples of representing English sentence If it doesn’t rain tomorrow, Tom will go to the mountains Øweather(rain, tomorrow) Þ go(tom, mountains) Emma is a Doberman pinscher and a good dog gooddog(emma) Ù isa(emma, doberman) All basketball players are tall " X (basketball_player(X) Þ tall(X)) If wishes were horses, beggars would ride. equal(wishes, horses) Þ ride(beggars). Nobody likes taxes Ø$ X likes(X, taxes) There is no unique mapping of sentences into predicate calculus. Ambiguities Everyone is loyal to someone. 1. For all X there exits Y loyalto(X,Y) 2. There exits Y for all X loyalto(X,Y) Artificial Intelligence

2.2 Predicate Calculus (14) c a b d Representing a blocks world for all X, X is clear if there does not exist a Y such that Y is on X. " X (Ø$ Y on(Y, X) Þ clear(X)). To stack X on Y first empty the hand, then clear X, then clear Y, and then pick_up X and put_down X on Y. " X " Y ((hand_empty Ù clear(X) Ù clear(Y) Ù pick_up(X) Ù put_down(X, Y)) Þ stack(X,Y)). on(c,a). on(b,d). ontable(a). ontable(d). clear(b). clear(c). hand_empty. c a b d Artificial Intelligence

2.3 Using Inference Rules to Produce P. C. Expressions Unification Unification Example Artificial Intelligence

2.3.1 Inference Rules(1) A mechanical means of producing new predicate calculus sentences from other sentences Examples: modus ponens, resolution Definition - satisfy, model, valid, inconsistent For a predicate calculus expression S and an interpretation I: If S has a value of T under I and a particular variable assignment, then I is said to satisfy S. If I satisfies S for all variable assignments, then I is a model of S. S is satisfiable if and only if there exist an interpretation and variable assignment that satisfy it; otherwise, it is unsatisfiable. A set of expressions is satisfiable if and only if there exist an iterpretation and variable assignment that satisfy every element. If a set of expressions is not satisfiable, it is said to be inconsisent. If S has a value T for all possible interpretations, S is said be valid. $X(p(X) Ù Øp(X))  inconsistent "X(p(X) Ú Øp(X))  valid Modus ponens-전건부정규칙, valid=진위 Artificial Intelligence

2.3.1 Inference Rules(2) Definition - proof procedure A proof procedure is a combination of an inference rule and an algorithm for applying that rule to a set of logical expressions to generate new sentences. (e.g. resolution) Definition - logically follows, sound, and complete A predicate calculus expression X logically follows from a set S of predicate calculus expression if every interpretation and variable assignment that satisfies S also satisfies X. An inference rule is sound if every predicate calculus expression produced by the rule from a set S of predicate calculus expressions also logically follows from S. An inference rule is complete if, given a set S of predicate calculus expressions, the rule can infer every expression that logically follows from S. Artificial Intelligence

2.3.1 Inference Rules(3) Definition - modus ponens, modus tolens, elimination, introduction, and universal instantiation If the sentences P and P Þ Q are known to be true, then modus ponens lets us infer Q. Under the inference rule modus tolens, if P Þ Q is known to be true and Q is known to be false, we can infer ØP. And elimination allows us to infer the truth of either of the conjuncts from the truth of a conjunctive sentence. For instance, P Ù Q lets us conclude P and Q are true. And introduction lets us infer the truth of a conjunction from the truth of its conjuncts. For instance, if P and Q are true, then PÙQ is true. Universal instantiation states that if any universally quantified variable in a true sentence is replaced by any appropriate term from the domain, the result is a true sentence. Thus, if a is from the domain of X, "Xp(X) lets us infer p(a). Artificial Intelligence

2.3.2 Unification(1) Algorithm for determining the substitutions needed to make two predicate calculus expressions match foo(X,a,goo(Y)) foo(fred,a,goo(Z)) {fred/X, Z/Y} foo(W,a,goo(jack)) {W/X, jack/Y} foo(Z,a,goo(moo(Z))) {Z/X, moo(Z)/Y} require that all variables be universally quantified eliminate existentially quantified variables skolemization(skolem constant, skolem function) " X parent(X,tom) -> parent(bob,tom) " X $Y mother(X,Y) -> " X mother(X,f(X)) Artificial Intelligence

2.3.2 Unification(2) A constant can be substituted for a variable. Any constant may not be replaced. A variable cannot be unified with a term containing that variable. X and p(X) (wrong) Any unifying substitution must be made consistently across all occurrences of the variable in both expressions being matched. Artificial Intelligence

2.3.2 Unification(3) Composition Definition - Most General Unifier the method by which unification substitutions are combined the composition of S and S’ is obtained by applying S to the element of S’ {X/Y, W/Z}, {V/X}, {a/V, f(b)/W}  {a/Y, f(b)/Z} {V/Y, W/Z} and then {a/Y,f(b)/Z} Definition - Most General Unifier If S is any unifier of expression E and g is the most general unifier of that set of expressions, then for s applied to E there exists another unifier s’ such that Es = Egs’ (where gs’ is the composition of unifiers, as seen above). e.g. in unifying p(X) and p(Y) {fred/X, fred/Y} will work, but not the most general unifier. {Z/X, Z/Y} is the most general unifier. Artificial Intelligence

2.3.2 Unification(4) Function unify Function unify(E1, E2); begin case both E1 and E2 are constants or the empty list: %recursion stops if E1 = E2 then return {} else return FAIL; E1 is a variable: if E1 occurs in E2 then return FAIL else return {E2/E1}; E2 is a variable: if E2 occurs in E1 then return FAIL else return {E1/E2} either E1 or E2 is empty then return FAIL Artificial Intelligence

2.3.2 Unification(5) Function unify(continued) otherwise: %both E1 and E2 are lists begin HE1 := first element of E1; HE2 := first element of E2; SUBS1 := unify(HE1, HE2); if SUBS1 := FAIL then return FAIL; TE1 := apply(SUBS1, rest of E1); TE2 := apply(SUBS1, rest of E2); SUBS2 := unify(TE1, TE2); if SUBS2 = FAIL then return FAIL; else return composition(SUBS1, SUBS2) end end %end case Artificial Intelligence

2.3.3 A Unification Example(1) unify((parents X (father X) (mother bill)), (parents bill (father bill) Y)) 1. unify((parents X (father X) (mother bill)), (parents bill (father bill) Y)) Unify first elements and apply substitutions to rest return {} 2. unify(parents, parents) 3. unify((X (father X) (mother bill)), (bill (father bill) Y)) Unify first elements and apply substitutions to rest return {bill/X} 4. unify(X, bill) 5. unify(((father bill) (mother bill)), ((father bill) Y)) Artificial Intelligence

2.3.3 A Unification Example(2) 5. unify(((father bill) (mother bill)), ((father bill) Y)) Unify first elements and apply substitutions to rest return {} return {(mother bill)/Y} 6. unify((father bill), (father bill)) 11. unify(((mother bill)), (Y)) Unify first elements and apply substitutions to rest Unify first elements and apply substitutions to rest return {} return {} return {} return {(mother bill)/Y} 7. unify(father, father) 8. unify((bill), (bill)) 12. unify((mother bill), Y) 13. unify((), ()) Unify first elements and apply substitutions to rest return {} return {} 9. unify(bill, bill) 10. unify((), ()) Artificial Intelligence

A Unification Example P(a,x,f(g(Y))),P(z,f(z),f(u)) {a/z} Apply {a/z} P(a,x,f(g(Y))), P(a,f(a),f(u)) {f(a)/x} {a/z, f(a)/x} Apply {f(a)/x} P(a,f(a),f(g(Y))), P(a,f(a),f(u)) {g(Y)/u} {a/z, f(a)/x, g(Y)/u} P(a, f(a), f(g(Y))) composition composition Artificial Intelligence

2.4 A Logic-Based Financial Advisor(1) To help a user decide whether to invest in a savings account or the stock market.(P 75 problem) A Logical System 1. savings_account(inadequate) Þ investment(savings) 2. savings_account(adequate) Ù income(adequate) Þ investment(stocks) 3. savings_account(adequate) Ù income(inadequate) Þ investment(combination) 4. " X amount_saved(X) Ù $ Y(dependents(Y) Ù greater(X, minsavings(Y))) Þ savings_account(adequate) 5. " X amount_saved(X) Ù $ Y(dependents(Y) Ù Øgreater(X, minsavings(Y))) Þ savings_account(inadequate) minsavings(X) = 5000 * X minincome(X) = 15000 + (4000 * X) Artificial Intelligence

2.4 A Logic-Based Financial Advisor(2) A Logical System(continued) 6. " X earnings(X, steady) Ù $ Y (dependents(Y) Ù greater(X, minincome(Y))) Þ income(adequate) 7. " X earnings(X, steady) Ù $ Y (dependents(Y) Ù Øgreater(X, minincome(Y))) Þ income(inadequate) 8. " X earnings(X, unsteady) Þ income(inadequate) 9. amount_saved(22000) 10. earnings(25000, steady) 11. dependents(3) Artificial Intelligence

2.4 A Logic-Based Financial Advisor(3) 10 Ù 11 Ù 7 under the substitution {25000/X, 3/Y} earnings(25000, steady) Ù dependents(3) Ù Øgreater(25000, minincome(3)) Þ income(inadequate) 12. income(inadequate) 9 Ù 11 Ù 4 under the substitution {22000/X, 3/Y} amount_saved(22000) Ù dependents(3) Ù greater(22000, minsavings(3)) Þ savings_account(adequate) 13. savings_account(adequate) 12 Ù 13 Ù 3 investment(combination) Artificial Intelligence