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 +}