計算代数(後期2単位)

客員講師 小﨑 俊二

1.授業のねらい・到達目標

計算代数はコンピュータを利用した代数アルゴリズムを研究する学問である。これは、情報セキュリティ技術という大きな応用分野を得て、コンピュータ技術の進歩とともに長足の進歩を続けている分野である。そこで、本科目では現代的な計算代数の研究やその情報セキュリティ技術への応用に必要な素養の習得を目的とし、基本的な計算代数アルゴリズムについて解説するとともに、様々なアルゴリズムやその着想についても触れる。具体的には、計算代数の基本的対象であり、情報セキュリティ技術の理解に必要な多倍長整数及び1変数多項式の基本演算アルゴリズムについて、その構成と漸近計算量を理解することを目標に講義を行う。

2.授業計画

  1. 1変数多項式の基本演算
    1. 1変数多項式のコンピュータ上の表現
    2. 1変数多項式の四則演算
    3. 1変数多項式の最大公約元の計算
  2. 多倍長整数演算
    1. 多倍長整数のコンピュータ上の表現
    2. 多倍長整数の四則演算
    3. 多倍長整数の最大公約数の計算
  3. 1変数多項式の高速乗算アルゴリズム
    1. Karatsuba乗算アルゴリズム
    2. 基本FFT乗算アルゴリズム
    3. SchonhageとStrassenのFFT乗算アルゴリズム
    4. ShoupのFFT乗算アルゴリズム
    5. 高速除算アルゴリズム

3.教科書

特に指定しない。

4.参考書

  • von zur Gathen, Gerhard, Modern Computer Algebra 3rd ed., Cambridge U.P., 2013.
  • Knuth. The Art of Computer Programming vol.2 3rd ed., Addison-Wesley, 1998.
  • Crandall, Pomerance. Prime Numbers, 2nd ed., Springer, 2005.
  • Brent, Zimmermann. Modern Computer Arithmetic, Cambridge U.P., 2011.
  • Warren. Hacker's Delight, Addison-Wesley, 2003.
  • Shoup. A Computational Introduction to Number Theory and Algebra 2nd ed., Cambridge U.P., 2008.

5.関連科目

「アルゴリズム基礎」で扱う漸近計算量について事前知識として必要とする。 また、理工系一般教養レベルの線形代数で扱う行列等の知識を必要とする。

6.成績評価の方法

出席状況と課題レポート(1回)の成績による。