Java Implementation Of A SAT Solver (SATe).pdf

SATe_V1.pdf
Preview of Java Implementation of a SAT Solver (SATe)
🔗 Source: storage.googleapis.com
📊 Size: 176 KB
👤 Author: Michael Whelan
⬇️ Downloads: 101

Summary

- SATe is a Java SAT solver that takes boolean expressions in Conjunctive Normal Form (CNF) as input and outputs whether the expression is satisfiable or not. If satisfiable, it generates an assignment that satisfies the expression.
- Approach: SATe first negates the CNF expression to Disjunctive Normal Form (DNF) and tries to find an assignment that causes the complemented expression to fail, thus satisfying the original expression. It does this by:
- Splitting the problem into sub-problems based on assigning true or false to a selected literal.
- Performing four simplifications on each sub-problem: handling single literal clauses, simplifying using literal usage, identifying 'fixed variable pairs' (FVPs) or 'contrarian pairs' in two-literal clauses, and managing conflicting assignments.
- Performance: SATe's performance was compared to MiniSat on the SATLIB test suite. While MiniSat performed better, SATe showed surprisingly good performance given it's implemented in Java. Java's interpreted nature and run-time optimization (JIT) contribute to its slower performance compared to C++.
- Testing: Timing results were generated by running the Java application separately for each expression in the test set. Figures 1-4 show the performance of SATe and MiniSat on satisfiable and non-satisfiable expressions with 150 literals, with and without amortizing class loading and JIT optimization costs.

Description

SATe is a Java SAT solver that takes a boolean expression in Conjunctive Normal Form as input and outputs whether it's satisfiable or not, along with a satisfying assignment if applicable. It's comparable to MiniSat when multi-threading is used, especially for repeated solutions to smaller problems or larger problems.

Technical Information

  • File Format: PDF
  • File Size: 176 KB
  • Pages: 10
  • Language: EN
  • Author: Michael Whelan
  • Total Downloads: 101
  • Last Updated: 2 hours ago

Document Overview

This PDF document about Java Implementation of a SAT Solver (SATe) provides comprehensive information and guidance. Whether you're a beginner or advanced user, this resource offers valuable insights into Java Implementation of a SAT Solver (SATe).

Related Topics

If you're interested in Java Implementation of a SAT Solver (SATe), you might also want to explore:

Download Java Implementation of a SAT Solver (SATe) eBooks for free and learn more about Java Implementation of a SAT Solver (SATe). These books contain exercises and tutorials to improve your practical skills, at all levels!

Not satisfied with this document? We have related documents to Java Implementation of a SAT Solver (SATe), try searching with similar keywords: Java Implementation of a SAT Solver (SATe), Java Ebook Book Bangla Biggan Java Java Java Java Java Java Java, Sat Sat Sate Bhayi Se Chudi, Word Jumble Solver Letters Crossword Puzzle Solver, Introduction a javajava community process program. java 2 software development kit. java blueprints. java game development. java, Sat Solver Tutorial, Implementation Implementation Intentions Nyu, Does implementation science have an implementation problem?

You can download PDF versions of the user's guide, manuals and ebooks about Java Implementation of a SAT Solver (SATe), you can also find and download for free A free online manual (notices) with beginner and intermediate, Downloads Documentation, You can download PDF files (or DOC and PPT) about Java Implementation of a SAT Solver (SATe) for free, but please respect copyrighted ebooks.