%%% autoKB.pro Dave Reed 3/25/02 %%% %%% auto diagnosis knowledge base %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% :- op(1100, xfx, '--->'). bad_component(X), fix(X, Advice) ---> fix(Advice):100. bad_system(starter_system), lights(come_on) ---> bad_component(starter):75. bad_system(starter_system), not(light(come_on)) ---> bad_component(battery):95. bad_system(ignition_system), not(tuned_recently) ---> bad_component(timing):90. bad_system(ignition_system), plugs(dirty) ---> bad_component(plugs):95. bad_system(ignition_system), not(plugs(dirty)), tuned_recently ---> bad_component(ignition_wires):90. not(car_starts), not(turns_over) ---> bad_system(starter_system):95. not(car_starts), turns_over, gas_in_carb ---> bad_system(ignition_system):90. runs(rough), gas_in_carb ---> bad_system(ignition_system):90. car_starts, runs(dies), gas_in_carb ---> bad_system(ignition_system):80. true ---> fix(starter, 'replace starter'):100. true ---> fix(battery, 'replace or recharge battery'):100. true ---> fix(timing, 'get the timing adjusted'):100. true ---> fix(plugs, 'replace the spark plugs'):100. true ---> fix(ignition_wires, 'check ignition wires'):100. askable(car_starts). askable(turns_over). askable(lights(_)). askable(runs(_)). askable(gas_in_carb). askable(tuned_recently). askable(plugs(_)).