home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
kermit.columbia.edu
/
kermit.columbia.edu.tar
/
kermit.columbia.edu
/
scripts
/
ckermit
/
autorepair
< prev
next >
Wrap
Text File
|
2004-05-13
|
2KB
|
86 lines
take rulebase
define Rule_1 {
(IF (hasFact 'engine_getting_petrol)
(IF (hasFact 'engine_turns_over)
(.
(say '(Problem with spark plugs))
(1)
)
(0)
)
(0)
)
}
define Rule_2 {
(IF (NOT (hasFact 'engine_turns_over))
(IF (NOT (hasFact 'lights_come_on))
(.
(say '(Problem with battery))
(1)
)
(0)
)
(0)
)
}
define Rule_3 {
(IF (NOT (hasFact 'engine_turns_over))
(IF (hasFact 'lights_come_on)
(.
(say '(Problem with starter))
(1)
)
(0)
)
(0)
)
}
define rule_4 {
(IF (hasFact 'petrol_in_fuel_tank)
(.
(addFact 'engine_getting_petrol)
(1)
)
(0)
)
}
echo
echo >>> FIRST CASE
echo >>> Car won't start, there is no obvious sign.
removeAllGoal
removeAllFact
fireRule {rule_1 rule_2 rule_3 rule_4 rule_5}
echo
echo
echo >>> SECOND CASE
echo >>> Car won't start, there is petrol in fuel tank and lights come on
removeAllGoal
removeAllFact
addFact petrol_in_fuel_tank lights_come_on
fireRule {rule_1 rule_2 rule_3 rule_4 rule_5}
echo
echo
echo >>> THIRD CASE
echo >>> Car won't start, there is petrol in fuel tank and engine turns over.
removeAllGoal
removeAllFact
addFact petrol_in_fuel_tank engine_turn_over
fireRule {rule_1 rule_2 rule_3 rule_4 rule_5}
echo
echo >>> FOUR CASE
echo >>> Car won't start, engine gets petrol and engine turns over.
removeAllGoal
removeAllFact
addFact engine_turns_over engine_getting_petrol
fireRule {rule_1 rule_2 rule_3 rule_4 rule_5}