Module TopDownAst

module TopDownAst: sig .. end

AST for TopDown terms



type term = 
| Var of string
| Apply of string * term list
| Int of int
type aggregate = {
   ag_left : term;
   ag_constructor : string;
   ag_var : string;
   ag_guard : term;
}
type literal = 
| LitPos of term
| LitNeg of term
| LitAggr of aggregate
type clause = term * literal list 
type file = clause list 
exception ParseError of string
val loc_to_str : Lexing.position -> string
val print_error : ?out:Pervasives.out_channel -> string -> Lexing.lexbuf -> unit
val error_to_string : string -> Lexing.lexbuf -> string