val force : ('a -> 'b) -> ('a, 'b) t -> 'bval create : 'a -> ('a, 'b) tval get_arg : ('a, 'b) t -> 'a optionval create_forced : 'b -> ('a, 'b) tval create_failed : exn -> ('a, 'b) tval log : unit -> logval force_logged : log -> ('a -> 'b option) -> ('a, 'b option) t -> 'b optionval backtrack : log -> unit