Partial Inverses mod m(x) and Reverse Berlekamp Massey Decoding

Size: px
Start display at page:

Download "Partial Inverses mod m(x) and Reverse Berlekamp Massey Decoding"

Transcription

1 Partial Inverses mod m(x) Reverse Berlekamp Massey Decoding Jiun-Hung Yu, Member, IEEE Hans-Andrea Loeliger, Fellow, IEEE Abstract This semi-tutorial paper introduces the partialinverse problem for polynomials develops its application to decoding Reed Solomon codes some related codes. The most natural algorithm to solve the partial-inverse problem is very similar to, but more general than, the Berlekamp Massey algorithm. Two additional algorithms are obtained as easy variations of the basic algorithm: the first variation is entirely new while the second variation may be viewed as a version of the Euclidean algorithm. Decoding Reed Solomon codes ( some related codes) can be reduced to the partial-inverse problem, both via the stard key equation, more naturally, via an alternative key equation with a new converse. Shortened singly-extended Reed Solomon codes are automatically included. Using properties of the partial-inverse problem, two further key equations with attractive properties are obtained. The paper also points out a variety of options for interpolation. Index Terms Reed Solomon codes, polynomial remainder codes, key equation, partial-inverse problem, partial-inverse algorithm, Euclidean algorithm, Berlekamp Massey algorithm. I. INTRODUCTION In this paper, we consider the following problem its application to decoding Reed Solomon codes some related codes. Partial-Inverse Problem in F[x]/m(x): Let b(x) m(x) be nonzero polynomials over some field F, with deg b(x) < deg m(x). For fixed d Z with 0 apple d apple deg m(x), find a nonzero polynomial (x) F [x] of the smallest degree such that deg b(x) (x) modm(x) <d. () We will see that this problem has always a unique solution (up to a scale factor), the solution satisfies deg (x) apple deg m(x) d. () In the special case where d = gcd b(x),m(x) =, the solution (x) is the inverse of b(x) in F [x]/m(x). The partial-inverse problem is strongly reminiscent of various key equations in the literature of Reed Solomon codes [] [8] similar codes, it is essentially equivalent to a modified Padé approximation problem due to McEliece Shearer, which can be solved by the Euclidean algorithm [9], Both authors are with the Dept. of Information Technology Electrical Engineering, ETH Zurich, CH-809 Zürich, Switzerl. A preliminary much abridged version of this paper was presented at the 03 IEEE Int. Symp. on Information Theory []. Copyright (c) 0 IEEE. Personal use of this material is permitted. However, permission to use this material for any other purposes must be obtained from the IEEE by sending a request to pubs-permissions@ieee.org. (see also [0, Sec. 5.7] Appendix A). However, the exact problem statement is new. This paper is semi-tutorial in the following sense: much of the material looks almost stard, but is not quite so; by developing the theory from a new starting point the partial inverse problem we gain generality clarity, we unify results from different approaches in the literature, we obtain many novelties in detail. To set the stage, recall the two classical algorithms to decode Reed Solomon codes some related codes: the Berlekamp Massey algorithm [3], [] the Euclidean algorithm (due to Sugiyama [5]). The Euclidean algorithm is considered to be more versatile (but perhaps slightly less efficient) than the Berlekamp Massey algorithm; for example, the popular Shiozaki Gao decoder [], [] is also based on the Euclidean algorithm, see also [3] Section V-D. The Berlekamp Massey algorithm the Euclidean decoding algorithm are actually related: explicit ( nontrivial) translations were given in [] [7], further connections were established in [8] [9]. In order to clarify Berlekamp s algorithm [3], Massey [] introduced the linear-feedback shift-register synthesis (LFSRS) problem: this is the problem that the Berlekamp Massey algorithm solves intrinsically, from which its application to decoding is developed most naturally. The LFSRS problem is similar, but not identical, to the partial-inverse problem for m(x) =x ; in particular, the LFSRS problem does not always have a unique solution. Likewise, in order to clarify Sugiyama s algorithm (the Euclidean algorithm), McEliece Shearer [9] introduced a modified Padé approximation problem that is essentially equivalent to the partial-inverse problem (cf. Appendix A). Essentially the same problem is also discussed in [0, Sec. 5.7]. In this prior literature, the properties of the problem (as far as they are investigated) are all derived from the Euclidean algorithm. In this paper, we develop another perspective. First, we investigate the partial-inverse problem without regard to any algorithm, we find many new properties of it that will be helpful for decoding later on (cf. Sections II III). In particular, we prove (), we give a characterization of the solutions in terms of a gcd (Theorem ), we discuss irrelevant coefficients in b(x) m(x) ( how to get rid of them), we show that the partial-inverse problem for general m(x) can be transformed into a partial-inverse problem with m(x) =x. Second, we find that the most natural algorithm for solving the partial-inverse problem is not the Euclidean algorithm, but a new algorithm that resembles the Berlekamp Massey

2 algorithm. In some special cases (including m(x) =x, m(x) =x, m(x) =x x), the algorithm looks indeed very much like, is as efficient as, the Berlekamp Massey algorithm (but the input b(x) is processed in the reverse order). We then note that this new algorithm is easily translated into two further algorithms, one of which is entirely new the other may be viewed as a version of the Euclidean algorithm. We thus obtain a transparent unification of the Berlekamp Massey approach with the Sugiyama approach, an additional new algorithm, a derivation of the Euclidean algorithm that begins with the partial-inverse problem rather than with the computation of a gcd. Third, we show that decoding Reed Solomon codes ( some related codes) can be reduced to the partial-inverse problem, not only via the stard key equation, but also ( more naturally) via an alternative key equation with a new converse. Shortened singly-extended Reed Solomon codes (with an evaluation point at zero) are automatically included, the approach is easily adapted to polynomial remainder codes [], [0] [3], which have not been amenable to Berlekamp Massey decoding. Using our earlier results on the partialinverse problem, we obtain two further key equations with attractive properties. Fourth, we address the interpolation problem, i.e., the problem of recovering the codeword from the error locator polynomial. We give two general transform-domain interpolation formulas, one of which has implicitly been used in the Shiozaki Gao decoder [], [] while the other appears to be entirely new. In addition, we adapt Horiguchi Koetter interpolation [7], [], which has been tied to Berlekamp Massey decoding, to our more general setting. In the appendices, we discuss extensions of the partialinverse approach: first, to errors--erasures decoding, second, to polynomial remainder codes (which have not been amenable to Berlekamp Massey decoding). We also note here that the partial-inverse approach can be extended to decode interleaved Reed Solomon codes similar codes beyond half the minimum distance [5], [6]. However, this extension is beyond the scope of the present paper will be fully developed in a companion paper. This paper is structured as follows. The most basic properties of the partial-inverse problem are given in Section II. Many additional new properties of the partial-inverse problem are discussed in Section III. The new basic partial-inverse algorithm its two variations are given in Section IV. Decoding Reed Solomon codes is addressed in Section V. The generalization to polynomial remainder codes is given in Section VI, Section VII concludes the main part of the paper. Additional pertinent material is given in the appendices. Appendix A addresses the relations between the partial-inverse problem variations of Padé approximation problems. Appendix C shows how the stard key equation of Reed Solomon codes can be formulated as a partial-inverse problem solved by the algorithms of this paper. Appendix D addresses an extended partial-inverse problem where (x) is required to have a given factor. Errors--erasures decoding of Reed Solomon codes of polynomial remainder codes is addressed in Appendix E in Appendix F, respectively. The following notation will be used. The coefficient of x of a polynomial b(x) F [x] will be denoted by b. The leading coefficient (i.e., the coefficient of x deg b(x) ) of a nonzero polynomial b(x) will be denoted by lcf b(x), we also define lcf(0) =0. We will use mod both as in r(x) =b(x) modm(x) (the remainder of a division) as in b(x) r(x) modm(x) (a congruence modulo m(x)). We will also use div for polynomial division: if a(x) =q(x)m(x)+r(x) (3) with deg r(x) < deg m(x), then q(x) =a(x)divm(x) r(x) =a(x) modm(x). The Hamming weight of e F n will be denoted by w H (e). For x R, dxe is the smallest integer not smaller than x, bxc is the largest integer not larger than x. II. BASIC PROPERTIES OF THE PARTIAL-INVERSE PROBLEM The partial-inverse problem as defined in Section I has the following properties. ) The stated assumptions imply deg m(x). ) For d =degm(x), the problem is solved by (x) =. Smaller values of d will normally require a polynomial (x) of higher degree. 3) In the special case where d =0, the solution is (x) = m(x)/ gcd b(x),m(x). () Proposition. The partial-inverse problem has always a solution. Proof: The existence of a solution for d =0implies the existence of a solution for any d 0. Proposition. The solution (x) of a partial-inverse problem is unique up to a scale factor in F. Proof: Let () (x) () (x) be two solutions of the problem, which implies deg () (x) = deg () (x) 0. Define r () (x) = b(x) () (x) modm(x) (5) r () (x) = b(x) () (x) modm(x) (6) consider (x) = lcf () (x) () (x) Then lcf () (x) () (x). (7) r(x) = b(x) (x) modm(x) (8) = lcf () (x) r () (x) lcf () (x) r () (x) (9) by the natural ring homomorphism F [x]! F [x]/m(x). Clearly, (9) implies that (x) also satisfies (). But (7) implies deg (x) < deg () (x), which is a contradiction unless (x) =0. Thus (x) =0, which means that () (x) () (x) are equal up to a scale factor.

3 3 If (x) solves the partial- Proposition 3 (Degree Bound). inverse problem, then deg (x) apple deg m(x) d. (0) Proof: The case d =degm(x) is obvious. Otherwise, let =degm(x) d>0, consider the mapping given by F +! F () ( 0,..., ) 7! (x) = 0 + x x () 7! r(x) = b(x) (x) modm(x) (3) 7! (r 0,...,r deg m(x) ) () 7! (r d,...,r deg m(x) ). (5) Clearly, this mapping is linear (over F ), its kernel is nontrivial by (). But any nonzero element in the kernel corresponds (by ()) to a nonzero polynomial (x) that satisfies (). A sort of converse to Proposition 3 is given as Theorem below. Another converse is Lemma in Appendix C. III. MORE ABOUT THE PARTIAL-INVERSE PROBLEM The partial-inverse problem is not exhausted by Propositions 3. In this section, we address a number of additional aspects of this problem, which the reader may prefer to skip on first reading this paper. A. Minimal Partial Inverses The following notion is closely related to the partial-inverse problem will play a prominent role in the proof of the algorithm of Section IV. Definition (Minimal Partial Inverse): For fixed nonzero b(x) m(x) F [x] with deg b(x) < deg m(x), a nonzero polynomial (x) F [x] is a minimal partial inverse of b(x) mod m(x) if every nonzero () (x) F [x] with deg b(x) () (x) modm(x) apple deg b(x) (x) modm(x) (6) satisfies deg () (x) deg (x). Both (x) = (x) as in () are minimal partial inverses of any b(x). Proposition (Minimal Partial Inverses Solve Partial- Inverse Problems). The solution (x) of the partial-inverse problem is a minimal partial inverse of b(x) mod m(x). Conversely, (x) as in () solves the partial-inverse problem with d =0; every other minimal partial inverse (x) of b(x) mod m(x) solves the partial-inverse problem with d =deg b(x) (x) modm(x) +. (7) Proof: Let (x) be the solution of the partial-inverse problem. If (x) is not a minimal partial inverse, then there exists () (x) that satisfies (6) but deg () (x) < deg (x), which is a contradiction. The converse is obvious. Proposition 5 (Minimal Partial Inverses of the Same Degree Are Unique). For fixed nonzero b(x) m(x) F [x] with deg b(x) < deg m(x), let () (x) () (x) be two minimal partial inverses of b(x) with deg () (x) =deg () (x). Then () (x) = () (x) for some nonzero F. Proof: Define r () (x) r () (x) as in (5) (6), respectively, assume (without loss of generality) that deg r () (x) deg r () (x). By Proposition, () (x) solves the partial-inverse problem with d =deg b(x) () (x) modm(x) +. (8) But () (x) solves the same partial inverse problem. Thus () (x) = () (x) by Proposition. For any b(x) any m(x), (x) = is a minimal partial inverse of the smallest degree, (x) as in () is a minimal partial inverse of the largest degree. The algorithms of Section IV can be used to compute all minimal partial inverses (for fixed b(x) m(x)) in a single run (cf. Theorem ). Theorem (Degree Bound with a Converse). For fixed nonzero b(x) m(x) F [x] with deg b(x) < deg m(x), a nonzero (x) F [x] is a minimal partial inverse of b(x) if only if both deg (x)+deg b(x) (x) modm(x) < deg m(x) (9) gcd (x),q(x) =, (0) where q(x) = b(x) (x)divm(x). In the special case where q(x) =0, (0) requires (x) to be a nonzero constant. Proof of Theorem : Let r(x) = b(x) (x) modm(x) () = b(x) (x) q(x)m(x). () For the direct part, assume that (x) is a minimal partial inverse of b(x). Then (9) is immediate from Propositions 3. As for (0), assume that gcd (x),q(x) = g(x) with deg g(x) > 0. From (), we then have r(x) =g(x) 0 (x)b(x) q 0 (x)m(x) (3) with 0 (x) = (x)/g(x) q 0 (x) = q(x)/g(x). It follows that g(x) divides r(x), thus r 0 (x) = 0 (x)b(x) q 0 (x)m(x) () = 0 (x)b(x) modm(x) (5) with r 0 (x) = r(x)/g(x). But deg 0 (x) < deg (x) deg r 0 (x) apple deg r(x), which is impossible because (x) is a minimal partial inverse. For the converse part, assume that some nonzero (x) satisfies both (9) (0). Let () (x) be any nonzero polynomial such that r () (x) = b(x) () (x) modm(x) (6)

4 satisfies We have to prove that deg () (x) we now assume deg r () (x) apple deg r(x). (7) deg (x). To this end, deg () (x) < deg (x) (8) derive a contradiction. Let q () (x) be defined by consider b(x) () (x) =q () (x)m(x)+r () (x) (9) b(x) (x) () (x) = () (x)q(x)m(x)+ () (x)r(x) (30) = (x)q () (x)m(x)+ (x)r () (x) (3) from () (9), respectively. But we also have deg () (x)+degr(x) < deg (x)+degr(x) (3) < deg m(x), (33) where the second inequality is (9), as well as deg (x)+degr () (x) apple deg (x)+degr(x) (3) < deg m(x). (35) With (33) (35), we see that (30) (3) imply both () (x)r(x) = (x)r () (x) () (x)q(x) = (x)q () (x). (36) If q(x) 6= 0, then (x) divides () (x)q(x), (0) implies that (x) divides () (x), which contradicts (8). If q(x) =0, then (0) requires (x) to be a nonzero constant, which again contradicts (8). The following lemma is a (stronger) counterpart of Theorem of [], but the proof is entirely different. Lemma (Degree Change Lemma). For fixed nonzero b(x) m(x) F [x] with deg b(x) < deg m(x), let () (x) be a minimal partial inverse of b(x) let r () (x) = b(x) () (x) modm(x). (37) Let () (x) F [x] be a nonzero polynomial of the smallest degree such that Then Proof: deg b(x) () (x) modm(x) < deg r () (x). (38) deg () (x) =degm(x) deg r () (x). (39) From Proposition 3, we have deg () (x) apple deg m(x) deg r () (x). (0) For the converse, assume that () (x) is a nonzero polynomial (of any degree) that satisfies (38), i.e., the degree of satisfies r () (x) = b(x) () (x) modm(x) () deg r () (x) < deg r () (x). () Multiplying (37) by () (x) () by () (x) yields Note that () (x)r () (x) () (x)r () (x) mod m(x). (3) deg () (x) deg () (x) () because () (x) is a minimal partial inverse (38). We thus have If deg () (x)+degr () (x) > deg () (x)+degr () (x). (5) then (3) reduces to deg () (x) < deg m(x) deg r () (x), (6) () (x)r () (x) = () (x)r () (x), (7) which contradicts (5). Thus (6) is not tenable deg () (x) deg m(x) deg r () (x). (8) Corollary. For b(x), m(x), () (x), r () (x) as in Lemma, let () (x) be a nonzero polynomial (of any degree) such that (38) holds deg () (x) =degm(x) deg r () (x). (9) Then () (x) is (also) a minimal partial inverse of b(x). Lemma Corollary will be used in Section IV to prove the correctness of the partial-inverse algorithm, they will also be used in Appendix B. B. Irrelevant Coefficients Proposition 6 (Irrelevant Coefficients). In the partial-inverse problem, coefficients b of b(x) with coefficients m s of m(x) with <d deg m(x) (50) s apple d deg m(x) (5) have no effect on the solution (x). Proof: From (50) (0), we obtain +deg (x) <d, (5) which proves the first claim. As for the second claim, we begin by writing b(x) (x) modm(x) =b(x) (x) m(x)q(x) (53) for some q(x) F [x] with deg q(x) < deg (x). (5) (If q(x) 6= 0, (5) follows from considering the leading coefficient of the right-h side of (53) with deg b(x) < deg m(x)). From (5), (5), (0), we then obtain s +degq(x) <d. (55) The second claim then follows from (53) (55).

5 5 Irrelevant coefficients according to Proposition 6 may be set to zero without affecting the solution (x). In fact, such coefficients can be stripped off as follows. Proposition 7 (Reduced Partial-Inverse Problem). Consider a partial-inverse problem with s =d deg m(x) > 0. (56) Define the polynomials b(x) m(x) with b m = b+s (57) = m+s (58) for 0. Then the modified partial-inverse problem with b(x), m(x), d replaced by b(x), m(x), d = d s, respectively, has the same solution (x) as the original partialinverse problem. In addition, we have b(x) (x)divm(x) = b(x) (x)div m(x). (59) Note that the reduced partial-inverse problem satisfies deg m(x) = d. (60) Proof of Proposition 7: Consider an auxiliary partial-inverse problem with b(x) replaced by x s b(x) m(x) replaced by x s m(x) ( d unchanged). This auxiliary problem has the same solution as the original problem by Proposition 6. The equivalence of this auxiliary problem with the modified problem is obvious from (53). C. Monomialized Partial-Inverse Problem The partial-inverse problem with general m(x) (as stated in Section I) can be transformed into another partial-inverse problem where () is replaced by deg b(x) (x) modx < (6) with =degm(x) d with b(x) as defined below. The precise statement is given as Theorem below. Note that we need the additional condition d<deg m(x). (6) Note also that the transformed partial-inverse problem (6) is reduced in the sense of Proposition 7. The polynomial b(x) in (6) is defined as follows. Let thus = n n =degm(x) (63) d>0, define b(x) = x n b(x ). (6) Moreover, define m(x) = x n m(x ), let w(x) be the inverse of m(x) modx in F [x]/x ; this inverse exists because m(0) 6= 0, which implies that m(x) is relatively prime to x. Further, let a(x) = b(x)w(x) (65) finally s(x) = a(x) modx = X =0 a x (66) b(x) = x s(x ). (67) Theorem (Monomialized Partial-Inverse Problem). Consider the partial-inverse problem as stated in Section I with the additional condition (6), let = degm(x) d. Then the modified partial-inverse problem where b(x), m(x), d are replaced by b(x) (as defined above), x,, respectively, has the same solution (x) as the original partialinverse problem. In addition, we have b(x) (x)divm(x) = b(x) (x)divx. (68) The computation of b(x) requires the computation of the polynomial w(x) (= the inverse of m(x) modx in F [x]/x, as defined above), which can be computed either by the extended Euclidean algorithm or by the algorithms of Section IV. Proof of Theorem : Consider the original partial-inverse problem let (x) be its solution (which is unique up to a nonzero scale factor). Let r(x) = b(x) (x) modm(x), (69) where deg r(x) <d. We then write for some (unique) q(x) with r(x) =b(x) (x) q(x)m(x) (70) deg q(x) < deg (x) apple, (7) where the second inequality follows from Proposition 3. Note also that gcd (x),q(x) = by Theorem Proposition. Now let (x) q(x) r(x) = x (x ) (7) = x q(x ) (73) = x d r(x ). (7) Noting that + d =n +, reversing (70) yields first x +d r(x )=x n+ b(x ) (x ) q(x )m(x ) (75) then x r(x) =b(x) (x) q(x)m(x). (76) We thus obtain further b(x) (x) q(x)m(x) mod x (77) w(x)b(x) (x) q(x) mod x (78) where w(x) (as defined above) is the inverse of m(x) mod x. With (66), we then have s(x) (x) q(x) mod x. (79)

6 6 Note that (7) implies both deg (x) apple deg q(x) <. We now write (79) as s(x) (x) =p(x)x + q(x) (80) for some (unique) p(x) with deg p(x) < deg (x) apple, let p(x) = x p(x ). (8) By substituting x for x in (80) multiplying both sides by x 3, we obtain from which we have b(x) (x) =x q(x)+p(x), (8) deg b(x) (x) modx <. (83) It then follows from Theorem that (x) is a minimal partial inverse of b(x) (with respect to x ). We still have to show that (x) is the solution of the partialinverse problem (6). Let () (x) be any nonzero polynomial such that r () (x) = b(x) () (x) modx (8) satisfies deg r () (x) <. Multiplying p(x) = b(x) (x) mod x by () (x) (8) by (x) yields p(x) () (x) r () (x) (x) mod x. (85) Note that deg r () (x) (x) < by (7). If deg () (x) < deg (x), then (85) becomes p(x) () (x) =r () (x) (x) (86) deg r () (x) < deg p(x), contradicting the fact that (x) is a minimal partial inverse of b(x). Finally, we note that (68) is obvious from (8). IV. PARTIAL-INVERSE ALGORITHMS We now consider algorithms to solve the partial-inverse problem as stated in Section I. We give both a (new) basic algorithm, which resembles the Berlekamp Massey algorithm, two variations of it; the first variation is entirely new the second variation may be viewed as a version of the Euclidean algorithm. A. Basic Algorithm (Reverse Berlekamp Massey Algorithm) The basic algorithm is stated as Algorithm in the framed box. Note that lines 6 simply swap () (x) with () (x), d with d, apple with apple. The only actual computations are in lines 7 8. The heart of the algorithm is line 7, which is explained by the following lemma. Lemma (Remainder Decreasing Lemma). Let m(x) be a polynomial over F with deg m(x). For further polynomials b(x), () (x), () (x) F [x], let Algorithm : Basic Partial-Inverse Algorithm (reverse Berlekamp Massey algorithm) Input: b(x), m(x), d as in the problem statement. Output: (x) as in the problem statement. if deg b(x) <dbegin return (x) := 3 end () (x) :=0, d := deg m(x), apple := lcf m(x) 5 () (x) :=, d := deg b(x), apple := lcf b(x) 6 loop begin 7 () (x) :=apple () (x) apple x d d () (x) 8 d := deg b(x) () (x) modm(x) 9 if d <dbegin 0 return (x) := () (x) end apple := lcf b(x) () (x) modm(x) 3 if d <d begin ( () (x), () (x)) := ( () (x), () (x)) 5 (d,d ):=(d,d ) 6 (apple,apple ):=(apple,apple ) 7 end 8 end See also the refinements (Algorithms.A.B) below. Algorithm.A: Lines 8 of Algorithm can be implemented as follows: repeat d := d 3 if d <dbegin return (x) := () (x) 5 end 6 apple := coefficient of x d in b(x) () (x) modm(x) 7 until apple 6=0 Algorithm.B: In the special case where m(x) =x, line 6 of Algorithm.A amounts to 3 apple := b d () 0 + b d () b d () with =deg () (x) where b =0for <0. In another special case where m(x) = x n, line 6 becomes 5 apple := b d () 0 + b [d ] () b [d ] () with b [] = b mod n. r () (x) = b(x) () (x) modm(x), (87) r () (x) = b(x) () (x) modm(x), (88)

7 7 d =degr () (x), apple =lcfr () (x), d =degr () (x), apple = lcf r () (x), assume d d 0. Then satisfies (x) = apple () (x) apple x d d () (x) (89) deg b(x) (x) modm(x) <d. (90) Proof: From (89), we obtain r(x) = b(x) (x) modm(x) (9) = apple r () (x) apple x d d r () (x) (9) by the natural ring homomorphism F [x]! F [x]/m(x). It is then obvious from (9) that deg r(x) < deg r () (x) =d. In consequence, the value of d is reduced in every execution of line 8 (cf. Section IV-F). Note that lines 8 do not require the computation of the entire polynomial b(x) () (x) modm(x). Indeed, lines 8 can be replaced by Algorithm.A (see box). The specialization to m(x) =x to m(x) =x n (as in (09), see Section V) is given in Algorithm.B (see box). In these special cases, Algorithm looks very much like, is as efficient as, the Berlekamp Massey algorithm [] (but the polynomial b(x) is processed in the reverse order). Theorem 3 (Partial-Inverse Algorithm). Algorithm returns the solution of the partial inverse problem. The proof will be given in Section IV-F. More generally, we have Theorem (All Minimal Partial Inverses). For fixed nonzero b(x) m(x) F [x] with deg b(x) < deg m(x), run the algorithm with d =0. Then () (x) between lines 3 runs through all minimal partial inverses of b(x) of degree larger than zero except the final output (x) as in (). The proof will be given in Section IV-F. (In consequence, the algorithm can also be used to compute all Padé approximants of b(x), cf. Appendix A.) The complexity of the algorithm is determined by Theorem 5 (Complexity). The number N it of executions of line 6 in Algorithm.A is bounded by N it apple deg m(x) d +deg (x) (93) apple (deg m(x) d), (9) where (x) is the solution of the partial-inverse problem. The bound (93) is proved in Section IV-F. The bound (9) then follows from Proposition 3. In the special case of Algorithm.B, we thus obtain the complexity O ( d). In the general case, the same complexity is obtained with the algorithm of the next section. Algorithm : Quotient Saving Partial-Inverse Algorithm Input: b(x), m(x), d as in the problem statement. Output: (x) as in the problem statement. if deg b(x) <dbegin return (x) := 3 end () (x) :=0, d := deg m(x), apple := lcf m(x) 5 () (x) :=, d := deg b(x), apple := lcf b(x) 6 Q () (x) :=, Q () (x) :=0 7 loop begin 8 () (x) :=apple () (x) apple x d d () (x) 9 Q () (x) :=apple Q () (x) apple x d d Q () (x) 0 repeat d := d if d <dbegin 3 return (x) := () (x) end 5 apple := P =0 b d () P =0 m d Q () 6 until apple 6=0 7 if d <d begin 8 ( () (x), () (x)) := ( () (x), () (x)) 9 (Q () (x),q () (x)) := (Q () (x),q () (x)) 0 (d,d ):=(d,d ) (apple,apple ):=(apple,apple ) end 3 end B. Quotient Saving Algorithm Algorithm (see box) is a variation of Algorithm that achieves a generalization of Algorithm.B to general m(x). To this end, we store update also the quotients Q () (x) Q () (x) defined by b(x) () (x) =Q () (x)m(x)+r () (x) (95) with r () (x) = b(x) () (x) modm(x). The coefficient of x d of r () (x) (line 6) can then be computed as X X apple := b d () m d Q () (96) =0 =0 with =deg () (x) =degq () (x), where both b =0 m =0for <0. All other quantities in the algorithm remain unchanged. From (95), we have deg Q () (x) < deg () (x). (97) The complexity of the algorithm is O ( d) with = deg m(x). C. Remainder Saving Algorithm Another variation of the basic partial-inverse algorithm is Algorithm 3 (see box), where we store update the remainders r () (x) r () (x) in (95). In consequence, the

8 8 Algorithm 3: Remainder Saving Partial-Inverse Alg. (a variation of a gcd algorithm) Input: b(x), m(x), d as in the problem statement. Output: (x) as in the problem statement. if deg b(x) <dbegin return (x) := 3 end () (x) :=0, d := deg m(x), apple := lcf m(x) 5 () (x) :=, d := deg b(x), apple := lcf b(x) 6 r () (x) :=m(x), r () (x) :=b(x) 7 loop begin 8 () (x) :=apple () (x) apple x d d () (x) 9 r () (x) :=apple r () (x) apple x d d r () (x) 0 d := deg r () (x) if d <dbegin return (x) := () (x) 3 end apple := lcf r () (x) 5 if d <d begin 6 ( () (x), () (x)) := ( () (x), () (x)) 7 (r () (x),r () (x)) := (r () (x),r () (x)) 8 (d,d ):=(d,d ) 9 (apple,apple ):=(apple,apple ) 0 end end Algorithm : Extended Euclidean Algorithm (with notation corresponding to Algorithm 3) Input: b(x), m(x), d as in the problem statement. Output: (x) as in the problem statement. r () (x) =m(x), () (x) =0, Q () (x) = r () (x) =b(x), () (x) =, Q () (x) =0 3 while deg r () (x) d begin q(x) :=r () (x)divr () (x) 5 r () (x) :=r () (x) q(x) r () (x) 6 () (x) := () (x) q(x) () (x) 7 Q () (x) :=Q () (x) q(x)q () (x) 8 (r (),r () ):=(r (),r () ) 9 ( (), () ):=( (), () ) 0 (Q (),Q () ):=(Q (),Q () ) end return (x) := () (x) computation of line 6 is unnecessary. All other quantities in the algorithm remain unchanged. The complexity of the algorithm is O ( d) with =degm(x). D. Recovering the Euclidean Algorithm Algorithm 3 may be viewed as a version of the extended Euclidean algorithm. To see this, the extended Euclidean algorithm is stated as Algorithm (see box). Lines 8 9 of Algorithm 3 may be viewed as implementating the polynomial operations in lines 6 of Algorithm (up to a scale factor). As stated, Algorithm solves the partial-inverse problem. The stard gcd algorithm is recovered by running the algorithm with d =0; when the algorithm stops, we have r () (x) = gcd m(x),b(x). (98) The polynomials Q () (x) Q () (x) in Algorithm are not actually needed for the partial-inverse problem (but they do correspond to the polynomials Q () (x) Q () (x) in Algorithm ). Note that, in contrast to Algorithm, Algorithm 3 requires no division (neither polynomial nor scalar). As mentioned in the Introduction, McEliece [9] showed that the Euclidean algorithm (Algorithm ) solves a modified Padé approximation problem that is equivalent to the partialinverse problem, see also [0, Sec. 5.7] Appendix A. With hindsight, Algorithms can thus be derived also from the Euclidean algorithm. E. An Example We illustrate Algorithms 3 with an example from [9]. Let F 3 = {0,, } be the field of integers modulo 3, b(x) = x 6 + x 5 x 3 + x + x +, m(x) = x 7. For simplicity, we set d =6. We first use Algorithm, with lines 8 as in Algorithm.A. In line, we have () (x) =0, d =7, apple =; in line 5, we have () (x) =, d =6, apple =. ) In the first loop iteration, we obtain () (x) = x after line 7, d =6after line, apple = b 5 = after line 6. Note that we compute line 6 via line 3; note also that () (x), d, apple remain unchanged, i.e., () (x) =, d =6, apple =. ) In the second loop iteration, we obtain () (x) =x + after line 7, d =5after line. The condition in line 3 then holds, Algorithm returns (x) =x+ in line. We next use Algorithm. Both lines 5 are the same as in Algorithm ; in line 6, we have Q () (x) = Q () (x) =0. ) In the first loop iteration, we have () (x) = x after line 8, Q () (x) =after line 9, d =6after line, apple = b 5 m 6 = b 5 = after line 5. Note that () (x), d, apple, Q () (x) remain unchanged, i.e., () (x) =, d =6, apple =, Q () (x) =0. ) In the second loop iteration, we obtain () (x) =x + after line 8, Q () (x) = after line 9, d = 5 after line. The condition in line then holds, Algorithm returns (x) =x + in line 3. Finally, we use Algorithm 3. Both lines 5 are the same as in Algorithm ; in line 6, we have r () (x) =x 7 r () (x) = x 6 + x 5 x 3 + x + x +. ) In the first loop iteration, we have () (x) = x after line 8, r () (x) = x 6 + x x 3 x x after line 9, d =6after line 0, apple = after line. Note

9 9 Algorithm 5: Basic Partial-Inverse Algorithm Restated if deg b(x) <dbegin return (x) := 3 end () (x) :=0, d := deg m(x), apple := lcf m(x) 5 () (x) :=, d := deg b(x), apple := lcf b(x) 6 loop begin Assertions: d >d d (A.) deg () (x) =degm(x) d (A.) > deg () (x) (A.3) () (x) is a minimal partial inverse (A.) 7 repeat 8 () (x) :=apple () (x) apple x d d () (x) Assertions: deg(b(x) () (x) modm(x)) <d (A.5) deg () (x) =degm(x) d (A.6) > deg () (x) (A.7) 9 d := deg b(x) () (x) modm(x) 0 if d <dbegin Assertion: () (x) is a min. partial inverse (A.8) return (x) := () (x) end 3 apple := lcf b(x) () (x) modm(x) until d <d Assertion: () (x) is a minimal partial inverse 5 ( () (x), () (x)) := ( () (x), () (x)) 6 (d,d ):=(d,d ) 7 (apple,apple ):=(apple,apple ) 8 end (A.9) that () (x), d, apple, r () (x) remain unchanged, i.e., () (x) =, d =6, apple =, r () (x) = x 6 + x 5 x 3 + x + x +. ) In the second loop iteration, we obtain () (x) =x + after line 8, r () (x) =x 5 x x x + after line 9, d =5after line 0. The condition in line then holds, Algorithm 3 returns (x) =x + in line. F. Proofs We now proceed to prove Theorems 3 5. (Algorithms 3 are easy modifications of Algorithm do not require an extra proof.) Proof of Theorems 3 : We begin by restating Algorithm with added assertions as Algorithm 5 (see box). Note the added inner repeat loop (lines 7 ), which does not change the algorithm but helps with the proof. Throughout the algorithm (except at the very beginning, before the first execution of lines 9 3), d, d, apple, apple are defined as in Lemma, i.e., d =degr () (x), apple =lcfr () (x), d =degr () (x), apple =lcfr () (x) for r () (x) r () (x) as in (87) (88). Assertions (A.) (A.) are easily verified, both from the initialization from (A.6), (A.7), (A.9). As for (A.5), after the very first execution of line 8, we still have d =degm(x) (from line ), which makes (A.5) obvious. For all later executions of line 8, (A.5) follows from Lemma. As for (A.6) (A.7), we note that line 8 changes the degree of () (x) as follows: Upon entering the repeat loop, line 8 increases the degree of () to deg () (x)+d d =degm(x) d (99) > deg () (x), (00) which follows from (A.) (A.3). Subsequent executions of line 8 without leaving the repeat loop (i.e., without executing lines 5 7) do not change the degree of () (x). (This follows from the fact that d is smaller than in the first execution while () (x), d, apple 6=0remain unchanged.) Assertion (A.9) follows from Corollary, which applies because d < d (A.6). Because of (A.), the same argument applies also to (A.8). We have thus proved Theorem 3, Theorem is obvious from this discussion. Proof of Theorem 5: We refer to Algorithm with lines 8 replaced by Algorithm.A, we assume deg b(x) d. For the proof, we augment the algorithm with the two additional variables N () it N () it, which are both initialized to zero swapped whenever () () are swapped. Moreover, N () it is incremented in every execution of line 6. When the algorithm stops, we have as well as N it = N () it + N () it (0) N () it apple deg m(x) d (0) N () it apple deg m(x) d (03) =deg () (x), (0) where d is the value of d before the last swap, where the second step follows from Lemma. G. Concluding Remarks for Section IV We have proposed three partial-inverse algorithms: a new basic version (the reverse Berlekamp Massey algorithm) two variations of it. The first variation (the quotient saving algorithm) is entirely new while the second variation (the remainder saving algorithm) may be viewed as a variation of the Euclidean gcd algorithm. The relative attractivity of these algorithms depends on the particulars of the application. The easy transition between Algorithm Algorithm 3 is a new contribution to the substantial body of literature

10 0 connecting the Euclidean algorithm with the Berlekamp Massey algorithm [] [9]. Finally, we remark that any of the proposed algorithms can be made asymptotically faster by stard techniques for asymptotically fast polynomial multiplication division as in [0]. However, such techniques are outside the scope of this paper. V. DECODING REED SOLOMON CODES Decoding Reed Solomon codes (up to half the minimum distance) can be reduced in several ways to the partial-inverse problem of Section I. (The extension to decoding interleaved Reed Solomon codes beyond half the minimum distance as in [5], [6] is beyond the scope of this paper.) We will also point out several interpolation methods, some of which are (partly or entirely) new as well. A. Reed Solomon Codes Let F be a finite field let 0,..., n be n different elements of F. Let ny m(x) = (x ), (05) =0 let F [x]/m(x) be the ring of polynomials modulo m(x), let be the evaluation mapping : F [x]/m(x)! F n : a(x) 7! a( 0 ),...,a( n ), (06) which is a ring isomorphism. A Reed Solomon code with blocklength n dimension k may be defined as {c =(c 0,...,c n ) F n :deg (c) <k}. (07) The stard definition of Reed Solomon codes requires, in addition, that = for =0,...,n, (08) where F is a primitive n-th root of unity. This additional condition implies m(x) =x n (09) turns into a discrete Fourier transform [6]. However, (08) (09) will not be required below. In particular, the set { 0,..., n } will be permitted to contain 0. In general, the inverse mapping can be computed by Lagrange interpolation or according to the Chinese remainder theorem. (For the latter, see also Section VI [].) B. Error Locator Polynomial Interpolation The stard decoding problem can be stated as follows. Let y =(y 0,...,y n ) F n be the received word, which we wish to decompose into y = c + e (0) where c is a codeword where the Hamming weight of e =(e 0,...,e n ) F n is as small as possible. Let C(x) = (c), analogously E(x) = (e) Y (x) = (y). Clearly, we have deg C(x) <k deg E(x) < deg m(x) =n. For any e F n, we define the error locator polynomial Y e (x) = (x ). () {0,...,n } e 6= 0 Clearly, deg e (x) =w H (e) E(x) e (x) =Q e (x)m(x) () for some nonzero Q e (x) F [x]. (In the literature, the error locator polynomial is usually defined with (x ) in () replaced by ( x), which requires 6= 0, cf. Appendix C.) The heart of many decoding methods is an algorithm for computing an estimate of the error locator polynomial. If e (x) is known, the polynomial C(x) /or the codeword c can be recovered in many different ways; in particular, we can use Propositions 8, 9, or below. Proposition is stard; the idea of Proposition 8 was implicitly used in [], [], but explicitly stated only in [], []; Proposition 9 appears to be entirely new. Proposition 8 (Multiply-Divide Interpolation). If (x) = (x) e (x) for some nonzero (x) F [x] deg (x) apple n k, then thus Proof: Y (x) (x) modm(x) =C(x) (x) (3) C(x) = Y (x) (x) modm(x) (x) Assume that (x) has the stated properties. Then Y (x) (x) modm(x) () = C(x) (x) mod m(x)+ E(x) (x) mod m(x) (5) = C(x) (x), (6) where the second term in (5) vanishes because of (). In the special case where m(x) = x n, computing the numerator in () amounts to a cyclic convolution. Proposition 9 (Div-Mod Interpolation). Let (x) = (x) e (x) for some nonzero (x) F [x] such that (x) divides m(x) deg (x) apple n k. Then C(x) =Y (x) mod m(x)/ (x). (7) Note that (x) = e (x) (with 6= 0) qualifies, but (x) is allowed to have additional single roots in the set { 0,..., n }. Proof of Proposition 9: The polynomial m(x) = m(x)/ (x) (8) is a product of linear factors (x ) (up to a nonzero scale factor) with { 0,..., n } such that e = E( ) =

11 0. Thus m(x) divides E(x). Moreover, it is obvious that deg m(x) k>deg C(x), thus Y (x) mod m(x) = C(x)+E(x) mod m(x) (9) = C(x). (0) If we need to recover the actual codeword c (rather than just the polynomial C(x)), interpolation according to Propositions 8 or 9 requires the additional computation of c = C(x). Alternatively, it may be attractive to compute the error pattern e (= y c) by Forney s formula [6], [8] or by the Horiguchi Koetter formula [7], []. The latter will be adapted to our setting in Section V-D. For the former, we need the polynomial Q e (x) from (), or a generalization of it, which can be computed as follows. Proposition 0 (Generalized Error Locator Equation). Let (x) = (x) e (x) for some nonzero (x) F [x]. If deg (x) apple n k, then with Proof: E(x) (x) =Q(x)m(x) () Q(x) = Y (x) (x)divm(x). () From () (3), we have Y (x) (x) =Q(x)m(x)+C(x) (x) (3) thus Q(x)m(x) =E(x) (x). The components of e =(e 0,...,e n ) can be computed from () or from () using L Hôpital s rule, which is known as Forney s Formula [6], [8]. Specifically: Proposition (Forney s Formula). Let (x) = (x) e (x) for some nonzero (x) F [x]. Assume deg (x) apple n k assume that (x) has no repeated roots in the set { 0,..., n }. Then, ( 0 if ( ) 6= 0 e = Q( )m 0 ( ) () 0 ( ) if ( ) =0 for =0,,...,n, with Q(x) as in (), where 0 (x) m 0 (x) denote the formal derivatives of (x) m(x), respectively. Note that () works for general m(x), m 0 ( ) can be pre-computed. For example, for m(x) =x F x, we have m 0 ( ) = ; for the stard case (08) with m(x) =x n, we have m 0 ( ) =(n mod p), where p is the characteristic of F. The quantity Q( ) in () can be obtained without explicit computation of Q(x), cf. Theorem 9 below. Any of the Propositions 8, 9, or can be used for erasures-only decoding where (x) is given a priori. For this application, it is essential that ( ) = 0 does not imply e 6= 0, i.e., (x) may be a nontrivial multiple of e (x). We now turn to the stard decoding problem (0). Joint errors--erasures decoding will be addressed in Appendix E. C. Key Equations An estimate of the error locator polynomial can be found via the stard key equation, which will be addressed in Appendix C. However, in the context of this paper, it is more natural to begin with the following alternative key equation. The direct part is well known from [], but the converse part is new. Theorem 6 (Alternative Key Equation). If w H (e) apple n k, then the error locator polynomial e (x) satisfies deg Y (x) e (x) modm(x) <k+deg e (x) (5) apple n (n k)/. (6) Conversely, for any y e F n t R with w H (e) apple t apple (n k)/, (7) if some nonzero (x) F [x] with deg (x) apple t satisfies deg Y (x) (x) modm(x) <n t, (8) then (x) is a multiple of e (x). The proof is given below. In particular, for t =(n k)/, we obtain the following corollary, which was implicitly assumed in [], but does not seem to be actually proved in the literature. Corollary. If w H (e) apple n k, then e(x) is the nonzero polynomial of the smallest degree (unique up to a scale factor) that satisfies deg Y (x) (x) modm(x) < n + k (9) Finding e (x) from (9) is obviously a partial-inverse problem. Proof of Theorem 6: (5) is immediate from (3), (6) follows from k +w H (e) apple k + n k = n+k. As for the converse, assume (7), (8), deg (x) apple t consider Y (x) (x) modm(x) =C(x) (x)+e(x) (x) modm(x). (30) Under the stated assumptions, the degree of the left-h side of (30) is smaller than n t also It follows that Now write deg deg C(x) (x) <k+ t apple n t. (3) E(x) (x) modm(x) <n t. (3) E(x) (x) =Q(x)m(x)+E(x) (x) modm(x) (33) according to the polynomial division theorem. But E(x) ( thus E(x) (x)) has at least n w H (e) n t zeros in the set { 0,,..., n }. It follows that E(x) (x) modm(x) has also at least n t zeros (in this set), which contradicts (3) unless E(x) (x) modm(x) =0. (3)

12 But any nonzero polynomial (x) that satisfies (3) is a multiple of the error locator polynomial (). We have established that finding the error locator polynomial is a partial-inverse problem. It then follows from Proposition 6 that coefficients Y of Y (x) with < k are irrelevant can be set to zero; the remaining coefficients Y are syndromes since C =0 Y = E for k. Theorem 7 (Reduced Key Equation). Let b(x) = Y k + Y k+ x Y n x n k (35) m(x) = m k + m k+ x m n x n k. (36) If w H (e) apple (n k)/, then (x) = e (x) is a nonzero polynomial of the smallest degree (unique up to a scale factor) that satisfies deg b(x) (x) mod m(x) < n k (37) Moreover, b(x) e (x)div m(x) =Y (x) e (x)divm(x). (38) Proof: The proof is immediate from Corollary Proposition 7 with d =(n + k)/ s = k. Eq. (38) can be used, e.g., in Forney s formula () with Q(x) as in (38). In the important special cases where m(x) =x n (as in (09)) or m(x) =x n x (for singly extended Reed Solomon codes), we have m(x) =x n k, (37) looks like a stard key equation. The same effect can be achieved for general m(x) by the following theorem. Theorem 8 (Monomialized Key Equation). Let b(x) be the polynomial (67) for b(x) =Y (x) =(n k)/. If w H (e) apple, then (x) = e (x) is a nonzero polynomial of the smallest degree that satisfies deg b(x) (x) modx n k < n k. (39) Moreover, b(x) e (x)divx n k = Y (x) e (x)divm(x). (0) Proof: From Corollary Theorem with d = n t. Theorem 8 is similar in effect, but slightly more general than, the procedure described in [8, Section 6.3]. In particular, it works also for singly extended Reed Solomon codes. D. Decoding Algorithms Determining the error locator e (x) from any of the key equations (9), (37), or (39) is a partial-inverse problem. We thus arrive at the following general decoding procedure: ) Compute Y (x) = (y). ) Solve any of the key equations (9), (37), or (39) by k, any of the algorithms of Section IV. If w H (e) apple n then the polynomial (x) returned by the algorithm equals e (x), up to a scale factor. 3) Complete decoding, e.g., by means of Propositions 8, 9 or, or by other means as described below. Obviously, this general procedure encompasses a variety of specific algorithms, some of which will be discussed below. In addition, there are many opportunities for detecting violations of the assumption w H (e) apple (n k)/. In particular, condition (5) can be checked. Alternatively, if (37) is used, then the condition deg b(x) (x) mod m(x) < deg (x) () can be checked. If () is used for interpolation, it should be checked whether (x) indeed divides Y (x) (x) modm(x); if Forney s formula (Proposition ) is used, it should be checked whether w H (e) =deg (x); etc. In Step, the number of iterations in the partial-inverse algorithm is upper bounded by (n k)/ +w H (e) by Theorem 5; this is smaller than the number of iterations in the Berlekamp Massey algorithm, especially if w H (e) is small. We now briefly discuss a number of specific decoding algorithms, i.e., specific choices in Steps 3. First, we consider algorithms that recover the polynomial C(x) or E(x); then we consider algorithms that recover the codeword c (or the error pattern e) directly. ) Shiozaki Gao Decoding: Use Algorithm 3 to solve (9). Step 3 is then naturally carried out via C(x) =r () (x)/ (x), () which is immediate from r () (x) =Y (x) (x) modm(x) Proposition 8. The resulting decoding algorithm essentially coincides with the (essentially identical) algorithms by Shiozaki [] Gao [], except that [] [] both use Algorithm instead of Algorithm 3. (Shiozaki [] [] propose the same algorithm, but very different proofs. Yet another proof of this algorithm is given in [] [3].) ) Reverse Berlekamp Massey Decoding for Cyclic Reed Solomon Codes: Let m(x) =x n use Algorithm (with the refinements in Algorithms.A.B) to solve any of the key equations (9), (37), or (39). Two natural methods for Step 3 are as follows. The first method is to use Proposition 8. Computing r(x) = Y (x) (x) mod(x n ) (the numerator in ()) amounts to the cyclic convolution X r = Y [ i] i (3) i=0 with =deg (x). (The computation (3) may be viewed as continuing line 6 of Algorithm.A with frozen () (x) = (x).) A second method for Step 3 begins with (x)e(x) mod(x n ) = 0 () from (). Note that E = Y for k, E k,...,e 0 can be computed from () by the recursion E = X E i i (5) i=0

13 3 for = k +,k+,...,, where =deg (x). We then obtain C(x) =Y (x) E(x). (Analogous recursions for stard Berlekamp Massey decoding are given, e.g., in [6], [3].) 3) Using Algorithm : For general m(x), it may be attractive to use Algorithm to solve (37), to ask the algorithm to return also Q(x) = Q () (x). Two natural methods for Step 3 are as follows. The first method is to use Proposition 8 to compute the numerator r(x) in () from r(x) =Y (x) (x) Q(x)m(x). (6) (This computation may be viewed as continuing line 5 of Algorithm with frozen () (x) Q () (x).) A second method for Step 3 begins with E(x) (x) =Q(x)m(x) (7) from (38) Proposition 0, from which we obtain the recursion! E = X X E i i m i Q i (8) i=0 for = k +,k+,...,, where are the degrees of (x) m(x), respectively. ) Using Forney s Formula Horiguchi Koetter Interpolation: Assume now that we wish to recover not C(x), but the codeword c F n (or, equivalently, the error pattern e = y c). In this case, the following methods are often more attractive than first finding C(x) then computing c = C(x). Recall that we can use any of the algorithms of Section IV to solve any of the key equations (9), (37), or (39). If Algorithm is used, then the polynomial Q(x) from () is already available (as Q () (x)), so Forney s formula () can be applied directly. (This works for all three key equations due to (38) (0).) If Algorithms or 3 are used, Forney s formula () can be used without explicitly computing Q(x), as follows. i=0 Theorem 9 (Generalized Horiguchi Koetter Interpolation). If w H (e) apple n k ( ) =0, then with Q( ) = () ( ) = apple lcf (x) lcf m(x) (9) (50) where (x) = () (x), () (x), apple are obtained from the partial-inverse algorithm (when it terminates). Theorem 9 is a nontrivial adaptation generalization (with an entirely different proof) of the original idea by Horiguchi, which is restricted to Berlekamp Massey decoding [7], []; see also Appendix C. Proof of Theorem 9: We assume w H (e) apple (n k)/, so that () (x) = (x) = e (x) (up to a scale factor) when the partial-inverse algorithm terminates. Also, both () (x) () (x) are minimal partial inverses deg () (x) =degm(x) deg b(x) () (x) modm(x) (5) by Lemma. From Lemma 3 (eq. (9)) in Appendix B, we then have (x)q () (x) () (x)q(x) =, (5) the theorem follows. VI. APPLICATION TO POLYNOMIAL REMAINDER CODES Polynomial remainder codes [], [0] [] are a class of codes that include Reed Solomon codes as a special case. It is well known that polynomial remainder codes can be decoded by the Euclidean algorithm, but these codes have not been amenable to Berlekamp Massey decoding. In this section, we briefly outline how decoding via the alternative key equation (Theorem 6 in Section V-C) generalizes to polynomial remainder codes, which can thus be decoded by all the algorithms of Section IV. Let m 0 (x),...,m n (x) F [x] be relatively prime polynomials let m(x) = Q n =0 m(x). Let R m = F [x]/m(x) denote the ring of polynomials modulo m(x) let R m = F [x]/m(x). The mapping (06) is generalized to the ring isomorphism : R m! R m0... R mn : a(x) 7! (a) = 0 (a),..., n (a) (53) with (a) = a(x) modm(x). Following [], a polynomial remainder code may be defined as {c =(c 0,...,c n ) R m0... R mn :deg (c) <K} (5) where kx K = deg m(x) (55) =0 for some fixed k, 0 <k<n. We also define nx N =degm(x) = deg m(x). (56) =0 As in Section V, let y = c + e be the received word with codeword c error e, let C(x) = (c), E(x) = (e), Y (x) = (y). Clearly, deg C(x) <K deg E(x) <N. For such codes, the error locator polynomial Y e (x) = m(x) (57) {0,...,n } e 6= 0 the error factor polynomial [] E (x) = m(x)/ gcd E(x),m(x) (58) do not, in general, coincide. Note that E (x) is a nonzero polynomial of the smallest degree such that E(x) E (x) modm(x) =0. (59) If all moduli m(x) are irreducible, then E (x) = e (x) for some nonzero F. In any case, deg E (x) apple deg e (x). We then have the following generalizations of Propositions 8 9. (The former was first stated in [], [].)

Computable Euclidean Domains

Computable Euclidean Domains Computable Euclidean Domains Asher M. Kach (Joint Work with Rod Downey and with Paul Ellis and Reed Solomon) Southern Wisconsin Logic Colloquium 9 October 2012 Asher M. Kach Computable Euclidean Domains

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

CS321: Computer Networks Error Detection and Correction

CS321: Computer Networks Error Detection and Correction CS321: Computer Networks Error Detection and Correction Dr. Manas Khatua Assistant Professor Dept. of CSE IIT Jodhpur E-mail: manaskhatua@iitj.ac.in Error Detection and Correction Objective: System must

More information

Scan Scheduling Specification and Analysis

Scan Scheduling Specification and Analysis Scan Scheduling Specification and Analysis Bruno Dutertre System Design Laboratory SRI International Menlo Park, CA 94025 May 24, 2000 This work was partially funded by DARPA/AFRL under BAE System subcontract

More information

Let denote the number of partitions of with at most parts each less than or equal to. By comparing the definitions of and it is clear that ( ) ( )

Let denote the number of partitions of with at most parts each less than or equal to. By comparing the definitions of and it is clear that ( ) ( ) Calculating exact values of without using recurrence relations This note describes an algorithm for calculating exact values of, the number of partitions of into distinct positive integers each less than

More information

CUT VERTICES IN ZERO-DIVISOR GRAPHS OF FINITE COMMUTATIVE RINGS

CUT VERTICES IN ZERO-DIVISOR GRAPHS OF FINITE COMMUTATIVE RINGS CUT VERTICES IN ZERO-DIVISOR GRAPHS OF FINITE COMMUTATIVE RINGS M. AXTELL, N. BAETH, AND J. STICKLES Abstract. A cut vertex of a connected graph is a vertex whose removal would result in a graph having

More information

MOST attention in the literature of network codes has

MOST attention in the literature of network codes has 3862 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 56, NO. 8, AUGUST 2010 Efficient Network Code Design for Cyclic Networks Elona Erez, Member, IEEE, and Meir Feder, Fellow, IEEE Abstract This paper introduces

More information

Calculation of extended gcd by normalization

Calculation of extended gcd by normalization SCIREA Journal of Mathematics http://www.scirea.org/journal/mathematics August 2, 2018 Volume 3, Issue 3, June 2018 Calculation of extended gcd by normalization WOLF Marc, WOLF François, LE COZ Corentin

More information

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize. Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject

More information

AXIOMS FOR THE INTEGERS

AXIOMS FOR THE INTEGERS AXIOMS FOR THE INTEGERS BRIAN OSSERMAN We describe the set of axioms for the integers which we will use in the class. The axioms are almost the same as what is presented in Appendix A of the textbook,

More information

Math Introduction to Advanced Mathematics

Math Introduction to Advanced Mathematics Math 215 - Introduction to Advanced Mathematics Number Theory Fall 2017 The following introductory guide to number theory is borrowed from Drew Shulman and is used in a couple of other Math 215 classes.

More information

Multi-Cluster Interleaving on Paths and Cycles

Multi-Cluster Interleaving on Paths and Cycles Multi-Cluster Interleaving on Paths and Cycles Anxiao (Andrew) Jiang, Member, IEEE, Jehoshua Bruck, Fellow, IEEE Abstract Interleaving codewords is an important method not only for combatting burst-errors,

More information

Know the Well-ordering principle: Any set of positive integers which has at least one element contains a smallest element.

Know the Well-ordering principle: Any set of positive integers which has at least one element contains a smallest element. The first exam will be on Wednesday, September 22, 2010. The syllabus will be sections 1.1 and 1.2 in Lax, and the number theory handout found on the class web site, plus the handout on the method of successive

More information

Lecture 19. Lecturer: Aleksander Mądry Scribes: Chidambaram Annamalai and Carsten Moldenhauer

Lecture 19. Lecturer: Aleksander Mądry Scribes: Chidambaram Annamalai and Carsten Moldenhauer CS-621 Theory Gems November 21, 2012 Lecture 19 Lecturer: Aleksander Mądry Scribes: Chidambaram Annamalai and Carsten Moldenhauer 1 Introduction We continue our exploration of streaming algorithms. First,

More information

SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION

SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION CHAPTER 5 SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION Copyright Cengage Learning. All rights reserved. SECTION 5.5 Application: Correctness of Algorithms Copyright Cengage Learning. All rights reserved.

More information

Winning Positions in Simplicial Nim

Winning Positions in Simplicial Nim Winning Positions in Simplicial Nim David Horrocks Department of Mathematics and Statistics University of Prince Edward Island Charlottetown, Prince Edward Island, Canada, C1A 4P3 dhorrocks@upei.ca Submitted:

More information

Star Decompositions of the Complete Split Graph

Star Decompositions of the Complete Split Graph University of Dayton ecommons Honors Theses University Honors Program 4-016 Star Decompositions of the Complete Split Graph Adam C. Volk Follow this and additional works at: https://ecommons.udayton.edu/uhp_theses

More information

Integers and Mathematical Induction

Integers and Mathematical Induction IT Program, NTUT, Fall 07 Integers and Mathematical Induction Chuan-Ming Liu Computer Science and Information Engineering National Taipei University of Technology TAIWAN 1 Learning Objectives Learn about

More information

Cryptology complementary. Finite fields the practical side (1)

Cryptology complementary. Finite fields the practical side (1) Cryptology complementary Finite fields the practical side (1) Pierre Karpman pierre.karpman@univ-grenoble-alpes.fr https://www-ljk.imag.fr/membres/pierre.karpman/tea.html 2018 03 15 Finite Fields in practice

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

EC500. Design of Secure and Reliable Hardware. Lecture 9. Mark Karpovsky

EC500. Design of Secure and Reliable Hardware. Lecture 9. Mark Karpovsky EC500 Design of Secure and Reliable Hardware Lecture 9 Mark Karpovsky 1 1 Arithmetical Codes 1.1 Detection and Correction of errors in arithmetical channels (adders, multipliers, etc) Let = 0,1,,2 1 and

More information

MITOCW watch?v=kvtlwgctwn4

MITOCW watch?v=kvtlwgctwn4 MITOCW watch?v=kvtlwgctwn4 PROFESSOR: The idea of congruence was introduced to the world by Gauss in the early 18th century. You've heard of him before, I think. He's responsible for some work on magnetism

More information

Ch. 7 Error Detection and Correction

Ch. 7 Error Detection and Correction Ch. 7 Error Detection and Correction Error Detection and Correction Data can be corrupted during transmission. Some applications require that errors be detected and corrected. 2 1. Introduction Let us

More information

INTERLEAVING codewords is an important method for

INTERLEAVING codewords is an important method for IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 51, NO. 2, FEBRUARY 2005 597 Multicluster Interleaving on Paths Cycles Anxiao (Andrew) Jiang, Member, IEEE, Jehoshua Bruck, Fellow, IEEE Abstract Interleaving

More information

INPUT TO (TM/TC) CHANNEL CODING GREEN BOOK(s) AS DISCUSSED AT THE MEETING IN CRYSTAL CITY, VA (USA) on 12 March Frame Error Control Field

INPUT TO (TM/TC) CHANNEL CODING GREEN BOOK(s) AS DISCUSSED AT THE MEETING IN CRYSTAL CITY, VA (USA) on 12 March Frame Error Control Field INUT TO (TM/TC) CHANNEL CODING GREEN BOOK(s) AS DISCUSSED AT THE MEETING IN CRYSTAL CITY, VA (USA) on 12 March 28 --------- Frame Error Control Field [Reply to comment GC2] - Section 8.4.2 of CCSDS 13.1-G-1

More information

Diversity Coloring for Distributed Storage in Mobile Networks

Diversity Coloring for Distributed Storage in Mobile Networks Diversity Coloring for Distributed Storage in Mobile Networks Anxiao (Andrew) Jiang and Jehoshua Bruck California Institute of Technology Abstract: Storing multiple copies of files is crucial for ensuring

More information

DISCRETE MATHEMATICS

DISCRETE MATHEMATICS DISCRETE MATHEMATICS WITH APPLICATIONS THIRD EDITION SUSANNA S. EPP DePaul University THOIVISON * BROOKS/COLE Australia Canada Mexico Singapore Spain United Kingdom United States CONTENTS Chapter 1 The

More information

STANLEY S SIMPLICIAL POSET CONJECTURE, AFTER M. MASUDA

STANLEY S SIMPLICIAL POSET CONJECTURE, AFTER M. MASUDA Communications in Algebra, 34: 1049 1053, 2006 Copyright Taylor & Francis Group, LLC ISSN: 0092-7872 print/1532-4125 online DOI: 10.1080/00927870500442005 STANLEY S SIMPLICIAL POSET CONJECTURE, AFTER M.

More information

6. Lecture notes on matroid intersection

6. Lecture notes on matroid intersection Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm

More information

Boolean networks, local models, and finite polynomial dynamical systems

Boolean networks, local models, and finite polynomial dynamical systems Boolean networks, local models, and finite polynomial dynamical systems Matthew Macauley Department of Mathematical Sciences Clemson University http://www.math.clemson.edu/~macaule/ Math 4500, Spring 2017

More information

Line Graphs and Circulants

Line Graphs and Circulants Line Graphs and Circulants Jason Brown and Richard Hoshino Department of Mathematics and Statistics Dalhousie University Halifax, Nova Scotia, Canada B3H 3J5 Abstract The line graph of G, denoted L(G),

More information

Lecture 17. Lower bound for variable-length source codes with error. Coding a sequence of symbols: Rates and scheme (Arithmetic code)

Lecture 17. Lower bound for variable-length source codes with error. Coding a sequence of symbols: Rates and scheme (Arithmetic code) Lecture 17 Agenda for the lecture Lower bound for variable-length source codes with error Coding a sequence of symbols: Rates and scheme (Arithmetic code) Introduction to universal codes 17.1 variable-length

More information

FURTHER APPLICATIONS OF CLUTTER DOMINATION PARAMETERS TO PROJECTIVE DIMENSION

FURTHER APPLICATIONS OF CLUTTER DOMINATION PARAMETERS TO PROJECTIVE DIMENSION FURTHER APPLICATIONS OF CLUTTER DOMINATION PARAMETERS TO PROJECTIVE DIMENSION HAILONG DAO AND JAY SCHWEIG Abstract. We study the relationship between the projective dimension of a squarefree monomial ideal

More information

EXTREME POINTS AND AFFINE EQUIVALENCE

EXTREME POINTS AND AFFINE EQUIVALENCE EXTREME POINTS AND AFFINE EQUIVALENCE The purpose of this note is to use the notions of extreme points and affine transformations which are studied in the file affine-convex.pdf to prove that certain standard

More information

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings On the Relationships between Zero Forcing Numbers and Certain Graph Coverings Fatemeh Alinaghipour Taklimi, Shaun Fallat 1,, Karen Meagher 2 Department of Mathematics and Statistics, University of Regina,

More information

Component Connectivity of Generalized Petersen Graphs

Component Connectivity of Generalized Petersen Graphs March 11, 01 International Journal of Computer Mathematics FeHa0 11 01 To appear in the International Journal of Computer Mathematics Vol. 00, No. 00, Month 01X, 1 1 Component Connectivity of Generalized

More information

The Structure of Bull-Free Perfect Graphs

The Structure of Bull-Free Perfect Graphs The Structure of Bull-Free Perfect Graphs Maria Chudnovsky and Irena Penev Columbia University, New York, NY 10027 USA May 18, 2012 Abstract The bull is a graph consisting of a triangle and two vertex-disjoint

More information

2 Solution of Homework

2 Solution of Homework Math 3181 Name: Dr. Franz Rothe February 6, 2014 All3181\3181_spr14h2.tex Homework has to be turned in this handout. The homework can be done in groups up to three due February 11/12 2 Solution of Homework

More information

Elementary Recursive Function Theory

Elementary Recursive Function Theory Chapter 6 Elementary Recursive Function Theory 6.1 Acceptable Indexings In a previous Section, we have exhibited a specific indexing of the partial recursive functions by encoding the RAM programs. Using

More information

1 Some Solution of Homework

1 Some Solution of Homework Math 3116 Dr. Franz Rothe May 30, 2012 08SUM\3116_2012h1.tex Name: Use the back pages for extra space 1 Some Solution of Homework Proposition 1 (Counting labeled trees). There are n n 2 different labeled

More information

Recognizing Interval Bigraphs by Forbidden Patterns

Recognizing Interval Bigraphs by Forbidden Patterns Recognizing Interval Bigraphs by Forbidden Patterns Arash Rafiey Simon Fraser University, Vancouver, Canada, and Indiana State University, IN, USA arashr@sfu.ca, arash.rafiey@indstate.edu Abstract Let

More information

SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION

SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION CHAPTER 5 SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION Alessandro Artale UniBZ - http://www.inf.unibz.it/ artale/ SECTION 5.5 Application: Correctness of Algorithms Copyright Cengage Learning. All

More information

MAT 243 Test 2 SOLUTIONS, FORM A

MAT 243 Test 2 SOLUTIONS, FORM A MAT 243 Test 2 SOLUTIONS, FORM A 1. [15 points] Calculate the following quantities: a. 17 mod 4 Solution: 17 17 4 = 17 4 4 = 1. 4 b. 17 div 4 17 Solution: = 4. 4 c. (( 1) mod 12) mod (27 div 5) Solution:

More information

Disjoint Support Decompositions

Disjoint Support Decompositions Chapter 4 Disjoint Support Decompositions We introduce now a new property of logic functions which will be useful to further improve the quality of parameterizations in symbolic simulation. In informal

More information

Linear-Programming Decoding of Nonbinary Linear Codes Mark F. Flanagan, Member, IEEE, Vitaly Skachek, Member, IEEE, Eimear Byrne, and Marcus Greferath

Linear-Programming Decoding of Nonbinary Linear Codes Mark F. Flanagan, Member, IEEE, Vitaly Skachek, Member, IEEE, Eimear Byrne, and Marcus Greferath 4134 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 55, NO. 9, SEPTEMBER 2009 Linear-Programming Decoding of Nonbinary Linear Codes Mark F. Flanagan, Member, IEEE, Vitaly Skachek, Member, IEEE, Eimear Byrne,

More information

Bipartite Roots of Graphs

Bipartite Roots of Graphs Bipartite Roots of Graphs Lap Chi Lau Department of Computer Science University of Toronto Graph H is a root of graph G if there exists a positive integer k such that x and y are adjacent in G if and only

More information

DOUBLE DOMINATION CRITICAL AND STABLE GRAPHS UPON VERTEX REMOVAL 1

DOUBLE DOMINATION CRITICAL AND STABLE GRAPHS UPON VERTEX REMOVAL 1 Discussiones Mathematicae Graph Theory 32 (2012) 643 657 doi:10.7151/dmgt.1633 DOUBLE DOMINATION CRITICAL AND STABLE GRAPHS UPON VERTEX REMOVAL 1 Soufiane Khelifi Laboratory LMP2M, Bloc of laboratories

More information

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions. THREE LECTURES ON BASIC TOPOLOGY PHILIP FOTH 1. Basic notions. Let X be a set. To make a topological space out of X, one must specify a collection T of subsets of X, which are said to be open subsets of

More information

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems SCHOOL OF ENGINEERING & BUILT ENVIRONMENT Mathematics Numbers & Number Systems Introduction Numbers and Their Properties Multiples and Factors The Division Algorithm Prime and Composite Numbers Prime Factors

More information

IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 4, APRIL

IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 4, APRIL IEEE TRANSACTIONS ON INFORMATION THEORY, VOL 52, NO 4, APRIL 2006 1425 Tradeoff Functions for Constrained Systems With Unconstrained Positions T Lei Poo, Member, IEEE, Panu Chaichanavong, Member, IEEE,

More information

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition. 18.433 Combinatorial Optimization Matching Algorithms September 9,14,16 Lecturer: Santosh Vempala Given a graph G = (V, E), a matching M is a set of edges with the property that no two of the edges have

More information

Phil 320 Chapter 7: Recursive sets and relations Note: 0. Introduction Significance of and main objectives for chapter 7:

Phil 320 Chapter 7: Recursive sets and relations Note: 0. Introduction Significance of and main objectives for chapter 7: Phil 320 Chapter 7: Recursive sets and relations (Note: We cover only section 7.1.) 0. Introduction Significance of and main objectives for chapter 7: 1. Chapter 7 generalizes the notion of recursive (or

More information

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006 2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006 The Encoding Complexity of Network Coding Michael Langberg, Member, IEEE, Alexander Sprintson, Member, IEEE, and Jehoshua Bruck,

More information

On Generalization of Fuzzy Concept Lattices Based on Change of Underlying Fuzzy Order

On Generalization of Fuzzy Concept Lattices Based on Change of Underlying Fuzzy Order On Generalization of Fuzzy Concept Lattices Based on Change of Underlying Fuzzy Order Pavel Martinek Department of Computer Science, Palacky University, Olomouc Tomkova 40, CZ-779 00 Olomouc, Czech Republic

More information

1 Linear programming relaxation

1 Linear programming relaxation Cornell University, Fall 2010 CS 6820: Algorithms Lecture notes: Primal-dual min-cost bipartite matching August 27 30 1 Linear programming relaxation Recall that in the bipartite minimum-cost perfect matching

More information

Encoding via Gröbner bases and discrete Fourier transforms for several types of algebraic codes

Encoding via Gröbner bases and discrete Fourier transforms for several types of algebraic codes Encoding via Gröbner bases and discrete Fourier transforms for several types of algebraic codes Hajime Matsui Dept. of Electronics and Information Science Toyota Technological Institute Hisakata 2-12-1,

More information

Module 11. Directed Graphs. Contents

Module 11. Directed Graphs. Contents Module 11 Directed Graphs Contents 11.1 Basic concepts......................... 256 Underlying graph of a digraph................ 257 Out-degrees and in-degrees.................. 258 Isomorphism..........................

More information

Recursive Functions. 6.1 Primitive Recursive Functions

Recursive Functions. 6.1 Primitive Recursive Functions 6 Recursive Functions The intuitive notion of an effectively computable function is the notion of a function for which there are definite, explicit rules, following which one could in principle compute

More information

One of the most important areas where quantifier logic is used is formal specification of computer programs.

One of the most important areas where quantifier logic is used is formal specification of computer programs. Section 5.2 Formal specification of computer programs One of the most important areas where quantifier logic is used is formal specification of computer programs. Specification takes place on several levels

More information

Independence Complexes of Certain Families of Graphs

Independence Complexes of Certain Families of Graphs Independence Complexes of Certain Families of Graphs Rickard Fors rifo0@kth.se Master thesis in Mathematics at KTH Presented August 19, 011 Supervisor: Jakob Jonsson Abstract The focus of this report

More information

Module 7. Independent sets, coverings. and matchings. Contents

Module 7. Independent sets, coverings. and matchings. Contents Module 7 Independent sets, coverings Contents and matchings 7.1 Introduction.......................... 152 7.2 Independent sets and coverings: basic equations..... 152 7.3 Matchings in bipartite graphs................

More information

ARELAY network consists of a pair of source and destination

ARELAY network consists of a pair of source and destination 158 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL 55, NO 1, JANUARY 2009 Parity Forwarding for Multiple-Relay Networks Peyman Razaghi, Student Member, IEEE, Wei Yu, Senior Member, IEEE Abstract This paper

More information

CHAPTER 8. Copyright Cengage Learning. All rights reserved.

CHAPTER 8. Copyright Cengage Learning. All rights reserved. CHAPTER 8 RELATIONS Copyright Cengage Learning. All rights reserved. SECTION 8.3 Equivalence Relations Copyright Cengage Learning. All rights reserved. The Relation Induced by a Partition 3 The Relation

More information

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF CHAPTER 4 ELEMENTARY NUMBER THEORY AND METHODS OF PROOF Copyright Cengage Learning. All rights reserved. SECTION 4.3 Direct Proof and Counterexample III: Divisibility Copyright Cengage Learning. All rights

More information

Definition 2 (Projective plane). A projective plane is a class of points, and a class of lines satisfying the axioms:

Definition 2 (Projective plane). A projective plane is a class of points, and a class of lines satisfying the axioms: Math 3181 Name: Dr. Franz Rothe January 30, 2014 All3181\3181_spr14h2.tex Homework has to be turned in this handout. The homework can be done in groups up to three due February 11/12 2 Homework 1 Definition

More information

Technische Universität München Zentrum Mathematik

Technische Universität München Zentrum Mathematik Technische Universität München Zentrum Mathematik Prof. Dr. Dr. Jürgen Richter-Gebert, Bernhard Werner Projective Geometry SS 208 https://www-m0.ma.tum.de/bin/view/lehre/ss8/pgss8/webhome Solutions for

More information

Chapter 4. Number Theory. 4.1 Factors and multiples

Chapter 4. Number Theory. 4.1 Factors and multiples Chapter 4 Number Theory We ve now covered most of the basic techniques for writing proofs. So we re going to start applying them to specific topics in mathematics, starting with number theory. Number theory

More information

Lecture 1 Contracts : Principles of Imperative Computation (Fall 2018) Frank Pfenning

Lecture 1 Contracts : Principles of Imperative Computation (Fall 2018) Frank Pfenning Lecture 1 Contracts 15-122: Principles of Imperative Computation (Fall 2018) Frank Pfenning In these notes we review contracts, which we use to collectively denote function contracts, loop invariants,

More information

Connectivity of the zero-divisor graph for finite rings

Connectivity of the zero-divisor graph for finite rings Connectivity of the zero-divisor graph for finite rings Reza Akhtar and Lucas Lee Abstract The vertex-connectivity and edge-connectivity of the zero-divisor graph associated to a finite commutative ring

More information

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF

ELEMENTARY NUMBER THEORY AND METHODS OF PROOF CHAPTER 4 ELEMENTARY NUMBER THEORY AND METHODS OF PROOF Copyright Cengage Learning. All rights reserved. SECTION 4.3 Direct Proof and Counterexample III: Divisibility Copyright Cengage Learning. All rights

More information

Algebraic method for Shortest Paths problems

Algebraic method for Shortest Paths problems Lecture 1 (06.03.2013) Author: Jaros law B lasiok Algebraic method for Shortest Paths problems 1 Introduction In the following lecture we will see algebraic algorithms for various shortest-paths problems.

More information

STABILITY AND PARADOX IN ALGORITHMIC LOGIC

STABILITY AND PARADOX IN ALGORITHMIC LOGIC STABILITY AND PARADOX IN ALGORITHMIC LOGIC WAYNE AITKEN, JEFFREY A. BARRETT Abstract. Algorithmic logic is the logic of basic statements concerning algorithms and the algorithmic rules of deduction between

More information

Ramsey s Theorem on Graphs

Ramsey s Theorem on Graphs Ramsey s Theorem on Graphs 1 Introduction Exposition by William Gasarch Imagine that you have 6 people at a party. We assume that, for every pair of them, either THEY KNOW EACH OTHER or NEITHER OF THEM

More information

An Eternal Domination Problem in Grids

An Eternal Domination Problem in Grids Theory and Applications of Graphs Volume Issue 1 Article 2 2017 An Eternal Domination Problem in Grids William Klostermeyer University of North Florida, klostermeyer@hotmail.com Margaret-Ellen Messinger

More information

THE DOLD-KAN CORRESPONDENCE

THE DOLD-KAN CORRESPONDENCE THE DOLD-KAN CORRESPONDENCE 1. Simplicial sets We shall now introduce the notion of a simplicial set, which will be a presheaf on a suitable category. It turns out that simplicial sets provide a (purely

More information

4. Simplicial Complexes and Simplicial Homology

4. Simplicial Complexes and Simplicial Homology MATH41071/MATH61071 Algebraic topology Autumn Semester 2017 2018 4. Simplicial Complexes and Simplicial Homology Geometric simplicial complexes 4.1 Definition. A finite subset { v 0, v 1,..., v r } R n

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A 4 credit unit course Part of Theoretical Computer Science courses at the Laboratory of Mathematics There will be 4 hours

More information

Alphanumeric Divisibility

Alphanumeric Divisibility Alphanumeric Divisibility Robert Israel, University of British Columbia, israel@math.ubc.ca Stan Wagon, Macalester College, wagon@macalester.edu [Corresponding author] Take a word using at most 10 letters,

More information

Excerpt from "Art of Problem Solving Volume 1: the Basics" 2014 AoPS Inc.

Excerpt from Art of Problem Solving Volume 1: the Basics 2014 AoPS Inc. Chapter 5 Using the Integers In spite of their being a rather restricted class of numbers, the integers have a lot of interesting properties and uses. Math which involves the properties of integers is

More information

On the maximum rank of completions of entry pattern matrices

On the maximum rank of completions of entry pattern matrices Linear Algebra and its Applications 525 (2017) 1 19 Contents lists available at ScienceDirect Linear Algebra and its Applications wwwelseviercom/locate/laa On the maximum rank of completions of entry pattern

More information

1 Elementary number theory

1 Elementary number theory Math 215 - Introduction to Advanced Mathematics Spring 2019 1 Elementary number theory We assume the existence of the natural numbers and the integers N = {1, 2, 3,...} Z = {..., 3, 2, 1, 0, 1, 2, 3,...},

More information

How Do More Golay Sequences Arise?

How Do More Golay Sequences Arise? How Do More Golay Sequences Arise? Frank Fiedler Jonathan Jedwab May 13, 2005 (revised May 17, 2006) Abstract In 1999 Davis and Jedwab gave a direct construction of Golay complementary sequences over Z

More information

Monotone Paths in Geometric Triangulations

Monotone Paths in Geometric Triangulations Monotone Paths in Geometric Triangulations Adrian Dumitrescu Ritankar Mandal Csaba D. Tóth November 19, 2017 Abstract (I) We prove that the (maximum) number of monotone paths in a geometric triangulation

More information

9.5 Equivalence Relations

9.5 Equivalence Relations 9.5 Equivalence Relations You know from your early study of fractions that each fraction has many equivalent forms. For example, 2, 2 4, 3 6, 2, 3 6, 5 30,... are all different ways to represent the same

More information

PS Geometric Modeling Homework Assignment Sheet I (Due 20-Oct-2017)

PS Geometric Modeling Homework Assignment Sheet I (Due 20-Oct-2017) Homework Assignment Sheet I (Due 20-Oct-2017) Assignment 1 Let n N and A be a finite set of cardinality n = A. By definition, a permutation of A is a bijective function from A to A. Prove that there exist

More information

SANDRA SPIROFF AND CAMERON WICKHAM

SANDRA SPIROFF AND CAMERON WICKHAM A ZERO DIVISOR GRAPH DETERMINED BY EQUIVALENCE CLASSES OF ZERO DIVISORS arxiv:0801.0086v2 [math.ac] 17 Aug 2009 SANDRA SPIROFF AND CAMERON WICKHAM Abstract. We study the zero divisor graph determined by

More information

DOWNLOAD PDF BIG IDEAS MATH VERTICAL SHRINK OF A PARABOLA

DOWNLOAD PDF BIG IDEAS MATH VERTICAL SHRINK OF A PARABOLA Chapter 1 : BioMath: Transformation of Graphs Use the results in part (a) to identify the vertex of the parabola. c. Find a vertical line on your graph paper so that when you fold the paper, the left portion

More information

CDM Loop Programs. 05-loop-progs 2017/12/15 23:18. Program Equivalence 3. Program Transformations 4. Rudimentary Functions 5. Rudimentary Programs 6

CDM Loop Programs. 05-loop-progs 2017/12/15 23:18. Program Equivalence 3. Program Transformations 4. Rudimentary Functions 5. Rudimentary Programs 6 CDM Loop Programs 1 Rudimentary and Elementary Functions Klaus Sutner Carnegie Mellon Universality 05-loop-progs 2017/12/15 23:18 LOOP Programs Program Equivalence Program Equivalence 3 Program Transformations

More information

The Cartesian product of cycles C n1, C n2,, C ns, denoted C n1 C n2 C ns can be viewed as the Cayley graph of Abelian group Z n1 Z n2 Z ns

The Cartesian product of cycles C n1, C n2,, C ns, denoted C n1 C n2 C ns can be viewed as the Cayley graph of Abelian group Z n1 Z n2 Z ns Vertex-magic edge Z 2nm -labeling of C n C m Dalibor Froncek, University of Minnesota Duluth James McKeown, University of Miami John McKeown, University of Minnesota Duluth Michael McKeown, University

More information

2 Computation with Floating-Point Numbers

2 Computation with Floating-Point Numbers 2 Computation with Floating-Point Numbers 2.1 Floating-Point Representation The notion of real numbers in mathematics is convenient for hand computations and formula manipulations. However, real numbers

More information

Generalized Network Flow Programming

Generalized Network Flow Programming Appendix C Page Generalized Network Flow Programming This chapter adapts the bounded variable primal simplex method to the generalized minimum cost flow problem. Generalized networks are far more useful

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION 1 CHAPTER 1 INTRODUCTION 1.1 Advance Encryption Standard (AES) Rijndael algorithm is symmetric block cipher that can process data blocks of 128 bits, using cipher keys with lengths of 128, 192, and 256

More information

Characterizing Graphs (3) Characterizing Graphs (1) Characterizing Graphs (2) Characterizing Graphs (4)

Characterizing Graphs (3) Characterizing Graphs (1) Characterizing Graphs (2) Characterizing Graphs (4) S-72.2420/T-79.5203 Basic Concepts 1 S-72.2420/T-79.5203 Basic Concepts 3 Characterizing Graphs (1) Characterizing Graphs (3) Characterizing a class G by a condition P means proving the equivalence G G

More information

Topic 3: Propositions as types

Topic 3: Propositions as types Topic 3: Propositions as types May 18, 2014 Propositions as types We have seen that the main mathematical objects in a type theory are types. But remember that in conventional foundations, as based on

More information

Chapter 15 Introduction to Linear Programming

Chapter 15 Introduction to Linear Programming Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2015 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of

More information

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms 1. Computability, Complexity and Algorithms Given a simple directed graph G = (V, E), a cycle cover is a set of vertex-disjoint directed cycles that cover all vertices of the graph. 1. Show that there

More information

XI International PhD Workshop OWD 2009, October Fuzzy Sets as Metasets

XI International PhD Workshop OWD 2009, October Fuzzy Sets as Metasets XI International PhD Workshop OWD 2009, 17 20 October 2009 Fuzzy Sets as Metasets Bartłomiej Starosta, Polsko-Japońska WyŜsza Szkoła Technik Komputerowych (24.01.2008, prof. Witold Kosiński, Polsko-Japońska

More information

U.C. Berkeley CS170 : Algorithms Midterm 1 Lecturers: Alessandro Chiesa and Satish Rao September 18, Midterm 1

U.C. Berkeley CS170 : Algorithms Midterm 1 Lecturers: Alessandro Chiesa and Satish Rao September 18, Midterm 1 U.C. Berkeley CS170 : Algorithms Lecturers: Alessandro Chiesa and Satish Rao September 18, 2018 1 Connectivity in Graphs No justification is required on this problem. A B C D E F G H I J (a) (2 points)

More information

arxiv: v2 [cs.ds] 30 Nov 2012

arxiv: v2 [cs.ds] 30 Nov 2012 A New Upper Bound for the Traveling Salesman Problem in Cubic Graphs Maciej Liśkiewicz 1 and Martin R. Schuster 1 1 Institute of Theoretical Computer Science, University of Lübeck Ratzeburger Allee 160,

More information

Treewidth and graph minors

Treewidth and graph minors Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under

More information