java-smt
java-smt copied to clipboard
Adding opensmt solver @GSoC 2019
So far this is the progress made on adding opensmt solver to java-smt:
- Create a basic sample (simpler than the more elaborate existing ones) to use the java-smt library
- Create a Build Script which can automatically:
- Clone and Build opensmt2,
- Generate the java bindings and compile if a Jar (so we a Jar and .so)
- Copy the Jar and .so files to appropriate folder inside the java-smt
- Fixed some of the bugs in the initial attempt,
- Create SolverContext class (not fully implemented)
- Create FormulaManager class (not fully implemented)
- Create FormulaCreator class (not fully implemented)
- Create classes for supported Formulae/Thoeries and their Managers (not fully implemented)
- Create classes for the Theorem Prover (not fully implemented)
TODO: (I will like to continue with this after GSoC)
- [ ] Fix the Java Binding build
- [ ] Write a custom interface for OpenSMT2 which will be useful in this purpose
- [ ] Figure out how to get an array of Models out of OpenSMT and not string
- [ ] Write a SWIG interface for the custom interface
- [ ] Adjust the build script if needed
- [ ] Fully implement the glue code for Formula creation
- [ ] Fully implement the glue code for proving SAT/UNSAT
- [ ] Create and Implement the Model Class
- [ ] Documentation