Lines Matching refs:FieldElement
25 // Field elements are represented by a FieldElement, which is a typedef to an
26 // array of 8 uint32's. The value of a FieldElement, a, is:
33 using crypto::p224::FieldElement;
36 const FieldElement kP = {
41 void Contract(FieldElement* inout);
44 uint32 IsZero(const FieldElement& a) {
45 FieldElement minimal;
78 void Add(FieldElement* out, const FieldElement& a, const FieldElement& b) {
90 static const FieldElement kZero31ModP = {
99 void Subtract(FieldElement* out, const FieldElement& a, const FieldElement& b) {
123 // ReduceLarge converts a LargeFieldElement to a FieldElement.
126 void ReduceLarge(FieldElement* out, LargeFieldElement* inptr) {
171 void Mul(FieldElement* out, const FieldElement& a, const FieldElement& b) {
188 void Square(FieldElement* out, const FieldElement& a) {
210 void Reduce(FieldElement* in_out) {
211 FieldElement& a = *in_out;
243 void Invert(FieldElement* out, const FieldElement& in) {
244 FieldElement f1, f2, f3, f4;
291 // Contract converts a FieldElement to its minimal, distinguished form.
295 void Contract(FieldElement* inout) {
296 FieldElement& out = *inout;
419 const FieldElement kB = {
432 FieldElement z1z1, z2z2, u1, u2, s1, s2, h, i, j, r, v;
528 FieldElement delta, gamma, beta, alpha, t;
657 FieldElement lhs;
661 FieldElement rhs;
665 FieldElement three_x;
679 FieldElement zinv, zinv_sq, x, y;
727 FieldElement zinv, zinv_sq, y;