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

ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Synopsis

Documentation

type BLS12_381_Scalar = 52435875175126190479447740508185965837690552500527637822603658699938581184513 Source #

type BLS12_381_Base = 4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787 Source #

type IP1 = "IP1" Source #

type IP2 = "IP2" Source #

type IP3 = "IP3" Source #

type BLS12_381_G1_Point = Weierstrass "BLS12-381-G1" (Point Fq) Source #

bytesOf :: (ToConstant a, Const a ~ Natural) => Int -> a -> [Word8] Source #

newtype BLS12_381_GT Source #

An image of a pairing is a cyclic multiplicative subgroup of Fq12 of order BLS12_381_Scalar.

Constructors

BLS12_381_GT Fq12 

Instances

Instances details
Show BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Eq BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Finite BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Associated Types

type Order BLS12_381_GT :: Natural Source #

MultiplicativeGroup BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

MultiplicativeMonoid BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

MultiplicativeSemigroup BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Eq BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Associated Types

type BooleanOf BLS12_381_GT Source #

Exponent BLS12_381_GT Integer Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Exponent BLS12_381_GT Natural Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Conditional Bool BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Pairing BLS12_381_G1_Point BLS12_381_G2_Point BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

type Order BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

type BooleanOf BLS12_381_GT Source # 
Instance details

Defined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381

Orphan instances

Binary BLS12_381_G1_CompressedPoint Source # 
Instance details

Binary BLS12_381_G1_Point Source # 
Instance details

Binary BLS12_381_G2_CompressedPoint Source # 
Instance details

Binary BLS12_381_G2_Point Source # 
Instance details

Prime BLS12_381_Base Source # 
Instance details

Prime BLS12_381_Scalar Source # 
Instance details

Compressible BLS12_381_G1_Point Source # 
Instance details

Associated Types

type Compressed BLS12_381_G1_Point Source #

Compressible BLS12_381_G2_Point Source # 
Instance details

Associated Types

type Compressed BLS12_381_G2_Point Source #

CyclicGroup BLS12_381_G1_Point Source # 
Instance details

CyclicGroup BLS12_381_G2_Point Source # 
Instance details

Scale Fr BLS12_381_G1_Point Source # 
Instance details

Scale Fr BLS12_381_G2_Point Source # 
Instance details

IrreduciblePoly Fq IP1 Source # 
Instance details

IrreduciblePoly Fq2 IP2 Source # 
Instance details

IrreduciblePoly Fq6 IP3 Source # 
Instance details

Field field => WeierstrassCurve "BLS12-381-G1" field Source # 
Instance details

Methods

weierstrassB :: field Source #

WeierstrassCurve "BLS12-381-G2" Fq2 Source # 
Instance details

Pairing BLS12_381_G1_Point BLS12_381_G2_Point BLS12_381_GT Source # 
Instance details