Tuesday, 15 July 2025

文字列のかけ算による掛順の可視化

「かけ算には元から対称な定義があるに違いない」つまり累加でない定義ってことね。それはない、何故なら

 "abc" x "de" = "abcabc"

という文字列のかけ算を考える。これは「いくつ分」の文字列の文字の数だけ「ひとつ分」の結合を繰り返す文字列演算ね

Pthon で書くと

 def string_multiply(a: str, b: str) -> str:
  return a * len(b)

こんな感じ。これは、もちろん非可換

 "de" x "abc" = "dedede"

これは長さを見ると自然数のかけ算になっている。この非対称なかけ算が書けるのは、かけ算の定義が、この演算にそった累加だからなわけ

つまり、この非対称な演算を実現する定義だけが許される。つまり対称なかけ算の定義は存在しない。そして、

 この文字列のかけ算で掛順が可視化されている

というわけ。

反論1 「単位ごとの交換なら掛順はない」

5m/s x 2kg =2kg x 5m/s だから掛順はないってやつね。

 5m/s x 2kg =2m/s x 5kg

はどうする? これには単位ごとの交換は使えない

反論2 「文字列の割り算が決まらない」

長さで考えれば割り算も定義できる。別になくてもよいんだどね

 "abc" x ? = "abcabc" の ? の文字列を見つける

これは簡単。2文字の文字列だ

 ? x "de" = "abcabc" の ? の文字列を見つける

これは "abc" だ。でも、「 ? x "de" = "......" の ? の文字列を見つける。. はwild card」にしても良い

反論3 「文字コードで変わる」

len の仕様にしたがうだけ。文字列のbyte長でも良い。それでもいやなの?

それは「反順序の強迫観念」に過ぎない。「かけ算はどっちでもいい」と思いたいための禁則ね

反論4 「勝手に作ったものに過ぎない」

 "vvvvv" x "mm"

5m/s x 2kg のことだ。結果は v が10個。10 kg m/s のことね。任意のかけ算をこれで考えてよい

 おはじきで学ぶ算数

をおもいだそう

No comments: