Datalog
Class examples
female(amy).
female(betsy).
female(cathy).
female(dana).
female(elizabeth).
female(francis).
male(greg).
male(howard).
male(irving).
male(james).
male(joel).
parent(amy,betsy).
parent(amy,cathy).
parent(amy,howard).
parent(greg,betsy).
parent(greg,cathy).
parent(greg,howard).
parent(elizabeth,joel).
parent(cathy,elizabeth).
parent(cathy,irving).
parent(dana,francis).
parent(dana,james).
parent(howard,francis).
parent(howard,james).
sibling(X,Y) :- parent(Z,X), parent(Z,Y).
hair(amy,red).
hair(greg,brown).
hair(betsy,brown).
hair(cathy,brown).
hair(howard,brown).
hair(dana,blonde).
hair(elizabeth,red).
hair(irving,red).
hair(francis,blonde).
hair(james,brown).
income(amy,50000).
income(greg,45000).
income(betsy,60000).
income(cathy,63000).
income(howard,74000).
income(dana,72000).
married(greg,amy).
married(amy,greg).
married(howard,dana).
married(dana,howard).
grandparent(X,Y) :- parent(X,Z), parent(Z,Y).
elder(X,Y) :- parent(X,Y).
elder(X,Y) :- parent(Z,Y), elder(X,Z).
over50income(X) :- income(X,Y), Y >= 50000.
parentsover70income(X) :- parent(X,Y), income(X,Z), Z >= 70000.
parentsover70income2(X) :- parent(X,Y), income(X,Z), Z >= 70000, female(Y).
Class queries
female(amy).
female(greg).
male(greg).
parent(any,X).
parent(X,betsy).
hair(X,red).
income(amy,X).
sibling(besty,A).
References and Links
|