← ギャラリーへ

織りの数理 — 四枚繻子と六枚繻子は、数のせいで存在しない

平織り・綾織り3/1・五枚繻子・八枚繻子の4種を糸の重なりまで描いた織り図
同じ2色の糸を、上下の順番だけ変えて織った4種。藍=経糸(たて)/生成り=緯糸(よこ)。糸が何本ぶん続けて表に出るか(=渡り)だけで、丈夫さも光沢も表の色も決まる

なにか

布は、経糸と緯糸の交点ごとに「どちらが上か」を決めただけのもの。つまり 0 と 1 の絵である。織物屋はこれを意匠図と呼び、繰り返しの一辺を「枚」、斜めのずれを「飛び数」と呼んで 「五枚三飛び朱子(しゅす)」 のように言う。この呼び名がそのまま数論の条件になっていて、しかも存在しない枚数がある。

身近な手がかり: ジーンズは 3/1 の綾織りで、藍に染めた経糸が表に 3/4 出る——だから表は藍で裏は白い。サテンのリボンは五枚繻子で、糸が 4本ぶん 続けて渡るので面で光を返す。ガーゼやシャツ地は平織りで、渡りが1本=交錯がいちばん多いので丈夫。

繻子になる飛び数、ならない飛び数

5枚の意匠図で飛び数を1から4まで変えた図。飛び数1と4は上点が斜めにつながり、2と3は離れている
五枚の繰り返しで飛び数を 1〜4 と変える。飛び数1・4(茜)は上点が斜めにつながる=綾織りになり、飛び数2・3(藍)はどの上点も触れない=繻子織り。触れないことが繻子の定義で、それが糸を長く渡らせて光沢を生む

上点(そこだけ相手の糸が上に出る点)を、行が1つ進むごとに k 列ずらして置く。すると条件は2つだけになる。①どの列も一度だけ使う=gcd(k, n) = 1(そうでないと同じ列に二度置いてしまう)。②上点が斜めにつながらない=k が 1 でも n−1 でもない(つながると斜線が出て綾織りになる)。

この2つを課すと、成立する飛び数の個数は φ(n) − 2 になる(φ はオイラー関数=n と互いに素な数の個数)。n = 3〜60 まで数えて一致した。そして——

繻子が存在しない枚数は {3, 4, 6} の3つだけ。四枚は互いに素な飛び数が 1 と 3 しかなく、どちらも「つながる方」。六枚も 1 と 5 だけ。だから 四枚繻子と六枚繻子は作れない(七枚以上はいつも成立する=φ(n) ≥ 4)。サテン地の規格が五枚・七枚・八枚に集まっているのは、好みや伝統ではなく数の事情だと言える——ただし「実物の規格がそうなっている」の部分は伝聞で、文献ではまだ確かめていない

飛び数 k と n−k は左右を裏返すと重なるので、実質の種類は (φ(n) − 2)/2。五枚は1種類、七枚は2種類、八枚は1種類。(ここまでが計算で確かめたこと。実務で「n枚k飛び」と呼び分ける習慣や、サテン地の規格が五枚・七枚・八枚に集まっているという話は伝聞で、まだ文献で確かめていない——確かめる先は織物組織学の教科書か、実際の生地の組織図)

2つの独立な道が一致するのがこの作品の骨で、①絵を見て「上点が8近傍のどこにも触れないか」を数える幾何の道と、②gcd(k,n)=1 かつ k≠1,n−1 という算術の道が、n=3〜14 の全飛び数で例外ゼロで一致した。

その絵は、ほんとうに布になるのか

二重織りをそのまま織った図と、持ち上がる糸の組だけ・残った糸の組だけに分けた図の3枚
意匠図としては立派なのに布にならない例。二重織りは、糸を2組に分けると組のあいだの交点でいつも片方が上——だからそのまま2枚の平織りに分かれてしまう。糸を織り込んだ絵と、布であることは別の話

0 と 1 の絵なら何でも布になるわけではない。極端な例は「経糸が全部上」=糸をただ重ねただけ。ここでは崩れないことを次のように定義して総当たりした: 糸をふたつの組 U と D に分けて(周期ごと・どちらも空でない)、U と D が交わるすべての交点で U 側が上なら、U はまるごと持ち上がる=崩れる。どんな分け方でも持ち上がらないとき「崩れない」。

数えてみると布は意外に少ない。2×2 の絵は16通りのうち2通りだけ(市松=平織りの2つの位相)。3×3 は512通り中102。4×4 は65536通り中22730(34.7%)。いっぽう、上点が各行各列にちょうど1つの絵は、n = 2〜6 の全872通りがすべて布になった(例外ゼロ)。繻子と綾の枠組みは、崩れる心配をしなくていい枠組みだったことになる(証明は宿題)。

この棚の隣にあるもの——同じ「剰余ずらし」

成立する飛び数の集合 {k : gcd(k, n) = 1} は、このギャラリーでもう一度出てきている。Modulo Krinkle の非周期タイリングで、成立する順列が {jm mod k} に完全一致し、gcd = 1 かどうかが「非周期になるか、周期に退化するか」の分水嶺になった。組紐の糸の本数も gcd で決まる。布の規格と非周期タイリングと組紐が、同じ剰余の条件で動いている(見取り図の発見19)。

どう作ったか

意匠図は 0/1 の行列。絵は「上に出ている区間を1本のリボンにまとめる」描き方にした——まとめる区間そのものが渡りなので、繻子の光沢が絵に出る。崩れないかの判定は 2^(経+緯) 通りの分け方をぜんぶ試す総当たり(n=4 の全絵の census はビット演算に畳んで 0.2 秒)。機械検査は20件: ①上点が置換になる ②幾何と算術の一致(例外ゼロ)③個数 = φ(n)−2・存在しない枚数 {3,4,6} ④k と n−k が鏡像 ⑤渡り n−1 ⑥表に出る割合 1/2・3/4・4/5 ⑦4種が崩れない・二重織りと交錯ゼロは崩れる ⑧総当たり census 3通り ⑨置換行列は全部布 ⑩出荷SVG3枚。

→ Modulo Krinkle(同じ「gcd = 1」が非周期タイリングの分水嶺になる)

→ Spectre 織り(非周期タイルの縁を噛み合わせて布地にした意匠化第1号)

→ 非周期のケルト装飾(糸を1本の輪として追う=織りの反対側から見た話)

出典

数理
B. Grünbaum & G. C. Shephard, "Satins and Twills: An Introduction to the Geometry of Fabrics", Mathematics Magazine 53 (1980) 139–161。「布が崩れないか(hanging together)」の問いは同論文と C. R. J. Clapham, "When a fabric hangs together", Bull. London Math. Soc. 12 (1980) 161–164 に由来する。ここでは概念だけを借り、判定は上に書いた自前の定義で総当たりしている(両論文の定理そのものは引用していない)。飛び数と枚数の呼び方(「n枚k飛び」)は織物の実務用語として書いたが、出典を確かめていない伝聞
生成
generators/satin.js(意匠図・綾・繻子・二重織りの生成、上点の接触判定、渡りと表面率、崩れない判定の総当たり、census のビット演算、織り図3枚。依存ゼロ・乱数ゼロ)