Did you know ... Search Documentation:
Download SWI-Prolog stable versions

linux.png Linux versions are often available as a package for your distribution. We collect information about available packages and issues for building on specific distros here. We provide a PPA for Ubuntu and snap images

windows.jpg Please check the windows release notes (also in the SWI-Prolog startup menu of your installed version) for details.

WIP.png Examine the ChangeLog.


Binaries
Windows version (64-bits)12,810,386 bytesSWI-Prolog 8.2.1-1 for Microsoft Windows (64 bit)

Self-installing executable for Microsoft's Windows 64-bit editions. Requires at least Windows 7. See the reference manual for deciding on whether to use the 32- or 64-bits version. This binary is linked against GMP 6.1.1 which is covered by the LGPL license.

SHA256:45fc082c3f39188657e21c0bd51173a0be1bdb7528f584913ac7f18b49fd0cb6
Windows version (32-bits)12,460,084 bytesSWI-Prolog 8.2.1-1 for Microsoft Windows (32 bit)

Self-installing executable for MS-Windows. Requires at least Windows 7. Installs swipl-win.exe and swipl.exe. This binary is linked against GMP 6.1.1 which is covered by the LGPL license.

SHA256:38537e2cd70630d65a9868708fd305c5600d654fb736d1dbc16090fe9eb2894d
MacOS bundle27,697,698 bytesSWI-Prolog 8.2.1-1 for MacOSX 10.12 (Sierra) and later on intel

Installer with binaries created using Macports. Installs /opt/local/bin/swipl. Needs xquartz (X11) and the Developer Tools (Xcode) installed for running the development tools

SHA256:1fd495fea2e523b098c7221c092fb6403cbeed7f9c99df3737cd336bb39d6b84
Sources
Source archive10,969,688 bytesSWI-Prolog source for 8.2.1

Sources in .tar.gz format, including packages and generated documentation files. See build instructions.

SHA256:331bc5093d72af0c9f18fc9ed83b88ef9ddec0c8d379e6c49fa43739c8bda2fb
Documentation
PDF file2,709,707 bytesSWI-Prolog 8.2.1 reference manual in PDF

SWI-Prolog reference manual as PDF file. This does not include the package documentation.

Show all files
Install scripts may download the SHA256 checksum by appending .sha256 to the file name. Scripts can download the latest version by replacing the version of the file with latest. This causes the server to reply with the location of the latest version using an HTTP 303 See Other message.

SWI-Prolog version 8

The SWI-Prolog 8.0 major release marks mostly a milestone for the internals, stability, deployment options and maintainability of the system. SWI-Prolog extensions and incompatibilities wrt. traditional Prolog are described in extensions.

SWI-Prolog 8.2 notably brings much of the advanced tabling support of XSB to SWI-Prolog: Well Founded Semantics, restraints (bounded rationality), incremental tabling and shared tabling. It also makes rational numbers primary citizens. Using Google's tcmalloc reduces the memory footprint drastically on some multi-threaded workloads.