<aside> ποΈ
Formula Zero λ Nonce Open Source Lab μμμΌλ‘, Tezos Foundation μ μ§μμ λ°μ PoS κΈ°λ° λΈλ‘체μΈμ Light Clientλ₯Ό μ°κ΅¬νλ νλ‘μ νΈμ λλ€.
</aside>
Accumulatorμ μ¬μ μ μ μλ 'λμ°κΈ°'λ‘, CPU μ°μ°μ₯μΉμμ μ°μ°μ μ€κ° κ°μ μ μ₯νλ κΈ°μ΅κ³΅κ°μ μΌμ»«λλ€. λΈλ‘μ²΄μΈ μμμμ Accumulator λ μνΈνμ κΈ°λ°νμ¬ ν κ·Έλ£Ήμ μ 체 μμμ λ°μΈλ©λ μμ κΈΈμ΄μ commitmentλ₯Ό μμ±νλ©°, νΉμ μμκ° ν΄λΉ κ·Έλ£Ήμ ν¬ν¨λ¨μ commitment κΈ°λ°μΌλ‘ μ¦λͺ νλ μν μ νλ€. μ΄ μ¦λͺ μ 곡κ°μ μΌλ‘ κ²μ¦ κ°λ₯νλ€. κ°μ₯ κ°λ¨ν μλ‘ Merkle Tree κ° μμΌλ©°, λΉνΈμ½μΈμμ ν λΈλ‘μ ν¬ν¨λ νΈλμμ λ€μ Merkle Root λΌ λΆλ¦¬λ νλμ commitment λ‘ μΆμ½νμ¬ μ΄λ₯Ό λΈλ‘ ν€λμ μ μ₯νλ€. μΆν ν΄λΉ λΈλ‘μ νΉμ νΈλμμ μ΄ ν¬ν¨λμ΄ μμμ μ¦λͺ νλ Merkle Root μ ν΄λΉ νΈλμμ κ·Έλ¦¬κ³ Merkle Path(ν΄λΉ νΈλμμ μ Tree μ Leaf ([Figure 1] $\mathsf{H_K}$)λ‘ μ€μ νκ³ , Leaf μμ Root([Figure 1] $\mathsf{H_{ABCDEFGHIJKLMNOP}}$)κΉμ§ μ°μ°νκΈ° μν΄ νμν κ°λ€)([Figure 1] $\mathsf{H_L, H_{IJ}, H_{MNOP}, H_{ABCDEFGH}}$) μ κ°μ§κ³ κ²μ¦ν μ μλ€.
Vector Commitment(VC)λ Accumulator μ μνΈνμ μΌλ‘ λ§€μ° μ μ¬νλ€. VCλ κ·Έλ£Ήμ νλμ μμκ° "νΉμ μμΉ"μ μν΄ μμμ μμ κΈΈμ΄μ Proofλ‘ μ¦λͺ ν μ μλ€. Sub-Vector Commitment λ μ¬λ¬ μμλ€ λ° κ·Έ μμΉλ€μ λν΄ μ¦λͺ ν μ μλ Proof λ₯Ό λ§νλ€. λ³΄ν΅ VCλ μλμ 6κ° μκ³ λ¦¬μ¦μΌλ‘ ꡬμ±λλ€.
벑ν°μ ν ννλ°©μμΌλ‘ λ€νμ(Polynomial)μ μ μ©ν μ μλ€. μ¦ $i$ λ²μ§Έ μμΉμ κ° $v_i$ μ λν΄ $f(i)=v_i$ λ₯Ό ꡬμ±νμ¬ λΌκ·Έλμ£Ό 보κ°λ²(Lagrange Interpolation) μΌλ‘ λ€νμμ μ μΆν μ μλ€. μ¦, μ£Όμ΄μ§ $n$ κ°μ pair μΈ $(x_i, y_i)_{i\in [0,n)}$μ λν΄μ $n$ λ³΄λ€ μμ μ°¨μλ₯Ό κ°λ λ€νμ $\phi(X)$ μ $\phi(x_i)=y_i$ λ₯Ό λ§μ‘±νλ€. λΌκ·Έλμ£Ό 보κ°λ²μ μ μ©νλ©΄ ν΄λΉ λ€νμμ $O(n \log^2 n)$ μκ°λ΄μ μ°Ύμ μ μλ€.
λ€νμμΌλ‘ ννν 벑ν°μ λν Commitment λ₯Ό μμ±νλ λ°©μ μ€ μ΅κ·Ό λ§μ΄ μΈκΈλλ Kate('μΉ΄ν 'λΌ μ½μ) Polynomial Commitment μ μμ보μ. μ΄ Commitment λ pairing κΈ°λ° κ²μ¦ μκ³ λ¦¬μ¦μ κ°μ§λ©°, μλ λ assumptionμ κ°μ§λ€.