utexas-bwi / clasp Goto Github PK
View Code? Open in Web Editor NEWclasp repackaged for release into the ROS ecosystem
License: GNU General Public License v2.0
clasp repackaged for release into the ROS ecosystem
License: GNU General Public License v2.0
clasp-3.x A conflict-driven nogood learning answer set solver http://www.cs.uni-potsdam.de/clasp/ http://potassco.sourceforge.net/ OVERVIEW clasp is an answer set solver for (extended) normal and disjunctive logic programs. It combines the high-level modeling capacities of answer set programming with state-of-the-art techniques from the area of Boolean constraint solving. The primary clasp algorithm relies on conflict-driven nogood learning, a technique that proved very successful for satisfiability checking (SAT). Starting with version 2.0, clasp supports parallel (multithreaded) solving. Starting with version 3.0, clasp supports - disjunctive logic programs as in claspD-2 - domain heuristic modifications as in hclasp via option "--heuristic=domain" - unsatisfiable-core based optimization as in unclasp via "--opt-strategy={4,5}" clasp is written in (mostly) Standard-C++. It was successfully built and run under Linux (x86-32, x86-64) using gcc/clang and Windows (x86-32, x86-64) using either Microsoft Visual Studio or MinGW. Detailed information (including a User's manual), source code, and pre-compiled binaries are available at: http://potassco.sourceforge.net/ LICENSE clasp is part of the Potassco project hosted at SourceForge. It is distributed under the GNU Public License. See COPYING for details regarding the license. PACKAGE CONTENTS COPYING - GNU Public License CHANGES - Major changes between versions README - This file configure.{sh,bat} - Simple script that creates Makefiles for building clasp (library and application) app/ - Source code directory of the command-line interface libclasp/ - Directory of the clasp (static) library (sources, documentation, unit tests) libprogram_opts/ - Library for parsing command-line options (needed by app) build_vc/ - Directory containing Visual Studio project files for building clasp tools/ - Some additional files BUILDING & INSTALLING The preferred way to build clasp is to use make and the provided configure script. You'll need to have the GNU Compiler Collection (GCC) version 3 or better installed in order to build clasp. You'll also need GNU make 3.80 or better. On Microsoft Windows, we recommend using MinGW available from http://www.mingw.org/ - You may want to visit http://www.mingw.org/wiki/Getting_Started for detailed instructions on installing MinGW. Make sure to also install MinGW-make. In the following it is assumed that 'make' is an alias for the installed GNU make. If this is not the case on your system, replace 'make' with the name of the GNU make executable (e.g. gmake). Furthermore, on Microsoft Windows use ./configure.bat instead of ./configure.sh. clasp's multithread support requires the Intel Threading Building Blocks library (version >= 3.x) which is freely available at: http://threadingbuildingblocks.org/ After downloading and installing you may want to set and export the TBB30_INSTALL_DIR environment variable. Type ./configure.sh --help to get an overview of all supported build configurations/options. To build clasp: ./configure.sh cd build/release make To build clasp with multithread support using TBB30_INSTALL_DIR: ./configure.sh --with-mt cd build/release_mt make To build clasp with multithread support using custom directory structure: ./configure.sh --with-mt TBB_INCLUDE=<path_to_tbb_include> TBB_LIB=<path_to_tbb_lib> cd build/release_mt make To install clasp: make install By default, 'make install' will install clasp in '/usr/local/bin' You can specify an installation prefix other than '/usr/local' by running the configure-script with the option '--prefix=PATH'. Alternatively, use option '--bindir=PATH' to directly specify the installation path. Finally, you can always skip installation and simply copy the clasp executable to a directory of your choice. BUILDING WITH Microsoft Visual Studio In the directory build_vc/ we provide Microsoft Visual Studio project files for building clasp. You can download the freely available express edition of Visual C++ from here: http://www.microsoft.com/express/Downloads/ Once installed: - open build_vc\vc9\clasp\clasp.sln - select the desired solution configuration (typically release_static) - build the "app" project USAGE clasp reads problem instances either from stdin, e.g cat problem | clasp or from a given file, e.g clasp problem Beside logic programs in SMODELS-format, clasp also supports SAT-problems in DIMACS-, Max-SAT in (extended) DIMACS-, and PB-problems in OPB and WBO-format. Type clasp --help to get an overview of the various options supported by clasp. In addition to printing status information, clasp also provides information about the computation via its exit status. The exit status is: 10: if the problem was found to be satisfiable 20: if the problem was proved to be unsatisfiable 0 : if the satisfiability of problem is not known, because search was either interrupted or not started 127: if clasp ran out of memory Furthermore, the exit status of 1 indicates an error.
@jack-oquin clasp is ready for release. Please ignore all remaining catkin_lint warnings.
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.