1. A system for retrieving data from memory, the system comprising: a decoder in communication with a memory, the decoder for performing a method comprising: receiving a codeword stored on a page in the memory, the codeword comprising data and first-tier check symbols, the first-tier check symbols generated in response to the data; determining that the codeword includes errors that cannot be corrected using the first-tier check symbols; and responsive to the determining: receiving second-tier check symbols, the second-tier check symbols generated in response to the data and to contents of other pages in the memory written prior to the page containing the codeword; correcting the codeword responsive to the second-tier check symbols; and outputting the corrected codeword.