1. A method for decoding data in non-volatile storage, comprising: performing multiple sense operations on at least one non-volatile storage element; and determining a programming state of the at least one non-volatile storage element using iterative probabilistic decoding, the iterative probabilistic decoding uses reliability metrics which are based on the multiple sense operations.