Skip to content
/ corral Public
forked from boogie-org/corral

solver for the reachability modulo theories problem

License

Notifications You must be signed in to change notification settings

markxb/corral

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Corral

License NuGet package Corral CI

Corral is a solver for the reachability modulo theories problem. Learn more here: https://research.microsoft.com/en-us/projects/verifierq

Building and Running Corral

You can build Corral using .NET Core:

$ dotnet build source/Corral.sln

Then you can run the generated executable:

$ source/Corral/bin/Debug/net5.0/corral ...

Alternatively, Corral can be installed as a .NET Core Global Tool:

$ dotnet tool install --global Corral

SMT Solver

Running Corral requires Z3. We have tested Corral against Z3 version 4.8.8.

Regressions

Corral takes a Boogie program as input. There are regressions provided in test\regressions folder. Go to this folder and run perl check.pl to run all the regressions. You can run an individual test, for instance, as follows: go to test\regressions and do: ${CORRAL_EXE} 001\001.bpl /flags:001\config. The flag /flags:filename instructs corral to read its flags from the file filename.

Versioning and Release

To push a new version to nuget, publish a new release with a tag of the form vx.y.z, where x.y.z is the updated version.

The release workflow will automatically build and push the packages.

About

solver for the reachability modulo theories problem

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Boogie 97.9%
  • C# 2.1%
  • Java 0.0%
  • C 0.0%
  • Batchfile 0.0%
  • Python 0.0%