% February 2008 % This CLAM KB has been hand-translated by B. Ross. % The supplied parser did not work with Sicstus Prolog. ghoul(problem). rule(1, lhs([not av(turn_over, yes), av(battery_bad,yes)]), rhs(av(problem,battery), 100)). rule(2, lhs([av(lights_weak, yes)]), rhs(av(battery_bad,yes), 50)). rule(3, lhs([av(radio_weak, yes)]), rhs(av(battery_bad,yes), 50)). rule(4, lhs([av(turn_over, yes), av(smell_gas,yes)]), rhs(av(problem,flooded), 100)). rule(5, lhs([av(turn_over, yes), av(gas_gauge,empty)]), rhs(av(problem,out_of_gas), 90)). rule(6, lhs([av(turn_over, yes), av(gas_gauge,low)]), rhs(av(problem,out_of_gas), 30)). output(problem, battery, [get,the,battery,recharged]). output(problem, out_of_gas, [start,walking,or,hitching,to,a,gas,station]). output(problem, flooded, [wait, 5,minutes,and,try,again]). askable(turn_over, [yes,no], none, 'Does the engine turn over?'). askable(lights_weak, [yes,no], none, 'Are the lights weak?'). askable(radio_weak, [yes,no], none, 'Is the radio weak?'). askable(smell_gas, [yes,no], none, 'Do you smell gas?'). askable(gas_gauge, [empty,low,full], none, 'What does the gas gauge say?').