Up
module
Flang
:
sig
The language of terms over a field.
#
module type
Ordered_field =
sig
#
type
t
#
val
zero :
t
#
val
(+) :
t
->
t
->
t
#
val
(-) :
t
->
t
->
t
#
val
(*) :
t
->
t
->
t
#
val
(/) :
t
->
t
->
t
#
val
t_of_sexp : Sexplib.Sexp.t
->
t
#
val
sexp_of_t :
t
->
Sexplib.Sexp.t
#
val
compare :
t
->
t
->
int
end
#
type
'a t = [
| `Base
of
'a
| `Add
of
'a
t
* 'a
t
| `Sub
of
'a
t
* 'a
t
| `Mult
of
'a
t
* 'a
t
| `Div
of
'a
t
* 'a
t
| `Abs
of
'a
t
| `Min
of
'a
t
* 'a
t
| `Max
of
'a
t
* 'a
t
]
#
val
base : 'a
->
'a
t
#
val
add : 'a
t
->
'a
t
->
'a
t
#
val
sub : 'a
t
->
'a
t
->
'a
t
#
val
mult : 'a
t
->
'a
t
->
'a
t
#
val
div : 'a
t
->
'a
t
->
'a
t
#
val
add_list : 'a
t
list
->
'a
t
#
val
mult_list : 'a
t
list
->
'a
t
#
val
abs : 'a
t
->
'a
t
#
val
min : 'a
t
->
'a
t
->
'a
t
#
val
max : 'a
t
->
'a
t
->
'a
t
#
val
atoms : 'a
t
->
'a list
#
module
Eval :
functor
(F :
Ordered_field
)
->
sig
#
val
eval : 'a
t
->
f:('a
->
F
.
t
)
->
F
.
t
end
#
val
compare : ('a
->
'a
->
int)
->
'a
t
->
'a
t
->
int
#
val
bin_t : 'a Bin_prot.Type_class.t
->
'a
t
Bin_prot.Type_class.t
#
val
bin_read_t : 'a Bin_prot.Read.reader
->
'a
t
Bin_prot.Read.reader
#
val
__bin_read_t__ : 'a Bin_prot.Read.reader
->
(int
->
'a
t
) Bin_prot.Read.reader
#
val
bin_reader_t : 'a Bin_prot.Type_class.reader
->
'a
t
Bin_prot.Type_class.reader
#
val
bin_size_t : 'a Bin_prot.Size.sizer
->
'a
t
Bin_prot.Size.sizer
#
val
bin_write_t : 'a Bin_prot.Write.writer
->
'a
t
Bin_prot.Write.writer
#
val
bin_writer_t : 'a Bin_prot.Type_class.writer
->
'a
t
Bin_prot.Type_class.writer
#
val
t_of_sexp : (Sexplib.Sexp.t
->
'a)
->
Sexplib.Sexp.t
->
'a
t
#
val
__t_of_sexp__ : (Sexplib.Sexp.t
->
'a)
->
Sexplib.Sexp.t
->
'a
t
#
val
sexp_of_t : ('a
->
Sexplib.Sexp.t)
->
'a
t
->
Sexplib.Sexp.t
end