[Om-announce] [logic-programming] Picat version 1.4 has been released

Neng-Fa Zhou neng.zhou at gmail.com
Tue Sep 29 05:09:03 CEST 2015

I am pleased to announce that Picat version 1.4 has just been released.
This version incorporates one overdue improvement: represent integers that
fit into one 64-bit word natively, rather than as big integers (the actual
number of bits that are used to represent values natively is 56 bits). This
improvement leads to significant speedup and reduction of memory
consumption for applications that deal with large integers. As a
by-product, the default bounds of domains of finite domain variables have
also been expanded from 28 bits to 56 bits. This expansion makes it
possible now to solve some problems, such as the seven-eleven problem (
http://picat-lang.org/exs/seven_eleven.pi), that were impossible to solve
before due to integer overflow.

Our recent focus has been on the SAT compiler, and the SAT compiler is
becoming better with every release. This release is not an exception; it
generates more efficient code for entailment constraints. The MiniZinc
Challenge 2015 has published very encouraging results for Picat-SAT, the
only purely SAT-based CSP solver entrant in the competition: on 5 of the 20
benchmarks, Picat-SAT scored higher than the three medalists of the
competition, and on benchmarks that do not use global constraints Picat-SAT
outperformed the Bronze solver. It's interesting to know how competitive
SAT-based CSP solvers can become with the best CP solvers. Please pay
attention to Picat-SAT in the next MiniZinc Challenge.

This new release also incorporates a fix of a bug in the tabling system,
which prevented certain programs from terminating. The tabling system of
Picat was inherited from B-Prolog, which first had tabling introduced in
1999! Despite the simplicity of linear tabling and recent intensive use of
tabling in applications, this bug was a stubborn and an embarrassing one.
We all face the tough reality that we can uncover bugs but cannot prove the
correctness of the any reasonably large-scale software.

This new release also includes some library modules developed by third
parties, including FlatZinc interpreters using CP and SAT, converters for
different CSP formats, scripts for generating commands for various
purposes, and a JSON encoder/decoder. For the first time, the C source code
is made available with the binary executables on the same page.

Please take a look at the updates log for the details:

Neng-Fa and the Picat Team
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openmath.org/pipermail/om-announce/attachments/20150928/234f2f22/attachment.html>
-------------- next part --------------
logic-programming mailing list
logic-programming at lists.picat-lang.org

More information about the Om-announce mailing list