Closed leuschel closed 2 years ago
MACHINE QueensWithEvents CONSTANTS n PROPERTIES n : NATURAL & n = 8 DEFINITIONS SET_PREF_TIME_OUT == 6000; SET_PREF_CLPFD == TRUE; SET_PREF_MAX_OPERATIONS == 93 VARIABLES queens INVARIANT queens : (1..n) +-> (1..n) INITIALISATION queens := {} OPERATIONS Solve(solution)= SELECT solution : POW((1 .. n) * (1 .. n)) & solution : perm(1 .. n) & !(q1,q2).( ( q1 : 1 .. n & q2 : 2 .. n & q2 > q1 ) => ( (solution(q1) + q2) - q1 /= solution(q2) & (solution(q1) - q2) + q1 /= solution(q2) ) ) & !x.( x : dom(queens) => solution(x) = queens(x) ) THEN queens := solution END END
This issue is solved now
For the model below I get this exception:
java -jar b2program/build/libs/B2Program-all-0.1.0-SNAPSHOT.jar java false -2147483648 2147483647 10 true true QueensWithEvents.mch
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index 1 out of bounds for length 1 at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70) at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248) at java.base/java.util.Objects.checkIndex(Objects.java:359) at java.base/java.util.ArrayList.get(ArrayList.java:427) at de.hhu.stups.codegenerator.generators.PredicateGenerator.transformPowNodeToRelationNode(PredicateGenerator.java:123) at de.hhu.stups.codegenerator.generators.PredicateGenerator.generateRelationOnRhs(PredicateGenerator.java:110) at de.hhu.stups.codegenerator.generators.PredicateGenerator.visitPredicateOperatorWithExprArgs(PredicateGenerator.java:96) at de.hhu.stups.codegenerator.generators.MachineGenerator.visitPredicateOperatorWithExprArgs(MachineGenerator.java:437) at de.hhu.stups.codegenerator.generators.MachineGenerator.visitPredicateOperatorWithExprArgs(MachineGenerator.java:75) at de.prob.parser.ast.visitors.generic.ParametrisedPredicateVisitor.visitPredicateNode(ParametrisedPredicateVisitor.java:17) at de.hhu.stups.codegenerator.generators.PredicateGenerator.lambda$visitPredicateOperatorNode$0(PredicateGenerator.java:82)