As_prover.Extendedmodule Types : Types.Typesinclude S
with module Types := Types
with type 'f field := field
and type ('a, 'f) t := ( 'a, 'f ) Types.As_prover.tinclude As_prover_intf.Basic
with type ('a, 'f) t = ( 'a, 'f ) Types.As_prover.t
and type ('a, 'f) Provider.t = ( 'a, 'f ) Types.Provider.t
with type 'f field := field
with type ('a, 'f) t := ( 'a, 'f ) Types.As_prover.tinclude Monad_let.S2 with type ('a, 'f) t := ( 'a, field ) Types.As_prover.tinclude Monad_let.S_without_syntax2
with type ('a, 'e) t := ( 'a, field ) Types.As_prover.tinclude Core_kernel.Monad.Infix2
with type ('a, 'e) t := ( 'a, field ) Types.As_prover.tval (>>=) :
( 'a, field ) Types.As_prover.t ->
( 'a -> ( 'b, field ) Types.As_prover.t ) ->
( 'b, field ) Types.As_prover.tval (>>|) :
( 'a, field ) Types.As_prover.t ->
( 'a -> 'b ) ->
( 'b, field ) Types.As_prover.tval bind :
( 'a, field ) Types.As_prover.t ->
f:( 'a -> ( 'b, field ) Types.As_prover.t ) ->
( 'b, field ) Types.As_prover.tval return : 'a -> ( 'a, field ) Types.As_prover.tval map :
( 'a, field ) Types.As_prover.t ->
f:( 'a -> 'b ) ->
( 'b, field ) Types.As_prover.tval join :
( ( 'a, field ) Types.As_prover.t, field ) Types.As_prover.t ->
( 'a, field ) Types.As_prover.tval ignore_m :
( _, field ) Types.As_prover.t ->
( unit, field ) Types.As_prover.tval all :
( 'a, field ) Types.As_prover.t list ->
( 'a list, field ) Types.As_prover.tval all_unit :
( unit, field ) Types.As_prover.t list ->
( unit, field ) Types.As_prover.tmodule Let_syntax : sig ... endval run : ( 'a, field ) Types.As_prover.t -> ( field Cvar.t -> field ) -> 'aval map2 :
( 'a, field ) Types.As_prover.t ->
( 'b, field ) Types.As_prover.t ->
f:( 'a -> 'b -> 'c ) ->
( 'c, field ) Types.As_prover.tval read_var : field Cvar.t -> ( field, field ) Types.As_prover.tval read :
( 'var, 'value, field, _ ) Types.Typ.t ->
'var ->
( 'value, field ) Types.As_prover.tmodule Provider : sig ... endmodule Handle : sig ... endmodule Ref : sig ... endtype 'a t = ( 'a, field ) Types.As_prover.t