  We study percolation on networks, which is used as a model of the resilience
of networked systems such as the Internet to attack or failure and as a simple
model of the spread of disease over human contact networks. We reformulate
percolation as a message passing process and demonstrate how the resulting
equations can be used to calculate, among other things, the size of the
percolating cluster and the average cluster size. The calculations are exact
for sparse networks when the number of short loops in the network is small, but
even on networks with many short loops we find them to be highly accurate when
compared with direct numerical simulations. By considering the fixed points of
the message passing process, we also show that the percolation threshold on a
network with few loops is given by the inverse of the leading eigenvalue of the
so-called non-backtracking matrix.
