Consider a deductive database with the following rules:
ancestor(X,Y) :- father(X,Y)
ancestor(X,Y) :- father(X,Z), ancestor(Z,Y)
Notice that "father(X,Y)" means that Y is the father of X; "ancestor(X,Y)" means that Yis the ancestor of X. Consider the fact base father(HarrY,Issac) , father(Issac,John) , father(John,Kurt).
a. Construct a model theoretic interpretation of the above rules using the given facts.
b. Consider that a database contains the above relations father(X, V), another relation brothe r (X, Y), and a third relation bi rth (X, B), where B is the birthdate of person X. State a rule that computes the first cousins of the following variety: their fathers must be brothers.
c. Show a complete Datalog program with fact-based and rule-based literals that computes the following relation: list of pairs of cousins, where the first person is born after 1960 and the second after 1970. You may use "greater than" as a built-in predicate.