# Introduction¶

## What are we doing here?¶

Sampyl provides Markov Chain Monte Carlo (MCMC) samplers for drawing from probability distributions. Typically, this is used to sample from the posterior distribution of a Bayesian model. Other MCMC packages such as PyMC and PyStan, while great and you should check them out, require you to create models using non-Pythonic syntax and semantics. Sampyl allows you to create models completely with Python and Numpy. All that is required is a function that calculates \(\log{P(X)}\) for the sampling distribution. You can create this function however you want.