arnaucube
arnaucube/hyperplonkPublic Self-hosted repository
hyperplonk/subroutines/src/pcs/structs.rs
subroutines/src/pcs/structs.rsRaw
 1// Copyright (c) 2022 Espresso Systems (espressosys.com)
 2// This file is part of the Jellyfish library.
 3
 4// You should have received a copy of the MIT License
 5// along with the Jellyfish library. If not, see <https://mit-license.org/>.
 6
 7use ark_ec::PairingEngine;
 8use ark_serialize::{CanonicalDeserialize, CanonicalSerialize, Read, SerializationError, Write};
 9use derivative::Derivative;
10
11#[derive(Derivative, CanonicalSerialize, CanonicalDeserialize)]
12#[derivative(
13    Default(bound = ""),
14    Hash(bound = ""),
15    Clone(bound = ""),
16    Copy(bound = ""),
17    Debug(bound = ""),
18    PartialEq(bound = ""),
19    Eq(bound = "")
20)]
21/// A commitment is an Affine point.
22pub struct Commitment<E: PairingEngine>(
23    /// the actual commitment is an affine point.
24    pub E::G1Affine,
25);