Skip to content

Latest commit

 

History

History
37 lines (27 loc) · 1.71 KB

Readme.md

File metadata and controls

37 lines (27 loc) · 1.71 KB

URAN

License: MIT Build Status

Motivation

When I was using the Z3 SMT solver to solve some challenging problems many years ago, I often found myself spend most of the time on programming all kinds of formulas. This significantly slow down my development. So I decide to build my own set of classes that can help me quickly construct the formulas I want and use them to interact with multiple SAT/SMT solvers. Now, I constantly use uran to solve all kinds of interesting problems for my own research. In short, uran is an engine that you could place in between solvers and your own specification language, and totally seperate your code for the language that you design from underlying solvers.

Supported Features

  • Boolean Circuit Gate.
  • Quantifiers.
  • Arithmetic Formula.
  • Bit Vector.
  • Increment SMT Solving.
  • Iterative SMT Solving.

Output Format

  • dimacs (SAT Solvers)
  • SMT2 (SMT Solvers)

Work in Progress

  • Array.
  • Compact Sized Formula Generation.

Supported SMT Solvers:

API Documentation (Partial)

You can find detailed structure of uran here.

License

All source code is under MIT License which you can find here.

Author Information

Hao Wu

Latest Update: October - 2016