From 831eb8bf9f8c6ab91f162bde343fff59d6cf66b5 Mon Sep 17 00:00:00 2001 From: jtguibas Date: Mon, 10 Oct 2022 18:00:19 -0700 Subject: [PATCH] new field --- field/field.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 field/field.go diff --git a/field/field.go b/field/field.go new file mode 100644 index 0000000..1894787 --- /dev/null +++ b/field/field.go @@ -0,0 +1,25 @@ +package field + +import ( + "github.com/consensys/gnark-crypto/ecc" + "github.com/consensys/gnark/frontend" + "github.com/consensys/gnark/std/math/emulated" +) + +type EmulatedField = emulated.Goldilocks +type F = emulated.Element[EmulatedField] +type Hash = [4]F + +var TEST_CURVE = ecc.BN254 + +func NewFieldElement(x uint64) F { + return emulated.NewElement[EmulatedField](x) +} + +func NewFieldAPI(api frontend.API) frontend.API { + field, err := emulated.NewField[EmulatedField](api) + if err != nil { + panic(err) + } + return field +}