denote all incoming messages to node v$_{i}$ from checks in the second half of k th iteration. We will show only messages passed by certain crucial nodes in each iteration. Assume that all messages are initially zero. Remark: The above corollary validates decoding on isolated subgraphs that are induced by trapping sets and this property is useful for deriving good update rules. Note that the number of iterations required for a subgraph to satisfy the isolation assumption in order to converge becomes an important param- eter. Also the notion of critical number can now be extended for multilevel decoders as well. We provide two particularly good 3-bit decoders: a 7-level LT decoder, and a 5-level NLT decoder for 3-left-regular LDPC codes. These were derived by considering a systemtatic hierarchy of trapping sets called trapping set ontology [12], and using the approach described in the previous section. Some important criteria to be considered in the derivation of the rules are increase in critical number and convergence in fewer iterations. Due to space constraints, we do not give details of deriving good rules in this paper but we shall demonstrate how multilevel decoders can correct certain error patterns uncorrectable by even floating-point algorithms. In first half of iteration 1, all outgoing messages are ± L$_{1}$ , i,e, m$_{1}$ ( v$_{i}$, :) = ( − L$_{1}$, − L$_{1}$, − L$_{1}$ ) for i ∈ { 1 , 2 , 3 } and m$_{1}$ ( v$_{i}$, :) = ( L$_{1}$, L$_{1}$, L$_{1}$ ) for i / ∈ { 1 , 2 , 3 } . In the second half, check nodes send their messages by the isolation assumption. Then m$_{1}$ (: , v$_{i}$ ) = ( − L$_{1}$, − L$_{1}$, − L$_{1}$ ) for i ∈ { 4 , 5 } . In the first half of iteration 2, because Φ$_{v}$( L$_{1}$, L$_{1}$, − C) = 0 , and Φ$_{v}$( − L$_{1}$, − L$_{1}$, C) = 0 , this update rule helps prevent nodes v$_{4}$ and v$_{5}$ from sending wrong messages. Then m$_{2}$ ( v$_{i}$, : ) = 0 for i ∈ { 1 to 5 } . Check nodes send their messages in the second half and m$_{2}$ (: , v$_{i}$ ) = (0 , 0 , L$_{1}$ ) for i ∈ { 1 , 2 } . Finally in the first half of iteration 3, nodes v$_{1}$ and v$_{2}$ are the only nodes that can send wrong messages. But because Φ$_{v}$(0 , L$_{1}$, − C) = 0 , the nodes send zero instead, and the decoder converges at the end of iteration 3. Remark: From the above example, we see that certain outputs of Φ$_{v}$ were crucial for preventing propagation of wrong messages and convergence within 3 iterations. Whereas the min-sum decoder requires 4 iterations under the isolation assumption to converge on the same 3-error pattern. Now if subgraph H contained in G satisfies the isolation assumption for only 3 iterations, then min-sum is not guaranteed to correct three errors. For the quasicyclic code, this particular 3-error pattern on such a subgraph fails to be corrected by min-sum but is corrected by 7-level LT decoder. In fact, 7-level LT decoder corrects all 3-error patterns on the code. Although we considered error patterns that failed to decode by the min-sum in example 2, the same analysis can be carried out on error patterns that failed to decode by BP as well. The rules can be derived to correct such patterns in a similar fashion by ensuring convergence in fewest number of iterations under the isolation assumption. For example, the 7-level LT decoder did not fail for any 4-error patterns on the same quasicyclic code whereas the BP and min-sum decoders failed in the region of simulation in Fig. 4. The function Φ$_{v}$ can be uniquely defined by setting con- straints on the magnitudes and thresholds. We shall use this approach to define the decoders. For the 7-level LT decoder, the constraints that uniquely define the decoder are L$_{1}$ < C < 2 L$_{1}$ , L$_{2}$ = 2 L$_{1}$ + C , L$_{3}$ = 2 L$_{2}$ + C , and T$_{1}$ = L$_{1}$ , T$_{2}$ = L$_{2}$ , T$_{3}$ = L$_{3}$ . For the 5-level NLT decoder, the constraints that specify the decoder are C = L$_{1}$ , L$_{2}$ = 3 L$_{1}$ , T$_{1}$ = L$_{1}$ , T$_{2}$ = L$_{2}$ , and the channel weight function used to compute ω$_{c}$ is given by As an example, we now illustrate how a 3-error pattern on a n = 786 , R = 0 . 75 quasicyclic code [17] that was uncorrectable by min-sum decoder, is correctable by the 7- level LT decoder. Example 2: Let H be the subgraph induced by the (9,5) trapping set which contains a (6,2) and has three degree-one checks as shown in Fig. 2. Consider the 3-error pattern shown in the figure where • denotes an initially wrong variable node. Simulations for frame error rate (FER) were carried out on three different codes: 1) n = 155 , R = 0 . 4 , Tanner code, 2) n = 768 , R = 0 . 75 , Quasicyclic code with d$_{min}$ = 12 , and 3) a n = 4085 , R = 0 . 82 , MacKay code. The codes were chosen to cover a broad spectrum of LDPC codes in order to validate our approach. The Tanner code is well-understood and has been analyzed for many different decoders. The high-rate quasicyclic code was chosen since the error floor problem is much more challenging for high-rate codes. A MacKay code was chosen as an example of a high-rate random code. Fig. 3, Fig. 4, and Fig. 5 show the simulation results. The maximum number of iterations used was 100 for all decoders. Structures of these three codes can be found in [17]. For all three codes, the 3-bit decoders significantly outper- form BP in the error floor region. Notice the difference in slopes in the FER curves. For the Tanner code, the 5-NLT Under the isolation assumption, let us analyze the decoding of 7-level LT decoder on the subgraph with the help of the isolation theorem. Let m$_{k}$ ( v$_{i}$, :) denote all outgoing messages of node v$_{i}$ in the first half of k th iteration and let m$_{k}$ (: , v$_{i}$ ) Fig. 2. Subgraph induced by (9,5) trapping set that contains a (6,2) v$_{1}$ v$_{2}$ v$_{3}$ v$_{4}$ v$_{5}$ v$_{6}$ c$_{1}$ c$_{2}$ c$_{3}$ c$_{4}$ c$_{5}$ c$_{6}$ c$_{10}$ c$_{8}$ c$_{9}$ c$_{7}$ v$_{7}$ v$_{8}$ v$_{9}$ c$_{11}$ c$_{12}$ c$_{13}$ c$_{14}$ V. NUMERICAL RESULTS IV. 3-BIT DECODERS FOR 3-LEFT-REGULAR LDPC CODES using the isolation theorem. ω$_{c}$ = Ω( m$_{1}$, m$_{2}$ ) = 1 − $^{(}$sign( m$_{1}$ ) ⊕ sign( m$_{2}$ ) $^{)}$· δ ( | m$_{1}$ | + | m$_{2}$ | − 2 L$_{2}$ ) .