package dolmen

  1. Overview
  2. Docs
A parser library for automated deduction

Install

Dune Dependency

Authors

Maintainers

Sources

dolmen-0.10.tbz
sha256=c5c85f77e3924f378e8d82f166eefe4131b4e041bf9cdeca467410f33c71fa61
sha512=42feb39d13cfdc8a2054abe85ccc47755f45059cda7d95e9261b5a9fd5c730f420732547b3fa19c4af059474f887ef78c119ab5933375a5ea2dbe888f65a3e4f

doc/src/dolmen.dimacs/ast.ml.html

Source file ast.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46

(* This file is free software, part of dolmen. See file "LICENSE" for more information. *)

(** AST requirements for the Dimacs format.
    Dimacs is a very simple format intended to express CNFs (conjunctive normal forms)
    in the simplest format possible. *)

module type Term = sig

  type t
  (** The type of terms. *)

  type location
  (** The type of locations. *)

  val atom : ?loc:location -> int -> t
  (** Make an atom from an non-zero integer. Positive integers denotes variables,
      and negative integers denote the negation of the variable corresponding to
      their absolute value. *)

end
(** Requirements for implementations of Dimacs terms. *)


module type Statement = sig

  type t
  (** The type of statements for dimacs. *)

  type term
  (** The type of dimacs terms. *)

  type location
  (** The type of locations. *)

  val p_cnf : ?loc:location -> int -> int -> t
  (** Header of a dimacs file. First argument is the number of variables,
      second is the number of clauses. *)

  val clause : ?loc:location -> term list -> t
  (** Make a clause from a list of literals. *)

end
(** Requirements for implementations of Dimacs statements. *)


OCaml

Innovation. Community. Security.