Question: Using Prolog: Assume, you are working with the following knowledge base: family(person( john, cohen, date(17 may,1990), unemployed), person( lily, cohen, date(9.may,1990), unemployed), []). family(person john,

 Using Prolog: Assume, you are working with the following knowledge base:

Using Prolog: Assume, you are working with the following knowledge base: family(person( john, cohen, date(17 may,1990), unemployed), person( lily, cohen, date(9.may,1990), unemployed), []). family(person john, armstrong, date(7.may,1988), unemployed), person lily, armstrong, date(29. may, 1961), unemployed), []). family(person( eric, baily, date(7.may, 1963), works bbc, 2200)), person( grace, baily, date(9.may, 1965), works( ntu, 1000)), [person( louie, baily, date(25,may, 1983), unemployed)]). family(person eric, baily, date(7.may,1963), works acc, 21200)), person( grace, baily, date(9.may, 1965), works( ntnu, 12000)), [person( louie, baily, date(25,may, 1983), unemployed)]) family(person(eric, fox, date(27.may,1970), works( bbc, 25200)), person( grace, fox, date(9.may,1971), works( ntbu, 13000)), [person( louie, fox, date(5,may, 1993), unemployed)]). family(person tom, cohen, date(7.may, 1960), works bed, 15200)), person ann, cohen, date(29, may, 1961), unemployed), [person pat, cohen, date(5.may,1983), works( bed, 15200)), person( jim, cohen, date(5,may, 1983), works bed, 15200))]). family(person( bob, armstrong, date(12,0ct, 1977), works( ntnu, 12000)). person( liz,armstrong, date(6,0ct,1975), unemployed), [person( bob, armstrong, date(6,0ct, 1999), unemployed), person( sam,armstrong, date(8,oct,1998), unemployed)]). family(person tony, oliver, date(7 may,1960), works bbc, 35200)), person anny, oliver, date(9.may, 1961), unemployed), [person( patty, oliver, date(8,may,1984), unemployed), person jimey, oliver, date(5, may, 1983), unemployed)]). family(person( jack, fox, date(27, may,1940), unemployed), persona jane, fox, date(9,aug, 1941), works( ntu, 13050)), [person andy, fox, date(5.aug, 1967), works( com, 12000)), person( kai, fox, date(5.jul,1969), unemployed)]). husband(X):- family( X, ___). wife(X) - Camily, X). child(X):- family, Children), member(X, Children). exists(Persons) :- husband Persons), wife( Persons); child( Persons). dateofbirth(person( , , Date, ), Date). salary(person( , , , works, S)), S). salary(person ... unemployed), o). Consider the database and answer the following 1) Write a prolog rule totalIncome/2 to compute the total income of a family. 2) Write a prolog query to print total income of each family. print family details of each family that has income per family member less than 2000. print family details of each family where children's total income is more than their parents. Using Prolog: Assume, you are working with the following knowledge base: family(person( john, cohen, date(17 may,1990), unemployed), person( lily, cohen, date(9.may,1990), unemployed), []). family(person john, armstrong, date(7.may,1988), unemployed), person lily, armstrong, date(29. may, 1961), unemployed), []). family(person( eric, baily, date(7.may, 1963), works bbc, 2200)), person( grace, baily, date(9.may, 1965), works( ntu, 1000)), [person( louie, baily, date(25,may, 1983), unemployed)]). family(person eric, baily, date(7.may,1963), works acc, 21200)), person( grace, baily, date(9.may, 1965), works( ntnu, 12000)), [person( louie, baily, date(25,may, 1983), unemployed)]) family(person(eric, fox, date(27.may,1970), works( bbc, 25200)), person( grace, fox, date(9.may,1971), works( ntbu, 13000)), [person( louie, fox, date(5,may, 1993), unemployed)]). family(person tom, cohen, date(7.may, 1960), works bed, 15200)), person ann, cohen, date(29, may, 1961), unemployed), [person pat, cohen, date(5.may,1983), works( bed, 15200)), person( jim, cohen, date(5,may, 1983), works bed, 15200))]). family(person( bob, armstrong, date(12,0ct, 1977), works( ntnu, 12000)). person( liz,armstrong, date(6,0ct,1975), unemployed), [person( bob, armstrong, date(6,0ct, 1999), unemployed), person( sam,armstrong, date(8,oct,1998), unemployed)]). family(person tony, oliver, date(7 may,1960), works bbc, 35200)), person anny, oliver, date(9.may, 1961), unemployed), [person( patty, oliver, date(8,may,1984), unemployed), person jimey, oliver, date(5, may, 1983), unemployed)]). family(person( jack, fox, date(27, may,1940), unemployed), persona jane, fox, date(9,aug, 1941), works( ntu, 13050)), [person andy, fox, date(5.aug, 1967), works( com, 12000)), person( kai, fox, date(5.jul,1969), unemployed)]). husband(X):- family( X, ___). wife(X) - Camily, X). child(X):- family, Children), member(X, Children). exists(Persons) :- husband Persons), wife( Persons); child( Persons). dateofbirth(person( , , Date, ), Date). salary(person( , , , works, S)), S). salary(person ... unemployed), o). Consider the database and answer the following 1) Write a prolog rule totalIncome/2 to compute the total income of a family. 2) Write a prolog query to print total income of each family. print family details of each family that has income per family member less than 2000. print family details of each family where children's total income is more than their parents

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!