civl
« Back to VersTracker
Description:
Concurrency Intermediate Verification Language
Type: Formula  |  Latest Version: 1.22-5854@0  |  Tracked Since: Dec 17, 2025
Links: Homepage  |  formulae.brew.sh
Category: Developer tools
Tags: verification concurrency model-checking formal-methods static-analysis
Install: brew install civl
About:
CIVL (Concurrency Intermediate Verification Language) is a verification framework that models concurrent programs to check for errors like deadlocks and assertion violations. It transforms code from languages like C and Java into a unified intermediate representation for analysis. Its main value is providing a single toolchain for verifying complex concurrent systems using symbolic execution and model checking.
Key Features:
  • Supports multiple source languages (C, Java, OpenCL)
  • Integrates with SMT solvers like Z3 for automated reasoning
  • Detects concurrency errors including data races and deadlocks
  • Provides a unified intermediate representation for verification
Use Cases:
  • Verifying correctness in multi-threaded C/C++ applications
  • Checking for race conditions in Java concurrency utilities
  • Validating OpenCL kernels for parallel execution safety
Alternatives:
  • CBMC – CBMC focuses on bounded model checking for single-threaded C code, while CIVL specializes in concurrency verification across multiple languages.
  • Spin – Spin is a model checker for distributed systems, whereas CIVL provides a broader framework that includes symbolic execution and supports more source languages.
License: GPL-3.0-or-later AND LGPL-3.0-or-later AND BSD-3-Clause
Dependencies: openjdk, z3
Bottles available for: all
Version History
Detected Version Rev Change Commit