Home > Archive > Prolog > February 2007 > OOPS Expert System Shell with LEX conflict resolution
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
OOPS Expert System Shell with LEX conflict resolution
|
|
| Angela Latrofa 2007-02-20, 8:03 am |
| Hy everybody,
I'm a newbie student of prolog. I have to develope an expert system.
For do this i want to use a forward chaining shell like OOPS described
in Amzi! Building Expert System in Prolog. I've problem trying to use
the LEX conflict resolution specifically when program call findall
the system shows this message
"ERROR: source_sink `rule _G530:_G531==>_G532' does not exist".
I can't find the bug.
Someone has a working version of Oops or other expert system shell
with conflict resolution ?
Thanks for your help.
| |
| Peter Van Weert 2007-02-20, 8:03 am |
| Angela Latrofa wrote:
> Hy everybody,
> I'm a newbie student of prolog. I have to develope an expert system.
> For do this i want to use a forward chaining shell like OOPS described
> in Amzi! Building Expert System in Prolog. I've problem trying to use
> the LEX conflict resolution specifically when program call findall
> the system shows this message
> "ERROR: source_sink `rule _G530:_G531==>_G532' does not exist".
> I can't find the bug.
> Someone has a working version of Oops or other expert system shell
> with conflict resolution ?
> Thanks for your help.
>
Most Prolog systems include an implementation of Constraint Handling
Rules (CHR). CHRs are forward chaining rules very similar to production
rules. They do not offer all features of a full production rule system,
but certainly those of OOPS. They should be far more efficient than OOPS
as well. The conflict resolution is fixed and different from LEX, but in
practice there should be noticeable difference.
CHeeRs,
Peter
| |
| girish 2007-02-20, 7:04 pm |
| On Feb 20, 7:51 am, Peter Van Weert <Peter.VanWe...@cs.kuleuven.be>
wrote:
> Angela Latrofa wrote:
>
> Most Prolog systems include an implementation of Constraint Handling
> Rules (CHR). CHRs are forward chaining rules very similar to production
> rules. They do not offer all features of a full production rule system,
> but certainly those of OOPS. They should be far more efficient than OOPS
> as well. The conflict resolution is fixed and different from LEX, but in
> practice there should be noticeable difference.
>
> CHeeRs,
> Peter
>
> Peter.VanWeert.vcf
> 1KDownload
in prolog programs errors where variables appear in unusual places(the
rule appears to have only variables)-is probably due to incorrect
upper case or a mispelt variables. some nice compilers warn about
singleton variables which usually fixes these types of problems.
| |
| Angela Latrofa 2007-02-20, 7:04 pm |
| On 20 Feb, 15:47, "girish" <Girish.Padmala...@gmail.com> wrote:
> On Feb 20, 7:51 am, Peter Van Weert <Peter.VanWe...@cs.kuleuven.be>
> wrote:
>
>
>
>
>
>
>
> in prolog programs errors where variables appear in unusual places(the
> rule appears to have only variables)-is probably due to incorrect
> upper case or a mispelt variables. some nice compilers warn about
> singleton variables which usually fixes these types of problems.
I think that is not such type of error
This is the code:
conflict_set(CS) :-
findall(r(Inst, ID, LHS, RHS),
[rule ID: LHS ==> RHS,
match(LHS, Inst)], CS).
conflict_set is called by go:- conflict_set(CS), ecc.
The rest is the same in the book mentioned above
| |
| Angela Latrofa 2007-02-20, 7:04 pm |
| On 20 Feb, 13:51, Peter Van Weert <Peter.VanWe...@cs.kuleuven.be>
wrote:
> Angela Latrofa wrote:
>
> Most Prolog systems include an implementation of Constraint Handling
> Rules (CHR). CHRs are forward chaining rules very similar to production
> rules. They do not offer all features of a full production rule system,
> but certainly those of OOPS. They should be far more efficient than OOPS
> as well. The conflict resolution is fixed and different from LEX, but in
> practice there should be noticeable difference.
>
> CHeeRs,
> Peter
>
> Peter.VanWeert.vcf
> 1KScarica
Do you have sample application? expecially with interactive dialogue
for asserting facts.
Thanks.
| |
| Peter Van Weert 2007-02-20, 7:04 pm |
| Angela Latrofa schreef:
> Do you have sample application? expecially with interactive dialogue
> for asserting facts.
> Thanks.
>
Many example programs can be found on the CHR website (under example
programs): http://www.cs.kuleuven.ac.be/~dtai/projects/CHR/
They can also be tried online at: http://chr.informatik.uni-ulm.de/~webchr/
Even though these are mostly constraint solvers, CHR can just as well be
used as a general purpose production rule system.
Asserting facts (constraints in CHR terminology) can be done simply from
the Prolog interactive top level. Not sure that's what you mean though?
Peter
|
|
|
|
|