BU CAS Computer Science 235
Algebraic Algorithms









2016-01-19lecture:
logic & sets
  • lecture notes
  • introduction and motivation
  • review of logical formulas
  • review of set theory
2016-01-21lecture:
logic & sets
  • lecture notes
  • logical quantifiers
  • comprehensions
  • set products & relations
2016-01-26lecture:
logic & sets
  • lecture notes
  • reflexivity, symmetry, & transitivity
  • equivalence relations
  • set quotients
2016-01-28lecture:
modular
arithmetic
  • lecture notes
  • congruence classes of integers
  • operations on congruence classes
  • solving equations over ℤ/m
  • algebra of congruence classes
2016-02-01
11:59 PM EST
assignment
2016-02-02lecture:
modular
arithmetic
  • lecture notes
  • more algebra of congruence classes
  • Euclid's lemma
  • solving equations & Euclid's lemma
2016-02-04lecture:
modular
arithmetic
  • lecture notes
  • ℤ/pℤ as a set of permutations
  • generating random numbers
  • greatest common divisor
  • generalized Euclid's lemma
  • finding coprimes
2016-02-09lecture:
modular
arithmetic
  • lecture notes
  • more on finding coprimes
  • linear congruential generators
  • infinitude of primes
  • Fermat's little theorem
  • Fermat primality test
2016-02-11lecture:
modular
arithmetic
  • lecture notes
  • detecting probable primes
  • generating probable primes
  • multiplicative inverses in ℤ/m
  • Chinese remainder theorem (CRT)
  • applications of CRT
2016-02-16
11:59 PM EST
Monday sched.
assignment
2016-02-18lecture:
modular
arithmetic
2016-02-23lecture:
modular
arithmetic
  • lecture notes
  • Bézout's identity
  • extended Euclidean algorithm
  • Euler's totient function
  • Euler's theorem
2016-02-25lecture:
review
2016-02-26
11:59 PM EST
assignment
2016-03-01
Tuesday
9:35-10:35 AM
midterm
exam
    2016-03-03lecture:
    modular
    arithmetic
    • review of midterm solutions
    • lecture notes
    • more on Euler's totient function
    • closure of (ℤ/mℤ)*
    2016-03-08recess
      2016-03-10recess
        2016-03-15lecture:
        complexity
        • lecture notes
        • problem complexity
        • efficient arithmetic algorithms
          • addition, multiplication
          • modular exponentiation
        2016-03-17lecture:
        complexity
        • lecture notes
        • efficient arithmetic algorithms
          • division and modulus
          • gcd and inversion
          • solving CRT systems
        • efficiency vs. intractability
        2016-03-22lecture:
        complexity
        • lecture notes
        • complexity reductions
        • intractable problems
          • factoring
          • computing φ
          • RSA problem (e roots)
          • discrete logarithm problem
        • computing square roots in ℤ/m
        2016-03-24lecture:
        complexity
        • lecture notes
        • congruent squares problem
        • Hensel's lemma
        • Rabin encryption
        2016-03-28
        11:59 PM EDT
        assignment
        2016-03-29lecture:
        complexity
        • lecture notes
        • applications of intractability
          • RSA and Rabin encryption
          • Diffie-Hellman protocol
          • more random number generators
        2016-03-30
        Wednesday
        sections
        quiz
          2016-03-31lecture:
          algebraic
          structures
          • lecture notes
          • algebra of permutations
            • swap & adjacent swap
            • shift/cyclic
            • multiplication-induced
            • decomposition into swaps
          • examples of isomorphisms
          2016-04-05lecture:
          algebraic
          structures
          • lecture notes
          • more isomorphisms and examples
          • homomorphic encryption
          2016-04-07lecture:
          algebraic
          structures
          • lecture notes
          • compression as an isomorphism
          • generators and closures
          • linear congruence theorem (LCT)
          2016-04-11
          11:59 PM EDT
          assignment
          2016-04-12lecture:
          algebraic
          structures
          2016-04-14lecture:
          algebraic
          structures
          • lecture notes
          • more on the CRT isomorphism
          • generalized CRT practice
          • applications of the LCT
            • unreliability and errors
          2016-04-19lecture:
          algebraic
          structures
          • lecture notes
          • algebraic properties
            • monoids
            • groups
          • subgroups
          • direct products of groups
          2016-04-21lecture:
          algebraic
          structures
          • polynomials in ℤ/m
          • representing groups as functions
          • Shor's algorithm
          2016-04-26lecture:
          review
          2016-04-27
          11:59 PM EDT
          assignment
          2016-04-28lecture:
          review
            2016-05-03
            Tuesday
            9:00-11:00 AM
            EPC 205
            final
            exam