data SamF : Type -> Type Random sampling functor
Totality: total
Visibility: public export
Constructor: Random : (Double -> a) -> SamF a
Hints:
Functor SamF (Monad m, MonadFree SamF (FreeSampler m)) => MonadSample (FreeSampler m)
FreeSampler : (Type -> Type) -> Type -> Type Free monad transformer over random sampling.
Uses the Church-encoded version of the free monad for efficiency.
Visibility: public exporthoist : (Monad m, Monad n) => (m x -> n x) -> FreeSampler m a -> FreeSampler n a Hoist 'FreeSampler' through a monad transform.
Visibility: exportinterpret : MonadSample m => FreeSampler m a -> m a Execute random sampling in the transformed monad.
Visibility: exportwithRandomness : Monad m => List Double -> FreeSampler m a -> m a Execute computation with supplied values for random choices.
Visibility: exportwithPartialRandomness : MonadSample m => List Double -> FreeSampler m a -> m (a, List Double) Execute computation with supplied values for a subset of random choices.
Return the output value and a record of all random choices used, whether
taken as input or drawn using the transformed monad.
Visibility: public exportrunWith : MonadSample m => List Double -> FreeSampler Identity a -> m (a, List Double) Like `withPartialRandomness`, but use an arbitrary sampling monad.
Visibility: public export