https://github.com/gipsyh/rIC3
A high-performance IC3/PDR algorithm implementation in Rust.
https://github.com/gipsyh/rIC3
formal-verification ic3 model-checking pdr-algorithm
Last synced: 3 months ago
JSON representation
A high-performance IC3/PDR algorithm implementation in Rust.
- Host: GitHub
- URL: https://github.com/gipsyh/rIC3
- Owner: gipsyh
- License: gpl-3.0
- Created: 2023-02-06T14:08:14.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-05-22T05:42:06.000Z (over 1 year ago)
- Last Synced: 2024-05-22T19:35:45.632Z (over 1 year ago)
- Topics: formal-verification, ic3, model-checking, pdr-algorithm
- Language: Rust
- Homepage:
- Size: 656 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-rust-formalized-reasoning - rIC3 Hardware Model Checker - high-performance implementation of the IC3/PDR algorithm. (Projects / Verification)
README
# rIC3 Hardware Model Checker
[](https://www.gnu.org/licenses/gpl-3.0)
[](https://github.com/gipsyh/rIC3/actions/workflows/ci.yml)
[](https://crates.io/crates/rIC3)
[](https://hub.docker.com/r/gipsyh/ric3)
### HWMCC
rIC3 achieved first place in both the bit-level track and the word-level bit-vector track at the 2024 Hardware Model Checking Competition ([HWMCC'24](https://hwmcc.github.io/2024/)).
To view the submission for HWMCC'24, please checkout the `HWMCC24` branch or download the binary release at https://github.com/gipsyh/rIC3-HWMCC24.
### Publications
- [CAV2025] [The rIC3 Hardware Model Checker](https://arxiv.org/abs/2502.13605)
- [CAV2025] [Deeply Optimizing the SAT Solver for the IC3 Algorithm](https://arxiv.org/abs/2501.18612)
- [DAC2024] [Predicting Lemmas in Generalization of IC3](http://doi.org/10.1145/3649329.3655970)
- [arXiv] [Extended CTG Generalization and Dynamic Adjustment of Generalization Strategies in IC3](https://arxiv.org/abs/2501.02480)
### rIC3 Tool Flow
### Install From Crates.io
```cargo install rIC3```
### Install From Source
- Install the Rust compiler https://www.rust-lang.org/
- Switch to nightly ```rustup default nightly```
- ```git clone --recurse-submodules https://github.com/gipsyh/rIC3```
- Build ```cd rIC3 && cargo b --release```
- Run ```cargo r --release -- ```
- Install ```cargo install --path .```
### Run
- 16-threads Portfolio ```rIC3 ```
- single-thread IC3 ```rIC3 -e ic3 ```
### Docker
- build image: ```docker build -t ric3 .```
- run: ```docker run -v :/model.aig ric3 model.aig```
Copyright (C) 2023 - Present, Yuheng Su (gipsyh.icu@gmail.com). All rights reserved.