mirror of
https://github.com/c-cube/sidekick.git
synced 2025-12-10 21:24:06 -05:00
Poster update
This commit is contained in:
parent
09bd730ff5
commit
82375aa288
4 changed files with 53 additions and 11 deletions
Binary file not shown.
|
|
@ -33,14 +33,13 @@
|
||||||
{DEDUC$\vdash$EAM (INRIA) - LSV / CNRS\\
|
{DEDUC$\vdash$EAM (INRIA) - LSV / CNRS\\
|
||||||
\Large \textcolor{black}{\texttt{guillaume.bury@inria.fr}}}
|
\Large \textcolor{black}{\texttt{guillaume.bury@inria.fr}}}
|
||||||
|
|
||||||
|
|
||||||
\begin{center}
|
\begin{center}
|
||||||
|
|
||||||
\begin{multicols}{2}
|
\begin{multicols}{2}
|
||||||
|
|
||||||
\tblock{Introduction} % TODO
|
\tblock{Introduction} % TODO
|
||||||
{
|
{
|
||||||
\vspace{0cm} % Pour pas se faire manger par le titre
|
\vspace{0.5cm} % Pour pas se faire manger par le titre
|
||||||
|
|
||||||
\msat{} is a SAT solving library written in OCaml. It allows to solve the satisfiability
|
\msat{} is a SAT solving library written in OCaml. It allows to solve the satisfiability
|
||||||
of propositional problems in clausal normal form, and produce either a propositional model,
|
of propositional problems in clausal normal form, and produce either a propositional model,
|
||||||
|
|
@ -72,24 +71,71 @@
|
||||||
\end{description}
|
\end{description}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
\tblock{Implementation}
|
||||||
|
{
|
||||||
|
\begin{itemize}[label=$\blacktriangleright$]
|
||||||
|
\item Imperative design
|
||||||
|
\begin{itemize}[label=\checkmark]
|
||||||
|
\item 2-watch litteral
|
||||||
|
\item Generative functors
|
||||||
|
\item Backtrackable theories (less demanding than immutable theories)
|
||||||
|
\end{itemize}
|
||||||
|
\item Features
|
||||||
|
\begin{itemize}[label=\checkmark]
|
||||||
|
\item Functorized design
|
||||||
|
\item Local assumptions
|
||||||
|
\item Model output
|
||||||
|
\item Proof output (Coq, dot)
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
}
|
||||||
|
|
||||||
|
\tblock{Related work}
|
||||||
|
{
|
||||||
|
\begin{itemize}[label=$\bullet$]
|
||||||
|
\item regstab: binary only
|
||||||
|
\item Minisat, sattools, ocaml-sat-solvers: bindings to C sat solvers (cannot make a SMT)
|
||||||
|
\item Alt-ego, Alt-ergo-zero: Full SMT (no functorized design, cannot change the theory)
|
||||||
|
\item ocamlyices, yices2: SMT bindings (not full ocaml)
|
||||||
|
\end{itemize}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
\columnbreak
|
\columnbreak
|
||||||
|
|
||||||
\tblock{Problem example}
|
\tblock{Problem example}
|
||||||
{
|
{
|
||||||
|
\vspace{.5cm}
|
||||||
|
\[
|
||||||
|
\begin{matrix}
|
||||||
|
H1: & a = b & \quad & H2: & b = c \lor b = d \\
|
||||||
|
H3: & a <> d & \quad & H4: & a <> c \\
|
||||||
|
\end{matrix}
|
||||||
|
\]
|
||||||
|
\includegraphics[height=33cm]{proof}
|
||||||
}
|
}
|
||||||
|
|
||||||
\cblock{Theory interface}
|
\tblock{Proof generation}
|
||||||
{
|
{
|
||||||
\lstinputlisting{theory_intf.ml}
|
\begin{itemize}[label=\checkmark]
|
||||||
|
\item Each clause records it "history", that is the clauses
|
||||||
|
used during analyzing
|
||||||
|
\item Minimal impact on proof search (already done to compute
|
||||||
|
unsat-core)
|
||||||
|
\item Sufficient to rebuild the whole resolution tree
|
||||||
|
\item Enables various proof output:
|
||||||
|
\begin{itemize}[label=$\bullet$]
|
||||||
|
\item Dot/Graphviz (see example)
|
||||||
|
\item Coq formal proof
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
}
|
}
|
||||||
|
|
||||||
\cblock{Proof management}
|
\cblock{Proof interface}
|
||||||
{
|
{
|
||||||
\lstinputlisting{proof_intf.ml}
|
\lstinputlisting{proof_intf.ml}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
\end{multicols}
|
\end{multicols}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
BIN
poster/proof.pdf
Normal file
BIN
poster/proof.pdf
Normal file
Binary file not shown.
|
|
@ -1,7 +1,3 @@
|
||||||
type clause_premise =
|
|
||||||
| Hyp | Local | Lemma of lemma
|
|
||||||
| History of clause list
|
|
||||||
|
|
||||||
type proof = clause
|
type proof = clause
|
||||||
and proof_node = {
|
and proof_node = {
|
||||||
conclusion : clause;
|
conclusion : clause;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue