# 概要 - 従来のコード編集は、テキスト編集であった - [[LLM]]に編集させるときは、無駄なコンテクストウィンドウを消費していた - ソースコード代数を提案し、あたかも方程式の書き換えのように[[AST]]を編集できるようにすることで、トークン消費量を大幅に削減した - [[共同編集]], [[バージョン管理]]でも使えそう! # 詳細 ## Potency 操作の効力の分類。 - [[Nullipotent]]: ソースコード代数の操作には、そのコードベースに適用するとコードの見た目は変化するが、機能的には元と振る舞いが保存されるものがある。このような操作のことを、Nullipotentという。つまり副作用がない変形操作。 - [[Pluripotent]]: 機能的な変更が行われる操作。 ### 例 ![[Pasted image 20260731165258.png]] - $AddParam$: これは[[Nullipotent]]。なぜならパラメータを追加しただけでは振る舞いは変化しないから。 - $MakeCond$: これは一般に[[Pluripotent]]。振る舞いが変化するから。しかし、この条件は$includeBonus$であり、前段のAddParamではデフォルトがTrueなので、実は振る舞いは変化しなくてこの場合は[[Nullipotent]]。 - $MakeOptional$(合成): これは上記より[[Nullipotent]]。 ### Potencyは自動的に判定不能 - [[ライスの定理]]より、ある操作が[[Nullipotent]]かどうか