Open zhangyuanlin opened 6 years ago
Just want to make sure that we are seeing the same issue. The issue here is not that top(box) is interpreted as an attribute function. That is correct, it is an attribute function. The issue here is that the attribute function was not normalized out of the head of the state constraint during translation. The translation should be:
-connected(E, P, TS) :- loc_in(box, LO, TS), #floor_points(P), LO!=P,
instance(P, floor_points), E = elevations_top(box).
This is the problem I'm seeing and this is what I can fix without further clarification.
You are right. In the distributable version, I used an workaround to achieve the normalization at ALM level.
We have the following pieces of a program
The state constraint above is translated into
causing an exception
So, CALM has some mistake in this translation?
Full program is basicMotion_yn.tp: