ryanfarr01 / ppsat Goto Github PK
View Code? Open in Web Editor NEWPartially Parallelized Satisfiability Solver
Partially Parallelized Satisfiability Solver
Author: Ryan Farr Date: May 7th, 2016 File: README.txt Within this repo are the PPSAT solver itself as well as its testing software. PPSAT is a Partially Parallelized Satisfiability Solver that was created for my Rigorous Systems Design (CS 5110/6110) course at the University of Utah. The purpose of the project was to build a simple SAT solver, build testing software for it, and investigate basic forms of parallelization. Only two basic forms of parallelization were used, one where we simply run the main solving method in multiple threads (which has no guarantees that two threads won't go down similar paths) and the other which simply uses multithreading to go down both paths of the decision tree on Decide. To run the solver you can download the source code and build the program yourself, or alternatively grab the executable file and use the command "PPSAT.exe path" where path is replaced with the filepath to a CNF file that represents the boolean expression you wish to determine the satisfiability of. The executable should inform the user that the expression is either SAT or UNSAT, and if it's SAT then it will print out a model that satisfies the expression. To run the testing software you can download the testing project. You'll have to have PPSAT.exe within your PATH environment variable along with minisat.exe. They're both java programs, so you can use any java IDE to run them or simply use "javac file.java" to compile and "java name" to run that program.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.