What is Kaplan?

Kaplan is an extension of the Scala programming language that supports constraint-solving. Kaplan is described in the following paper:

A.S. Köksal, V. Kuncak, P. Suter, Constraints as Control, POPL 2012, pp. 151-164. PDF

Obtaining Kaplan

From source

This will give you read-only access to the source repository (includes the source code of Leon).

  git clone git://

Please be advised that due to the numerous dependencies, compiling Kaplan from source can be quite a challenge.


We provide a distribution of Kaplan for 32 bit Linux systems.1) Scala and Z3 are included in the distribution, so the only dependencies are Java and Bash.

You can download the distribution here (~25MB). Please go through the included README file.

The distribution includes example programs.

Please note that we are actively working on related techniques and that the distribution may therefore not include our most recent progress.

The restriction comes from the version of Z3 that is packaged with the distribution.