Compliance
Compliance structures for zero-knowledge proofs in the Anoma Resource Machine.
{-# OPTIONS --without-K --type-in-type #-} module Goose.Anoma.Compliance where open import Foundation.BasicTypes open import Goose.Anoma.Resource open import Goose.Anoma.NullifierKey
Merkle Path
MerklePath : Set MerklePath = List ℕ
Compliance Witness
record ComplianceWitness : Set where field consumedResource : Resource createdResource : Resource nfKey : NullifierKey rcv : String merklePath : MerklePath ephemeralRoot : String
open ComplianceWitness public
Compliance Instance
record ComplianceInstance : Set where open ComplianceInstance public
Compliance Proof
ComplianceProof : Set ComplianceProof = String
Compliance Unit
record ComplianceUnit : Set where field proof : ComplianceProof inst : ComplianceInstance
open ComplianceUnit public
Create Compliance Unit
createComplianceUnit : ComplianceWitness → ComplianceUnit createComplianceUnit witness = record { proof = "" ; inst = record {} }
Note: Placeholder implementation for proof generation.
Module References
Referenced By
This module is referenced by:
- Goose.Anoma.Action
- Symbols: ComplianceUnit
- Goose.Anoma.Delta
- Symbols: ComplianceWitness
References
This module references:
- Foundation.BasicTypes
- Goose.Anoma.NullifierKey
- Imports: NullifierKey
- Goose.Anoma.Resource
- Imports: Resource