#超算数 高校の教科書でも説明が結構雑い。

「式」という用語はひどく曖昧で、

* 1/x と (x + 1 - x)/x と (x-1)/(x(x-1)) は「式」として等しいのか?

という問いにこの教科書の読者は答えることができないと思う。

検定329 数研 新編数学II p.17
#超算数 最近の例の話題との関連では

* 1/x と (x + 1 - x)/x と (x-1)/(x(x-1)) は「式」として等しいのか?

だけではなく、

* 等しい「式」を函数とみなすときの定義域はいつも同じになるのか?

とも問いたい。

教科書の説明がひどく曖昧な問題は我々が指摘して来たことの1つ。
#超算数 数学的本質を捉えた高校生の答案には難癖をつけるが、中高の数学の教科書の説明が不明瞭な点について何も問題にしない。

さすがにそれはまずいと思います。

(下手をすれば教科書に書いてあることと違うことをやっているから減点すると言い出しかねないのではないか?)
#超算数 はい、教科書に、恒等式でない等式は方程式になるかのような【補足】がついています。ひどい❗️

恒等式でない等式であっても、単に成立していない多項式の等式扱いをする場合があります。

余談:「x=xを満たす実数xの全体を求めよ」は立派な方程式の問題です。
#超算数 「方程式」に関する補足は「ひどい❗️」のですが、赤線を引いた雑な部分はそんなにひどくはない。雑な説明で済ませざるを得ない場合はよくあるので、雑なこと自体はひどくない。

ひどいのは、教科書が雑なことを見逃して、中高生の側に厳しく当たることです。例の件はそういう意味でひどい。
#超算数 「その両辺に値が存在する限り、含まれている文字にどのような値を代入しても」成り立つ等式を「恒等式」と呼んでいるようです。

この説明だけだと、色々曖昧です。

数学的に厳密な説明にしたければ、代入の操作を集合から集合への写像として明瞭に定義しなければいけません。
#超算数 これって、複素数も代入しちゃっていいということなんですかね?

例えば

a/(x-1) + b/(x+1) + (cx+d)/(x²+1) = 1/(x⁴-1)

のようなケースでは分母を払って、x=±1,±iを代入すると計算が楽です。

教科書の側はこういう類の疑問が生じても仕方がない説明になっている。
#超算数 あと、引用されているページの範囲内には、「恒等式であること」=「多項式函数として等しいこと」から「多項式として等しいこと」が出ることの証明が書かれていません。証明せずに使うという方針に見えます。

教科書がこんな感じなので、高校生相手に厳密な議論を要求するのは無理でしょう。
#超算数 例えば、

a/x + b/(x-1) = (x+1)/(x(x-1))

a(x-1) + bx = x + 1

として、xに具体的な数(例えば0や1(笑))を代入する計算なども行ってみて、cx+d=c'x+d'が「恒等式」ならばc=c', d=d'となることをより深く納得するかもしれない。
#超算数 基本概念の説明が雑であったとしても、扱っている題材の数学的本質に関係するアイデアを大事にすることはできます。

例えば

a/x + b/(x-1)

ではx=0,1が特別な点になっていて、x=0,1をうまいこと利用することは、「極や零点に注目するとよい」という普遍的なアイデアに繋がっています。
#超算数 そういう普通の数学の理解の仕方をしていれば、

a/(x-1)+b/(x+1)=2/(x²-1)

の分母を払ってx=±1を代入する答案を書いた高校生を腐らせるような難癖をつけることは数学教育的には大変な悪だと言わざるを得ません。
#超算数 中高生の野生の答案や疑問にノータイムで適切にコメントするのは恐ろしく難しそうなことですよね。

私は数学の教養的にそういうことをできる自信は全くない。(前もそう言った。)

「明日まで待って。考えて来るから」のようになる場面は稀ではないと思う。明日で済めばいいが…。
#超算数 ものすごく色々な数学があるので、中高生が一見めちゃくちゃをやっているようで、自分が知らない数学と関係しているかもしれない。

現実には「悪いけど、私の教養の範囲内でしかコメントできないからね」ということにするしかなさそう。

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with 黒木玄 Gen Kuroki

黒木玄 Gen Kuroki Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @genkuroki

31 Mar
検索したら、清さんはすでに去年の9月に話題にしていた。

問題文に、高校の教科書のように「恒等式」と書かれていない点から、注意深く問題文を作っていることが分かる。

さらに、「これで正しい値が得られる理由を説明した動画がほしい」と書いてあって、私と意見が似ていることがよく分かる。
清さんには悪いが、わざとつまらない書き間違えを含むバージョンもRTしてしまった。

非本質的な所で非常につまらない誤りを犯すことは数学をやっている人達には共通して見られる特徴の一つだと思う。
「これで正しい値が得られる理由を説明した動画」では、ラグランジュ補間の一般的な公式まで説明してくれると(大して難しくない)、それを見た人は受験勉強を通して真に役に立つ数学的道具の1つを手に入れることができる。
Read 5 tweets
30 Mar
#数楽 私の線形代数のノート(問題集の形式、多分まだ公開していない)から関連する部分のスクショを貼り付けます。

多項式のユークリッドの互助法(最大公約多項式を多項式係数一次結合で作れること)と有理函数の部分分数展開とLagrange(-Sylvester)補間公式は本質的に同じ話題。

1/8~4/8 ImageImageImageImage
#数楽 多項式のユークリッドの互助法(最大公約多項式を多項式係数一次結合で作れること)と有理函数の部分分数展開とLagrange(-Sylvester)補間公式は本質的に同じ話題であることの続き。

5/8~8/8 ImageImageImageImage
#数楽 例:互いに異なるα_1,…,α_n∈ℂについて、f(x)=(x-α_1)…(x-α_n)とおき、p(x)をn-1次以下の複素多項式とするとき、

p(x)/f(x)=a_1/(x-α_1)+…+a_n/(x-α_n) in ℂ(x)

を満たすa_i∈ℂ達は、両辺にf(x)をかけて、xにα_iを代入することを経由して、

a_i=p(α_i)/f'(α_i)

で求められる(一意的)。
Read 15 tweets
29 Mar
わざわざ調べてコメントして下さって参考になりました。

「多項式」を「整式」と呼ぶことがローカルルールであることはよく知られていると思いますが、「有理関数」が「有理式」と同じ意味で、どちらも多項式環の商体の要素を意味することが普通になっていることは、まだ広く知られていないと。
あと、代入の操作が多くの場合に環の準同型写像(など)になっていることも、高校生に数学を教えている人達に広く知られていないかもしれないのかな、と思いました。

例えば、体Kとその拡大体Lとその元α∈Lに対して、f(x)∈K[x]にf(α)∈Lを対応させる写像K[x]→Lは環の準同型写像写像になっています。
例の続き。さらに、a∈Kとaと異なるα∈Lに対して、f(x)∈K[x, 1/(x-a)]をf(α)∈Lに対応させる写像K[x, 1/(x-a)]→Lもwell-definedな環準同型写像になっています。

x-a以外に可能な分母の種類を増やしても、同様にしてwell-definedな環準同型写像を「代入」という操作で作れます。
Read 9 tweets
28 Mar
#Julia言語 リポジトリを覗くと、Juliaのコア開発者の側がabstract typeにフィールドを付けられるようにすることを提案し、議論の結果、そうしない方が良いことを説得されるという胸熱な展開があります↓

github.com/JuliaLang/juli…

Juliaの仕様に関するリポジトリでの議論は非常に面白いです。
#Julia言語 技術的に健全な議論の模範として、過去のJuliaのリポジトリは利用可能。

誰も実現したことがないプログラミング言語の基本仕様を「みんなで話し合って決めて行く」という困難なことに成功している稀有な例。

一人のスーパースターが仕様を決定する方が楽なのに全然そうなっていない。
#Julia言語 abstract typeにfieldsを付けるという提案が覆されたポイントは以下の2つの発言だと思います。

github.com/JuliaLang/juli…

github.com/JuliaLang/juli…
【プロパティはフィールドというよりメソッドに似ています】
Read 8 tweets
28 Mar
「立式」は「問題を解くために役に立つ式を作ること」という意味だと誤解する人が多いので、たとえ鉤括弧付きでも使用する場合には説明を付けた方がよいと思いました。

「立式」の意味は概ね「『式  答え 』形式の解答欄の式の項目に先生が暗黙のうちに要求している式を書くこと」です。続く
そして、暗黙のうちに先生が前提にしていることは、

* 場面や考え方を忠実に表現する式が決まっている。
* 問題文をそういう式に変換する「立式」が重要である。

です。これは極めて有害な考え方なので、「立式」を考えることが有害であることをはっきり毎回言って欲しいと思います。
算数教育界ではそもそも「式」の概念自体が非常識なので、学校関係者と算数の話をするときには相手が「式」という言葉を使っていても、非常識な意味で「式」という言葉を使っている可能性を疑う必要があります。

算数で子供達の多くが非常識な「式」概念を強制的に学ばされています。続く
Read 7 tweets
27 Mar
#Julia言語 配列に関するforループ3題

gist.github.com/genkuroki/94a4…

①整数の和

for x in A
@ inbounds for i in eachindex(A)

よりも

for i in eachindex(A)

が遅い。配列の要素に A[i] の形式でアクセスする場合には論理的なデバッグが終わった後に @ inbounds を付けると速くなる。
#Julia言語 配列に関するforループ3題

gist.github.com/genkuroki/94a4…

②Float64の和

@ simd for x in A
@ inbounds @ simd for i in eachindex(A)

は速いが後者から@ inbounds @ simdの片方を削除するとかなり遅くなる。
#Julia言語 配列に関するforループ3題

gist.github.com/genkuroki/94a4…

③配列にはメモリオーダーでアクセスした方が速い。

2次元配列 A[i, j] の話をforループで計算する場合には、

for j in axes(A, 2)

を外側に

for i in axes(A, 1)

を内側にするべきである。これを逆にするとかなり遅くなる。
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!