packages feed

declarative 0.1.0.1 → 0.2.1

raw patch · 3 files changed

+17/−6 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Numeric.MCMC: class Monad m => PrimMonad (m :: * -> *) where type family PrimState (m :: * -> *) :: *
+ Numeric.MCMC: data RealWorld :: *

Files

declarative.cabal view
@@ -1,5 +1,5 @@ name:                declarative-version:             0.1.0.1+version:             0.2.1 synopsis:            DIY Markov Chains. homepage:            http://github.com/jtobin/declarative license:             MIT@@ -10,12 +10,19 @@ build-type:          Simple cabal-version:       >=1.10 description:-  DIY Markov Chains.+  This package presents a simple combinator language for Markov transition+  operators that are useful in MCMC.   .-  Build composite Markov transition operators from existing ones for fun and-  profit.+  Any transition operators sharing the same stationary distribution and obeying+  the Markov and reversibility properties can be combined in a couple of ways,+  such that the resulting operator preserves the stationary distribution and+  desirable properties amenable for MCMC.   .-  A useful strategy is to hedge one's sampling risk by occasionally+  We can deterministically concatenate operators end-to-end, or sample from+  a collection of them according to some probability distribution.  See+  <http://www.stat.umn.edu/geyer/f05/8931/n1998.pdf Geyer, 2005> for details.+  .+  A useful strategy is to hedge one's 'sampling risk' by occasionally   interleaving a computationally-expensive transition (such as a gradient-based   algorithm like Hamiltonian Monte Carlo or NUTS) with cheap Metropolis   transitions.
lib/Numeric/MCMC.hs view
@@ -80,6 +80,10 @@   , MWC.createSystemRandom   , MWC.withSystemRandom   , MWC.asGenIO++  , PrimMonad+  , PrimState+  , RealWorld   ) where  import Control.Lens hiding (index)
test/Rosenbrock.hs view
@@ -17,5 +17,5 @@     (sampleT (slice 2.0) (slice 3.0))  main :: IO ()-main = withSystemRandom . asGenIO $ mcmc 10000 [0, 0] transition rosenbrock+main = withSystemRandom . asGenIO $ mcmc 100 [0, 0] (slice 1.0) rosenbrock