Module cairo_vm::math_utils

source ·

Functions

  • Finds a nonnegative integer x < p such that (m * x) % p == n.
  • Doubles a point on an elliptic curve with the equation y^2 = x^3 + alpha*x + beta mod p. Assumes the point is given in affine form (x, y) and has y != 0.
  • Computes the slope of an elliptic curve with the equation y^2 = x^3 + alpha*x + beta mod p, at the given point. Assumes the point is given in affine form (x, y) and has y != 0.
  • Returns the integer square root of the nonnegative integer n. This is the floor of the exact square root of n. Unlike math.sqrt(), this function doesn’t have rounding error issues.
  • Computes the slope of the line connecting the two given EC points over the field GF(p). Assumes the points are given in affine form (x, y) and have different x coordinates.
  • Performs integer division between x and y; fails if x is not divisible by y.
  • Performs integer division between x and y; fails if x is not divisible by y.
  • Performs integer division between x and y; fails if x is not divisible by y.