Module Internal_Basic.As_prover

type 'a as_prover = 'a t
module Ref : sig ... end
val (>>=) : 'a t -> ( 'a -> 'b t ) -> 'b t
val (>>|) : 'a t -> ( 'a -> 'b ) -> 'b t
module Monad_infix : sig ... end
val bind : 'a t -> f:( 'a -> 'b t ) -> 'b t
val return : 'a -> 'a t
val map : 'a t -> f:( 'a -> 'b ) -> 'b t
val join : 'a t t -> 'a t
val ignore_m : 'a t -> unit t
val all : 'a t list -> 'a list t
val all_unit : unit t list -> unit t
module Let_syntax : sig ... end
val map2 : 'a t -> 'b t -> f:( 'a -> 'b -> 'c ) -> 'c t
val read_var : Field.Var.t -> field t
val read : ( 'var, 'value ) Typ.t -> 'var -> 'value t