Module type Interface.INVARIANT

type 'a t
val imap : ('a -> 'b) -> ('b -> 'a) -> 'a t -> 'b t