https://github.com/viperproject/termination-plugin
A Viper plugin for proving termination.
https://github.com/viperproject/termination-plugin
Last synced: about 2 months ago
JSON representation
A Viper plugin for proving termination.
- Host: GitHub
- URL: https://github.com/viperproject/termination-plugin
- Owner: viperproject
- License: mpl-2.0
- Created: 2020-03-20T16:47:27.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2020-03-20T16:50:22.000Z (about 6 years ago)
- Last Synced: 2026-02-02T17:12:14.950Z (4 months ago)
- Language: Scala
- Size: 412 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Termination Plugin - Viper
An extension/plugin for the [Viper verification infrastructure](http://www.pm.inf.ethz.ch/research/viper.html) that enables termination proofs.
### Compilation
From the termination-plugin subdirectory, create a symbolic link to the directory where you installed Silver:
```sh
$ ln -s ../silver silver
```
For testing also a symbolic link to Silicon is needed:
```sh
$ ln -s ../silicon silicon
```
### Usage
To use the plugin it has to be on the Java classpath. When invoking the back end `--plugin viper.plugin.termination.` has to be specified.
| Plugin Name | Tests |
| ------ | ------ |
| Decreases | Function with Path, Method |
| DecreasesFunction | Function |
| DecreasesFunctionPath | Function with Path |
| DecreasesMethod | Method |
### Test
You can run tests of the Termination Plugin by running `sbt test`.
Tests are currently only done with Silicon as back-end.
Testing with Carbon should be enabled in the future (TODO).