У меня есть небольшой скрипт / код, и я хочу наложить некоторые ограничения active
. В коде, показанном ниже, у меня есть P[I,J] #= E
, а в следующей строке Result[I,E] #= J
, но это выдает instantiation error
, потому что E
не создан.
Для этих ограничений мне нужно знать, какое значение в P[I,J]
, поэтому, если я напишу его как E is P[I,J]
, тогда, конечно, я не получу instantiation error(incase i suspend next two constraints with suspend, e.g suspend:(P[I,J] #= E)
, но это повлияет на активность ограничения, потому что assignment
не будет отложено, а только ограничение будет отложено. Есть ли альтернативный способ наложить это ограничение?
multifor([I,J] ,[1,1],[N,N]),param(P,ResultFirst),foreach(E,_) do
E #:: 1..9,
P[I,J] #= E,
(ResultFirst[I,E] #= J),