8#ifndef ALT_BN128_G1_HPP_
9#define ALT_BN128_G1_HPP_
18std::ostream&
operator<<(std::ostream &,
const alt_bn128_G1&);
19std::istream&
operator>>(std::istream &, alt_bn128_G1&);
23#ifdef PROFILE_OP_COUNTS
24 static long long add_cnt;
25 static long long dbl_cnt;
84template<mp_
size_t m, const big
int<m>& modulus_p>
90std::ostream&
operator<<(std::ostream& out,
const std::vector<alt_bn128_G1> &v);
91std::istream&
operator>>(std::istream& in, std::vector<alt_bn128_G1> &v);
static bigint< n > field_char()
static size_t size_in_bits()
bigint< n > as_bigint() const
static std::vector< size_t > wnaf_window_table
bool operator!=(const alt_bn128_G1 &other) const
static std::vector< size_t > fixed_base_exp_window_table
static alt_bn128_G1 zero()
static alt_bn128_G1 G1_one
bool is_well_formed() const
static alt_bn128_G1 one()
bool operator==(const alt_bn128_G1 &other) const
static void batch_to_special_all_non_zeros(std::vector< alt_bn128_G1 > &vec)
void print_coordinates() const
alt_bn128_Fr scalar_field
static alt_bn128_G1 G1_zero
alt_bn128_G1 mixed_add(const alt_bn128_G1 &other) const
friend std::ostream & operator<<(std::ostream &out, const alt_bn128_G1 &g)
alt_bn128_G1 operator-() const
static size_t size_in_bits()
alt_bn128_G1 add(const alt_bn128_G1 &other) const
alt_bn128_G1 operator+(const alt_bn128_G1 &other) const
friend std::istream & operator>>(std::istream &in, alt_bn128_G1 &g)
static bigint< base_field::num_limbs > base_field_char()
alt_bn128_G1(const alt_bn128_Fq &X, const alt_bn128_Fq &Y, const alt_bn128_Fq &Z)
static alt_bn128_G1 random_element()
static bigint< scalar_field::num_limbs > order()
void to_affine_coordinates()
std::istream & operator>>(std::istream &in, alt_bn128_G1 &g)
GroupT scalar_mul(const GroupT &base, const bigint< m > &scalar)
std::ostream & operator<<(std::ostream &out, const alt_bn128_G1 &g)
alt_bn128_G1 operator*(const bigint< m > &lhs, const alt_bn128_G1 &rhs)