701 / 736SIMPLICITY

Simplicity

形式的に定義されたコントラクト言語

Simplicity は形式意味論、静的な資源上限、merklized program を備えた contract 向けの低水準型付き関数型言語である。Liquid では動作するが Bitcoin mainnet では有効化されていない。

Simplicity は少数の combinator から program を構成し、既知の部分式を同じ意味を持つ高速な jets に置き換えることで、解析可能性と実用性能を両立する。

中心は、数学的に定義された denotational semantics と operational semantics を持つ少数の型付き combinator である。Rocq の形式 model により、言語、実装、個別 program の性質に関する証明を機械検証できる。 [1]

言語には無制限 loop も一般再帰もないため、実行前に計算量、memory、data の上限を導出できる。したがって program が未知の gas 消費で停止したり、永久に動き続けたりしない。 [1]

Program は merklized expression tree であり、使用しない branch は支出時にその Merkle root で置き換えられる。Validator は program 全体への commitment を確認する一方、on-chain では必要な path と witness data だけが公開される。 [1]

Jet は特定の Simplicity expression を認識し、最適化した native function で実行する。Consensus safety には jet の結果が expression の reference semantics と完全に一致することが必要で、隠れた新しい意味は加えない。 [1]

libSimplicity は C の最小 consensus-sensitive runtime、Haskell の reference と generator 部分、Rocq の形式 model を含む。各 layer は相互検査されるが、repository は言語と実装が引き続き開発中だと明記している。 [2]

SimplicityHL は Simplicity bytecode に compile される、より読みやすい Rust 風言語である。Project 自身が work in progress で production-ready ではないとしており、contract audit は source、compiler、bytecode、witness、jets を含める必要がある。 [3]

Simplicity は 2025 年に Liquid mainnet へ導入された。Liquid は複数 asset と Confidential Transactions を持つ federated sidechain なので、これは Bitcoin mainnet consensus での activation ではなく、そこには別の proposal と soft fork が必要となる。 [4]

形式意味論は正しい経済的意図、安全な key、信頼できる counterparty を保証しない。検証では低水準 program、SimplicityHL tool、具体的な jet set、Liquid version、仮想的な Bitcoin integration を区別する。 [2]

理解を深めるには、この項目とあわせて次もお読みください Bitcoin Script, Miniscript, Taproot, Soft Fork, コンセンサスルール, Sidechain.

01Simplicity は Bitcoin mainnet で使えるのか?

いいえ。異なる consensus を持つ Liquid mainnet に導入されており、Bitcoin の script 言語として使うには別の proposal と soft fork が必要である。

02Simplicity は Miniscript と同じか?

いいえ。Miniscript は現在の Bitcoin Script 上の解析可能な構造であり、Simplicity は別の形式定義された低水準言語である。

DOC · 001Simplicity paper一次資料 DOC · 002Blockstream Research — Simplicity implementation一次資料 DOC · 003Blockstream Research — SimplicityHL一次資料 DOC · 004Blockstream — Simplicity launches on Liquid一次資料
改訂日: 一次資料を優先 · 投資助言ではありません