home *** CD-ROM | disk | FTP | other *** search
/ Carousel / CAROUSEL.cdr / mactosh / hc / hyperx11.sit / HyperX / stack_-1.xml < prev    next >
Extensible Markup Language  |  1988-02-25  |  4KB  |  16 lines

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <!DOCTYPE stack PUBLIC "-//Apple, Inc.//DTD stack V 2.0//EN" "" >
  3. <stack>
  4.     <name>in</name>
  5.     <id>-1</id>
  6.     <cardCount>44</cardCount>
  7.     <cardID>3058</cardID>
  8.     <listID>2246</listID>
  9.     <cantModify><false /></cantModify>
  10.     <cantDelete><false /></cantDelete>
  11.     <cantAbort><false /></cantAbort>
  12.     <cardSize>
  13.         <width>512</width>
  14.         <height>342</height>
  15.     </cardSize>
  16.     <script>--------------------------------- HyperX inference engine   ---- Written by Ron Evans      ---- ┬⌐1987 All Rights Reserved ---- Leave this notice intact  ---------------------------------on openStackhide menuBargo card "Title"push this cardvisual effect dissolvego to card "HyperX Info"end openStackon arrowKeypass arrowKeyend arrowKeyfunction testFact theFactpush this cardvisual effect barn door closego card "smart"put "Testing Fact..." into card field "Status"show card field "Status"put find(card field "Facts",theFact) into theResultput item 1 of theResult into theLIneif theLine <> 0then put item 2 of line theLine of card field "Facts" into theResultelse put empty into theResultvisual effect barn door openpop cardreturn theResultend testFactfunction testRule theRulepush this cardvisual effect barn door closego card "Smart"put "Testing Rule..." into card field "Status"show card field "Status"put find(card field "Rules",theRule) into theResultput item 1 of theResult into theLineif theLine <> 0then put item 2 of line theLine of card field "Rules" into theResultelse put empty into theResultvisual effect barn door openpop cardreturn theResultend testRulefunction forChain theFactput empty into theResultput empty into theListput card field "Rules" of card "Smart" into theListput "Forward Chaining..." into card field "Status" of card "Smart"go card "Rule 1"repeat with thisRule=1 to card field "Rule Count" of card "Smart"visual effect scroll left very fastfind theFact in bkgnd field "Assertions"put find(field "Assertions",theFact) into lookingput testRule(field "Rule Number") into statRuleif item 1 of looking<>0 and statRule is emptythenput the number of lines in card field "Goal Trail" of┬¼card "Smart" into theLineput theLine+1 into theLineput field "Rule Number" into line theLine of ┬¼card field "Goal Trail" of card "Smart"put "found" into theResultexit repeatend ifif item 1 of find(theList,field "Rule Number")<>0then exit repeatelseput the number of lines in theList into tempput field "Rule Number" into line temp of theListend ifend repeatreturn theResultend forChainfunction backChainput "Backward Chaining..." into card field "Status" of card "Smart"push this cardput the param of 1 into theRuleput the param of 2 into theFactput card field "Rules" of card "Smart" into Testedgo card "Rule 1"visual effect scroll left very fastfind theFact in bkgnd field "Conclusion"if theFact=field "Conclusion" and item 1 of ┬¼find(Tested,field "Rule Number")=0thenput field "Rule Number" into theResultvisual effect scroll downpop cardreturn theResultend ifvisual effect scroll downpop cardreturn emptyend backChainfunction proveRule theRulerepeat with theLine=1 to the number of lines in bkgnd field ┬¼"Assertions"put line theLine of bkgnd field "Assertions" into theFactput testFact(theFact) into theResultif theResult=true then next repeatif theResult=falsethen return "fail"put backChain(theRule,theFact) into theResultif theResult is not emptythenput the number of lines in card field "Goal Trail" of ┬¼card "Smart" into theLineput theLine+1 into theLineput theResult into line theLine in card field "Goal Trail"┬¼of card "Smart"return "*"end ifpush this cardvisual effect barn door closego card "Smart"put "Looking up Question..." into card field "Status"show card field "Status"put find(card field "Questions",theFact) into theQuestif item 1 of theQuest=0thenvisual effect wipe upgo card "Question"put theFact into field "Fact"return "?"elseput item 1 of theQuest into theQuestput item 2 of line theQuest of ca