2023年10月21日土曜日

今年の夏に見たクモ

今年の夏はクモに目が行くことが多かったような気がする。 きっかけは植木の間に巣を作ったクモの種類を調べたところからだった。 [写真1] 垂直円網に体長5ミリほどのクモが頭を上にしている。 一般的に蜘蛛の巣というと垂直円網を思い浮かべるが本当は案外少数派である、というようなことは去年クモの糸についての本を読んで知っていたので、それが手がかりになるはずということで図書館に行ってクモの図鑑「原色日本クモ類図鑑」を開く。垂直円網で調べるとコガネグモ科ということが判って、頭を上に向けて止まる種類はほとんど無く、ギンメッキゴミグモかギンナガゴミグモというところまでは絞れる。模様を図版と見比べて、ギンナガゴミグモかなあというのが最初の判断だったが、体型が長細くは感じず確信が持てなかったので、ほかの図鑑類も見てみることにした。 ギンナガゴミグモについて「ネイチャーガイド日本のクモ」曰く"本州中部以北の記録はほとんどクマダギンナガゴミグモと思われる"と新たな種の示唆が。 「クモの巣ハンドブック」を開くと、ギンナガゴミグモの巣には白い帯があることが判った。 巣の全体はこの写真には入っていないが、白い帯はなかったので、ギンメッキゴミグモの方らしい、という結論になった。 その後も時々見てみると、だんだん腹部全体が白っぽく光っているように見えてきたので、あるいは模様は成長と共に消えるようなものだったのかも知れない。

家の中で、近年はアダンソンハエトリ[写真2]しか見掛けない、と思っていたが、2種類ほどよく判らないクモにも遭遇した。大きさはアダンソンハエトリと大体同じ。 [写真3] 木目調の壁にいるから青っぽく見えているだけでただの灰色なのかも知れないが、ぱっと見青いクモがいると思った。 [写真4] こちらは床にいた。ハエトリグモの仲間かと思って「ハエトリグモハンドブック」を眺めてみたが、よく判らなかった。

[写真5] 近所の塀にいたクモは多分ネコハエトリのメス。ハンドブックには"草地の草本や低木の上に見られる"と書いてあったが。

他にも、空中に巣を張っている小さいクモを撮ろうとしたことがあったけど、iPhone がどうしても背景にピントを合わせてしまって上手くいかなかった。 普段から植物と虫の写真しか撮っていないが、今年はクモの写真が多いなと思ってまとめてみた。

写真1
写真2
写真3
写真4
写真5

2023年8月28日月曜日

(近所の)生物図鑑

ときどき、街で見掛けた生き物(主に植物と昆虫)の写真を撮って、これは何かな、などとウェブで検索する。 判ったら SNS に投げたりして。 判らなかったら、図書館で図鑑をめくったりもする。 ところで、そんなに行動範囲が広いわけではないので、たとえば23区内の生き物に絞った図鑑があったら事足りることが多そうだ。

そんな中、最近、「せたがや動物ガイド」という世田谷区が出していたガイドブックを古本で手に入れた。 「世田谷自然観察シリーズII」とあるので、きっと I は「せたがや植物ガイド」なのだろう。 そして忘れていたが、昔杉並区が出しているもっと薄い「すぎなみの植物」「すぎなみの鳥」「すぎなみの昆虫・クモ」も買ったことがあった。 ひょっとして、どの区も似たようなものを出していたりするだろうか。 あるいは、もっと全国的に?

ということで調べてみた。 ようするにウェブで検索してみた、ということだが、引っかけるには若干のコツがあるようだ。 最初は検索のキーワードが判らず「図鑑」とか「ガイドブック」とか入れていたものの、全然(杉並区も世田谷区も)出てこない。 役所的にはこれらの本はそうやって分類される物ではなく、数ある刊行物の1つということで「刊行物」と入れると俄然引っかかるようになった。

自治体タイトル値段リンク
江戸川区野の花 春・夏210円トップページ > 区政情報 > 広報・広聴 > 報告書・刊行物 > 刊行物 > 江戸川区の自然(1)から(4)
野の花 秋・冬210円
樹のはなし210円
昆虫の博物誌210円
葛飾区葛飾区生きものガイドブック1000円トップページ >くらし・手続き >環境 >自然環境・自然観察 >「生きものガイドブック」を販売しております
葛飾の昆虫・クモ1200円
葛飾の水辺の生き物1200円
北区北区植物ガイドブック670円ホーム > 区政情報 > 広報・広聴 > 区政資料室 刊行物一覧
北区野鳥ガイドブック660円
北区小動物・昆虫ガイドブック710円
北区の野鳥1540円
北区の小動物1020円
江東区江東区の野草700円ホーム > 区政情報 > 江東区プロフィール > 江東区発行の書籍等 > 江東区の野草
続 江東区の野草1000円
続続 江東区の野草1000円
杉並区すぎなみの植物500円トップページ > くらしのガイド > 区の運営に関する情報 > 区政資料の閲覧など > 有料頒布刊行物目録(計画書・報告書等)
すぎなみの昆虫・クモ500円
練馬区ねりまの自然700円ホーム > 区民情報ひろば > 有償刊行物(練馬わがまち資料館)
文京区文の京生きもの図鑑850円ホーム>防災・まちづくり・環境>環境・公害>環境情報>文の京生きもの図鑑を刊行しました!
港区港区のみどりと生きもの2010(生きもの図鑑)800円トップページ > 環境・まちづくり > 環境 > 都市緑化・自然環境 > 生物多様性 > 港区のみどりと生きもの2010(生きもの図鑑)
目黒区めぐろのいきもの80選400円トップページ → くらし・手続き → 自然・環境・ごみ → 自然・いきもの → 冊子「めぐろのいきもの80選」を販売しています

注意事項: 内容は確認してない。こういう自治体のリンクはすぐに切れるだろうからあまり期待してはダメ。23区全区調べたつもりだが見落としがあったらすまない。世田谷区のはもう古本でしか入手できないらしいし「すぎなみの鳥」もリストにない。こういうのは ISBN もないし、普通の本屋では買えないだろうから、それぞれの区内の扱いのある施設に出向くか郵送を(頼める場合は)頼むか、というような入手方法になる。

23区以外でも出している自治体はあると思う。 ただ、海から標高1000mを越える山まであるような広い自治体だと調べること自体が大変だし、小さい自治体は需要とか財政的問題とかあるかもしれないので、期待できるのは都会の大きめの市かと。

2023年7月28日金曜日

隣接代数と多項式環

概要: 前回多項式の積を余代数から定義するということをしたが、その余代数の出所はどこだ、というような話。 自然数は加法モノイドであるだけでなく、順序集合である、ということが大事なのではないか。

局所有限な半順序集合(poset) \(P\) に対し、その区間(interval)を \([x, y]\) のように書く。 局所有限とは、\(x \leq y\) なる2元が何であっても \(x \leq z \leq y\) となる \(z\) は有限個しかない、という条件である。 体 \(K\) を固定して、\(P\) の区間を基底にした線型空間 \(I_P\) を考える。 \(I_P\) に余乗法(comultiplication) \(\Delta\) を \[\Delta ([x, y]) = \sum_{z \in [x, y]} [x, z]\otimes [z, y]\] で定義する。余単位 \(\epsilon\) は \([x, x]\) に対して \(1\)、それ以外で \(0\)となる関数とする。 これによって \(I_P\) は余代数となる。

この余代数に対して、双対空間を代数にするために、前回やった積の \(m_K \circ (f \otimes g) \circ \Delta\) という作り方を踏襲すると \[ (fg)([x, y]) = \sum_{z \in [x, y]}f([x, z]) g([z, y])\] という形で双対空間 \(I_P^*\) が代数になるが、これを \(P\) の隣接代数(incidence algebra)という。 ζ関数とかメビウス関数とかを定義して poset に関する議論をするために使うものだ。 そうそう、積の単位元はδ関数(1点からなる区間で 1、 それ以外で 0 となる関数)だ。

モノイドの構造と両立する順序構造を備えたものを順序モノイドという。 ねじれのない(torsion-free)消去的可換モノイドには全順序が入れられる。 多項式を考えるためには \(\mathbb{N}\) や \(\mathbb{N}^n\) などを考える。 後者に全順序が入るのも大事ではあるのだがいったん忘れて、\(\mathbb{N}\) の直積順序である半順序だけ考えることにする。

これら(以降 \(M\) と書こう)は局所有限な半順序集合なので、上の半順序集合に対する余代数(や隣接代数)の一般的な構成がそのまま使える。 \(I_M\) を区間の余代数とする。 ここから \(M\) の区間を \(M\) の元で置き換える。 すなわち \([x,y]\) を \(y-x\) で置き換える。 モノイドで引き算はちょっとおかしい感じもするが、いわゆる自然数の引き算で、大きいものから小さいものを引く状況しか現れないので大丈夫である。 それに応じて余乗法(comultiplication) \(\Delta\) も \[\Delta (y - x) = \sum_{z \in [x, y]} (z - x)\otimes(y - z) = \sum_{t + u = y - x} t \otimes u\] に変える。余単位 \(\epsilon\) は \(0\) に対して \(1\)、それ以外で \(0\)となる関数とする。 このようにして、\(M\) 自体を基底にした線型空間 \(V_M\) が余代数の構造を持つ。 これで前回の話に合流して多項式環が定義できたことになる。

区間を潰してしまうこのやり口は、古典的な数論的メビウス関数を隣接代数から復元するときと同じようなものである。 メビウス関数の場合は整除関係を順序とした乗法モノイド \(\mathbb{Z}^+\) なので引き算でなく割り算を使うが。

まとめ: 多項式環の乗法を導く余代数は次数を表すモノイドが半順序集合だったところからもたらされた。 隣接代数と多項式環はいとこみたいな存在だった。

2023年6月28日水曜日

多項式の掛け算の回りくどい定義

多項式の定義にはいくつか方法があるが、今回は「多項式は自然数から係数環への関数」というタイプの定義を扱う。

この前、Gilmer の Commutative Semigroup Rings を読み返していて、半群環の定義に差し掛かった。

R is an associative ring and that (S, *) is a semigroup. Let T be the set of functions f from S into R that are finitely nonzero, with addition and multiplication defined in T as follows. \[(f+g)(s) = f(s) + g(s)\] \[(fg)(s) = \sum_{t*u=s}f(t)g(u)\] where the symbol \(\sum_{t*u=s}\) indicates that the sum is taken over all pairs (t, u) of elements of S such that t*u=s.

S を自然数の加法モノイドだと見れば多項式環の定義になる。

そこでふと思ったのは、この \(\sum_{t*u=s}\) の辺りは余乗法(comultiplication)なのでは、ということである。 群環を Hopf 代数と考えるときの余乗法は \(\Delta(g)=g\otimes g\) というタイプのものなので、それとは異なる何かということになる。 S が基底になるような線型空間 V に、余乗法を \(\Delta(s)=\sum_{t*u=s}t\otimes u\) から定める。 余単位 \(\epsilon\) は S の単位元だけ 1 に写して、ほかは 0 になるクロネッカーのデルタを使う。 これで余結合律や余単位律が成り立って V が余代数になる。 (S が半群という仮定だと単位元の存在が保証されないから、モノイドでないと通らない。 また、余代数は線型空間に余乗法を入れたものなので、係数が体になってしまった。 ここは多分言葉の問題で、環を係数にしても話は同じに進行すると思う。)

今度はこれを多項式の乗法の定義に戻していきたいのだが、いったん整理しよう。 \(\mathbb{N}\) を自然数の加法モノイドとして、\(K\) を体とする。 \(K\) 上 \(\mathbb{N}\) を基底とする線形空間を \(V\) とする。 余乗法 \(\Delta\) を \(s \in \mathbb{N}\) に対し \(\Delta(s) = \sum_{t+u=s} t\otimes u\) とし、あとは線型に延長する。 余単位 \(\epsilon = \delta_{0,s}\) も同様。 これで \(V\) は余代数になった。 \(T\) を \(V\) から \(K\) への線型写像の集合とする。 つまり、\(V\) の双対空間を考える。 \(T\) に乗法を次のように定める。 \[fg = m_K \circ (f\otimes g) \circ \Delta\] ただし \(m_K: K\otimes K\rightarrow K\) は \(K\) の積。つまり \[(fg)(s) = m_K \circ (f\otimes g) (\sum_{t+u=s} t\otimes u) = m_K(\sum_{t+u=s} f(t)\otimes g(u))= \sum_{t+u=s} f(t) g(u)\] これが結合律を満たすのは \(\Delta\) の余結合律から示せるはず。 これでできあがったようだが、\(T\) は冪級数環になってしまうので、有限の台をもつ関数だけの部分環を考えて、ようやく多項式の乗法が定義できたことになる。

まとめ: 多項式の掛け算を、余代数の余乗法から双対空間の乗法を定義する一般論(?)に乗せることができた。

2023年1月18日水曜日

pyi スタブ

私は基本的に Python で型を書きたくない人で、 Python で型を書くと関数定義行が長くなって読みにくくなるのが嫌だなというのが型を書きたくない理由の1つだったのだが、 関数の(に限らないけど)型だけ別ファイルに置いておく仕組みがあった。 スタブ(stub)ファイルというもので、実は型を書けるようにする仕組みと同じ時に誕生してたので、知らなかった方がおかしいのかもしれない。 ともかくこれで(保守コストはさておき)型を書くことへの抵抗感はぐっと減った。

別ファイルの型情報を誰がどうやってどこに引っ張ってくるのか、という部分については、型チェッカーを単独で導入するほどのやる気になったわけではないので、VSCode の Pylance というプラグインが勝手にやってくれるに任せることにして、少し書いてみた。 結果は微妙である。 他のモジュールから import した関数などはちゃんと型が見えるのだが、そのファイル内で定義している関数の型はスタブから読まれない。 Unknown な引数を受け取って Unknown な型を返すようにしか示されない。 ネットでざっくり調べたところによると、スタブファイルを使うことでモジュール本体をパースするより手軽に型を取り込める、といった用途で使うものとの主張を見た。 一方で PyCharm は pyi スタブから型を読んで当てはめてくれるらしい。 こっちの方が直観的には便利。 理想的には、py + pyi とインラインで型を付けた py と自由に行き来できたら幸せ。

妥協案として、インラインで型を書いても良いけど「アノテーションを隠す」モードが提供されたらだいぶマシ。 VSCode にそんなプラグインがあったりするかなと思ったけど、editor.semanticTokenColorCustomizations で色を変えたり bold/italic にしたりがカスタマイズの限界なので難しいか。

2023年1月10日火曜日

杉並区内の金太郎 2023

遡ってみたら前回この話題を書いたのは2015年の正月だった(杉並区内の金太郎)。 最近上井草の方に行ったら、井草川暗渠のさらに上流側でいくつか見た。 これも含め、見掛けるたびに撮っていた写真に残っていた位置情報から、地図にしてみた。

2023年1月1日日曜日

2022年の読書

いわゆる老眼というやつで文庫のルビとか数式の添え字とかが読みづらくなってしまって、読書量が減っていた。 夏頃に眼鏡を導入したが、それで読書量が戻ったかというと、そうでもないかもしれない。 読書メーターの記録によるとマンガを入れて76冊。 マンガを除くと50冊程度だろう。

印象に残っている本は 「カルロ・ロヴェッリの科学とは何か」 「詳説データベース」 「ギリシア哲学者列伝()」 「因果推論の科学」 辺り。科学とは何かではアナクシマンドロスから説き起こされていたが、ギリシア哲学者列伝でのアナクシマンドロスの記載に無いこともいろいろ語られていて、別のソースが伝わった幸運なケースなのかもしれないと思ったり。詳説データベースはデータベースの実装方法の説明といった内容で、普段データベースはそこに有るものとして中身を余り考えない対象だが、知ればそれが何かの場面で役に立つこともあるだろう。最後の因果推論の科学は最近読んだ分厚い本なので、まだ新鮮(別の教科書を読んでみたいとは思った)。

今年も YouTube きっかけで読んだものがいくつかあって、 ウェザーニュースのキャスター檜山沙耶さんのエッセイ「ブルーモーメント」、 こはやし【古生物ちゃんねる】経由で「クモはなぜ糸をつくるのか?」 など。

※本のリンクはamazonアフィリエイトです。