「ユークリッドの互除法」を含む日記 RSS

はてなキーワード: ユークリッドの互除法とは

2020-09-02

anond:20200827182934

ユークリッド幾何学学校で教える必要がある

公理から初めて論述によって命題を示すという手法現代数学の基本

代数微分積分などは計算だけできれば解けてしまうが

ユークリッド幾何学では厳密な論証を学ぶことができる

公理から論述命題を示す手法現代数学の基本であって

もしユークリッド幾何学を学ばなければ抽象代数学などが理解できなくなることは明らか

現代数学である群論ガロア理論公理から初めて命題を導く

微分積分などだけを教えていると群論ガロア理論などが理解できなくなってしま

ガロア理論では作図が主に扱われるからユークリッド幾何学応用になっている

から元増田の役に立たない論は明らかに間違い

ユークリッド幾何学はまず中初等教育において論述を教える題材として適している

代数などはただの計算であって厳密ではないがユークリッド幾何学公理から始めて曖昧さな命題を示す

これは現代数学の基本であって群論ガロア理論を学ぶ際に必要能力

代数では多項式とは?集合とは?などが厳密に説明されていないがユークリッド幾何学には曖昧さは無い

ユークリッド幾何学が扱う題材は図形であって初等教育にも馴染みやす

現代数学を厳密に展開するには公理集合論まで遡らねばならないが

ユークリッド幾何学公理中学生でも理解できて完全

このような条件を満たす単元は他には無い

群論ガロア理論などの抽象代数学はユークリッド幾何学の考えを継承している

これらが確立されたのは18世紀であり微分積分などはそれよりも大分昔の理論から厳密性がない

ユークリッド幾何学現代数学モデルであるから論述を教えることができる

群論ガロア理論対称性を扱う数学対称性とは回転や相似変換などの一般化だから

やはりユークリッド幾何学を学ぶことは群論ガロア理論を学ぶことに役立つ

特に群論では、群の正規群(特異点を持たない群)による商で対称性を分類する

この割り算にはユークリッドの互除法アルゴリズムを用いることができるからユークリッド幾何学の応用になっている

群論の一部であるリー群ではユークリッド空間の回転である直交群を扱うからこれもユークリッド幾何学が直接役に立つ

ユークリッド幾何学では公理から始めて命題証明するがこれは現代数学の基本

群論ガロア理論もこのスタイル継承していてユークリッド幾何学を学ばないと抽象代数学が理解できない

ガロア理論ユークリッド幾何学と同様に、対称性公理から作図可能性を論ずる

これはいくつかの公理から始めて可能な手順の組み合わせを厳密に論述することで様々な図形を作図していく

ヒルベルト提唱した円積問題などもこの応用であって、現代数学において極めて重要

ユークリッド幾何学公理から始めて論述のみによって命題証明する

これは現代数学の基本であってガロア理論ヒルベルト理論などがその手法を受け継いでいる

これは現代数学において極めて重要

代数微分積分はただの計算であって論述を教えていないか

ユークリッド幾何学をやらないと抽象代数学などを理解できなくなってしま

ガロア理論は作図を扱うからユークリッド幾何学知識必須

代数などでは計算しかやらず概念定義曖昧だがユークリッド幾何学論述には曖昧さが一切無く

ユークリッド幾何学は図形を扱うから中高生にも理解やす

初等教育論述を教える題材として適しており他にこのような条件を満たす題材は無い

2020-08-27

中学高校数学にいわゆるユークリッド幾何学不要

ここでいう「ユークリッド幾何学」とは、座標空間ベクトル三角関数微分積分などの解析的手法を用いないいわゆる総合幾何学のことです(*1)。2020年8月現在高校数学カリキュラムでいえば、「数学A」の「図形の性質」に該当する分野です。

ユークリッド幾何学不要だと思う理由単純明快で、何の役にも立たないからです。大学に入って、「補助線を引いて、相似な三角形を作って~」とか「コンパスと定規による作図」みたいなパズルゲームをやることは絶対にありません(*2)。これは常識で考えても分かると思います。たとえば工学研究で、ある物体の弧長や面積などを測定しなければならないとして、ユークリッド幾何学の補助線パズル適用できる多角形や円などしか測れないのでは話になりません。一方、座標空間ベクトル三角関数微分積分などの手法一般的現象記述する上で必ず必要になります

もちろん、たとえば三角比定義するには、「三角形内角の和は180度である」とか「2角が等しい三角形は相似である」といった初等幾何学性質必要になります。そのようなものを全て廃止せよと言っているわけではありません。しかし、高校1年生で習う余弦定理:

OABに対して、|AB|^2 = |OA|^2 + |OB|^2 - 2|OA||OB|cos∠AOB

証明してしまえば、原理的にはユークリッド幾何学問題は解けます。それ以降は、ユークリッド幾何学的な手法問題設定にこだわる必要はないと思いますし、実際それで問題ありません。

現状、少なくない時間ユークリッド幾何学に費やされています数学の1単元を占めているだけではなく、その他の単元にもユークリッド幾何学の発想に影響された例や問題が多く登場します。たとえば、複素平面において4点の共円条件や垂直二等分線を求めさせる問題など。そして最も労費されているのは生徒の自習時間です。以前よりマシになったとはいえ大学入試等には技巧的な図形問題が出題されるため、受験生はその対策に多大な時間を費やしています

高校数学では以下のような事項が重要だと思いますユークリッド幾何学を学ばせている時間があったら、このような分野を優先的に修められるようにすべきです。

これらの分野は数学手法としても非常に強力ですし、大学以降で数学を学ぶ際、現実的問題数学物理問題として正確に記述する際に必ず必要になります。仮にユークリッド幾何学が何らかの場面で応用されるとしても、微分積分などと同レベル重要だと真剣に主張する人っていらっしゃるでしょうか?

ユークリッド幾何学初等教育で教えるべきだとする根拠には、大雑把に言って以下の4つがあると思います

  1. ユークリッド幾何学では証明の考え方を学ぶことができる
  2. 図形問題代数や解析の問題よりも直感的で親しみやす
  3. ユークリッド幾何学問題を解くことで「地頭」「数学直観」などが鍛えられる
  4. ユークリッド幾何学歴史的重要である

しかし、これらはいずれも正鵠を射ていません。

まず①は明らかにおかしいです。ユークリッド幾何学に限らず、数学のあらゆる命題証明されるべきものからです。高校教科書を読めば、相加平均・相乗平均の不等式、点と平面の距離公式三角関数加法定理微分ライプニッツ則や部分積分公式など、どれも証明されていますそもそも数学問題はすべて証明問題です。たとえば、関数極値問題は、単に微分が0になる点を計算するだけではなく、そこが実際に極値であるかそうでないか定義や既知の性質に基づいて示す必要があります。したがって、ユークリッド幾何学けが特に証明の考え方を学ぶのに有効だという理由はありません。

②もおかしいです。図形問題を扱うのはユークリッド幾何学だけではないからです。ベクトル微分積分でも図形問題を扱います。たとえば、三角形の5心の存在や、チェバの定理メネラウス定理などはベクトルを用いても容易に示すことができます。また言うまでもなく、曲線の接線は微分で求めることができ、面積や体積は積分で求めることができます。また、ユークリッド幾何学手法問題ごとに巧い補助線などを発見しなければいけないのに対し、解析的な手法一般方針が立てやすく汎用的です。したがって、図形問題を扱うのにユークリッド幾何学手法にこだわる理由はありません。

③は単なる個人思い込みであり、科学的な根拠はありません。そもそも数学教育の目的は「地頭」などを鍛えることではなく、「大学や実社会において必要数学素養を身につけること」のはずです。また、これも上ふたつと同様に「ユークリッド幾何学以外の数学では、『数学直観』などは鍛えられないのか」という疑問に答えられておらず、ユークリッド幾何学特別視する理由になっていません。

④もおかしいです。そもそも歴史的重要である」ことと「初等教育で教えるべき」という主張には何の関係もありません。歴史的重要ならば教えるというなら、古代バビロニアインド中国などの数学特に扱わないのはなぜでしょうか。もっと言えば、文字式や+-×÷などの算術記号が使われ始めたのでさえ、数学史的に見ればごく最近のことですが、昔はそれらを使わなかったからといって、今でもそれらを使わず数学記述するべき理由があるでしょうか。

数学重要なのはその内容であるはずです。ユークリッド幾何学擁護する論者は、「(表面的に)計算問題に見えるか、証明問題に見えるか」のようなところに価値を置いて、一方が数学教育的に有意疑だと見なしているようですが、そんな分類に意味は無いと思います

大昔は代数計算方程式の解法(に対応するもの)は作図問題帰着していたようですが、現代でそれと同様の手法を取るべき理由は全くありません。記述する内容が同じであれば、多項式や初等解析のような洗練された方法重要な結果を導きやす方法を用いればよいに決まっています数学史家は別として)。同様に、ユークリッド幾何学も、解析的な手法で解ければそれでよく、技巧的な補助線パズルなどに興じたり、公理的な方法にこだわる必要はありません。

たとえば、放物線は直線と点から距離が等しい点の軌跡として定義することもできますが、初等教育重要なのは明らかに2次関数グラフとして現れるものです。放物線を離心率や円錐の断面などを用いて導入したところで、結局やるのは二次関数の増減問題なのですから最初から2次関数グラフとして導入するのは理にかなっています数学教育の題材は「計算問題証明問題か」などではなく、このような観点で取捨選択すべきです。

三角比などを学んだあともユークリッド幾何学を教えたり、解析的な手法では煩雑になるがユークリッド幾何学範疇ではエレガントに解けるような問題を出して受験生を脅したりするのは、意味が無いと思います。それは、「掛ける数」と「掛けられる数」を区別したり、中学連立方程式を学ぶのに小学生鶴亀算を教えるのと同様に、無駄なことをしていると思います

----

(*1)

現代数学では、n次元ベクトル空間R^n = Re_1⊕...⊕Re_nに

(e_i, e_j) = δ_i,j (クロネッカーデルタ)

内積定義される空間上の幾何学はすべてユークリッド幾何学に分類されます。したがって、上にあげた座標空間ベクトル微分積分、一次変換なども敢えて分類すればユークリッド幾何学です。しかし、ここではその意味でのユークリッド幾何学不要と言っているのではありません。飽くまでも、技巧的な補助線問題や、公理的な方法にこだわることが不要だと言っています

(*2)

数学科の専門課程で学ぶガロア理論では、コンパスと定規による作図可能性が論じられますが、これは「作図問題ガロア理論が応用できる」というだけであり、「ガロア理論を学ぶのに作図の知識必要」というわけではありません。

2020-05-22

中学高校数学ユークリッド幾何学不要である

中学高校数学から、いわゆるユークリッド幾何学廃止してよい。理由単純明快で、何の役にも立たないからだ。

大学に入ったら、どの学部に行っても、「補助線を引いて、相似な三角形を作って〜」などと言ったパズルをやることは絶対にない。メネラウス定理高校卒業以降(高校数学指導以外で)使ったことのある現代はいないだろう。こういうことは、別に高等数学知識の無い高校生でも、常識で考えて分かると思う。たとえば工学で、弧長や面積を測定する機器必要になったとして、補助線パズル適用できるごく一部の多角形などしか測れないのでは話にならない。現代数学および科学技術を支えているのは、三角関数ベクトル微分積分などを基礎とする解析的な手法である

もちろん、たとえば三角比定義するには「三角形内角の和は180°である」とか「2角が等しい三角形は相似である」等のユークリッド幾何学定理必要になる。そういうものを全て廃止せよと言っているわけではない。しかし、余弦定理まで証明してしまえば、原理的にはユークリッド幾何学問題は解ける。また、実用上もそれで問題ない。したがって、余弦定理を初等的な方法で示したら、ユークリッド幾何学手法はお役御免でよい。

高校数学では、以下の分野が特に重要だと思われる。

これらはいずれも、高等数学を学ぶ際に欠かせない基礎となる分野である。仮にユークリッド幾何学が何らかの場面で使われるとしても、いくらなんでも微分積分などと同等以上に重要だと主張する人はいないだろう。

現在、これらの分野は十分に教えられていない。微分方程式と一次変換は現在2020年5月)のカリキュラムでは教えられておらず、ベクトル文系範囲から除かれ、代わりにほとんど内容の無い統計分野が教えられている。また、高校生にもなって、コンパスと定規による作図みたいなくだらないことをやっている。本当に、どうかしているとしか言い様がない。

ユークリッド幾何学を教えるべきとする根拠代表的ものは、証明の考えに触れられるというものだ。つまり代数や解析は計算主体であるが、ユークリッド幾何学証明主体なので、数学的な思考力を鍛えられるというものだ。

しかし、これは明らかに間違っている。別にユークリッド幾何学の分野に限らず、数学のあらゆる命題証明されなければならないからだ。実際、高校数学教科書を読めば、三角関数加法定理や、微分ライプニッツ則など、証明が載っている。そもそも数学問題は全て証明問題である関数極値問題は、単に微分が0になる点を計算するだけではなく、そこが実際に極値であることを定義に基づいて示さねばならない。数学思考力を養うのに、ユークリッド幾何学が他の分野より効果的だという根拠は無い。

2018-09-20

学習指導要領を読んでから書いてみる

学習指導要領から○○が消えたー。あり得ない。」は、教わった世代ノスタルジーを含むケースが多い。

ベクトルが消えた!物理が教えられない!」 → 「力の合成くらい物理教師が頑張れ。どうせ微積を使わない高校物理なんか制限だらけだ。」

行列が消えた!3DCG機械学習理解できない!」 → 「大学線形代数で頑張らせろ。どうせ高校行列なんてタダの計算練習パズル行列式も固有値も教えない程度だ。」

数学Cがなくなっていた時代がかわいそう」 → 「数学Ⅲ 3単位数学C 2単位を新しい数学Ⅲ 5単位として教えていただけ。どうせ数学C取ってる奴はほぼ数学Ⅲやってたんだし。」

個人的には思うのだが、「理工系人材には高校数学の○○が必要だ」というのは高校数学に期待しすぎ。

あとは90%以上の人間高校まで進学する時代に、共通教養として必要な内容が高校数学でしょ?

から確率だけではなく統計ガンガン数学に入れているわけ。

ちなみに新しい学習指導要領でも復活する数学Cまで学習すればベクトルあるよ? 高校物理力学に間に合わないだけで。

今の学習指導要領数学Iに統計が入り、箱ひげ図や四分位図が必修だけど、40代以下はこんなのやってないっしょ。

今度はそれらは中学数学下りていく。統計の検定まで高校数学に入ってくる。

新しい学習指導要領で学ぶ内容は、これら。

数学Ⅰ:① 数と式  ② 図形と計量  ③ 二次関数  ④ データ分析(仮説検定の考え方を含む)

数学A:① 図形の性質  ②場合の数と確率期待値を含む) ③数学人間活動整数ユークリッドの互除法、2進数など)

数学Ⅱ:① いろいろな式  ② 図形と方程式指数関数対数関数 ④ 三角関数  ⑤ 微分積分の考え

数学B:① 数列 ② 統計的な推測(区間推定及び仮説検定を含む) ③数学社会生活(散布図に表したデータを一次関数などとみなして処理することも扱う)

数学Ⅲ:① 極限 ② 微分法 ③積分

数学C:① ベクトル ② 平面上の曲線と複素数平面 ③ 数学的な表現の工夫(工夫された統計グラフや離散グラフ行列などを取り扱う)

ベクトルあるよ?

行列あるよ?

今は、一般受験以外に多様な方法大学入学してくる。既習範囲理解確認や基礎の定着のために、まともな理工系大学なら昨今は非一般受験組にはe-ラーニングなどで補習や指導をしている。

そういう意味では、大学から教養部を廃止して、早くから専門バカを作り出す改革が失敗だったのでは?

教養部があったら高校学習内容を研究して大学の初年度数学の改善を続けられる教員が残れたのでは。

2014-12-17

http://anond.hatelabo.jp/20141217005036

fizzbuzzとかアルゴリズムとも呼べねえよタコ。

ありゃプログラムできるフリしたニセモノを簡単に見分けることができるっていう寓話の一種だ。

本来なら、ユークリッドの互除法か、エラトスネスのふるいか、QuickSortかその全部を面接で得意な言語で書かせるよ。

それができるやつは最低限、コンピュータってやつの根っこが解ってるし、できないやつはたとえフレームワークがいじれてもコンピュータがなんなのかわからない奴だから、いずれ行き詰まる。

双方向リストクラステンプレートを書かせる時もあるな。

そういうのは常識なんだよ。

いくら世の中に一見お手軽に見える技術フレームワークミドルウェアがあるからって、双方向リストもQuickSortも書けない奴は、データベース設計ミスるんだよ。

フレームワークってのはな、あれだ。レトルト食品だよ。

レンジでチンすりゃバカでも動かせる。

ミドルウェアってのは、まあ高級調味料だと思えばいい。

トーシロが使い方間違えたら台無しになるんだよ。

プロなら調味料フレームワーク自力で仕込める程度の腕前は持って、その上で、あえて枯れた既成のミドルウェアフレームワークを使うんだよ。

今時のフレームワークミドルウェアオープンソースから自分で作れるくらいの技量がなかったら中がバグってたら対処できないだろうが

Railsでお手軽なサイト作っていい気になっていっちょまえなことほざいてんじゃないよ

2011-09-23

「続 新しいプログラミングパラダイム」の目次


第1章 並行プログラミングGHC (上田和紀)
	1.1 はじめに
	1.2 ターゲットを明確にしよう
	1.3 はじめが大切
	1.4 GHCが与える並行計算の枠組み
		1.4.1 GHCにおける計算とは,外界との情報のやりとり(通信)である
		1.4.2 計算を行う主体は,互いに,および外界と通信し合うプロセスの集まりである
		1.4.3 プロセスは,停止するとは限らない
		1.4.4 プロセスは,開いた系(open system)をモデル化する
		1.4.5 情報とは変数と値との結付き(結合)のことである
		1.4.6 プロセスは,結合の観測と生成を行う
		1.4.7 プロセスは,書換え規則を用いて定義する
		1.4.8 通信は,プロセス間の共有変数を用いて行う
		1.4.9 外貨も,プロセスとしてモデル化される
		1.4.10 通信は,非同期的である
		1.4.11 プロセスのふるまいは,非決定的でありうる
	1.5 もう少し具体的なパラダイム
		1.5.1 ストリームと双方向通信
		1.5.2 履歴のあるオブジェクト表現
		1.5.3 データ駆動計算と要求駆動計算
		1.5.4 モジュラリティと差分プログラミング
		1.5.5 プロセスによるデータ表現
	1.6 歴史的背景と文献案内
	1.7 並行プログラミング効率
	1.8 まとめ


第2章 様相論理テンポラル・プログラミング (桜川貴司)
	2.1 はじめに
	2.2 様相論理
	2.3 時制論理
	2.4 多世界モデル
	2.5 到達可能性と局所性
	2.6 純論理プログラミングへ向けて
	2.7 Temporal Prolog
	2.8 RACCO
	2.9 実現
	2.10 まとめと参考文献案内


第3章 レコードプログラミング (横田一正)
	3.1 はじめに
	3.2 レコードと述語の表現
	3.3 レコード構造とφ-項
		3.3.1 φ-項の定義
		3.3.2 型の半順序と束
		3.3.3 KBLLOGIN
	3.4 応用――データベース視点から
		3.4.1 演繹データベース
		3.4.2 レコードプログラミングデータベース
		3.4.3 いくつかの例
	3.5 まとめ
	3.6 文献案内


第4章 抽象データ型とOBJ2 (二木厚吉・中川 中)
	4.1 はじめに
	4.2 抽象データ型と代数言語
		4.2.1 抽象データ型
		4.2.2 代数言語
		4.2.3 始代数
		4.2.4 項代数
		4.2.5 項書換えシステム
	4.3 OBJ2
		4.3.1 OBJ2の基本構造
		4.3.2 モジュールの参照方法
		4.3.3 混置関数記号
		4.3.4 モジュールパラメータ化
		4.3.5 パラメータ機構による高階関数記述
		4.3.6 順序ソート
		4.3.7 属性つきパターンマッチング
		4.3.8 評価戦略の指定
		4.3.9 モジュール表現
	4.4 おわりに


第5章 プログラム代数FP (富樫 敦)
	5.1 はじめに
	5.2 プログラミングシステム FP
		5.2.1 オブジェクト
		5.2.2 基本関数
		5.2.3 プログラム構成子
		5.2.4 関数定義
		5.2.5 FPプログラミングスタイル
	5.3 プログラム代数
		5.3.1 プログラム代数則
		5.3.2 代数則の証明
		5.3.3 代数則とプログラム
	5.4 ラムダ計算拡張
		5.4.1 ラムダ式拡張
		5.4.2 拡張されたラムダ計算の簡約規則
		5.4.3 そのほかのリスト操作演算子
		5.4.4 相互再帰定義式
		5.4.5 ストリーム(無限リスト)処理
	5.5 FPプログラム翻訳
		5.5.1 オブジェクト翻訳
		5.5.2 基本関数翻訳
		5.5.3 プログラム構成子の翻訳
		5.5.4 簡約規則を用いた代数則の検証
	5.6 おわりに


第6章 カテゴリカル・プログラミング (横内寛文)
	6.1 はじめに
	6.2 値からルフィズムへ
	6.3 カテゴリカル・コンビネータ
		6.3.1 ラムダ計算意味論
		6.3.2 モルフィズムによる意味論
		6.3.3 カテゴリカル・コンビネータ理論CCL
	6.4 関数型プログラミングへの応用
		6.4.1 関数型プログラミング言語ML/O
		6.4.2 CCLの拡張
		6.4.3 CCLに基づいた処理系
		6.4.4 公理系に基づいた最適化
	6.5 まとめ


第7章 最大公約数――普遍代数多項式イデアル自動証明におけるユークリッドの互除法 (外山芳人)
	7.1 はじめに
	7.2 完備化アルゴリズム
		7.2.1 グラス置換えパズル
		7.2.2 リダクションシステム
		7.2.3 完備なシステム
		7.2.4 完備化
		7.2.5 パズルの答
	7.3 普遍代数における完備化アルゴリズム
		7.3.1 群論の語の問題
		7.3.2 群の公理の完備化
		7.3.3 Knuth-Bendix完備化アルゴリズム
	7.4 多項式イデアル理論における完備化アルゴリズム
		7.4.1 ユークリッドの互除法
		7.4.2 多項式イデアル
		7.4.3 Buchbergerアルゴリズム
	7.5 一階述語論理における完備化アルゴリズム
		7.5.1 レゾリューション法
		7.5.2 Hsiangのアイデア
	7.6 おわりに


第8章 構成的プログラミング (林 晋)
	8.1 構成的プログラミング?
	8.2 型付きラムダ計算
	8.3 論理としての型付きラムダ計算
	8.4 構成的プログラミングとは
	8.5 構成的プログラミングにおける再帰呼び出し
	8.6 おわりに:構成的プログラミング未来はあるか?


第9章 メタプログラミングリフレクション (田中二郎)
	9.1 はじめに
	9.2 計算システム
		9.2.1 因果結合システム
		9.2.2 メタシステム
		9.2.3 リフレクティブシステム
	9.3 3-Lisp
	9.4 リフレクティブタワー
	9.5 GHCにおけるリフレクション
		9.5.1 並列論理言語GHC
		9.5.2 GHC言語仕様
		9.5.3 GHCメタインタプリタ
		9.5.4 リフレクティブ述語のインプリメント
	9.6 まとめ

2010-08-12

http://anond.hatelabo.jp/20100812180642

どのレベルの応用かよくわかんないけど、拡張ユークリッドの互除法で逆元を求められるって話につながるんじゃないの

 
ログイン ユーザー登録
ようこそ ゲスト さん