Bdd.Make
module Var : sig ... end
module BDD : sig ... end
module type Terminal = sig ... end
module type MTBDD = sig ... end
val map1 :
(module MTBDD with type Terminal.t = 'a) ->
(module MTBDD with type Terminal.t = 'res) ->
('a -> 'res) ->
'a mtbdd ->
'res mtbdd
val map2 :
(module MTBDD with type Terminal.t = 'a) ->
(module MTBDD with type Terminal.t = 'b) ->
(module MTBDD with type Terminal.t = 'res) ->
('a -> 'b -> 'res) ->
'a mtbdd ->
'b mtbdd ->
'res mtbdd
val map3 :
(module MTBDD with type Terminal.t = 'a) ->
(module MTBDD with type Terminal.t = 'b) ->
(module MTBDD with type Terminal.t = 'c) ->
(module MTBDD with type Terminal.t = 'res) ->
('a -> 'b -> 'c -> 'res) ->
'a mtbdd ->
'b mtbdd ->
'c mtbdd ->
'res mtbdd
module MTBDD_Make (Terminal : Terminal) : sig ... end