sig
  type dom
  type cod
  val f :
    (Memo.Tabulate.RecFun.dom -> (Memo.Tabulate.RecFun.cod -> unit) -> unit) ->
    Memo.Tabulate.RecFun.dom -> (Memo.Tabulate.RecFun.cod -> unit) -> unit
  val hash : Memo.Tabulate.RecFun.dom -> int
  val join :
    Memo.Tabulate.RecFun.cod ->
    Memo.Tabulate.RecFun.cod -> Memo.Tabulate.RecFun.cod
  val bottom : Memo.Tabulate.RecFun.cod
  val dom_equal :
    Memo.Tabulate.RecFun.dom -> Memo.Tabulate.RecFun.dom -> bool
  val cod_equal :
    Memo.Tabulate.RecFun.cod -> Memo.Tabulate.RecFun.cod -> bool
end