File tree 1 file changed +4
-5
lines changed
1 file changed +4
-5
lines changed Original file line number Diff line number Diff line change @@ -2,17 +2,16 @@ function magic_square(n, ::Val{:JuMP})
2
2
N = n^ 2
3
3
model = JuMP. Model (CBLS. Optimizer)
4
4
magic_constant = n * (N + 1 ) / 2
5
- Σeq = x -> sum (x) == magic_constant
6
5
7
6
@variable (model, 1 ≤ X[1 : n, 1 : n] ≤ N, Int)
8
7
@constraint (model, vec (X) in AllDifferent ())
9
8
10
9
for i in 1 : n
11
- @constraint (model, X[i,:] in Predicate (Σeq ))
12
- @constraint (model, X[:,i] in Predicate (Σeq ))
10
+ @constraint (model, X[i,:] in SumEqualParam (magic_constant ))
11
+ @constraint (model, X[:,i] in SumEqualParam (magic_constant ))
13
12
end
14
- @constraint (model, [X[i,i] for i in 1 : n] in Predicate (Σeq ))
15
- @constraint (model, [X[i,n + 1 - i] for i in 1 : n] in Predicate (Σeq ))
13
+ @constraint (model, [X[i,i] for i in 1 : n] in SumEqualParam (magic_constant ))
14
+ @constraint (model, [X[i,n + 1 - i] for i in 1 : n] in SumEqualParam (magic_constant ))
16
15
17
16
return model, X
18
17
end
You can’t perform that action at this time.
0 commit comments