2026年3月26日木曜日

💎APLとj言語の違い

 応用数学の多く、特に旧来の学問分野を横断する最近のコンピュータ関連分野は、適切なプログラミング言語の欠如に悩まされています。適切なプログラミング言語の記述力と分析力は、その習得に必要な多大な努力に十分見合うものであるというのが、本書の中心的なテーゼである。この論文は、まず言語全体を紹介し、その後の章でいくつかの主要なトピックに適用することで展開されます。

これらの応用分野は、主にその本質的な興味とこれまでに扱われていないことから選ばれていますが、言語の普遍性やその他の側面を示すためにも設計されています。例えば、第2章のマイクロプログラミングは、言語の分割可能性、つまり、完全な言語のほんの一部を使って限定された領域を処理する能力を示している。第6章(ソート)では、比較的複雑で詳細なテーマを短い時間でまとめ上げる能力が示されている。第7章(論理計算)では、言語の形式的な操作性と、理論的な作業におけるその有用性を強調している。

Chapter2はここ

プログラムステートメントとは、指定されたオペランドに対する有限の演算によって、ある量を指定することである。

J言語はAPLとは異なるいくつかの概念を導入しています。ランク、トレイン、フォークは、J言語の中で特に注目すべき特徴の一部です。

  1. ランク:

    • J言語では「ランク」という概念があり、これは多次元配列の各次元に操作をどのように適用するかを制御するためのものです。ランクを明示的に操作することで、配列の特定の次元に関数を適用することができます。

  2. トレインとフォーク:

    • J言語のトレインは、複数の関数や操作を組み合わせて新しい関数を作成する方法の一つです。

    • 3つの関数が連なるトレインを「フォーク」と呼びます。これは中央の関数が、左右の関数の結果を引数として受け取り、その結果を返すものです。例えば、`+ % #`は合計 (`+`) 除算 (`%`) アイテムの数 (`#`) のフォークであり、平均を計算します。


🎡三次元のスピログラフは可能か?

 3D版があった、カッコいい


画像
https://fingerpich.github.io/sinus-studio/?EEEE5298V177V10V0ZZVEE0V178V10V1ZZVEE0V148V10V1ZZZVE0V1V1V5000V5000V0ZZ
画像
これはちょっと酔う
画像
D3のスピログラフ、かわいらしい
画像
しくみでわかる系
画像
http://bl.ocks.org/nbremer/d7071c6a5a7206701015
画像
https://jsfiddle.net/dwahlin/DZtwD/


画像1
画像2

本家にもあるが、なんかちょっとコワイし、違うきがする

画像3

codepenだがこれはなんか近い、色もいいな

画像4

冒頭引用したサンプルを移植してみたが、非常に遅い

画像5

codepenのほうがかっこよかったので、スライダーと組み合わせてみた。遊んでみてください

ENJOY

👾ブラウザから動くバイナリエディタ hexed.itのデモ cftのご紹介も

 CFTやら、ホワイトハッキングで調べ物される方がいるようだった。

CTFは、BSidesをはじめとする情報セキュリティ関連のカンファレンスで開催されるイベントです。このイベントでは、難易度の異なる複数の課題が用意されており、参加者はそれぞれのスキルセットを駆使して課題を解決していきます。それぞれの課題をクリアすると、プレイヤーには「フラグ」が与えられ、そのフラグをCTFサーバーに提出することでポイントを獲得することができます。プレイヤーは、一人で様々な課題に挑戦する「孤高の狼」になることも、他のプレイヤーと協力してチームで最高得点を狙うこともできます。

親しくなる方法としては、windowsだとてっとりばやく電卓とかがいいかもしれないが

2026年3月25日水曜日

🔮世界最古の魔術師の肖像画

 魔術師」とは、紀元前13,000年頃にフランスのアリエージュにあるトロワ・フレールの洞窟で発見された「聖域」と呼ばれる謎めいた洞窟壁画の名称のひとつである。この人物の意味は不明だが、通常は何らかの偉大な精霊か動物の主であると解釈されている。アンリ・ブルイユは洞窟壁画のスケッチの中で、角の生えた人型の胴体を描いており、1920年代にこのスケッチが発表された[2]。 [しかし、ブロイユのスケッチも近年批判を浴びている[4]。動物が大半を占める後期旧石器時代の洞窟壁画において、一人の突出した人物像は珍しい。

アンリ・ブルイユは、この洞窟壁画はシャーマンまたは魔術師を表していると主張し、この解釈がこのイメージの名前の由来となっている。

発表された絵を見たマーガレット・マレーは、ブリュイユの絵を「地球上で最初の神の描写」と呼び、後にブリュイユや他の人々もこの考えを採用した[4]。

彼の見解は20世紀の大半の間、この分野で有力であったが、それ以降はほとんど取って代わられた[1]。

ブリュイユのイメージは一般的に、良い狩りをするために儀式を行うシャーマンであると解釈されてきた。

現代のある学者は、現代の写真には有名な角が写っていないと主張し、ブルイユのスケッチの正当性に疑問を呈している。ロナルド・ハットンは、「ブルイユが描いた人物像は、実際に洞窟の壁に描かれたものとは違う」として、ブルイユは洞窟壁画の狩猟魔術説を支持する証拠をあてはめたのだと説いた。ハットンの理論によって、彼はブルイユの最初のスケッチに依存した結果、多くの後の学者が「魔術師」は角のある神の概念が旧石器時代にまで遡ることを示す証拠であると誤って主張することになったと結論づけた[4]。

同様に、ピーター・ウッコは、この絵の不正確さは、ブロイユが薄暗いガス灯の下で、厄介な状況で作業していたためであり、岩肌の亀裂を人工的な痕跡と勘違いしていたためだと結論づけた[6]。 [6]しかし、これは、先史時代の美術の人物像が、素材の表面の事故(でこぼこ、穴、ひび割れ...)を形象の一部として使用するのが一般的であり、多くの場合、人物を完成させるのに必要な線だけを描くという、よく知られた事実を無視している[7]。

また、"魔術師 "は木炭画と石そのものの中のエッチングの両方で構成されている。エッチングのような細部は、その大きさや光源の質のために、しばしば写真から見ることが難しい。特に著名な先史学者ジャン・クロテスは、ブロイユのスケッチが正確であると断言しており、「私自身、何年もの間、おそらく20回は見たことがある」と述べ

シャーマンとしてのブロイユの絵の解釈は、スレインのコミックの初期の敵役であるロード・ウィアード・スロー・フェグの創造において、作家のパット・ミルズに強い影響を与えた[9]。

ダニエル・クインによる1996年の小説『The Story of B』には、この絵が後期旧石器時代のアニミズムの表現であり、他の動物生命体とのアイデンティティに対する人間の感覚の象徴であるという解釈が含まれている。

1996年に出版された児童文学『マジック・ツリー・ハウス』シリーズの『Sunset of the Sabertooth』では、魔術師はシャーマンのような旅人として描かれており、主人公のジャックとアニーを助け、家に連れ帰る手助けをする。


画像
https://amzn.to/3Ndm2h4

🎲正規分布に適合する乱数と通常の乱数の違いを教えてください

 ガウス分布(正規分布)に適合する乱数と通常の乱数(一般的には一様分布に従う乱数)の違いは、その生成方法と分布の形状にあります。

一様分布に従う乱数

一様分布に従う乱数は、特定の範囲内で均等に分布する乱数です。範囲内のどの値も同じ確率で生成されます。例えば、0から1の範囲で一様分布に従う乱数は、0から1の間の任意の数値が均等な確率で現れます。

特徴:

  • 全ての値が等しい確率で選ばれる。

  • 平均値は範囲の中央。

  • 標準偏差は範囲の幅に依存。

ガウス分布(正規分布)に従う乱数

ガウス分布に従う乱数は、平均値を中心に対称的なベル型の曲線を描く分布に従う乱数です。この分布は多くの自然現象や測定値の誤差などに見られます。

特徴:

  • 値の多くが平均値周辺に集中し、平均値から離れるにつれて値が出現する確率が減少する。

  • 分布は平均値(μ)と標準偏差(σ)によって決定される。

  • 平均値(μ)は分布の中心で、標準偏差(σ)はデータの広がりを示す。

  • 具体的には、約68%の値が平均値の±1標準偏差内に、約95%の値が平均値の±2標準偏差内に、約99.7%の値が平均値の±3標準偏差内に収まる。

生成方法の違い

一様分布の乱数は比較的簡単に生成できますが、ガウス分布の乱数を生成するためには追加の変換が必要です。以下は一般的な生成方法の例です:

一様分布乱数の変換: ボックス=ミュラー変換や極座標法を使って、一様分布の乱数からガウス分布の乱数を生成します。

ボックス=ミュラー変換では、二つの独立した一様分布乱数を使って、二つの独立した正規分布乱数を生成します。

function boxMullerTransform() {
  let u = Math.random();
  let v = Math.random();
  let z0 = Math.sqrt(-2.0 * Math.log(u)) * Math.cos(2.0 * Math.PI * v);
  let z1 = Math.sqrt(-2.0 * Math.log(u)) * Math.sin(2.0 * Math.PI * v);
  return z0; // または z1
}

Zigguratアルゴリズム: より効率的な方法で、ガウス分布に従う乱数を生成するアルゴリズムです。

使用例と応用

  • 一様分布乱数: シミュレーションやモンテカルロ法、ゲーム開発など。

  • ガウス分布乱数: 統計学、機械学習、自然現象のシミュレーション、金融モデルなど。

以上の違いにより、用途や目的に応じて適切な乱数を選択し、使用することが重要です。