[ Home  |  FAQ-Related Q&As  |  General Q&As  |  Answered Questions ]


    Search the Q&A Archives


I am trying to implement a program in Prolog, that does...

<< Back to: comp.lang.prolog Frequently Asked Questions

Question by Niro
Submitted on 3/15/2004
Related FAQ: comp.lang.prolog Frequently Asked Questions
Rating: Rate this question: Vote
  I am trying to implement a program in Prolog, that does the following:
If my knowledgebase contains a fact or rule that makes a query succeed,
then when the query is run with the parameter of my program it should
retract the clauses or facts that makes the query succeed from the
knowledge base, so that the query fails.
Let say my program is called anti(P):- ......
The following is my knowledgebase:
child_of(joe, ralf).
child_of(mary, joe).
child_of(steve, joe).

descendent_of(X, Y) :-
        child_of(X, Y).
descendent_of(X, Y) :-
        child_of(Z, Y),
        descendent_of(X, Z).

when the query ?child_of(joe,ralf). is run the answer is obviously yes.
But when ?anti(child_of(joe,ralf)). is run I want it to retract the facts
and rules that makes it succeed, in this case child_of(joe,ralf)., so that
the query becomes false.

I hope you can help me with this matter. The logic term for
the rule I am trying to implement is called anti-elements, just in case
that should help.

Thanks

Niro







Your answer will be published for anyone to see and rate.  Your answer will not be displayed immediately.  If you'd like to get expert points and benefit from positive ratings, please create a new account or login into an existing account below.


Your name or nickname:
If you'd like to create a new account or access your existing account, put in your password here:
Your answer:

FAQS.ORG reserves the right to edit your answer as to improve its clarity.  By submitting your answer you authorize FAQS.ORG to publish your answer on the WWW without any restrictions. You agree to hold harmless and indemnify FAQS.ORG against any claims, costs, or damages resulting from publishing your answer.

 

FAQS.ORG makes no guarantees as to the accuracy of the posts. Each post is the personal opinion of the poster. These posts are not intended to substitute for medical, tax, legal, investment, accounting, or other professional advice. FAQS.ORG does not endorse any opinion or any product or service mentioned mentioned in these posts.

 

<< Back to: comp.lang.prolog Frequently Asked Questions


[ Home  |  FAQ-Related Q&As  |  General Q&As  |  Answered Questions ]

© 2008 FAQS.ORG. All rights reserved.