義務教育では、

  ■ 小学校 : 算数
  ■ 中学校 : 数学

を学習しますが、算数では日常で以下つで使用するものが多く登場します。

 つまり、 【 判断や思考に必要な部品 】 を知り理解をすることで正しい結果の算出を行うことが出来るようになります。高学年では、統計学の分野が登場するのと、 【 論理ゲートのNOTの判定 】 の・ようなものが登場するのでプログラミング言語を使った時の

  ■ 一 致 : ==
  ■ 不一致 : !=

のような演算子を使用した 【 二者の対比を行った際の判定 】 を数学的な処理で理解を深めることが出来るようになっています。

 また、統計学を使うので、 【 集合 】 を扱うことになるので、 【 データの集まりから見られる傾向 】 を見る場合にどのような処理があるのかを知ることが出来ます。

 学校では

  ■ 身体測定
  ■ 体力測定
  ■ 中間・期末テストの結果

のような 【 現在の個人のデータ 】 が出るような行事がありますが、このデータも現在の傾向を知る上での指標になります。

 例えば、授業を行ってその理解度を示すのがテストになりますが、学んだことを実際に問題に対して使用できるのかを試す場合、その知識を使えば解けるパズルを用意すればいいので、そういった物を出題すれば理解度の確認が出来ます。これが、各教科で用意されている 【 テスト 】 になりますが、算数だと計算ドリルなどがそれになりますが、 【 授業で行ったものだと解き方を知っている 】 ので正しい答えを導き出すことが出来ますが、 【 学んでいないものは解らない 】 ので正しい答えに行き着かないわけです。

 これは、個別のカリキュラムだと

  ■ カリキュラムの内容の理解
  ■ 理解度の確認

と言う構成になっているので、 

  ■ 教科書の内容の解説
  ■ 理解度の確認

と言う形で授業が進みます。この確認だけだと知識が消えるので、

  ■ 宿題でおさらいをしておく

ことで、問題を徳回数が増えるので知識が定着するわけです。

 何かの理由で学校に通えず授業を受けることが出来ない人だと 【 独学 】 で内容を理解することになりますが、教科書をベースにする場合でインターネットがない場合だと、

  ■ 教科書
  ■ 教科書ガイド

と言う組み合わせで、理解を深める事が出来ます。教科書もある程度丁寧に書いてあるのですが、ガイドではそれがどういったものなのかの解説がされているので更に細かい説明が行われています。

 この組み合わせで 【 授業の内容 】 の理解を深めて、その上で、

 【 知識の状態の確認のための問題集を購入する 】

ことになります。その為、 【 訳も解らず問題集を購入してわからない問題が並んだだけのものを購入しただけになる 】 ので、問題集を購入する前にその問題が解けるだけの知識を付けないと対応できないので、基礎学力を満ち付けて拡張するようなカリキュラムを用いて学習を進める事になります。

 学校の一般科目だけでなく、免許の取得や知らない分野を理解する場合には知識が必要になるので、一般科目の学習と同じように知識の拡張を刷ることになります。

 知識の拡張を行う際には、 【 理解が可能な記述のもの 】 を選択することになります。つまり、

【 現在の言語レベルで理解できるテキスト 】

を用意して学習を行うことになります。日本語のテキストを例に出すと小学校一年生の語学レベルと六年生では全く違うので、同じ物の解説書でも小学校一年生用の物と六年生用のものでは異なります。

 また、一年生と三年生でも異なるので、【 言語への対応がどの程度で来ているのか? 】 によって選択するものが変わってきます。この辺りは、 【 課題図書 】 として選別されるものの文章の構造や国語の文章の構成についても言えることですが、学習して身についていると思われる過去の知識があれば対応できるようなレベルのものが用意されています。

 これが、 【 語学レベルに合わせた文章 】 になります。当然、学習を行う際にも必要となる語学レベルが違ってきますし、高度なものになると 【 基礎分野が欠落しているだけで全く理解が出来ない 】 ので、進学後に学ぶ内容は進学前に学んだものが理解できていないと対応できません。

 これと同様に 【 新規に知識をつける 】 場合には、 【 テキストの文面の理解が出来ないだけで知識の取得が不可能になる 】 ので、 【 現在の言語レベルや知識レベルで対応できるもの 】 を選ぶことになります。

 と言っても、三角関数の理解に三角比や三平方の定理の理解が出来ていなければならないと同じように、高校の数学では中学校までの数学の知識が必要なものが多いですし、大学の数学だと高校の数学は部品のようにしようするので、理解できていないと全くわからなくなります。この辺りは、中学校の数学では、小学校の算数の知識を部品のように使用する事が多いのと同じですが、知識の場合 【 基礎の理解 】 を行い、その前提で知識の拡張をするので、その辺りから欠落すると大抵の場合、難易度の低めな内容で頓挫することになります。

 その為、 【 基礎学習 】 で応用分野で使用する部分のち会をこなっておき、その拡張をしていくことで、基礎分野の本質や応用分野への対応を刷ることになりますが、この基礎分野も 【 個人が理解できる言語レベルで書かれたものを選択しないと理解できない 】  ので、学習を行う際には 【 教材選び 】 から考える必要があります。

 インターネットを使用できる場合だと、

  ■ 内容が正しいこと

が前提になりますが、その上で

  ■ 現在の知識で不足がない状態であること
  ■ 現在の言語レベルで内容が理解できる物

を基準に選ぶことになります。こうした学習の基礎は、文章の理解と記録を行うために必要となる語学と処理の方法や思考や判断を行う際に必要になる数学の分野になりますから、小学校低学年ではこの基本となる能力を上げるために 【 国語 】 と 【 算数 】 に絞って重点的に学習するようになっています。当然、このほかにも教科はあるので、 【 座学では身につかない能力の拡張をする為の物 】 も用意されています。

 これを身に着けたあとに 【 他の分野への対応 】 として小学校三年生では五教科の状態になるのですが、現在は小学校三年生でも英語のカリキュラムが始まるので英語の比率が高くなっています。

 これも 【 語学への対応 】 という 【 テキストを呼んで理解できる状態 】 という基礎能力があって成り立っているわけですが、算数で学習した基礎分野の理解があるので複雑な処理が出来るようになっています。

 基礎がないと言う状態は、この 【 国語と算数の基礎すらない状態と同じ 】 なので、物事の理解が出来ないのも至極当然な事と言えます。

 その為、コンピューターを触ったことのない人がいきなり 【 AI関連の勉強をする 】 としても、

  ■ OSの入ったPCの使い方
  ■ 使用する言語の書式
  ■ 使用するライブラリの理解
  ■ 線形代数
  ■ 行列
  ■ 微積分
  ■ 論理
  ■ 剰余
  ■ 数学的帰納法
  ■ 順列・組み合わせ
  ■ 再帰
 
などは必要になりますし、

  ■ 指数的な爆発
  ■ 計算不可能な問題

などが必要になります。AIの基礎分野でも

  ■ 微積分
  ■ 線形代数
  ■ 確率統計

辺りは必要になるので、この辺りは高校や大学の数学のカリキュラムになるので、その基本となるものとして義務教育の知識がないと何も始まりませんし、微積分は高校でも登場しますが、使用するのは大学レベルのものなので、高校の数学の基礎が出来ていることが前提になります。

 線形代数は、三角関数の直角三角形ん縛られた条件を外して処理が出来るものになりますが、実際に扱うのは行列なので、 【 他変数の構造体に対応するための処理の方法 】 になります。現在は高校でも情報Iがスタートしているので、データサイエンスの分野に触れる機械があると思いますが、ここで使用する構造物が二次元配列などの 【 多次元の配列 】 になります。配列自体が 【 集合 】 を扱うものになりますが、この集合内のデータの演算や解析を行うことで状態の判断を刷ることが出来ます。

 ちなみに、AIには

  ■ ルールベースのアルゴリズム
  ■ 機械学習
  ■ ニューラルネットワーク
  ■ ディープラーニング

があります。区分けとして

  ■ 機械学習
  ■ 強化学習

がありますが、強化学習の中に

  ■ ニューラルネットワーク
  ■ ディープラーニング

があります。ディープラーニングはニューラルネットワークの階層を深くしたものになりますが、こうした分野を学ぶ場合も基本となるのは 【 数学 】 なのでそれに関連した知識を身に着けることになります。

 物事において

  ■ サービスを使用するだけの人
  ■ 開発元

が存在するわけですが、基本的に学校で学ぶのは、 【 何かを作るための開発に必要な知識 】 になります。

 と言っても、義務教育までだと 【 日常の判断で使用できる部品 】 までなので、解析学の分野で行っている、

  ■ 幾何学
  ■ 代数学

を組み合わせたものが現実的なものでも使用できるように見えてくるのは高校以降のカリキュラムからになります。

 ちなみに、

  ■ 幾何学 : 図形
  ■ 代数学 : 数字

を扱う分野なので、解析学で暑かった場合には、この2つは

  ■ 幾何学 : 形
  ■ 代数学 : 定規の目盛り

として機能します。その為、定規の目盛りは代数学に割り当ててあるので、幾何学では、数値を使わずに

【 コンパス 】 

  ■ 長さの記憶
  ■ 長さの複製
  ■ 円や円弧の生成

【 定規 】

  ■ 直線を引く


と言う条件だけで図形を生成できる方法が体系化してまとめえたります。これも数学的に正しいことが証明されているわけですが、図形の生成を刷ることが正しいとこを示す場合には数値を使う必要がありますから、数式と数値で示すことになります。この時に傾きを示す一次関数と三角関数で登場する単位円を使うことになりますが、この一次式と二次式の関係性を座標平面上で使用すると、幾何学で行っている内容の整合性の確認が出来るようになっています。その為、解析を行う際には代数学と幾何学を組み合わせて使用することが出来るようになってるわけです。

 この内容を見ると、義務教育で登場する図形の法則性についてもその法則性の証明を行う際には方程式や関数を使うことになるので、物事の証明をする際に 【 数学的に正しい条件 】 で確定したものを探す場合には、判断に必要な知識を身に着けておく必要があります。

 このように 【 習得難易度の高い物の場合、単体で見た場合にも習得難易度の高い知識が複数必要になる 】 構造になっているので、ソレが理解できていないと対応できませんから、 【 先に構成要素の知識から取得する 】 ことになります。これが 【 基礎の理解と拡張 】 という至極当然に行う基本的な学習方法がごく当たり前に行われている理由になります。

 つまり、【 最も効率的な学習方法が日本国内でごく当たり前に使用されている物 】 なので、ソレを行う際に 【 現在の自分の能力で理解できるレベルの物を選ばないと対応できない 】 ので、 【 語学レベルや能力レベルにあったテキストを探す 】 ことになります。

 

 

  コンピューターと数学

 

  

 コンピューターを使う処理だと

  ■ マイクロコントローラー
  ■ PC

を使う選択肢がありますが、前者が、省電力で簡素な処理を実装する際に使用する選択肢になりますが、マイクロコントローラーはアナログの制御が出来るので電気工作のパーツの制御をコードを書いて行うことが出来るデバイスになります。

 20世紀にもTRONなどのリアルタイムOSが存在したわけですが、現在もマイクロコントローラー用のOSが存在するので、OSを実装してサーバOSのようなCUIでコマンドの実行で動作する構造にすることも出来るようになっています。

 PCは、汎用性をもたせたものなので、GUIやCUIのUI構成になった仕様のものになっていますが、一般的に見かけるPCの構造のものは 【 デスクトップ用のOS 】 を実装しているのでGUIによる動作をする構造になっています。

 この構造はOS上でアプリケーションを動作させる仕様になていますが、ドライバーで認識させたデバイスはOS上で制御できるようになっているので、マイコンのように使用する表示と入力を行うデバイスのライブラリを用意してコードを書く必要はなく、OSが認識できているデバイスはそのまま使用することができます。

 OS上でアプリケーションを使用する場合に 【 操作による結果 】 を使用する事になりますが、これをファイルとして保存することで再度利用できる仕組みになっています。

 こうした作業も 【 作業工程 】 が存在するわけですが、処理の手順が存在するので、処理を追加していくことで最終結果に至っているわけです。その為、作業工程は 【 変数項を追加する処理 】 と全く同じなので、 【 項を用意して加算する構造の数式 】 と同じものと考えることが出来ます。

 プログラミング言語でも、反復や分岐を別に実装する場合の最小構成は直列回路のように処理が順番に実行される構造になっていますが、これも中学校一年生の数学の最初に学習する 【 項 】 のカリキュラムで登場するものになっています。

 こうした作業工程を考える場合、定数の加算の状態ではなく、 【 項 】 のように状態変化を用意して暑かったほうが管理しやすいので、変数を使う場合には、係数や指数などで 【 追加する状態 】 を指定できるのですが、この変化は 【 加工 】 で考えると

  ■ 追加
  ■ 除去

と言う処理になるので、これを符号で制御することで

  ■ 追加後に除去 : a +(-b)
  ■ 除去後に追加 : -a + b

のようなことが出来るようになります。係数や指数は、

  ■ 乗算 : 加算のループ処理
  ■ 指数 : 乗算のループ処理

なので、【 ロット数の話 】 になりますから、模型のリベット打ちのように 【 同じバーツを複数用意して追加する 】 場合だと、

  ■ リベットの穴を複数空ける
  ■ リベットを埋める

と言う工程が生じます。この場合の作業内容だと

  ■ リベット打ち×個数分

となるので、項に係数を追加すると同じ状態になります。

 ただし、実際の作業だと、

  ■ 穴あけ
  ■ リベット打ち
  ■ 座標の移動

という3つの処理を用意してループ処理を行うことになりますが、こうした

  ■ A
  ■ B
  ■ C

のような構造をループさせる場合には乗算を使うので、

  ループ回数(A + B + C)

のような形になります。この時のループ回数部分が係数になるわけですが、変数の場合、定数項の代入で成立しているので、

 Zを処理の内容で、Z1をループ回数として考えると、

  ■ Z=A+B+C
   ■ Z1=4

のような指定が出来るので、この処理をする場合には、

  Z1・Z

という構造にすると Z(A+B+C) と言う形にすることができます。プログラミング言語を使用した時の変数を使った処理の構築方法がこのような形になっているのですが、これを見ると数学で見かける数式の構造と全く同じ事がわかります。この構造を似すると、

  ■ A = 処理の内容
  ■ B = 処理の内容
  ■ C = 処理の内容

  ■ Z = A → B → C の順に処理を行う
  ■ Z1 = ループ回数

ということになります。ただし作業を行う場合だと、デバイスが異なるので、

  ■ 穴あけ → 移動
  ■ リベット打ち → 移動

のようになるので、構造が少し変わってきます。こうした構造を考える場合も、ループに包含する対象物が変わるだけなので、ループ回数を係数で制御する 【 ループ構造の箱 】 を用意して、その中に処理を包含することで同じ処理を繰り返すことが出来ます。思考としては、

  ■ L[]

のような箱を用意しておいて

  ■ 処理1 = 内容
  ■ 処理2 = 内容

のような形にして、これを包含するので

  ■ L[ 処理1+処理2 ]

のような形で追加することになります。プログラミング言語でループを使う場合も同じ考え方なので、



のような形になります。これはPythonですが、ループはループの中に処理を包含することになりますが、この構造も 【 2(1+2+3) 】 のような構造と同じです。

 これを変数にしたものが 【 n(a+b+c) 】 になります。

 作業を行う際に 【 同じ作業を繰り返す 】 ような場合ループ処理ですから、ループを行う処理自体を先に決めておけば、その反復で対応できるわけですが、こうした処理が簡素なもの場合、機械でも行えるのでsyロイを実装して自動化を行うことが出来ます。

 こうした思考を行うためのツールがプログラミング言語になりますが、いきなりコードを書いて数値で判断するだけだと敷居が高いので視覚情報で確認できて挙動の実装の練習が出来るものが 【 LOGO 】 になります。

 現在は、ブロックで同じことが出来るのでScratchのペンを使うと動作の工程を指定して画像を描く事が出来るようになっていますがPythonだとウィジェット環境のtkがインストールされている環境であれば、turtleが使用できるのでコードで画像を描くように処理を実装することが出来ます。

 この処理は 【 幾何ベクトルの追加 】 のような構造になっていますが、図形も描けるので

  ■ 円
  ■ 三角形
  ■ 四角形

などもコードで描くことが出来ます。この時に

  ■ 移動
  ■ 描画

を行うのですが、座標の移動だけに限定すると、CNCの座標制御を行う際にどのルートにすれば無駄がなくなるのか?を考えることが出来ます。例えばCNCボール盤を想定すると穴あけなので、直径分の円がセンターを中心に描かれる必要がありますから、この場合、スタート地点を用意して、そこから移動して目的の位置に穴を開けてホームポジションに戻ってくる必要があります。これを原点座標の(0,0)からスタートして処理を行って戻ってくるような処理を用意することになりますが、この処理の流れを作ると、複製する場合にはループ回数の指定だけで対応する事が出来るようになります。

 このように 【 自動処理 】 をする際の思考にも使えるのですが、指定した形の配置をする場合も座標制御と配置で対応できるので、

  ■ ローカル座標の指定
  ■ 処理の実行
  ■ 移動

と言う流れを作ってループ内に包含することでそういった処理を実装できます。

 こうした処理は、四則演算で行えるようになっているのですが、幾何ベクトルの

  ■ 方向
  ■ 大きさ

の指定をすることで 【 ユークリッド距離 】 で位置の指定が出来るのですが、中学校一年生の数学で登場する一次関数で使用する 【 傾きを出す方法 】 でも目的の座標に進むことが出来ます。これは、

  ■ 傾き = y座標÷x座標

で示すことが出来るのですが、このような水平に移動して垂直に移動する事で座標に到達するような距離もあります。この方法をマンハッタン距離といいます。turtleだと両方使用することが出来ますが、中学校のカリキュラムだと軸回転の概念が登場しませんから、傾きの長さを出す場合には三平方の定理を使うことで算出できますが、その座標に行く方法を考えた場合、角度+距離ではなく、マンハッタン距離で移動することで数学のカリキュラムの内容だけで座標を算出して移動をすることが出来ます。

 高校のカリキュラムだと、数学Iで三角比が登場し、数学IIではソレを拡張した三角関数が登場しますから、turtleで使用する

  ■ 方向
  ■ 距離

の指定の内容を数学のカリキュラムと連動させて考えることが出来るようになります。

 

 

  状態と値

 

 現実世界では、空間を使用して物事が成立しているのでこの空間の状態を示す方法として座標軸を使った制御を行います。人の感覚器官で検知できているサイズの出来事はニュートン力学の範囲内の挙動であり、熱力学の第一法則の条件が担保されているものになります。その為、ユークリッド空間と時間の軸で構成された時空間の中の座標を扱うような仕様になっています。

 この構造ですが、3DCGツールで3DCGアニメーションを作る時にごく当たり前に使用しているのですが、

  ■ ビューポート : ユークリッド空間
  ■ タイムライン : 時間軸

と言う構造になっています。ビューポート上では、三つの軸が直角に交わっているのですが、これがユークリッド空間の特性になります。これを拡張して 【 曲面で座標軸を使って制御するような空間 】 の構造が 【 非ユークリッド空間 】 になります。

 球体では、並行なラインも北極と南極で交わるので、平面を基準としたユークリッド空間とは異なる結果になります。その為、ユークリッド空間と非ユークリッド空間の違いは、 【 平面と曲面の違い 】 ですから、 【 使用している定規の種類が異なるだけ 】 の話でしかないわけです。

 つまり、分度器と定規くらいの違いのあるツールを目的によって使い分けることが出来るようにしたものがこの異なる空間の取り扱いということになります。

 その為、日常で使うのは、

  ■ ニュートン力学
  ■ 熱力学
  ■ ユークリッド空間

が基準になるわけですが、現実世界では、

  ■ 質量
  ■ 距離

と言う全く異なるものが存在しています。これを使用する際に数学の基本となる数値が存在しない状態だと個別に役度となるものを用意して常に比較演算子を使って作業をすることになりますが、数学や物理がある場合だと、 【 基準となる1に係数を追加したもの 】 で状態を示すことが出来ます。

 この時に対象の違いに対して単位を切り替えることで、様々なものに対応できるようになっている訳ですが、これが 【 数を使った処理 】 の利点になります。

 このように数には汎用性があるので、様々なものに使用できますが、数学で登場する次元の考え方も汎用性があるので様々な使い方が出来ます。

 義務教育だと

  ■ 現実世界の空間
  ■ データ
  ■ 形

で使用しますが、数学で最も多く登場すると思われる 【 座標平面 】 を使った処理で空間を使用することになります。

 中学校までのカリキュラムだと

  ■ 座標平面上の線分
  ■ 座標平面上の図形

は 【 式の形で再現できる 】 事を学習しますが、高校では、多変数関数が登場するので変数yが増えた状態での状態変化についても学習することになります。

 中学校一年生の数学で登場する 【 一次関数 】 ですが、これは 【 ヒストグラムが微細なXの値でサンプリングされており、それが密集した状態で表記されているもの 】 なので、この再立ちを取得したデータを集めて並べると 【 線分 】 の形になっているわけですが、イメージとしては 【 サンプリングをものすごく制度の高い状態で行って並べた状態 】 と考えることも出来ます。小学校の算数のカリキュラムでは、棒グラフのデータは最大値飲みを使用しているので 【 座標を取得しても同じ結果になる 】 ので、座標の状態で取得をすることで表記を行う事が出来ることを学習します。 これが 【 折れ線グラフ 】 になりますが、この 【 最大値の取得をして座標で示す 】 と言う方法が、小学校六年生の算数で登場する

  ■ 正比例
  ■ 反比例

のグラフと同じ状態になります。中学校のカリキュラムではこれを関数と言う数式で示すことができるのですが、これが座標平面上で線分を示す方法になります。線分は 【 関数 】 の形で示すことができるので、これは 【 等式 】 の形になっていますが、変数xに定数を代入すると変数yには、数式で指定した法則性によって発生した値が格納されます。これが関数の仕組みになりますが、値が決まっているので座標平面上には座標の形でついすることが出来ます。つまり、 【 点 】 の状態で追加することが出来るので、これを並べていくと 【 線 】 になるので、関数のグラフは 【 線分 】 で表記することが出来ます。

 小学校では不等号が登場するので 【 範囲の指定 】 の方法が登場しますが、範囲を数直線状にしていすると 【 長さ 】 という 【 距離 】 として指定することが出来ます。つまり、不等式を用意すると必ず 【 線分 】 が発生するので、これを多次元化して座標平面上で再現した場合、線分に層が追加されます。つまり、関数の座標の状態が線分担った状態で発生するので、

【 座標平面上で不等式を指定して範囲指定をすると面が発生する 】

ようになっています。その時に

  ■ 上限
  ■ 下限

の情報を指定することで、

  ■ 〇〇以上
  ■ 〇〇以下

と言う範囲を指定することができます。これは、音を扱うアプリケーションで使用する 【 バンドパスフィルター 】 と全く同じ構造になっているわけですが、このフィルターも 【 周波数を不等式で制御しているもの 】 なので範囲指定を刷ることで必要な部分だけを取得できるようになっています。その為、


【 ハイパスフィルター 】
  
  ■ 以上
  ■ 超過

【 ローパス 】
  
  ■ 以下
  ■ 未満

【 バンドパスフィルター 】

  ■ 〇〇以上、〇〇未満
  ■ 〇〇以上、〇〇以下
  ■ 〇〇超過、〇〇以下
  ■ 〇〇超過、〇〇未満


のような状態になっているわけですが、画像処理のレベル補正の上限と下限の指定も同じような構造になっています。

 このように不等式も代数で使用すると汎用性があるので、音や色彩で使用することが出来るのですが、座標平面上では図形として使用することが出来ます。変域では定数で座標を指定して対角線を指定しますが、

【 数式の構造は変数が基本形 】 
 
なので、範囲指定の対象物も変数化しているので、 【 関数 】 を用いることも出来ます。これを行うと、図形上に範囲を追加することが出来ます。その為、座標平面上では、

  ■ 関数  : 外形線
  ■ 不等式 : 面

を追加できるようになっています。これが二変数関数になると立体に出来るので、関数でも面や立体を作れるようになります。

 これが、多次元のデータの表記になりますが、二変数関数のように 【 複数の変数がある状態 】 だと立体形状と言う形で再現することもできますが、多次元の考え方は、

 【 元の次元尼僧を追加した構造 】

になりますから、三次元は平面に対して層を足した構造と考えることが出来ます。

 この時の層をレイヤーとして考えると、レイヤーの中にデータを格納した構造物として扱うことが出来ます。

 この構造がプログラミング言語で使用できる 【 配列 】 と同じ構造になります。この構造は、スプレッドシートと同じなので、マイクロソフトオフィースのExcelやLibreOfficeのCALCと同じ構造になっています。

 この辺りは、高校の情報Iで

  ■ Matploplib
  ■ RStudio

の学習で扱うので配列とCSVやスプレッドシートのデータを使用することになりますが、ここで二次元配列のデータを使うことになります。

 スプレッドシートは



のようになっていますが、シートの



の部分が二次元配列で、



のようなタブで追加できる部分が三次元構造での管理になります。その為、プロジェクトファイルには三次元構造でシートを格納することが出来るようになっています。

 この構造もネスト(入れ子)の状態にした配列で再現できるので



のような構造になりますが、これも次元を座標軸とは異なる形で使用したものになります。