- 1.0.0
Examples of use of SWI-Prolog pack modeling described in
F. Fages. A Constraint-based Mathematical Modeling Library in Prolog with Answer Constraint Semantics.
17th International Symposium on Functional and Logic Programming, FLOPS 2024.
May 15, 2024 - May 17, 2024, Kumamoto, Japan. LNCS, Springer-Verlag.
?- queens(8,Queens), show(Queens).
Q . . . . . . .
. . . . . . Q .
. . . . Q . . .
. . . . . . . Q
. Q . . . . . .
. . . Q . . . .
. . . . . Q . .
. . Q . . . . .
Queens = array(1, 5, 8, 6, 3, 7, 2, 4) .
?- fourier(3, X, Y, 1).
X = Y, Y = 6.666666666666667.
?- fourier(3.1, X, Y, 1).
false.
?- fourier(2, X, Y, 1).
{Y=20.0-10.0*_A-10.0*_B, X=10.0*_B, _=2.0-_A-_B, _A+_B>=1.0, _B=<1.0, _A=<1.0}.
?- fourier(0, X, Y, 1).
true.
?- fourier(2, X, Y, 1), minimize(X).
X = 0.0,
Y = 10.0.
?- fourier(2, X, Y, 1), maximize(X).
X = 10.0,
{Y=10.0-10.0*_A, _=1.0-_A, _A=<1.0, _A>=0.0}.
?- fourier(2, X, Y, 1), maximize(Y).
Y = 10.0,
{X=10.0*_A, _A>=0.0, _A=<1.0, _=1.0-_A}.
?- fourier(2, X, Y, 1), minimize(Y).
X = 10.0,
Y = 0.0.