Release 2.2

This new version expands coverage of Python bindings, introduces Gnuplot output and a simulator for purely continuous systems, among other things.


  • N: new feature
  • A: addition to a feature
  • C: change to the behavior of a feature
  • F: fixed feature
  • R: removed feature


  • #441 (N) Add support for Gnuplot output, including animated gif plot of sets and tridimensional plots for PDEs
  • #507 (N) Add a simulator for vector field dynamics
  • #514 (N) Add Python examples in python/examples
  • #509 (A) Additionally support a set as input in simulators, using the midpoint as the effective point
  • #513 (A) Add missing Python bindings for verify_safety in (Hybrid)ReachabilityAnalyser
  • #516 (A) Add missing Python bindings for Real predicates to be used in automata specification
  • #518 (A) Add missing Python bindings for evolver configuration and initial set assignment
  • #520 (A) Add missing Python bindings for plotting using HybridFigure
  • #543 (A) Add missing Python bindings for iterating across ListSet of Enclosure classes
  • #527 (A) Allow to draw a Labelled/Hybrid orbit directly to a Labelled/Hybrid figure
  • #492 (C) Modify SFINAE code to use C++20 concepts, currently preventing AppleClang compilation under macOS until the compiler supports Concepts
  • #529 (C) Disallow construction of VectorField and IteratedMap from a Function, since it was broken
  • #533 (C) Map<K,V> now checks for existing key using ARIADNE_ASSERT, yielding errors also for Release builds
  • #447 (F) Check that a VectorField is defined with dynamics for all involved variables, fixes a segfault within evolution
  • #532 (F) RealExpressionBoundedConstraintSet could be constructed in an incoherent way, due to missing checks
  • #211 (R) Remove various deprecated functions

Release 2.1

In this minor release we mainly address Python bindings, which now cover all layers of functionality up to hybrid evolution. As a consequence, now C++ and Python tutorials mirror each other. This is also the first release that comes with Homebrew and Aptitude packages for quick installation of the library. Installation and Tutorial sections have been updated accordingly. Legenda: N: new feature A: addition to a feature C: change to the behavior of a feature F: fixed feature R: removed feature Changes: [Read More]

Release 2.0

We are happy to announce the release of version 2.0 of Ariadne! This release introduces a significant number of changes with respect to the previous major version, mainly: A more general and robust way of constructing hybrid automata; On-the-fly composition of systems; A hybrid simulator based on the classic Runge-Kutta method; Use of constraints in the evolution of hybrid systems; Algebraic-differential equations; Differential inclusions in the continuous space; Wider use of named variables and symbolic manipulation; Python bindings for most of the library. [Read More]

Updated publications

The main publications have been updated, including our latest work on differential inclusions and a paper on computable compositionality.

Migration complete and internal release 1.9

Migration from BitBucket to GitHub has completed! In particular, the repository for the development version of the library becomes This renaming is in preparation for the 2.0 official release of Ariadne, tentatively due at the beginning of 2019. The migration also comes with a new 1.9 internal release, where we improved stability and increased OS and compiler compatibility. We introduced continuous integration and code coverage to our development flow, with the purpose of driving improvements to code quality. [Read More]

GitHub migration commenced

In order to get access to a wider open-source community and also to exploit better continuous integration services, we are migrating from BitBucket to GitHub. The new source site will become with a new organization called ariadne-cps as part of the GitHub Education program. The original repositories on BitBucket will be removed as of October the 1st. There will be an additional news in the next few days to announce the completion of the migration process. [Read More]


We added a tutorial page with detailed information on an example, followed by a guide to construct the corresponding model in Ariadne and to perform the most relevant analysis routines.


We added a Publications section in which the most recent articles on Ariadne and its usage are provided. For each paper we provide the pdf file and the bibliography entry.