Published May 14, 2024 | Version 1.2.3-fm-tools

CoVeriTeam Release 1.2.3 (with FM-Tools 2.0)

  • 1. LMU Munich, Germany

Description

A Tool for On-Demand Composition of Cooperative Verification Systems

CoVeriTeam consists of a language for on-the-fly composition of cooperative verification tools from existing components; and its execution engine. The concept is based on verification artifacts (programs, specifications, witnesses, results) as basic objects, verification actors (verifiers, validators, testers, transformers) as basic operations, and defines composition operators that make it possible to easily describe new compositions, taking verification artifacts as interface between the verification actors.

Directory Structure of this repository

The CoVeriTeam directory is structured as follows:

    .
    |-- actors/                    # YAML actor-definition files for atomic actors
    |-- bin/                       # script to execute CoVeriTeam    
    |-- contrib/                   # script to create an independent archive packaging all dependencies
    |-- coveriteam/                # Python source code
        |-- actors/                # atomic actors like ProgramVerifier, ProgramTester, etc.
        |-- interpreter/           # interpreter for the CoVeriTeam language
        |-- language/              # core concepts of the CoVeriTeam language: actors, artifacts, composition
        |-- parser/                # grammar and generated parser
    |-- doc/                       # documentation
    |-- examples/                  # tutorial examples and applications; more information in examples/README.md
    |-- utils/                     # external libraries required for development    
    |-- smoke_test_all_tools.sh    # report tool information from all atomic actors in the actors/ folder
    |-- LICENSE                    # Apache 2.0 license file
    |-- LICENSES                   # collection of licenses for artifacts in this repository

Installation

CoVeriTeam can be installed from PyPI, or one can simply clone this repository to use it.

Dependencies

CoVeriTeam requires a machine with:

  • Linux Ubuntu 18.04 (or 20.04)
  • Python 3

Please make sure that namespaces and cgroups are configured as described in the BenchExec documentation.

If you want to execute tools from Docker images then please install Docker. To be able to run the Docker daemon as a non-root user add your user to the docker group (as described in the Docker documentation)

Reproduction Package

We have prepared an artifact archive for evaluation using TACAS’22 Artifact Evaluation Virtual Machine for VirtualBox available via Zenodo.

This archive is available at Zenodo.

Links

License and Copyright

CoVeriTeam is licensed under the Apache 2.0 License, copyright Dirk Beyer. There are other artifacts in this repository that are available under several other free licenses (cf. folder LICENSES).

Authors

Project Leads:

Contributors:

References

Files

coveriteam-1.2.3-fm-tools.zip

Files (38.1 MB)

Name Size Download all
md5:d389ce0b9a8aa21384691772a6ebfd78
38.1 MB Preview Download

Additional details

Related works

References
Conference paper: 10.1007/978-3-030-61362-4_8 (DOI)

Software

Repository URL
https://gitlab.com/sosy-lab/software/coveriteam/
Programming language
Python
Development Status
Active