X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=src%2Fformula.mli;h=867d61666330b0e04eb3aac79be84b27e90d19a3;hb=6b66008811639324be623a42037b60e02056772c;hp=9b2659f310575a5f1cb0b5b967c57057b3fcb472;hpb=f5d90fb688bc1a9b29815fc33c369856e6c51a67;p=tatoo.git diff --git a/src/formula.mli b/src/formula.mli index 9b2659f..867d616 100644 --- a/src/formula.mli +++ b/src/formula.mli @@ -13,9 +13,14 @@ (* *) (***********************************************************************) +(* + Time-stamp: +*) + (** Implementation of hashconsed Boolean formulae *) -type move = [ `Left |`Right ] +type move = [ `Left | `Right | `Epsilon | `Up1 | `Up2 ] + (** Direction for automata predicates *) type 'formula expr = @@ -23,8 +28,7 @@ type 'formula expr = | True | Or of 'formula * 'formula | And of 'formula * 'formula - | Move of (move * bool * State.t) - | Label of QNameSet.t + | Move of move * bool * State.t (** View of the internal representation of a formula, used for pattern matching *) @@ -52,9 +56,6 @@ val expr : t -> t expr val compare : t -> t -> int (** Comparison of formulae *) -val size : t -> int -(** Syntactic size of the formula *) - val print : Format.formatter -> t -> unit (** Pretty printer *) @@ -82,14 +83,3 @@ val and_ : t -> t -> t val of_bool : bool -> t (** Convert an ocaml Boolean value to a formula *) - -module Infix : sig - val ( +| ) : t -> t -> t - val ( *& ) : t -> t -> t - val ( *+ ) : move -> StateSet.elt -> t - val ( *- ) : move -> StateSet.elt -> t -end -(** Module to facilitate infix notations of formulae. - Just [open Formla.Infix] and write: - [let f = `Left *+ q1 +| `Right *+ q2 in ...] -*)