Question: Problem Description Given the following prolog program, answer the following queries: /* Comments in prolog + represents not equal to */ %single line comments day(sunday).
Problem Description Given the following prolog program, answer the following queries:
/* Comments in prolog \+ represents "not equal to" */
%single line comments
day("sunday").
day("monday").
day("tuesay").
day("wednesday").
day("thursday").
day("friday").
no_office("sunday").
no_office("saturday").
take_leave("monday").
visit_mom(X) :- no_office(X) | take_leave(X).
Interpret the queries and guess(!) the answer(s) produced by the program:
1. day("Holiday").
2. day(X).
3. visit_mom(X).
4. visit_mom(X). provided you have changed the rule with this: visit_mom(X) :- no_office(X) , take_leave(X).
5. define a new rule working_day(X)to detect the days that are not holidays.
6. Express the following statements in first order logic. You can define the predicates as you wish. Apply appropriate quantifiers for each expression.
a. I can visit my mom every day.
b. I can visit my mom if I have no office.
c. I take leave some day and I can visit my mom.
d. I can take leave if it is a working day.
e. What is the domain for a possible predicate day(X)?
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
