Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: anton@mips.complang.tuwien.ac.at (Anton Ertl) Newsgroups: comp.lang.forth Subject: Re: Expert systems in forth Date: Sun, 05 Jan 2025 17:31:10 GMT Organization: Institut fuer Computersprachen, Technische Universitaet Wien Lines: 56 Message-ID: <2025Jan5.183110@mips.complang.tuwien.ac.at> References: <069d1724f6056b4c36d9e1ffaa3d606d@www.novabbs.com> <2025Jan5.094909@mips.complang.tuwien.ac.at> <2025Jan5.160913@mips.complang.tuwien.ac.at> Injection-Date: Sun, 05 Jan 2025 18:49:48 +0100 (CET) Injection-Info: dont-email.me; posting-host="f49e48ee6e609beb7f510050b181a33b"; logging-data="1202351"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18yR5p46oy7QlUCS0hjC7M0" Cancel-Lock: sha1:f+dFTERuEgoXkXqphk6ZwjZJP8E= X-newsreader: xrn 10.11 Bytes: 2950 melahi_ahmed@yahoo.fr (ahmed) writes: >On Sun, 5 Jan 2025 15:09:13 +0000, Anton Ertl wrote: > >> melahi_ahmed@yahoo.fr (ahmed) writes: >>>I'll see how to change the flow of the inference using the action field >>>of facts and executing them during the inference, like this we can >>>choose the next rule to use. >> >> Potential improvements: >> >> Also have rules that work for both truth and falsness. Or, more generally, negative rules. Then there would be: bird :- feathers .; not bird :- not feathers .; >> And then you do not need to ask about wings > > >The bat has wings and can fly and it is a mammal. > > > >> and egg-laying unless the >> answer is "don't know" (supporting that would be another improvement). > > >Your example `platypus', it lays eggs, and it is not a bird. I am referring to your rule bird :- wings , lay-eggs .; So if you have established that the animal has wings AND lays eggs (and is not extinct), it's a bird. With the negative rules one could also specify not bird :- not wings .; not bird :- not lay-eggs .; >Until now, I assume: no equivalent to unknown. >Three level logic: yes/no/unknown (true/false/unknown)can be >implemented. >Perhaps, Carnaugh tables can be helpful. Strangely, even though there are a lot of people working on logic in my school, I have never heard of any work in that direction. But I would be very surprised if that was uncharted land. - anton -- M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html New standard: https://forth-standard.org/ EuroForth 2024: https://euro.theforth.net