Ariadne http://www.ariadne-cps.org/ Recent content on Ariadne Hugo -- gohugo.io en-us Luca Geretti Sat, 07 Aug 2021 14:49:13 +0200 Release 2.4.1 http://www.ariadne-cps.org/post/2021-08-07-release-2.4.1/ Sat, 07 Aug 2021 14:49:13 +0200 http://www.ariadne-cps.org/post/2021-08-07-release-2.4.1/ This new (minor) version is mainly meant to address missing Python bindings for the hybrid module. It also changes the interface for integrators and introduces two new integrators, among other things. Legenda: N: new feature A: addition to a feature C: change to the behavior of a feature F: fixed feature R: removed feature Changes: #357 (N) Introduce a TaylorSeriesBounderIntegrator, that identifies the bounds from the expansion without resorting to a Bounder initially #613 (A) Add Python bindings for Variables2d, Projection2d fields, HybridEnclosure space accessors #617 (A) Add is_polynomial_in predicate for symbolic expressions #622 (A) Implement GradedTaylorPicardIterator that avoids initial use of Bounder #626 (A) Allow ’none’ graphics backend or drawer from CLI, to temporarily switch off graphics when desired #628 (A) Implement some methods for Polynomial, in particular for vectors thereof #636 (A) Add Python bindings for hybrid automaton target method #642 (A) Add Python bindings for hybrid automaton name and symbolic expressions in dynamics/guards/invariants/resets #643 (A) Add C++ and Python support for iteration through components of a CompositeHybridAutomaton #612 (C) Remove unused legend from Gnuplot output #639 (C) Use a finer (3/4) refinement strategy for the step size when computing a flow step based on an accuracy threshold #616 (F) Fix behavior of unary symbolic expression predicates #620 (F) EulerBounder did not reset the bounding domain between refinements to the step size #631 (F) Conditional disabling of graphics in absence of both Cairo and Gnuplot was incorrect #645 (F) Use only static const Generator objects, addressing linking issue for the whole library #623 (R) Simplify IntegratorInterface with only one flow step, removing flow/flow_to and hiding flow_bounds Release 2.3 http://www.ariadne-cps.org/post/2021-05-24-release-2.3/ Mon, 24 May 2021 19:22:13 +0200 http://www.ariadne-cps.org/post/2021-05-24-release-2.3/ This new version introduces concurrency in the library, applied to evolution routines and drawing at the moment. We also offer the ability to add arguments to executables (both C++ and Python) in order to set variables such as concurrency level, drawer to be used or logger verbosity. Legenda: N: new feature A: addition to a feature C: change to the behavior of a feature F: fixed feature R: removed feature Changes: Release 2.2 http://www.ariadne-cps.org/post/2021-04-25-release-2.2/ Sun, 25 Apr 2021 21:51:59 +0200 http://www.ariadne-cps.org/post/2021-04-25-release-2.2/ This new version expands coverage of Python bindings, introduces Gnuplot output and a simulator for purely continuous systems, among other things. Legenda: N: new feature A: addition to a feature C: change to the behavior of a feature F: fixed feature R: removed feature Changes: #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 http://www.ariadne-cps.org/post/2021-03-09-release-2.1/ Tue, 09 Mar 2021 12:24:01 +0100 http://www.ariadne-cps.org/post/2021-03-09-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: Release 2.0 http://www.ariadne-cps.org/post/2020-04-17-release-2.0/ Fri, 17 Apr 2020 18:03:10 +0200 http://www.ariadne-cps.org/post/2020-04-17-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. Updated publications http://www.ariadne-cps.org/post/2020-04-03-publications-updated/ Fri, 03 Apr 2020 14:55:03 +0200 http://www.ariadne-cps.org/post/2020-04-03-publications-updated/ 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 http://www.ariadne-cps.org/post/2018-10-06-github-migration-completed/ Sat, 06 Oct 2018 15:42:03 +0200 http://www.ariadne-cps.org/post/2018-10-06-github-migration-completed/ Migration from BitBucket to GitHub has completed! In particular, the repository for the development version of the library becomes https://github.com/ariadne-cps/ariadne. 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. GitHub migration commenced http://www.ariadne-cps.org/post/2018-08-30-github-migration-commenced/ Thu, 30 Aug 2018 14:43:59 +0200 http://www.ariadne-cps.org/post/2018-08-30-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 https://github.com/ariadne-cps 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. Added a paper on verification of medical CPSs http://www.ariadne-cps.org/post/2018-07-24-tcps/ Tue, 24 Jul 2018 15:46:22 +0200 http://www.ariadne-cps.org/post/2018-07-24-tcps/ We have added a new article in the publications section regarding the use of the stable release of Ariadne for the verification of medical cyber-physical systems. Added an article on model checking dynamical systems http://www.ariadne-cps.org/post/2018-06-12-article-model-checking/ Tue, 12 Jun 2018 09:21:00 +0200 http://www.ariadne-cps.org/post/2018-06-12-article-model-checking/ We have added a new article from Pieter Collins in the publications section, discussing the origins of Ariadne and some of its design choices. Tutorial http://www.ariadne-cps.org/post/2017-11-03-tutorial/ Fri, 03 Nov 2017 14:38:57 +0100 http://www.ariadne-cps.org/post/2017-11-03-tutorial/ 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. Tutorial http://www.ariadne-cps.org/tutorial/ Wed, 11 Oct 2017 19:11:44 +0200 http://www.ariadne-cps.org/tutorial/ This tutorial has the purpose of providing detailed information for users of the library. The tutorial is split into three sections: Description of a simple system that will be used for the tutorial; Construction of a model for the system; Evolution of the model, in terms of simulation and finite/infinite time evolution. The full code presented in the following is available in C++ as a simple self contained CMake project, or in Python as a script file. Installation http://www.ariadne-cps.org/installation/ Sat, 22 Jul 2017 19:11:44 +0200 http://www.ariadne-cps.org/installation/ Installation The command-line installation instructions are presented for Debian Linux systems and derivatives (using apt) and macOS systems (using Homebrew). However, openSUSE and Fedora are known to be working when using their own package managers. Windows installations are not supported yet. Official packages are available for Ubuntu LTS (currently 20.04) and derivatives and macOS 11, but if your architecture or particular setup necessarily requires compilation from sources, instructions are provided. The build system used is CMake. Publications http://www.ariadne-cps.org/post/2017-07-21-publications/ Fri, 21 Jul 2017 21:05:50 +0200 http://www.ariadne-cps.org/post/2017-07-21-publications/ 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. Publications http://www.ariadne-cps.org/publications/ Fri, 21 Jul 2017 14:02:46 +0200 http://www.ariadne-cps.org/publications/ Below we provide a selection of publications where the theoretical framework and the algorithmic implementation of Ariadne are explained. Additionally, we present some publications where either the relevant applications of the library are discussed, or where the library has been successfully applied to verify systems of industry relevance. The following papers are provided in descending order of publication and represent the latest developments on a given research direction. For each item, a link to the . About and Installation sections added http://www.ariadne-cps.org/post/2017-07-11-about-and-installation/ Tue, 11 Jul 2017 10:53:41 +0200 http://www.ariadne-cps.org/post/2017-07-11-about-and-installation/ We added an About section, which describes the project summarily. In addition, the Installation section replicates with a little more detail the information already present in the Readme file of the 1.0 release. External references http://www.ariadne-cps.org/post/2017-07-08-external-references/ Sat, 08 Jul 2017 16:08:05 +0200 http://www.ariadne-cps.org/post/2017-07-08-external-references/ While the structure of the site is being built, let us recall here the external references for Ariadne: [Code base and issue tracker] (https://bitbucket.org/ariadne-cps) [ResearchGate project] (https://www.researchgate.net/project/Ariadne-2) About http://www.ariadne-cps.org/about/ Sat, 08 Jul 2017 10:01:34 +0200 http://www.ariadne-cps.org/about/ Ariadne is a library for formal verification of cyber physical systems. In particular, it allows to model such systems as hybrid systems, focusing on nonlinear behavior. Since the evolution of a nonlinear hybrid system cannot be calculated exactly, Ariadne uses numerical analysis to compute such evolution in an approximate way. The library uses a conservative rounding approach along with rigorous semantics to guarantee the correctness of the results, independently of the numerical precision of the processing machine. Ariadne website opens http://www.ariadne-cps.org/post/2017-07-04-opening/ Tue, 04 Jul 2017 12:20:21 +0200 http://www.ariadne-cps.org/post/2017-07-04-opening/ We are happy to announce that the website for the Ariadne C++ library has opened. We will progressively add content to the site, with the objective of providing references, tutorials, API docs and selected publications.