Path: utzoo!attcan!uunet!mcsun!unido!uklirb!shell From: joshua@athertn.Atherton.COM (Flame Bait) Newsgroups: comp.ai.shells Subject: Re: S1 and COPERNICUS info wanted Message-ID: <4674@uklirb.informatik.uni-kl.de> Date: 9 Apr 90 19:54:44 GMT References: <4533@uklirb.informatik.uni-kl.de> Sender: shell@uklirb.informatik.uni-kl.de Reply-To: joshua@Atherton.COM (Flame Bait) Organization: Atherton Technology, Sunnyvale, CA Lines: 44 Approved: shell@uklirb.uucp Posted-Date: Fri Apr 13 11:36:51 GMT 1990 Warning: biases ahead! In the past I've worked for Teknowledge (now Cimflex-Teknowledge). I was responsible for the maintenance of S.1 and help to develop COPERNICUS. I left Teknowledge about 2 years ago, so my information is that old. wang@ai.toronto.edu (Huaiqing Wang) writes: > I would like some information about an expert system shell called > 'S1' or 'COPERNICUS'. They are two different shells, COPERNICUS is a newer version of S.1. Internally we called COPERNICUS "S.2" or "S.3". > Specifically, I want to know what kind of control language is > available using the shell. It is sort of like PASCAL, except that it has statements which trigger reasoning activity in the rule based part of the system. In COPERNICUS the control language picked up some ideas from C. > For example, > can the programmer specify how a task would be broken into > sub-tasks and for each sub-task, can the programmer specify > a particular inference routine (specifically, forward-chaining, > backward-chaining, depth-first search, breadth-first search, > best-first-search, or any other inference routines)? I think the answer is "yes" to all your questions, but here are some things I know you can do: In COPERNICUS (but not S.1) you can specify a rule as being forward chaining or backward chaining or both. In either product, you can specify a procedure to be used in determining at attribute's value. This feature is usually used to control the order in which sub-attributes are determined, and generally, the order in which things are done. In theory I believe that you can use this feature to implement whatever kind of searching you want, but I suspect it will require a lot of programming on your part. You can also group rules into rule sets, and then have the system attempt to determine an attribute's value using one rule set, then another rule set, etc. I can not tell you which searching stratigy is used by default, but I thought it was in the documentation. Joshua Levy (joshua@atherton.com)