2017-06-28

計算機演習(第11回)

今回はHaskell編の3回目ですが、Haskellの基本型、「リスト」や「タプル」といったデータの扱い、それらを用いた関数の定義などについて学んでいます。

2017-06-27

数理科学IIA(第12回)

今回は、部分終結式の基本定理を用いた係数膨張の防止策として、縮小PRS算法 (Reduced PRS Algorithm) および部分終結式PRS算法 (Subresultant PRS Algorithm) を紹介しました。

次回以降は、多項式剰余列やGCD計算に関連する話題を紹介したいと思います。

2017-06-26

計算機数学I (2017) 第10回:中国剰余定理

今回は、拡張Euclid互除法の応用例の一つとして、中国剰余定理による連立線形合同式の解法を取り上げました。

次回も、拡張Euclid互除法の応用例の一つとして、有理数の再構成の計算を紹介します。

授業サポートページ: https://www.math.tsukuba.ac.jp/~terui/compmath1-2017

2017-06-20

数理科学IIA(第11回)

今回は、部分終結式の基本定理の証明を行いました。

次回は、部分終結式の基本定理を用いた多項式剰余列の係数膨張の改善(防止)策について説明します。

2017-06-19

計算機数学I (2017) 第9回:実数の連分数展開

今回は、Euclid互除法の応用例の一つとして、実数の連分数展開を取り上げました。

連分数は、数学の理論や計算の分野でしばしば用いられており、例として、初期の円周率の近似値の計算でも用いられています。

与えられた数が有理数の場合は、Euclid互除法を用いて、その連分数展開を求めることができます。与えられた数が無理数の場合は、Euclid互除法は使えませんが、有理数の連分数展開と同様、与えられた数を整数部と小数部に分けることで、有理数と同様の連分数近似を求めることができます。

次回は、拡張Euclid互除法の応用例の一つとして、中国剰余定理を取り上げます。

授業サポートページ: https://www.math.tsukuba.ac.jp/~terui/compmath1-2017

2017-06-14

計算機演習(第9回)

前週は出張により、授業を坂井先生とTAの皆さんにお願いしましたが、前週でMathematica編が終了しました。Mathematica編の最終回は、タートルグラフィクスによるフラクタル図形の描画を行いました。

今週から、坂井先生が担当するHaskell編に入りました。第1回目となる今回は、Haskellの言語環境の起動と対話的操作、テキストエディタの起動などから始まりました。

計算機数学I (2017) 第8回:法逆元の計算

今回は、拡張Euclid互除法の性質について触れるとともに、応用の一つとして「法逆元の計算」を紹介しました。これは、剰余環で与えられた元に乗法の逆元が存在する際に、その逆元を拡張Euclid互除法を用いて効率的に計算するものです。

次回も、拡張Euclid互除法の応用例を紹介していきます。

授業サポートページ: https://www.math.tsukuba.ac.jp/~terui/compmath1-2017

2017-06-13

数理科学IIA(第10回)

今回も、部分終結式と多項式剰余列の関係を示した「部分終結式の基本定理」の証明に向けて、2つ目の補題を説明しました。前回の補題は、1回の多項式除算に関するものでしたが、今回は、それを、多項式剰余列の中の計算に当てはめたものです。

次回は「部分終結式の基本定理」の証明を行う予定です。

2017-06-08

「ロボットは数学の大学入試問題をどうやって解くか?」

このたび、千葉県高等学校教育研究会数学部会の平成29年度総会・春季研究大会において、標記の講演の機会をいただきました。

今回の会場は千葉県茂原市の千葉県立長生高校で、今年創立130周年を迎えるという伝統校です。最初、このお話をいただいた際に、過去の講演者のリスト(部会のホームページに過去の記録が掲載されています)を見たところ、錚々たる顔ぶれで、自分も話を聴きたいような先生方ばかりでした。そのような中で、自分にどんな話ができるだろうと考えた結果、これまで共同研究に参加させていただいている「東ロボ」に関連し、数式処理で数学の演習/入試問題を解く手法の紹介を行うことにしました。

講演では、「東ロボ」のプロジェクトの概要の紹介、数学ソルバによる解答の流れの紹介を行った後、「実閉体上の一階述語論理式の量化子消去 (Quantifier Elimination; QE)」に焦点を当て、「実閉体上の一階述語論理式」とはどんなものか、QEとはどのようなことを行うものかを紹介しました。この中では、オンラインで使える数式処理システム CoCalc 上で、QEパッケージの QEPCAD を使ったQEの計算も紹介しました。本当は直接オンラインでデモンストレーションをやりたかったのですが、残念ながらインターネット接続がうまくいかなかったので、あらかじめファイルに保存しておいた計算セッションを見せながら紹介しました。

そして、QEの汎用アルゴリズムの一つである Cylindrical Algebraic Decomposition (CAD) の紹介を行いました。もちろんCADの全体像を説明する時間はありませんから、今回は、CADの要素として、1) 与えられた多項式の値が正、0、負になる領域を調べること、2) しかし、各変数ごとにすべての値を調べるのは原理的に無理なので、与えられた多項式の実零点が重なったり、実零点の個数が変化したりする特徴的な部分を調べること、3) そのために、与えられた多項式の終結式や判別式を求めること、4) その上で、1変数代数方程式の実零点の数え上げを行うこと、を説明しました。そして、1変数代数方程式の実零点の数え上げの方法としてSturm法を紹介しました。

こんな形で今回の講演を行いましたが、講演後の高校の先生方との意見交換では、いろいろと貴重なお話も伺い、大変有意義な時間になりました。今回、このような機会を作ってくださった皆様に感謝申し上げます。なお、今回のような内容の講演や、この内容に興味/関心を持つ高校生の人達とのQE計算の実習など、ご希望がございましたら、時間が許す範囲でお応えしたいと思います。

2017-06-06

数理科学IIA(第9回)

今回は、部分終結式と多項式剰余列の関係を示した「部分終結式の基本定理」の証明に向けた、最初の補題を説明しました。

次回も引き続き「部分終結式の基本定理」の証明に向けた説明を行う予定です。

2017-06-05

計算機数学I (2017) 第7回:拡張Euclid互除法

今回は、Euclid互除法および拡張Euclid互除法のアルゴリズムについて説明しました。前提となる環の基本事項は既知として話を進めます(必要事項は一通りテキストにも載っています)。

次回からは拡張Euclid互除法の応用例を紹介していきます。

授業サポートページ: https://www.math.tsukuba.ac.jp/~terui/compmath1-2017