わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

何と何を同じとし,何と何を別とするか

ブログ主のメタメタさんも,コメンターのnomisukeさんも,言いたいことを言ってあとは読者にお任せの状態,といったところでしょうか.
記事とコメントを読んで,気になったのは,何と何を同じ,何と何を別とするかが,メタメタさんとnomisukeさんと,小学校とで,異なっているところです.
誰はどうだというのを後回しにして,まず私の認識を書くことにします.プログラミングや情報科学の観点では,「3×4」と「4×3」は,文字の並びが異なっていますので,別物です.CやRubyといったプログラミング言語の式表現を借りると,「"3×4" != "4×3"」*1と表せます.その一方で,それらの評価結果は等しいとみなします.「×」の文字は都合が悪いので,「*」に置き換えまして,「3 * 4 == 4 * 3」は,いろいろなプログラミング言語で真となる式です.
数を使わなくても,何と何が同じ,何と何が別というのを見ることができます.「●●●● ●●●● ●●●●」と「●●● ●●● ●●● ●●●」を比較すると,文字の並びは,異なっています.異なる理由を言葉にしておくと,前者の4文字目は黒丸だけれど,後者の同じ位置は空白だからです.
ですが「●の数」は同じです.Rubyで,●の数を求めるには,例えば "●●● ●●● ●●● ●●●".scan("●").length と書きます.これで12が得られます."●●●● ●●●● ●●●●".scan("●").length も,評価結果は同じです.
それで,小学校ではどうなるかに,視点を移しますと,「●●●● ●●●● ●●●●」と「●●● ●●● ●●● ●●●」は区別されています.言葉にするなら,前者は「4こずつのまるが,3つある」,後者は「3こずつのまるが,4つある」といえます.
そして,●の数が等しいというのは,小学校の算数でも確かめられます.「●●● ●●● ●●● ●●●」の●の数については,1個ずつ順番に数える,「3,6,9,12」とまとめて数える(skip counting),「3+3+3+3=12」と累加で求める,そして「3×4=12」とかけ算で求める,あたりが方略として思い浮かびます.「●●●● ●●●● ●●●●」については,1個ずつ順番に数える方法のあとは,「4,8,12」,「4+4+4=12」,「4×3=12」で表すことができます.
このように,総数は同じだけれど,「●●●● ●●●● ●●●●」と「●●● ●●● ●●● ●●●」が提示された段階*2では,異なっており,求め方は同じでもその詳細も違っています.1個ずつ順番に数える方法についても,息継ぎを入れる箇所が異なります.
小学校のかけ算の授業では,このように比較をした上で,一つの落とし所となるのが「3×4と4×3,答えは同じだけれど意味が違う」です.この意味の違いは,上の学年で,例えば2.4×7と7×2.4の違いとして,現れることになります.2.4×7は,累加で答えが求められるけれど,7×2.4だとそうはいかないので,意味の拡張を図る必要があります*3
おそらくnomisukeさんにはここまでの内容について,同意いただけるのではないかと思っています*4.メタメタさんは,「意味」という言葉の使い方に異議を唱えられるでしょうか.補足しておくと,「意味の拡張を図る」は『小学校学習指導要領解説 算数編』のPDFファイルを検索すれば見つかりますし,そのことに関する研究も多数あります.7×2.4を用いた児童の実態調査は中島(1968)で行われ,今井(1994)浅田(2006)の調査でも使用されています.


あとは細々と:

  • 本文に「1つ分の数(a)×いくつ分(b)という形で導入されても、1つ分の数(b)×いくつ分(a)という形でも、いくつ分(a)×1つ分(b)という形でも、いくつ分(b)×1つ分(a)という形でも、全部の数が求められることを知っていくはずです。」とありますが,例えば「1つ分の数(b)×いくつ分(a)」が小学校の算数で採用されていないのは,それを(「1つ分の数(a)×いくつ分(b)」とともに)採用すると,「●●●● ●●●● ●●●●」と「●●● ●●● ●●● ●●●」の区別ができないことまで導出されてしまうから,と推測します.それぞれの並びを4×3,3×4と「書き分けられること」と,「かけ算の式の求め方の多様性」との比較の結果,「書き分けられること」を重視している,と見ることもできます.かけ算の式で,場面の違い(総数量が同じになることを含めて)を確認するのは日本に限った話ではないのですが,長くなるので,http://d.hatena.ne.jp/takehikom/20130615/1371274369http://d.hatena.ne.jp/takehikom/20130204/1359989997をご確認ください.
  • nomisukeさんはたびたびブルバキを参照していますが,小学校の範囲の算数(四則演算)に関しては,それより先に高木貞治の『新式算術講義』で整理されています.それと,ブルバキを参照しながら,算数・数学の基礎(あるいはそれらへの応用)を書いたものに,銀林浩『量の世界』があり,この本は『かけ算には順序があるのか』の参考文献に入っています.
  • 「●●●● ●●●● ●●●●」に「①②③④ ①②③④ ①②③④」と番号をつけ(あるいは色分けして),「①が3つ,②が3つ,③が3つ,④が3つ,だから3×4=12」とすること(トランプ配り)は,可能でしょうか.これについては,「手段としてはあり得るが,かけ算の場面に対する子どもたちの方略としては見当たらない」が答えになります.乗除算の問題に対する方略を長期調査した論文がMulligan(1992)で読めまして,「sharing*5」がこの方略に対応します.
  • プログラミング言語による,文字列のたし算やかけ算については,http://d.hatena.ne.jp/takehikoMultiply/20130424/1366807325で整理を試みました.コメントやそれに対するブログ主さんの反応で,感じたことを書いたのは,3日前以来です.

*1:試験対策に当ブログを観察している学生のために,書き足しておくと,C言語においてこの式は,文字の並びまで参照しておらず,それぞれの文字列リテラルが格納されているメモリ領域の先頭アドレスが異なるため,真(1)と評価されます.「"3×4" == "3×4"」であることは,保証されていません.またchar str1[100] = "3×4", str2[100] = "3×4";とした場合には,「str1 != str2」が成立します.これも,アドレスの比較をしているからです.と書いたところで,このことを試験に出す予定はありませんが,ともあれ知っておいてください.

*2:小学校の算数ではよく「場面」という用語が使われます.教育の縛りがなければ,個人的には「初期状態」と書きたいところです.

*3:2.4×7あるいは「小数×整数」は現在4年で,7×2.4あるいは「整数または小数×小数」は5年で学習します.

*4:違いをあえて挙げるなら,コメントの中で,被乗数にあたるものを「饅頭3個」や(カギカッコ付きの)「3」と表したりしていますが,算数で式に表す際には,その種の装飾をしません.「3個×5」というのも,算数指導においてはかなり古い式の書き方で,式に単位(古いもの)で整理を試みました.

*5:あるいはsharing one-by-one.