braidpath op• データ種: signal × scalar → signal
• 呼び出し: import fullseye as fs; fs.ledger.braid_reduce(word, n_strands) (実装を直接呼ぶなら import braidpath; braidpath.braid_reduce(word, n_strands)、台帳から引くなら opsdrive.get("braid_reduce"))
• GPU: なし(CPU 参照実装のみ)
組紐語を Dehornoy の取っ手簡約で簡約する。空の語が返る ⇔ 自明な組紐(同じ類)。
取っ手 = σⱼ^e u σⱼ^(−e)(u に σⱼ^(±1)・σⱼ₋₁^(±1) が無い)。u の中の σⱼ₊₁^d を σⱼ₊₁^(−e) σⱼ^d σⱼ₊₁^e に替え、外側の 2 文字を消す(関係式だけを使うので組紐は変わらない)。左から最初に閉じる取っ手を選ぶ —— その中には別の取っ手が無いので Dehornoy の意味で許され、有限回で止まる。返りの語は取っ手を持たず、空でなければ現れる最小の添字の文字の符号がそろう(σ 正 / σ 負)。
空の入力(word が 0 要素)は空の語を返す(理由: 空の語は単位元 = どの紐も交差しない自明な組紐で、正しい答え)。
Returns: int の 1-D 配列(簡約した語)。
Raises: ValueError(添字が範囲の外・0)、RuntimeError(語が MAX_WORD を超えて膨らんだ)。
• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。
• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。
• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。
• poc_braid_homotopy_classes — py -3.11 examples/poc_braid_homotopy_classes.py
signal を入力に取れる)flight_vacuum · magnus_lift_coefficient · drag_coefficient_sphere · restitution_from_apexes · restitution_from_intervals · fit_parabola · flight_fit · fit_aero
braidpath)braid_from_trajectories · braid_artin_images · dynnikov_coordinates · dynnikov_act · braid_equivalent · homotopy_class_compare · pairwise_winding · homotopy_shortest_paths
*Provenance: braidpath.py — DRIVE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.