All Projects → Gbury → archsat

Gbury / archsat

Licence: MIT License
A proof-producing SMT/McSat solver, handling polymorphic first-order logic, and using an SMT/McSat core extended using Tableaux, Superposition and Rewriting.

Programming Languages

ocaml
1615 projects
TeX
3793 projects
OpenEdge ABL
179 projects
SMT
39 projects
Makefile
30231 projects
emacs lisp
2029 projects

Projects that are alternatives of or similar to archsat

Fstar
A Proof-oriented Programming Language
Stars: ✭ 2,171 (+10755%)
Mutual labels:  theorem-proving, smt
Battleship
An Object-Oriented VBA experiment
Stars: ✭ 66 (+230%)
Mutual labels:  polymorphism
fm-notes
Unassorted scribbles on formal methods, type theory, category theory, and so on, and so on
Stars: ✭ 19 (-5%)
Mutual labels:  theorem-proving
comby-reducer
A simple program reducer for any language.
Stars: ✭ 65 (+225%)
Mutual labels:  rewriting
clpsmt-miniKanren
CLP(SMT) on top of miniKanren
Stars: ✭ 31 (+55%)
Mutual labels:  smt
informatica-public
Public code developed during my MSc study at University of Bologna
Stars: ✭ 79 (+295%)
Mutual labels:  theorem-proving
nunchaku
Model finder for higher-order logic
Stars: ✭ 40 (+100%)
Mutual labels:  sat
sat-ws-descarga-masiva
Librería para usar el servicio web del SAT de Descarga Masiva
Stars: ✭ 65 (+225%)
Mutual labels:  sat
z3 tutorial
Jupyter notebooks for tutorial on the Z3 SMT solver
Stars: ✭ 117 (+485%)
Mutual labels:  smt
suslik
Synthesis of Heap-Manipulating Programs from Separation Logic
Stars: ✭ 107 (+435%)
Mutual labels:  smt
discrete-math-python-scripts
Python code snippets from Discrete Mathematics for Computer Science specialization at Coursera
Stars: ✭ 98 (+390%)
Mutual labels:  sat
bosphorus
Bosphorus, ANF simplifier and solver, and ANF-to-CNF converter
Stars: ✭ 45 (+125%)
Mutual labels:  sat
phaser-sat-example
An experiment that uses sat-js with Phaser.
Stars: ✭ 14 (-30%)
Mutual labels:  sat
py2many
Transpiler of Python to many other languages
Stars: ✭ 420 (+2000%)
Mutual labels:  smt
Vip.Printer
Biblioteca para realizar impressões (impressora não fiscal) utilizando comandos Esc/Bema, Esc/Daruma e Esc/Pos 🚀
Stars: ✭ 48 (+140%)
Mutual labels:  sat
vanilla-lang
An implementation of a predicative polymorphic language with bidirectional type inference and algebraic data types
Stars: ✭ 73 (+265%)
Mutual labels:  polymorphism
gapt
GAPT: General Architecture for Proof Theory
Stars: ✭ 83 (+315%)
Mutual labels:  theorem-proving
vim-smt2
A VIM plugin that adds support for the SMT-LIB2 format (including Z3's extensions)
Stars: ✭ 35 (+75%)
Mutual labels:  smt
subml
SubML (prototype) language
Stars: ✭ 21 (+5%)
Mutual labels:  polymorphism
LibHyps
A Coq library providing tactics to deal with hypothesis
Stars: ✭ 14 (-30%)
Mutual labels:  formal-proofs

Archsat

Archsat is a prototype SMT solver combining traditional SMT solving techniques for ground resoning, tableaux method and rewriting for quantified formulas, and superposition for unification modulo equalities and modulo rewriting.

LICENSE

MIT (see file LICENSE).

Installation

Using opam

The easiest way to install archsat is to pin the repo and let opam install the package (after having pinned the dev repos for msat and dolmen):

opam pin add archsat /path/to/git/repo

Once installed via opam, an archsat binary should be available the path, as well as manpages for archsat.

Manually

One can install archsat manually, though it requires dependencies to be explicitly installed. The list of dependencies can be found in the opam file at the root of the repository. One can then run:

MANDIR=/some/path BINDIR=/some/other/path make install

Specifying the MANDIR and BINDIR is necessary to specify where to install the binary and the manpages.

Tests

The archsat repo includes some tests for the binary, in the tests directory, these can be run using the command:

make test

For unit tests of internal functions, see src/README.md.

Usage

The common and profiling options of the archsat binary should be fairly well documented in the manpage (as well as when using the --help command). Advanced options may require some more knowledge of the prover's internals to be used correctly.

In case of unhelpful or unsufficiently clear explanations, don't hesitate to submit a bug report.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].