Product64

Mojo struct 🡭

Product64

@memory_only
struct Product64

Unreduced 256-bit carryless product stored as four 64-bit limbs (lo … hi).

Implemented traits

AnyType, Copyable, Deinitable, Movable

Methods

__init__

fn def __init__(out self, var zw: Array[UInt64, Int(4)])

Args:

  • zw (Array[UInt64, Int(4)])
  • self (Self)

Returns:

Self

mont_reduce

fn def mont_reduce(self) -> Array[UInt8, Int(16)]

Reduce mod x^128 + x^127 + x^126 + x^121 + 1 using shift/XOR folding.

Args:

  • self (Self)

Returns:

Array[UInt8, Int(16)]