{"product_id":"the-art-of-error-correcting-coding-isbn-9780470015582","title":"The Art of Error Correcting Coding","description":"Building on the success of the first edition, which offered a practical introductory approach to the techniques of error concealment, this book, now fully revised and updated, provides a comprehensive treatment of the subject and includes a wealth of additional features. \u003ci\u003eThe Art of Error Correcting Coding, Second Edition\u003c\/i\u003e explores intermediate and advanced level concepts as well as those which will appeal to the novice.  \u003cp\u003eAll key topics are discussed, including Reed-Solomon codes, Viterbi decoding, soft-output decoding algorithms, MAP, log-MAP and MAX-log-MAP.  Reliability-based algorithms GMD and Chase are examined, as are turbo codes, both serially and parallel concatenated, as well as low-density parity-check (LDPC) codes and their iterative decoders.\u003c\/p\u003e \u003cul\u003e \u003cli\u003eFeatures additional problems at the end of each chapter and an instructor’s solutions manual\u003c\/li\u003e \u003cli\u003eUpdated companion website offers new C\/C ++programs and MATLAB scripts, to help with the understanding and implementation of basic ECC techniques\u003c\/li\u003e \u003cli\u003eEasy to follow examples illustrate the fundamental concepts of error correcting codes\u003c\/li\u003e \u003cli\u003eBasic analysis tools are provided throughout to help in the assessment of the error performance block and convolutional codes of a particular error correcting coding (ECC) scheme for a selection of the basic channel models\u003c\/li\u003e \u003c\/ul\u003e \u003cp\u003eThis edition provides an essential resource to engineers, computer scientists and graduate students alike for understanding and applying ECC techniques in the transmission and storage of digital information.\u003c\/p\u003e \u003cp\u003ePreface ix\u003c\/p\u003e \u003cp\u003eForeword xi\u003c\/p\u003e \u003cp\u003eThe ECC web site xiii\u003c\/p\u003e \u003cp\u003e\u003cb\u003e1 Introduction 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e1.1 Error correcting coding: Basic concepts 4\u003c\/p\u003e \u003cp\u003e1.1.1 Block codes and convolutional codes 4\u003c\/p\u003e \u003cp\u003e1.1.2 Hamming distance, Hamming spheres and error correcting capability 5\u003c\/p\u003e \u003cp\u003e1.2 Linear block codes 7\u003c\/p\u003e \u003cp\u003e1.2.1 Generator and parity-check matrices 7\u003c\/p\u003e \u003cp\u003e1.2.2 The weight is the distance 8\u003c\/p\u003e \u003cp\u003e1.3 Encoding and decoding of linear block codes 8\u003c\/p\u003e \u003cp\u003e1.3.1 Encoding with \u003ci\u003eG\u003c\/i\u003e and \u003ci\u003eH\u003c\/i\u003e 8\u003c\/p\u003e \u003cp\u003e1.3.2 Standard array decoding 10\u003c\/p\u003e \u003cp\u003e1.3.3 Hamming spheres, decoding regions and the standard array 12\u003c\/p\u003e \u003cp\u003e1.4 Weight distribution and error performance 13\u003c\/p\u003e \u003cp\u003e1.4.1 Weight distribution and undetected error probability over a BSC 14\u003c\/p\u003e \u003cp\u003e1.4.2 Performance bounds over BSC, AWGN and fading channels 15\u003c\/p\u003e \u003cp\u003e1.5 General structure of a hard-decision decoder of linear codes 23\u003c\/p\u003e \u003cp\u003eProblems 23\u003c\/p\u003e \u003cp\u003e\u003cb\u003e2 Hamming, Golay and Reed–Muller codes 27\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e2.1 Hamming codes 27\u003c\/p\u003e \u003cp\u003e2.1.1 Encoding and decoding procedures 28\u003c\/p\u003e \u003cp\u003e2.2 The binary Golay code 29\u003c\/p\u003e \u003cp\u003e2.2.1 Encoding 29\u003c\/p\u003e \u003cp\u003e2.2.2 Decoding 30\u003c\/p\u003e \u003cp\u003e2.2.3 Arithmetic decoding of the extended (24, 12, 8) Golay code 30\u003c\/p\u003e \u003cp\u003e2.3 Binary Reed–Muller codes 31\u003c\/p\u003e \u003cp\u003e2.3.1 Boolean polynomials and RM codes 31\u003c\/p\u003e \u003cp\u003e2.3.2 Finite geometries and majority-logic decoding 33\u003c\/p\u003e \u003cp\u003eProblems 37\u003c\/p\u003e \u003cp\u003e\u003cb\u003e3 Binary cyclic codes and BCH codes 39\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e3.1 Binary cyclic codes 39\u003c\/p\u003e \u003cp\u003e3.1.1 Generator and parity-check polynomials 39\u003c\/p\u003e \u003cp\u003e3.1.2 The generator polynomial 40\u003c\/p\u003e \u003cp\u003e3.1.3 Encoding and decoding of binary cyclic codes 41\u003c\/p\u003e \u003cp\u003e3.1.4 The parity-check polynomial 42\u003c\/p\u003e \u003cp\u003e3.1.5 Shortened cyclic codes and CRC codes 44\u003c\/p\u003e \u003cp\u003e3.1.6 Fire codes 45\u003c\/p\u003e \u003cp\u003e3.2 General decoding of cyclic codes 46\u003c\/p\u003e \u003cp\u003e3.2.1 \u003ci\u003eGF\u003c\/i\u003e(2\u003ci\u003e\u003csup\u003em\u003c\/sup\u003e\u003c\/i\u003e) arithmetic 48\u003c\/p\u003e \u003cp\u003e3.3 Binary BCH codes 52\u003c\/p\u003e \u003cp\u003e3.3.1 BCH bound 53\u003c\/p\u003e \u003cp\u003e3.4 Polynomial codes 53\u003c\/p\u003e \u003cp\u003e3.5 Decoding of binary BCH codes 54\u003c\/p\u003e \u003cp\u003e3.5.1 General decoding algorithm for BCH codes 56\u003c\/p\u003e \u003cp\u003e3.5.2 The Berlekamp–Massey algorithm (BMA) 57\u003c\/p\u003e \u003cp\u003e3.5.3 PGZ decoder 60\u003c\/p\u003e \u003cp\u003e3.5.4 Euclidean algorithm 61\u003c\/p\u003e \u003cp\u003e3.5.5 Chien search and error correction 63\u003c\/p\u003e \u003cp\u003e3.5.6 Errors-and-erasures decoding 63\u003c\/p\u003e \u003cp\u003e3.6 Weight distribution and performance bounds 65\u003c\/p\u003e \u003cp\u003e3.6.1 Error performance evaluation 66\u003c\/p\u003e \u003cp\u003eProblems 69\u003c\/p\u003e \u003cp\u003e\u003cb\u003e4 Nonbinary BCH codes: Reed–Solomon codes 73\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e4.1 RS codes as polynomial codes 73\u003c\/p\u003e \u003cp\u003e4.2 From binary BCH to RS codes 73\u003c\/p\u003e \u003cp\u003e4.3 Decoding RS codes 74\u003c\/p\u003e \u003cp\u003e4.3.1 Remarks on decoding algorithms 79\u003c\/p\u003e \u003cp\u003e4.3.2 Errors-and-erasures decoding 79\u003c\/p\u003e \u003cp\u003e4.4 Weight distribution 84\u003c\/p\u003e \u003cp\u003eProblems 84\u003c\/p\u003e \u003cp\u003e\u003cb\u003e5 Binary convolutional codes 87\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e5.1 Basic structure 87\u003c\/p\u003e \u003cp\u003e5.1.1 Recursive systematic convolutional codes 92\u003c\/p\u003e \u003cp\u003e5.1.2 Free distance 94\u003c\/p\u003e \u003cp\u003e5.2 Connections with block codes 94\u003c\/p\u003e \u003cp\u003e5.2.1 Zero-tail construction 94\u003c\/p\u003e \u003cp\u003e5.2.2 Direct-truncation construction 95\u003c\/p\u003e \u003cp\u003e5.2.3 Tail-biting construction 95\u003c\/p\u003e \u003cp\u003e5.2.4 Weight distributions 95\u003c\/p\u003e \u003cp\u003e5.3 Weight enumeration 97\u003c\/p\u003e \u003cp\u003e5.4 Performance bounds 99\u003c\/p\u003e \u003cp\u003e5.5 Decoding: Viterbi algorithm with Hamming metrics 101\u003c\/p\u003e \u003cp\u003e5.5.1 Maximum-likelihood decoding and metrics 101\u003c\/p\u003e \u003cp\u003e5.5.2 The Viterbi algorithm 102\u003c\/p\u003e \u003cp\u003e5.5.3 Implementation issues 104\u003c\/p\u003e \u003cp\u003e5.6 Punctured convolutional codes 112\u003c\/p\u003e \u003cp\u003e5.6.1 Implementation issues related to punctured convolutional codes 115\u003c\/p\u003e \u003cp\u003e5.6.2 RCPC codes 116\u003c\/p\u003e \u003cp\u003eProblems 116\u003c\/p\u003e \u003cp\u003e\u003cb\u003e6 Modifying and combining codes 119\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e6.1 Modifying codes 119\u003c\/p\u003e \u003cp\u003e6.1.1 Shortening 119\u003c\/p\u003e \u003cp\u003e6.1.2 Extending 121\u003c\/p\u003e \u003cp\u003e6.1.3 Puncturing 122\u003c\/p\u003e \u003cp\u003e6.1.4 Augmenting, expurgating and lengthening 122\u003c\/p\u003e \u003cp\u003e6.2 Combining codes 124\u003c\/p\u003e \u003cp\u003e6.2.1 Time sharing of codes 124\u003c\/p\u003e \u003cp\u003e6.2.2 Direct sums of codes 125\u003c\/p\u003e \u003cp\u003e6.2.3 The |\u003ci\u003eu\u003c\/i\u003e|\u003ci\u003eu\u003c\/i\u003e + \u003ci\u003ev\u003c\/i\u003e|-construction and related techniques 126\u003c\/p\u003e \u003cp\u003e6.2.4 Products of codes 128\u003c\/p\u003e \u003cp\u003e6.2.5 Concatenated codes 134\u003c\/p\u003e \u003cp\u003e6.2.6 Generalized concatenated codes 136\u003c\/p\u003e \u003cp\u003eProblems 140\u003c\/p\u003e \u003cp\u003e\u003cb\u003e7 Soft-decision decoding 143\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e7.1 Binary transmission over AWGN channels 144\u003c\/p\u003e \u003cp\u003e7.2 Viterbi algorithm with Euclidean metric 145\u003c\/p\u003e \u003cp\u003e7.3 Decoding binary linear block codes with a trellis 146\u003c\/p\u003e \u003cp\u003e7.4 The Chase algorithm 150\u003c\/p\u003e \u003cp\u003e7.5 Ordered statistics decoding 153\u003c\/p\u003e \u003cp\u003e7.6 Generalized minimum distance decoding 156\u003c\/p\u003e \u003cp\u003e7.6.1 Sufficient conditions for optimality 157\u003c\/p\u003e \u003cp\u003e7.7 List decoding 158\u003c\/p\u003e \u003cp\u003e7.8 Soft-output algorithms 158\u003c\/p\u003e \u003cp\u003e7.8.1 Soft-output Viterbi algorithm 158\u003c\/p\u003e \u003cp\u003e7.8.2 Maximum-a posteriori (MAP) algorithm 161\u003c\/p\u003e \u003cp\u003e7.8.3 Log-MAP algorithm 163\u003c\/p\u003e \u003cp\u003e7.8.4 Max-Log-MAP algorithm 164\u003c\/p\u003e \u003cp\u003e7.8.5 Soft-output OSD algorithm 164\u003c\/p\u003e \u003cp\u003eProblems 165\u003c\/p\u003e \u003cp\u003e\u003cb\u003e8 Iteratively decodable codes 169\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e8.1 Iterative decoding 172\u003c\/p\u003e \u003cp\u003e8.2 Product codes 174\u003c\/p\u003e \u003cp\u003e8.2.1 Parallel concatenation: Turbo codes 174\u003c\/p\u003e \u003cp\u003e8.2.2 Serial concatenation 183\u003c\/p\u003e \u003cp\u003e8.2.3 Block product codes 185\u003c\/p\u003e \u003cp\u003e8.3 Low-density parity-check codes 190\u003c\/p\u003e \u003cp\u003e8.3.1 Tanner graphs 190\u003c\/p\u003e \u003cp\u003e8.3.2 Iterative hard-decision decoding: The bit-flip algorithm 192\u003c\/p\u003e \u003cp\u003e8.3.3 Iterative probabilistic decoding: Belief propagation 196\u003c\/p\u003e \u003cp\u003eProblems 201\u003c\/p\u003e \u003cp\u003e\u003cb\u003e9 Combining codes and digital modulation 203\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e9.1 Motivation 203\u003c\/p\u003e \u003cp\u003e9.1.1 Examples of signal sets 204\u003c\/p\u003e \u003cp\u003e9.1.2 Coded modulation 206\u003c\/p\u003e \u003cp\u003e9.1.3 Distance considerations 207\u003c\/p\u003e \u003cp\u003e9.2 Trellis-coded modulation (TCM) 208\u003c\/p\u003e \u003cp\u003e9.2.1 Set partitioning and trellis mapping 209\u003c\/p\u003e \u003cp\u003e9.2.2 Maximum-likelihood decoding 211\u003c\/p\u003e \u003cp\u003e9.2.3 Distance considerations and error performance 212\u003c\/p\u003e \u003cp\u003e9.2.4 Pragmatic TCM and two-stage decoding 213\u003c\/p\u003e \u003cp\u003e9.3 Multilevel coded modulation 217\u003c\/p\u003e \u003cp\u003e9.3.1 Constructions and multistage decoding 217\u003c\/p\u003e \u003cp\u003e9.3.2 Unequal error protection with MCM 221\u003c\/p\u003e \u003cp\u003e9.4 Bit-interleaved coded modulation 225\u003c\/p\u003e \u003cp\u003e9.4.1 Gray mapping 226\u003c\/p\u003e \u003cp\u003e9.4.2 Metric generation: De-mapping 227\u003c\/p\u003e \u003cp\u003e9.4.3 Interleaving 227\u003c\/p\u003e \u003cp\u003e9.5 Turbo trellis-coded modulation 227\u003c\/p\u003e \u003cp\u003e9.5.1 Pragmatic turbo TCM 228\u003c\/p\u003e \u003cp\u003e9.5.2 Turbo TCM with symbol interleaving 228\u003c\/p\u003e \u003cp\u003e9.5.3 Turbo TCM with bit interleaving 229\u003c\/p\u003e \u003cp\u003eProblems 230\u003c\/p\u003e \u003cp\u003e\u003cb\u003eAppendix A Weight distributions of extended BCH codes 233\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eA.1 Length 8 233\u003c\/p\u003e \u003cp\u003eA.2 Length 16 233\u003c\/p\u003e \u003cp\u003eA.3 Length 32 234\u003c\/p\u003e \u003cp\u003eA.4 Length 64 235\u003c\/p\u003e \u003cp\u003eA.5 Length 128 238\u003c\/p\u003e \u003cp\u003eBibliography 247\u003c\/p\u003e \u003cp\u003eIndex 257\u003c\/p\u003e \u003cb\u003eRobert H. Morelos-Zaragoza\u003c\/b\u003e received BSEE and MSEE degrees from the National Autonomous University of Mexico (UNAM) in 1985 and 1987 respectively, and a PhD in Electrical Engineering from the University of Hawaii at Manoa in 1992. He has held numerous research posts in Mexico and Japan. In 2002, Robert joined the Department of Electrical Engineering at San José State University, as an Associate Professor. His current research interests include error correcting coding (ECC\/FEC), advanced digital communication receiver design, software-defined radio (SDR), space-time signal processing techniques and ultra-wideband (UWB) communication systems. Prof. Morelos-Zaragoza is a senior member of IEEE, and member of IEICE (Japan) and of Eta Kappa Nu.  Building on the success of the first edition, which offered a practical introductory approach to the techniques of error concealment, this book, now fully revised and updated, provides a comprehensive treatment of the subject and includes a wealth of additional features. \u003ci\u003eThe Art of Error Correcting Coding, Second Edition\u003c\/i\u003e explores intermediate and advanced level concepts as well as those which will appeal to the novice.  \u003cp\u003eAll key topics are discussed, including Reed-Solomon codes, Viterbi decoding, soft-output decoding algorithms, MAP, log-MAP and MAX-log-MAP.  Reliability-based algorithms GMD and Chase are examined, as are turbo codes, both serially and parallel concatenated, as well as low-density parity-check (LDPC) codes and their iterative decoders.\u003c\/p\u003e \u003cul\u003e \u003cli\u003eFeatures additional problems at the end of each chapter and an instructor’s solutions manual\u003c\/li\u003e \u003cli\u003eUpdated companion website offers new C\/C ++programs and MATLAB scripts, to help with the understanding and implementation of basic ECC techniques\u003c\/li\u003e \u003cli\u003eEasy to follow examples illustrate the fundamental concepts of error correcting codes\u003c\/li\u003e \u003cli\u003eBasic analysis tools are provided throughout to help in the assessment of the error performance block and convolutional codes of a particular error correcting coding (ECC) scheme for a selection of the basic channel models\u003c\/li\u003e \u003c\/ul\u003e \u003cp\u003eThis edition provides an essential resource to engineers, computer scientists and graduate students alike for understanding and applying ECC techniques in the transmission and storage of digital information.\u003c\/p\u003e","brand":"Wiley","offers":[{"title":"Default Title","offer_id":47990161342693,"sku":"NP9780470015582","price":132.95,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1842\/7735\/files\/9780470015582.jpg?v=1761786738","url":"https:\/\/k12savings.com\/es\/products\/the-art-of-error-correcting-coding-isbn-9780470015582","provider":"K12savings","version":"1.0","type":"link"}