Documentation

MIPRE.Foundations.LowDegree.BinaryTraceBits

Explicit polynomial-time Frobenius-stride traces #

A supplied unary number of squarings in the explicit binary quotient.

Equations
Instances For

    The stride Frobenius program is globally polynomially bounded.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Repeated squaring never increases even a malformed coefficient width.

      The modulus width is preserved on valid quotient elements.

      The supplied stride is the exponent of the Frobenius iterate.

      @[reducible, inline]

      Stride, modulus, accumulated sum, and the current Frobenius conjugate.

      Equations
      Instances For

        Add the current conjugate and advance by the fixed Frobenius stride.

        Equations
        Instances For

          All runtime state widths stay below their initial widths.

          Both active coefficient vectors retain the modulus width.

          The loop computes the trace-shaped sum, with the supplied initial accumulator.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For

            The binary vector for the sum of the requested Frobenius-stride conjugates.

            Equations
            Instances For

              One globally polynomial-time program computes every such modular trace sum.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For

                The modular trace output has exactly the field representation width.

                The program's semantics are the finite sum used in Shoup's trace construction.