数学徘徊記

自由な数学ブログ。

ある長方形の問題の8通りの解答

定理

ある長方形\(R\)が, 少なくとも1つの辺の長さが整数であるような有限個の長方形に分割されているとする. このとき\(R\)も少なくとも1つの辺の長さが整数である. f:id:yootaamath:20181217115506p:plain

記事の概要

好きな証明 Advent Calendar 2018 の18日目の記事です.
adventar.org
上の定理に8通りの異なる証明を与えます.
この記事はFourteen Proofs of a Result About Tiling a Rectangle を参考にしました. この論文では14もの証明や, その一般化について紹介しています(まだ読み切れていません…).

定義

長方形においてを横の長さ, 高さを縦の長さとする. 長方形\(R\)の部分となっている長方形をタイル, そのうち幅が整数のものを\(H\)タイル(horizontal), 高さが整数のものを\(V\)タイル(vertical)とする. また長方形\(R\)が標準の位置にあるとは, 各辺が軸に平行であり, 左下の頂点が\(xy\)座標の原点にあることをいう. 長方形の頂点をということにする(グラフの頂点と区別するため).
また, 少なくとも1つの辺の長さが整数であるような長方形をキチン長方形ということとする(数学セミナー2018年10月号の時枝正先生の連載記事「試験のゆめ・数理のうつつ/多変数微積分:渦巻く場,秘法εε=δδ-δδ」より, この表現を借りました).
\([x]\)で\(x\)を超えない最大の整数を表す.
\(xy\)平面上の格子点とは, \(x\)座標と\(y\)座標がともに整数であるような点のことを言う.

証明

(1) 二重積分

\(xy\)平面上の, 各辺が軸に平行である長方形\(T\)について, 頂点の座標が\((a,c),(b,c),(a,d),(b,d)\)であるとする.
すると
\[\begin{eqnarray}
\iint_T e^{2\pi i(x+y)}dxdy&=&\int^d_c\int^b_a e^{2\pi i(x+y)}dxdy \\
&=&-\frac{1}{4\pi^2}(e^{2\pi ib}-e^{2\pi ia})(e^{2\pi id}-e^{2\pi ic})
\end{eqnarray}\]より,
\[\begin{eqnarray}
\iint_T e^{2\pi i(x+y)}dxdy=0&\Leftrightarrow& b-a, d-cの少なくとも1つが整数\\
&\Leftrightarrow& Tがキチン長方形
\end{eqnarray}\]
である.
仮定より各タイルにおいてこの積分の値は0であるため、\(R\)全体でもこの積分の値は0. よって\(R\)がキチン長方形であることが示された. ■

これは定理の発見者オリジナルの証明だそうです.
どこから積分が出てくるんだ…? という気持ちになりますが, こう考えると自然です.
たとえば, 「8×8のチェス盤の右上と左下のマスを切り取る. これを1×2のドミノで埋め尽くせるか?」という有名問題がありますが, これはチェス盤を黒と白の市松模様で埋め尽くすことで, できないことが証明できます. ここで黒を1, 白を0と考えてみましょう. するとチェス盤の色塗りは\(\mathbb{R}^2\)から\(\mathbb{R}\)への関数とみなせます. そして「どうドミノを置いても黒を1つ覆う」は「どのドミノの区間積分しても1」と言い換えられます. この場合は1×2のドミノですが, 今回の定理の場合はキチン長方形です. 長方形の辺の長さは任意の正の実数になるので連続的です. この場合にもできるように考えると, 三角関数を使って連続的な色分けをすることが思い浮かぶかもしれません. 私は思い浮かびませんでした.
この場合は連続的な「色塗り」でしたが, 実は普通に市松模様でもできます(次証明).

(2) 市松模様

\(R\)を標準の位置に置く. \(xy\)平面を\(\frac 12 \times \frac 12\)のマス目で埋め尽くし, 黒と白で市松模様に塗る. このとき, 各辺が軸に平行な任意の長方形において,
キチン長方形⇒長方形上の黒と白の面積が等しい
特にそれが原点を頂点に持つならば
キチン長方形⇔長方形上の黒と白の面積が等しい
であるので定理が成り立つ. ■

これを見るとやはり「市松模様スゲー!」と思います.

(3) 市松模様2

\(R\)を標準の位置に置く. \(xy\)平面を\(\frac 12 \times \frac 12\)のマス目で埋め尽くし, 黒と白で市松模様に塗る.
ここで, 長方形の辺となる線分をずらして新しい長方形分割\(R'\)を作ることを考える.
タイルの辺で\(x\)軸に平行なものにおいて, それが直線\(y=a\)上にあるとき
・もし\(a\)が整数なら動かさない.
・そうでない場合, それを直線\(y=[a]+\frac 12\)上に動かす.
タイルの辺で\(y\)軸に平行なものにおいても同様に動かす. この操作においてあるタイルは潰されるかもしれないがそれは本質ではない(面積0のタイルと考える). この操作を行っても, 各タイルはキチン長方形である.
\(R'\)がキチン長方形であることが示されれば元の定理も証明される.
市松模様に戻ると, \(R'\)の各タイルは同じ数の黒い正方形と白い正方形を持つので, \(R'\)も同じ数の黒い正方形と白い正方形を持つからキチン長方形であることが示された. ■

タイルの辺を動かすという発想です. 動かすことでタイルの辺の取りえる値が離散的になりかなり扱いやすくなりました. このように, タイルの辺を動かす発想は今後もいくつか出てきます.

(4) 多項式

\(R\)を標準の位置に置き, (4)と同様に\(R'\)を作る. (4)に似たような方法で辺をずらすことを考える.
タイルの辺で\(x\)軸に平行なものにおいて, それが直線\(y=a\)上にあるとき

  • もし\(a\)が整数なら動かさない.
  • そうでない場合, それを直線\(y=a+t\)上に動かす.

タイルの辺で\(y\)軸に平行なものにおいても同様に動かす.
このとき\(t\)を\(0\leq t \leq \varepsilon \)の範囲で動かすと, \(\varepsilon\)が十分小さいときは\(t\)をどのように動かしても長方形がつぶれて消えることはない.
このときにそれぞれのタイルの面積がどのように変化するかを考える. \(t\)を動かしても, 長さが整数であるようなタイルの辺の長さは変化しないので, どのタイルも面積の変化は1次関数的である. よって\(R\)の面積の変化も一次関数的であり, \(R\)もキチン長方形である. ■

これは個人的にかなり好きです. これを見てから元の定理を見たとき, 自明に思えてしまいました. これは多次元にも容易に一般化できます.

(5) 素数

\(R\)を標準の位置に置く.
素数\(p\)に対し, \(R\)を原点中心に\(p\)倍に拡大する. これを\(R'\)とする.
次に\(R'\)のタイルの各辺について, それが直線\(x=a\)上にある場合はそれを\(x=[a]\)上にずらす. 直線\(y=a\)上にある場合はそれを\(y=[a]\)上にずらす. これを\(R''\)とする.
このとき\(R\)の各タイルはキチン長方形なので, \(R''\)の各タイルは少なくとも1つの辺の長さが\(p\)の倍数である. よってこれらの面積は\(p\)の倍数であり, したがって, \(R''\)の面積も\(p\)の倍数である. すると\(R''\)の少なくとも1つの辺の長さは\(p\)の倍数であり, すなわち\(R\)の少なくとも1つの辺の長さはもっとも近い整数との差が\(1/p\)未満である. 素数は無数にあることから, \(R\)のどちらかの辺は無数の\(p\)についてもっとも近い整数との差が\(1/p\)未満であるため, \(R\)はキチン長方形である. ■

市松模様に若干似ています. 素数がこんなところでも出てくるとは….

(6) オイラーパス

f:id:yootaamath:20181217115640p:plain
グラフ\(\Gamma\)を次のように定める(図参照):

  • 平面上の点であって, あるタイルの角となるもの全体を頂点とする.
  • 各タイルにおいて, \(H\)タイルでは横に, \(V\)タイルでは縦に頂点同士を辺で結ぶ.

ただし, 多重辺を許すものとする.
このとき, \(R\)の角を除くすべての\(\Gamma\)の頂点の次数は2または4である(その頂点に集まる長方形は2または4個であるため).
また\(R\)の角において次数は1である.
したがって, ある角から別の角へのパスが存在し, そのパスのすべての辺が水平・垂直方向に整数の長さであるから, \(R\)がキチン長方形であることが示された. ■

今までとかなり趣向が違う感じです. 今までは整数がとびとびの値しかとらないことを本質に使っている感じでしたが, 今回はそうではありません. 整数が加減法で閉じていることを本質に使っています. これを一般化することで\(R\)の部分加群についても似たようなことを示すことができるそうです.

(7) 二部グラフ

f:id:yootaamath:20181217115713p:plain
\(S\)を\(xy\)平面の格子点であってあるタイルの角となるもの全体の集合とする.
\(T\)をタイル全体の集合とする.
\(R\)を標準の位置に置き, 二部グラフ\(\Gamma'\)を次のように定める(図参照):

  • 頂点の集合は\(S\cup T\)である.
  • \(s\in S\)と\(t\in T\)は, \(s\)が\(t\)の角となるときに辺で結ばれている.

各タイルにおける仮定より, \(T\)の元の次数は偶数(0,2,4)である. また\(R\)の角とならない\(S\)の元の次数も偶数(2,4)である.
しかし原点においては次数が奇数(1)である.
よってグラフの次数の総和が偶数であることから, 原点以外に次数が奇数となる頂点が存在する. これは\(R\)の角にしかなりえないので, \(R\)はキチン長方形である. ■

(6)に似ています. 多重辺がなく, グラフについての簡単なことしか使わないのでこちらのほうが好きです.

(8) 数学的帰納法

f:id:yootaamath:20181217115733p:plain
\(H\)タイルの幅, \(V\)タイルの高さはともに1であるとしてよい(タイルを分割することができるので). このときの\(H\)タイルの個数で数学的帰納法を用いる.
もし\(H\)タイルが存在しない場合は自明である(レンガが積みあがっている感じ).
\(H\)タイルが存在すると仮定し, そのうちの1つを\(T_0\)とおく. このとき, もし\(T_0\)の上に接している\(H\)タイルがある場合は, そのうちの1つを\(T_1\)とおく. ない場合は, 図のようにして\(T_1\)タイルを作る.
f:id:yootaamath:20181217115743p:plain
このとき\(V\)タイルは\(V\)タイルのままであるので影響はない. \(T_2,T_3,\dots,T_m\)タイルにおいても同様に上に上に\(R\)の一番上までとっていく. 逆に, \(T_{-1},T_{-2},T_{-3},\dots,T_{-n}\)においても\(T_0\)から下に下に\(R\)の一番下までとっていく.
すると, \(R\)の下から上まで結ぶ\(H\)タイルの列\[T_{-n},\dots,T_{-1},T_0,T_1,\dots,T_m\]を構成できた. ここでそのタイルの列を抜き取り, 残った部分をガチャンと合わせることで, \(H\)タイルが少ない場合へと帰着できる.
よって数学的帰納法より示された. ■

ガチャンと合わせるのが気持ちよくて好きです.

まとめ

というわけで8種類の証明を紹介しました. お疲れ様でした.
全然別の角度からの証明方法があり, 非常に面白いと思っています. それがこれらの証明が好きな理由です.
自力で新しい証明をつくってみようと思ったのですが無理でした…