2012-10-31 64 views
0

我希望有人能幫助我。是否可以從Prolog中Ss0不同的推論?從一般情況推斷S

我有一個s0(初始狀態)是這樣的:

isoven(oven). 
isoff(oven,s0). 
ison(X,do(a,S)):- a=switchOn(X),isoven(X); isOff(X,S),\+ a=swicthOff(X). (fluent inon) 

如果我提示:

?- isOn(oven,s0). 
false. 

?- ison(oven,do(swicth(oven)s0)). 
true 

如果存在這將是很好,如「保存(做(swicth(烤箱的命令)S0)),以便S'」來獲得這樣的結果:

?- ison(oven,S'). 
true. 

回答

0

Prolog是不是魔術,你需要正確實施。 看來你想要使用情境微積分,網上有很多關於它的資料。

另外:

a=switchOn(X) 

這是毫無意義的,它總是失敗。你需要一個變量(第一個字母必須是大寫)

相關問題