# Turing Documentation

Welcome to the documentation for Turing 0.5.

## Introduction

**Turing** is a *universal* probabilistic programming language with an intuitive modelling interface, composable probabilistic inference and computational scalability.

Turing provides **Hamiltonian Monte Carlo** (HMC) and **particle MCMC** sampling algorithms for complex posterior distributions (e.g. those involving discrete variables and stochastic control flows). Current features include:

**Universal**probabilistic programming with an intuitive modelling interface;**Hamiltonian Monte Carlo**(HMC) sampling for differentiable posterior distributions;**Particle MCMC**sampling for complex posterior distributions involving discrete variables and stochastic control flow; and**Gibbs**sampling that combines particle MCMC, HMC and many other MCMC algorithms.