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

ZkFold.Base.Protocol.Protostar.Oracle

Documentation

class RandomOracle a b where Source #

Minimal complete definition

Nothing

Methods

oracle :: a -> b Source #

default oracle :: (Generic a, RandomOracle' (Rep a) b) => a -> b Source #

Instances

Instances details
(Ring a, FromConstant Integer a) => RandomOracle Integer a Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle :: Integer -> a Source #

Ring a => RandomOracle a a Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle :: a -> a Source #

(Generic a, RandomOracle' (Rep a) b) => RandomOracle a b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle :: a -> b Source #

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

Defined in ZkFold.Base.Protocol.Protostar.CommitOpen

Methods

oracle :: CommitOpen a -> b Source #

(Ring b, RandomOracle a b) => RandomOracle (Vector a) b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle :: Vector a -> b Source #

(Ring b, RandomOracle a b) => RandomOracle [a] b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle :: [a] -> b Source #

class RandomOracle' f b where Source #

Methods

oracle' :: f a -> b Source #

Instances

Instances details
(RandomOracle' f b, RandomOracle' g b, Ring b) => RandomOracle' (f :*: g :: k -> Type) b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle' :: forall (a :: k0). (f :*: g) a -> b Source #

(RandomOracle' f b, RandomOracle' g b) => RandomOracle' (f :+: g :: k -> Type) b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle' :: forall (a :: k0). (f :+: g) a -> b Source #

RandomOracle c b => RandomOracle' (K1 i c :: k -> Type) b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle' :: forall (a :: k0). K1 i c a -> b Source #

(KnownSymbol conName, Ring a, FromConstant Natural a) => RandomOracle' (M1 C ('MetaCons conName fixity selectors) (U1 :: k -> Type) :: k -> Type) a Source #

Handling constructors with no fields. The oracle will be based on the constructor's name

Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle' :: forall (a0 :: k0). M1 C ('MetaCons conName fixity selectors) U1 a0 -> a Source #

RandomOracle' f b => RandomOracle' (M1 c m f :: k -> Type) b Source # 
Instance details

Defined in ZkFold.Base.Protocol.Protostar.Oracle

Methods

oracle' :: forall (a :: k0). M1 c m f a -> b Source #