Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- newtype KZG c1 c2 t f (d :: Natural) = KZG f
- newtype WitnessKZG c1 c2 t f d = WitnessKZG {
- runWitness :: Map f (Vector (PolyVec f d))
- provePolyVecEval :: forall size f. (KnownNat size, FiniteField f, Eq f) => PolyVec f size -> f -> PolyVec f size
- com :: (EllipticCurve curve, f ~ ScalarField curve) => Vector (Point curve) -> PolyVec f size -> Point curve
Documentation
newtype KZG c1 c2 t f (d :: Natural) Source #
d
is the degree of polynomials in the protocol
KZG f |
Instances
Arbitrary f => Arbitrary (KZG c1 c2 t f d) Source # | |
Show f => Show (KZG c1 c2 t f d) Source # | |
Eq f => Eq (KZG c1 c2 t f d) Source # | |
(f ~ ScalarField c1, f ~ ScalarField c2, Pairing c1 c2 t, Binary f, KnownNat d, KZG c1 c2 t f d ~ kzg, Num f, Ord f, Ring f, Finite f, Field f, AdditiveGroup (BaseField c1), Binary (BaseField c1)) => NonInteractiveProof (KZG c1 c2 t f d) Source # | |
type Input (KZG c1 c2 t f d) Source # | |
type Proof (KZG c1 c2 t f d) Source # | |
Defined in ZkFold.Base.Protocol.Commitment.KZG | |
type Setup (KZG c1 c2 t f d) Source # | |
type Transcript (KZG c1 c2 t f d) Source # | |
Defined in ZkFold.Base.Protocol.Commitment.KZG | |
type Witness (KZG c1 c2 t f d) Source # | |
Defined in ZkFold.Base.Protocol.Commitment.KZG |
newtype WitnessKZG c1 c2 t f d Source #
WitnessKZG | |
|
Instances
(EllipticCurve c1, f ~ ScalarField c1, KnownNat d, Ring f, Arbitrary f, Ord f) => Arbitrary (WitnessKZG c1 c2 t f d) Source # | |
Defined in ZkFold.Base.Protocol.Commitment.KZG arbitrary :: Gen (WitnessKZG c1 c2 t f d) # shrink :: WitnessKZG c1 c2 t f d -> [WitnessKZG c1 c2 t f d] # | |
(EllipticCurve c1, f ~ ScalarField c1, Show f) => Show (WitnessKZG c1 c2 t f d) Source # | |
Defined in ZkFold.Base.Protocol.Commitment.KZG showsPrec :: Int -> WitnessKZG c1 c2 t f d -> ShowS # show :: WitnessKZG c1 c2 t f d -> String # showList :: [WitnessKZG c1 c2 t f d] -> ShowS # |
provePolyVecEval :: forall size f. (KnownNat size, FiniteField f, Eq f) => PolyVec f size -> f -> PolyVec f size Source #
com :: (EllipticCurve curve, f ~ ScalarField curve) => Vector (Point curve) -> PolyVec f size -> Point curve Source #