Cryptids

2025/12/06 20:48

Cryptids

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

記事では Cryptids と呼ばれる新しいチューリング機械のファミリーを紹介しています。これらは 最小(BB(n,m) クラス内で既知のより小さいマシンが存在しない)で、空白テープ上で単純なコラッツ類似ルールに従い、停止問題が数学的に難しいという特徴があります。
2023年10月にショーン・リゴクキーによって「Big Foot」として初めて発表され、その後、Hydra、Antihydra、Lucy’s Moonlight など複数の最小 Cryptid が BB(n,m) 表記で登録されています。多くは “Probviously halting” または “Probviously non‑halting” とラベル付けされており、これはコミュニティによるヒューリスティック評価です。
いくつかの Cryptid は主要な公設命題を符号化するように 構築 されています:

構築された CryptidBB コード符号化されている命題
ZF (BB 432)
ゼルメロ–フラネッカー集合論(不整合)
RH (Riemann H.)リーマン予想 – 予想が偽であれば停止
Goldbach (Goldb.)ゴールドバッチの予想 – 予想が偽なら停止
Erdős (Erd. 5,4 / 15)エルデシュ「n>8 のとき、2ⁿ の3進表記に 2 が現れる」
Weak Collatz (BB 124/43 – 4)弱コラッツ予想

コミュニティは体系的探索や意図的設計を通じてさらに多くの Cryptid を発見することを期待しており、これにより計算難易度と未解決数学問題との結びつきが強化されます。 これらのマシンは理論とシミュレーションツールに対する挑戦的なテストケースを提供します。

本文

ローレン作のラヴクラフト風ビーバー・ファンアート


クレプティッドとは?

クレプティッドは、空白テープで起動したときにその振る舞いが「比較的単純な数学規則」で完全に記述できるチューリングマシンです。ただし、その規則は未解決(および計算上難しい)という数理問題のクラスに属します。
定義はある程度主観的で、 *「単純」や *「難解」で何を指すかは曖昧です。実際には既知の小規模クレプティッドはほとんどがコラッツ‐様式の振る舞いを示し、空白テープでの停止判定問題は数学的に難しいと言えます。

もし (n) 状態・(m) 記号のクレプティッドが存在すれば、BB(n,m) はその難解な数理問題を解かずには決定できません。
「クレプティッド」という語は、ビッグフットの発見を告知した 2023 年 10 月にショーン・リゴッキが提案しました。


エッジ上のクレプティッド

以下は、既知の最小(領域内でそれより小さいクレプティッドが存在しない)クレプティッドをまとめた表です。すべて「野生発見」され、構築ではありません。

名前BB ドメインマシン (bbch)日付発見者備考
BigfootBB(3,3)
1RB2RA1LC_2LC1RB2RB_---2LA1LA
2023‑11ショーン・リゴッキ
HydraBB(2,5)
1RB3RB---3LA1RA_2LA…
2024‑05ダニエル・ユアン
ボーナス・クレプティッドBB(2,5)
1RB…
2024‑05ダニエル・ユー
AntihydraBB(6)
1RB1RA_0LC...
2024‑06@mxdys & 立川
(@rachelineが確認)
Hydra から始点を変え、O > 2E を採用。
Lucy’s MoonlightBB(6)
2025‑03ラチェライン非常に短い命令列で一旦止まることが判明。
BB(1)
...
2024‑07mxdysハイドラ → 変種・拡張?

(※「クレプティッド‐エッジ」=「最小で先行者―前方により古い情報がなくても…」)


大型クレプティッド

1. Z F

  • BB(432) …


The content‑wise? We need translation but concise.We must produce Japanese translation of entire article; keep formatting. Provide concise but accurate. Let's output.ローレンが描いたラヴクラフト風ビーバー・ファンアート


クレプティッドとはチューリングマシン

クレプティッドは、空白テープで起動したときの挙動を「比較的単純な数学規則」で完全に記述できるチューリングマシンです。ただし、その規則は未解決(そして計算上難しい)問題のクラスに属します。
定義はある程度主観的で、 何が「単純」か・ 「難解」かは曖昧です。実際には既知の小型クレプティッドはほとんどコラッツ‐様式の挙動を示し、空白テープ上の停止判定問題は数学的に難しいと言えます。

もし (n) 状態・(m) 記号のクレプティッドが存在すれば BB(n,m) はその難解な数理問題を解かずには決定できません。
「クレプティッド」という呼称は、2023 年10月にビッグフットの発見を告知したショーン・リゴッキによって提案されました。


エッジ上のクレプティッド

以下は既知の最小(その領域内でそれより小さいクレプティッドが存在しない)クレプティッドをまとめた表です。すべて「野生発見」で、構築ではありません。

名前BB ドメインマシン (bbch)日付発見者備考
BigfootBB(3,3)
1RB2RA1LC_2LC1RB2RB_---2LA1LA
2023‑11ショーン・リゴッキ
HydraBB(2,5)
1RB3RB---3LA1RA_2LA3RA4LB0LB0LA
2024‑05ダニエル・ユアン
ボーナス・クレプティッドBB(2,5)
1RB3RB---3LA1RA_2LA3RA4LB0LB1LB
2024‑05ダニエル・ユアン明らかに停止しない。
AntihydraBB(6)
1RB1RA_0LC1LE_1LD1LC_1LA0LB_1LF1RE_---0RA
2024‑06@mxdys(@racheline がクレプティッドと確認)Hydra と同じ構造だが開始点を 8、終了条件を O > 2E に変更。
Lucy’s MoonlightBB(6)
1RB0RD_0RC1RE_1RD0LA_1LE1LC_1RF0LD_---0RA
2025‑03ラチェライン明らかに停止。
BB(6)
1RB1RC_1LC1LE_1RA1RD_0RF0RE_1LA0LB_---1RA
2024‑07mxdysHydra・Antihydra の変種。非停止。
BB(6)
1RB1LD_1RC1RE_0LA1LB_0LD1LC_1RF0RA_---0RC
2024‑08mxdysHydra・Antihydra と同様のランダムウォーク。非停止。
BB(6)
1RB0LD_1RC1RF_1LA0RA_0LA0LE 1LD1LA_0RB---
2024‑09ダニエル・ユアンランダムウォーク構造。非停止。
BB(6)
1RB0LB_1LC0RE_1LA1LD 0LC---_0RB0RF_1RE1RB
2024‑11ラチェライン同上。非停止。
Space NeedleBB(6)
1RB1LA_1LC0RE_1LF1LD_0RA…
2025‑01mxdys非停止。
BB(6)
1RB1RA_0RC1RC_1LD0LF_0LE1LE_1RA0LB_---0LC
2024‑07mxdys16 個の BB(6) とほぼ同一。停止。
BB(6)
1RB1RE_1LC1LD_---1LA_1LB1LE_0RF0RA_1LD1RF
2024‑07ラチェライン停止。
BB(6)
1RB0RE_1LC1LD_0RA0LD?1LB0LA_1RF1RA_---?LB
2024‑07ラチェライン停止。

以下のマシンはカオス的挙動を示すが、定義は不十分です…


大型クレプティッド

1. Z F

  • BB(432) – …

(※まだ未完成。詳細は元ソースリンクをご参照ください。)

同じ日のほかのニュース

一覧に戻る →

2025/12/14 7:58

Linux Sandboxes and Fil-C

## Japanese Translation: メモリ安全性とサンドボックスはプログラムの異なる部分を保護するため、両方が強力なセキュリティに必要です。純粋な Java プログラムはメモリ安全であってもファイルシステムの syscalls を通じて任意のファイルを書き込むことができるし、逆にすべての能力を取り消したアセンブリプログラムでもメモリバグがある場合がありますが、カーネルが特権 syscalls を殺すためサンドボックスから逃げられません。サンドボックスは意図的に許容範囲を広く設計しているため、攻撃者は残されたメモリ安全性のバグを利用してブローカー・プロセスへ到達することができるので、両方の防御を組み合わせるとより強固な保護が得られます。 本書では、C/C++ 用に設計され、システムコールまで安全性を保証し、init や udevd などの低レベルコンポーネントで使用できるメモリ安全ランタイム「Fil‑C」への OpenSSH の seccomp ベース Linux サンドボックス移植方法について説明します。OpenSSH は既に chroot を採用し、`sshd` ユーザー/グループとして特権なしで実行し、`setrlimit` を使用し、非許可 syscalls を `SECCOMP_RET_KILL_PROCESS` で殺す seccomp‑BPF フィルタを適用しています。Fil‑C はその runtime 内で自動的にこれらの syscalls を許可することで簡素化します。背景スレッドは存続させつつスレッド生成を防ぐため、Fil‑C は API `void zlock_runtime_threads(void)` を追加し、必要なスレッドを事前確保してシャットダウンを無効にします。 OpenSSH の seccomp フィルタは強化されています。失敗時の挙動が `SECCOMP_RET_KILL` から `SECCOMP_RET_KILL_PROCESS` に変更され、mmap 許可リストに新たに `MAP_NORESERVE` フラグが追加され、`sched_yield` が許可されています。サンドボックスは二つの `prctl` コール(`PR_SET_NO_NEW_PRIVS` と `PR_SET_SECCOMP`)で構築され、エラー検出も行われます。Fil‑C のランタイムは `filc_runtime_threads_handshake` で全スレッドとハンドシェイクし、各スレッドが no_new_privs ビットと seccomp フィルタを持つことを保証します。複数のユーザー スレッドが検出された場合、安全エラーが発生します。 メモリ安全性とサンドボックスを組み合わせることで、OpenSSH はより厳格な隔離を実現し、メモリバグによる権限昇格リスクを低減します。このアプローチは他のセキュリティクリティカルプロジェクトにも採用を促す可能性があります。

2025/12/14 9:34

An Implementation of J

## Japanese Translation: ## 改訂版要約 本書は、技術仕様の構造化された目次であり、以下のように整理されています。 1. **第0章 – はじめに** 2. **第1章 – 文を解釈する** - 1.1 単語生成 - 1.2 構文解析 - 1.3 トレイン(列車) - 1.4 名前解決 3. **第2章 – 名詞** - 2.1 配列 - 2.2 型 - 2.3 メモリ管理 - 2.4 グローバル変数 4. **第3章 – 動詞** - 3.1 動詞の構造 - 3.2 ランク - 3.3 原子(スカラー)動詞 - 3.4 オブヴァース、同一性、および変種 - 3.5 エラー処理 5. **第4章 – 副詞と接続詞** 6. **第5章 – 表現** - 5.1 原子表現 - 5.2 ボックス化された表現 - 5.3 木構造表現 - 5.4 線形表現 7. **第6章 – ディスプレイ** - 6.1 数値表示 - 6.2 ボックス化表示 - 6.3 フォーマット済み表示 主要セクションの後に、付録A〜F(インキュナブルム、スペシャルコード、テストスクリプト、プログラムファイル、外国接続詞、およびシステム概要)が補足資料として提供されます。書末には参考文献・用語集・索引が付されています。 この構成(目次 → 詳細セクション → 付録 → 参照資料)は、読者に全体枠組みを最初に把握させたうえで、必要に応じて詳細へ掘り下げたり補足資料を参照したりできる明確かつ階層的な道筋を提供します。

2025/12/14 8:39

Closures as Win32 Window Procedures

## Japanese Translation: **改訂版要約:** この記事では、Win32 のウィンドウプロシージャに追加のコンテキストポインタを渡す方法を示しています。これは、WndProc が通常 4 つしか引数を取らないため、ネイティブ API には備わっていない機能です。著者は x64 アセンブラで小さなトランスペイル(trampoline)を作成し、実行時に JIT コンパイルして 5 番目の引数スロットを挿入し、呼び出し前に必要なコンテキストを格納します。これにより、各ウィンドウがグローバル変数や `GWLP_USERDATA` を使わずに独自の状態を保持できるようになります。トランスペイルは GNU アセンブラで書かれ、`.exebuf` セクション(`bwx` フラグ付き)から 2 MiB の実行可能バッファが確保されます。C ヘルパー関数 `make_wndproc(Arena *, Wndproc5, void *arg)` は 2 つのバイトオフセットプレースホルダーを修正してトランスペイルを生成します。作成後は `set_wndproc_arg(WNDPROC p, void *arg)` を使ってコンテキストを変更できます。アロケータ例では、異なる状態オブジェクト用に複数のトランスペイルを生成したり、動的に切り替えたりする方法を示しています。この手法は、トランスペイルがアンウインドテーブルを持たないため Windows Control Flow Guard 下でも安全に機能し、グローバル変数を使わずにウィンドウごとのデータを付与する低レベルの手段を示しています。