Using sorts to minimize grounding

Issue #403 new
JoD created an issue

When modelling ASP problems as closely as possible in IDP, the following transformation of a choice rule popped up:

! x p: Position(x,p) => ?l: InLayer(x,l) & PosValues(l,p). (assume function constraints on InLayer)

In other words: node x is at position p only if p is a possible position for x's layer. Because Position's second argument ranges over int, this problem was unsolvable for the IDP system.

A solution would be to trim the sort of Position's second argument to the maximal bounds of the interpreted predicate PosValues, and use lazy grounding to derive the rest of the cases where Position(x,p) should not be grounded.

Comments (0)

  1. Log in to comment