symbolic-base-0.1.0.0: ZkFold Symbolic compiler and zero-knowledge proof protocols
Safe HaskellSafe-Inferred
LanguageHaskell2010

ZkFold.Base.Protocol.Protostar.CommitOpen

Documentation

newtype CommitOpen a Source #

Constructors

CommitOpen a 

Instances

Instances details
(SpecialSoundProtocol f i p m c d k a, Ring f, HomomorphicCommit m c, RandomOracle (i f) f, RandomOracle c f, KnownNat k) => SpecialSoundProtocol f i p (Vector k (m, c)) (c :: Type) (d :: k1) 1 (FiatShamir (CommitOpen a)) Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.FiatShamir

Associated Types

type VerifierOutput f i p (Vector k (m, c)) c d 1 (FiatShamir (CommitOpen a)) Source #

Methods

input :: FiatShamir (CommitOpen a) -> i f -> p f -> i f Source #

prover :: FiatShamir (CommitOpen a) -> i f -> p f -> f -> Natural -> Vector k (m, c) Source #

verifier :: FiatShamir (CommitOpen a) -> i f -> Vector 1 (Vector k (m, c)) -> Vector (1 - 1) f -> VerifierOutput f i p (Vector k (m, c)) c d 1 (FiatShamir (CommitOpen a)) Source #

(SpecialSoundProtocol f i p m c d k a, HomomorphicCommit m c) => SpecialSoundProtocol f i p (m, c) (c :: Type) (d :: k1) k (CommitOpen a) Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.CommitOpen

Associated Types

type VerifierOutput f i p (m, c) c d k (CommitOpen a) Source #

Methods

input :: CommitOpen a -> i f -> p f -> i f Source #

prover :: CommitOpen a -> i f -> p f -> f -> Natural -> (m, c) Source #

verifier :: CommitOpen a -> i f -> Vector k (m, c) -> Vector (k - 1) f -> VerifierOutput f i p (m, c) c d k (CommitOpen a) Source #

(AlgebraicMap f i d a, AlgebraicMap (PolyVec f (d + 1)) i d a, Ring f, Zip i, KnownNat (d - 1), KnownNat (d + 1), Scale f c, HomomorphicCommit [f] c, RandomOracle (i f) f, RandomOracle c f, KnownNat k) => AccumulatorScheme f i [f] c d k (FiatShamir (CommitOpen a)) Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.AccumulatorScheme

Methods

prover :: FiatShamir (CommitOpen a) -> Accumulator f i [f] c k -> NARKInstanceProof f i [f] c k -> (Accumulator f i [f] c k, Vector (d - 1) c) Source #

verifier :: i f -> Vector k c -> AccumulatorInstance f i c k -> AccumulatorInstance f i c k -> Vector (d - 1) c -> (f, i f, Vector (k - 1) f, Vector k c, c) Source #

decider :: FiatShamir (CommitOpen a) -> Accumulator f i [f] c k -> (Vector k c, c) Source #

RandomOracle a b => RandomOracle (CommitOpen a) b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.CommitOpen

Methods

oracle :: CommitOpen a -> b Source #

type VerifierOutput f i p (Vector k (m, c)) (c :: Type) (d :: k1) 1 (FiatShamir (CommitOpen a)) Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.FiatShamir

type VerifierOutput f i p (Vector k (m, c)) (c :: Type) (d :: k1) 1 (FiatShamir (CommitOpen a)) = VerifierOutput f i p (m, c) c d k (CommitOpen a)
type VerifierOutput f i p (m, c) (c :: Type) (d :: k1) k (CommitOpen a) Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.CommitOpen

type VerifierOutput f i p (m, c) (c :: Type) (d :: k1) k (CommitOpen a) = (Vector k c, VerifierOutput f i p m c d k a)