IrreduciblePoly Fq IP1 Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381 |
IrreduciblePoly Fq2 IP2 Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381 |
IrreduciblePoly Fq6 IP3 Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.EllipticCurve.BLS12_381 |
(KnownNat p, MultiplicativeGroup a, Order a ~ p) => Exponent a (Zp p) Source # | Exponentiation by an element of a finite field is well-defined (and lawful)
if and only if the base is a finite multiplicative group of a matching order. Note that left distributivity is satisfied, meaning
a ^ (m + n) = (a ^ m) * (a ^ n) . |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => FromConstant Integer (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => FromConstant Natural (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Scale Integer (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Scale Natural (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Finite (Zp p) => EllipticCurve (Ed25519 (Zp p) :: Type) Source # | Ed25519 with UInt 256 (Zp p) as computational backend |
Instance detailsDefined in ZkFold.Symbolic.Data.Ed25519 |
KnownNat p => Arbitrary (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
FromJSON (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
ToJSON (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Generic (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Num (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Prime p => Fractional (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Show (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Binary (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
NFData (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Eq (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Ord (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Random (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => AdditiveGroup (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => AdditiveMonoid (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => AdditiveSemigroup (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Prime p => BinaryExpansion (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Prime p => DiscreteField' (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => EuclideanDomain (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Prime p => Field (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
(KnownNat p, KnownNat (NumberOfBits (Zp p))) => Finite (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => MultiplicativeMonoid (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => MultiplicativeSemigroup (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Ring (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Semiring (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Prime p => TrichotomyField (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
Prime p => Exponent (Zp p) Integer Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
KnownNat p => Exponent (Zp p) Natural Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
ToConstant (Zp p) Natural Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
(Prime p, Field x, Eq x) => DiscreteField (Bool (Zp p)) x Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.DiscreteField |
(Prime p, Ord x) => Ord (Bool (Zp p)) x Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.Ord |
(Finite (Zp p), KnownNat n) => Eq (Bool (Zp p)) (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => Ord (Bool (Zp p)) (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => StrictConv (Zp p) (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => Arbitrary (ByteString n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(Finite (Zp p), KnownNat n) => Arbitrary (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => AdditiveGroup (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => AdditiveMonoid (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => AdditiveSemigroup (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => EuclideanDomain (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => MultiplicativeMonoid (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => MultiplicativeSemigroup (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => Ring (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => Semiring (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => BoolType (ByteString n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(Finite (Zp p), KnownNat n) => ShiftBits (ByteString n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(Finite (Zp p), KnownNat n) => StrictNum (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => ToConstant (UInt n (Zp p)) Integer Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => ToConstant (UInt n (Zp p)) Natural Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
Substitution (Vector n b) (Zp n) b Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Polynomials.Multivariate.Substitution |
(KnownNat n, KnownNat m, m <= n, Mod n m ~ 0, Finite (Zp p)) => Concat (ByteString m (Zp p)) (ByteString n (Zp p)) Source # | Unfortunately, Haskell does not support dependent types yet,
so we have no possibility to infer the exact type of the result
(the list can contain an arbitrary number of words).
We can only impose some restrictions on n and m . |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(KnownNat wordSize, KnownNat n, Finite (Zp p), wordSize <= n, 1 <= wordSize, 1 <= n, Mod n wordSize ~ 0) => ToWords (ByteString n (Zp p)) (ByteString wordSize (Zp p)) Source # | A ByteString of length n can only be split into words of length wordSize if all of the following conditions are met:
1. wordSize is not greater than n ;
2. wordSize is not zero;
3. The bytestring is not empty;
4. wordSize divides n . |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(KnownNat m, KnownNat n, n <= m, Finite (Zp p)) => Truncate (ByteString m (Zp p)) (ByteString n (Zp p)) Source # | Only a bigger ByteString can be truncated into a smaller one. |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(KnownNat n, m <= n, Finite (Zp p)) => Extend (ByteString m (Zp p)) (ByteString n (Zp p)) Source # | Only a smaller ByteString can be extended into a bigger one. |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(Finite (Zp p), KnownNat n, KnownNat m, n <= m) => Extend (UInt n (Zp p)) (UInt m (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
(Finite (Zp p), KnownNat n) => Iso (ByteString n (Zp p)) (UInt n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(Finite (Zp p), KnownNat n) => Iso (UInt n (Zp p)) (ByteString n (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.ByteString |
(Finite (Zp p), KnownNat n, KnownNat m, m <= n) => Shrink (UInt n (Zp p)) (UInt m (Zp p)) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.UInt |
type BaseField (Ed25519 (Zp p) :: Type) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.Ed25519 |
type ScalarField (Ed25519 (Zp p) :: Type) Source # | |
Instance detailsDefined in ZkFold.Symbolic.Data.Ed25519 |
type Rep (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |
type Order (Zp p) Source # | |
Instance detailsDefined in ZkFold.Base.Algebra.Basic.Field |