0
이것은 더 큰 문제의 일부이므로 잘못된 방법으로 생각할 수도 있습니다. 그러나 여기에 간다. 하나씩 증가
I 다음 "전환"규칙이 있습니다//if in state(A,B,C), move to state C
trans(state(A, B, C), state(A, B, D is C + 1), added_one).
내가 C.
에 좀 더 배경 하나를 추가 할 수있는 방법을 마련하기 위해 노력하고 있어요 : 나는 "크로싱"을하고있는 중이을 문제, IE 일련의 규칙을 어 기지 않고 강을 가로 질러이 동물들을 사십시오. C는 보트의 동물 수이며 2를 능가 할 수 없습니다 (나는 < = 2를 처리하는 규칙이 다릅니다).
현재 내가 사용하는 방법은 D를 사용하는 것처럼 보이지 않습니다. "추적"기능을 사용할 때 D는 항상 상관 없습니다.
어떻게해야합니까? 고맙습니다.
EDIT : 코드.
initial(state( 3, 3, 1, 0, 0, 0, 0)).
final( state( 0, 0, 0, 3, 3, 1, 0)).
//BCpp stands for boatcount++.
BCpp is BoatCount + 1,
trans(state(2, LF, 1, RH, RF, 0 , BoatCount) , state(1, LF, 1, RH, RF, 0, BCpp), hen_in_left_boat).
BCpp is BoatCount + 1,
trans(state(1, LF, 1, RH, RF, 0 , BoatCount) , state(0, LF, 1, RH, RF, 0, BCpp), hen_in_left_boat).
//and so on for a bunch of transitions.
//the code produces an error at the first line "BCpp is BoatCount + 1,"
OK. 이것은 당신이 달성하려했던 것이 원래 문제인지 명확하지 않았습니다. 새로운 문제가 생길 수 있으므로 새로운 문제 진술을 자유롭게 게시하십시오. – lurker