7 #include <libff/algebra/fields/fp2.hpp>
13 void read_powersoftau_g2<libff::alt_bn128_pp>(
14 std::istream &in, libff::alt_bn128_G2 &out)
17 in.read((
char *)&marker, 1);
22 out = libff::alt_bn128_G2::zero();
27 read_powersoftau_fp2(in, out.X);
28 read_powersoftau_fp2(in, out.Y);
29 out.Z = libff::alt_bn128_Fq2::one();
39 void write_powersoftau_g2<libff::alt_bn128_pp>(
40 std::ostream &out,
const libff::alt_bn128_G2 &g2)
43 const uint8_t zero = 0;
44 out.write((
const char *)&zero, 1);
48 libff::alt_bn128_G2 copy(g2);
49 copy.to_affine_coordinates();
51 const uint8_t marker = 0x04;
52 out.write((
const char *)&marker, 1);
53 write_powersoftau_fp2(out, copy.X);
54 write_powersoftau_fp2(out, copy.Y);