File "prog.ml", line 27, characters 0-1006:
Signature mismatch:
Modules do not match:
sig
module Elem :
sig
type t = Element.t
val eq : t -> t -> bool
val lt : t -> t -> bool
val leq : t -> t -> bool
end
type heap = E | T of heap * Elem.t * heap
val empty : heap
val is_empty : heap -> bool
val partition : Elem.t -> heap -> heap * heap
end
is not included in
sig
module Elem :
sig
type t = Element.t
val eq : t -> t -> bool
val lt : t -> t -> bool
val leq : t -> t -> bool
end
type heap
val empty : heap
val is_empty : heap -> bool
val insert : Elem.t -> heap -> heap
val merge : heap -> heap -> heap
val find_min : heap -> Elem.t
val delete_min : heap -> heap
end
The field `delete_min' is required but not provided
The field `find_min' is required but not provided
The field `merge' is required but not provided
The field `insert' is required but not provided