Eliminating the need for heavy number-crunching, sophisticated mathematical software packages open the door to areas like cryptography, coding theory, and combinatorics that are dependent on abstract algebra. Applications of Abstract Algebra with Maple and MATLAB(R), Second Edition explores these topics and shows how to apply the software programs to abstract algebra and its related fields. Carefully integrating Maplea and MATLAB(R), this book provides an in-depth introduction to real-world abstract algebraic problems. The first chapter offers a concise and comprehensive review of prerequisite advanced mathematics. The next several chapters examine block designs, coding theory, and cryptography while the final chapters cover counting techniques, including Polya's and Burnside's theorems. Other topics discussed include the Rivest, Shamir, and Adleman (RSA) cryptosystem, digital signatures, primes for security, and elliptic curve cryptosystems.
New to the Second Edition Three new chapters on Vigenere ciphers, the Advanced Encryption Standard (AES), and graph theory as well as new MATLAB and Maple sections Expanded exercises and additional research exercises Maple and MATLAB files and functions available for download online and from a CD-ROM With the incorporation of MATLAB, this second edition further illuminates the topics discussed by eliminating extensive computations of abstract algebraic techniques. The clear organization of the book as well as the inclusion of two of the most respected mathematical software packages available make the book a useful tool for students, mathematicians, and computer scientists.
Table of Contents
PRELIMINARY MATHEMATICS Permutation Groups Cosets and Quotient Groups Rings and Euclidean Domains Finite Fields Finite Fields with Maple Finite Fields with MATLAB The Euclidean Algorithm BLOCK DESIGNS General Properties Hadamard Matrices Hadamard Matrices with Maple Hadamard Matrices with MATLAB Difference Sets Difference Sets with Maple Difference Sets with MATLAB ERROR CORRECTING CODES General Properties Hadamard Codes Reed-Muller Codes Reed-Muller Codes with Maple Reed-Muller Codes with MATLAB Linear Codes Hamming Codes with Maple Hamming Codes with MATLAB BCH CODES Construction Error Correction BCH Codes with Maple BCH Codes with MATLAB REED-SOLOMON CODES Construction Error Correction Error Correction Method Proof Reed-Solomon Codes with Maple Reed-Solomon Codes with MATLAB Reed-Solomon Codes in Voyager 2 ALGEBRAIC CRYPTOGRAPHY Two Elementary Cryptosystems Shift and Affine Ciphers with Maple Shift and Affine Ciphers with MATLAB Hill Ciphers Hill Ciphers with Maple Hill Ciphers with MATLAB VIGENERE CIPHERS Encryption and Decryption Cryptanalysis Vigenere Ciphers with Maple Vigenere Ciphers with MATLAB THE RSA CRYPTOSYSTEM Preliminary Mathematics Encryption and Decryption The RSA Cryptosystem with Maple The RSA Cryptosystem with MATLAB A Note on Modular Exponentiation A Note on Primality Testing A Note on Integer Factorization A Note on Digital Signatures The Diffie-Hellman Key Exchange Discrete Logarithms with Maple Discrete Logarithms with MATLAB ELLIPTIC CURVE CRYPTOGRAPHY The ElGamal Cryptosystem The ElGamal Cryptosystem with Maple The ElGamal Cryptosystem with MATLAB Elliptic Curves Elliptic Curves with Maple Elliptic Curves with MATLAB Elliptic Curve Cryptography Elliptic Curve Cryptography with Maple Elliptic Curve Cryptography with MATLAB THE ADVANCED ENCRYPTION STANDARD Alphabet Assignment and Text Setup The S-Box Key Generation Encryption The AES Layers Decryption A Note on Security AES with Maple AES with MATLAB POLYA THEORY Group Actions Burnside's Theorem The Cycle Index The Pattern Inventory The Pattern Inventory with Maple The Pattern Inventory with MATLAB Switching Functions GRAPH THEORY The Cycle Index of Sn The Cycle Index of Sn with Maple The Cycle Index of Sn with MATLAB Counting Undirected Graphs Counting Undirected Graphs with Maple Counting Undirected Graphs with MATLAB Each chapter contains Computer and Research Exercises. APPENDIX A: USER-WRITTEN MAPLE FUNCTIONS APPENDIX B: USER-WRITTEN MATLAB FUNCTIONS BIBLIOGRAPHY HINTS OR ANSWERS FOR SELECTED EXERCISES INDEX