Skip to content

An abstract interpreter for an integer interval domain supporting basic operations for simple C programs

License

Notifications You must be signed in to change notification settings

sukrutrao/IntervalAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IntervalAI

Build Status

An abstract interpreter based on the integer interval domain for simple C programs

Setup

Prerequisites

  • CBMC 5.8 (included as a submodule)
  • g++ with C++11 support

Building the project

Get the code. The directory containing this file shall be referred to as $INTERVALAI_ROOT

$ git clone --recurse-submodules https://github.com/sukrutrao/IntervalAI $INTERVALAI_ROOT

Build CBMC

$ cd $INTERVALAI_ROOT/IntervalAI/cbmc/src
$ make

Build IntervalAI

$ cd $INTERVALAI_ROOT/IntervalAI
$ mkdir build
$ cd build
$ cmake ..
$ make

Running IntervalAI

Go to INTERVALAI_ROOT/IntervalAI/build. Then, use

$ ./IntervalAI -m <mode> <goto-binary>

Information on modes available, and the restrictions on the input, can be found by using

$ ./IntervalAI -h

License

This code is provided under the MIT License.

Note: The code has a few known bugs, which are in the process of getting resolved.

About

An abstract interpreter for an integer interval domain supporting basic operations for simple C programs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •