CONTENTS 4.7 Sage Exercises··.···· 79 5 Permutation Groups 81 5.1 Definitions and Notation... 81 5.2 Dihedral Groups 87 5.3 Exercises 91 5.4 Sage 94 5.5 Sage Exercises 100 6 Cosets and Lagrange's Theorem 102 6.1 Cosets...·.....·.···.· ·。。 102 6.2 Lagrange's Theorem 104 6.3 Fermat's and Euler's Theorems. 105 6.4 Exercises 106 6.5Sage.············ 108 6.6 Sage Exercises 111 7 Introduction to Cryptography 114 7.1 Private Key Cryptography.··.·· 114 7.2 Public Key Cryptography 116 7.3 Exercises 119 7.4 Additional Exercises:Primality and Factoring...·····.·· 121 References and Suggested Readings..··..············· 122 122 7.6 Sage Exercises 126 8 Algebraic Coding Theory 127 8.1 Error-Detecting and Correcting Codes 127 8.2 Linear Codes.... 133 8.3 Parity-Check and Generator Matrices 136 8.4 Efficient Decoding 141 8.5 Exercises.············ 144 8.6 Programming Exercises 148 References and Suggested Readings.. 148 8.7Sage··············· 148 8.8 Sage Exercises······· 151 9 Isomorphisms 153 9.1 Definition and Examples ..... 153 9.2 Direct Products...... 。 157 9.3 Exercises 160 9.4 Sage 163 9.5 Sage Exercises 。。 167 10 Normal Subgroups and Factor Groups 169 10.1 Factor Groups and Normal Subgroups 169 10.2 The Simplicity of the Alternating Group . 171 l0.3 Exercises...················· 174 175 10.5 Sage Exercises ............. 179x CONTENTS 4.7 Sage Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5 Permutation Groups 81 5.1 Definitions and Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 5.2 Dihedral Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 5.3 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 5.4 Sage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.5 Sage Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 6 Cosets and Lagrange’s Theorem 102 6.1 Cosets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 6.2 Lagrange’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 6.3 Fermat’s and Euler’s Theorems . . . . . . . . . . . . . . . . . . . . . . . . . 105 6.4 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 6.5 Sage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 6.6 Sage Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 7 Introduction to Cryptography 114 7.1 Private Key Cryptography . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 7.2 Public Key Cryptography . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 7.3 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 7.4 Additional Exercises: Primality and Factoring . . . . . . . . . . . . . . . . . 121 References and Suggested Readings . . . . . . . . . . . . . . . . . . . . . . . . . . 122 7.5 Sage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 7.6 Sage Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 8 Algebraic Coding Theory 127 8.1 Error-Detecting and Correcting Codes . . . . . . . . . . . . . . . . . . . . . 127 8.2 Linear Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 8.3 Parity-Check and Generator Matrices . . . . . . . . . . . . . . . . . . . . . 136 8.4 Efficient Decoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 8.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 8.6 Programming Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 References and Suggested Readings . . . . . . . . . . . . . . . . . . . . . . . . . . 148 8.7 Sage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 8.8 Sage Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 9 Isomorphisms 153 9.1 Definition and Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 9.2 Direct Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 9.3 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 9.4 Sage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 9.5 Sage Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 10 Normal Subgroups and Factor Groups 169 10.1 Factor Groups and Normal Subgroups . . . . . . . . . . . . . . . . . . . . . 169 10.2 The Simplicity of the Alternating Group . . . . . . . . . . . . . . . . . . . . 171 10.3 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 10.4 Sage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 10.5 Sage Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179