Package dk.jonaslindstrom.ruffini.common.algorithms


package dk.jonaslindstrom.ruffini.common.algorithms
  • Class
    Description
    Barrett reduction is a fast method for computing x mod m for large x and m.
    Compute the Legendre symbol of a number a modulo a prime p.
     
    Compute the bit length of an element in a ring assuming access to a bit shift operation.
    Compute the solution to a system of congruences using the Chinese Remainder Theorem.
    Compute the Discrete Fourier Transform over a ring.
    Compute the dot product of two vectors over a ring.
    Implementation of the Euclidean algorithm for computing the greatest common divisor of two elements in a Euclidean domain.
     
     
    This function computes the canonical embedding of the integers into any ring by mapping an integer n to the identity element added to itself n times.
    Compute the Inverse Discrete Fourier Transform over a ring, assuming that n has an inverse over the ring.
    Compute the Jacobi symbol of a number a modulo an odd number n.
    Compute e a for and integer e and an element from an additive group, a.
    Compute ae for a BigInteger e.
    Compute the product of a list of elements over a monoid.
    Projection<V,S,F extends Field<S>>
    Compute the projection of a vector v onto another vector u in the given vector space.
    QuadraticEquation<E,F extends Field<E>>
    Solve a quadratic equation of the form ax^2 + bx + c = 0 over a field of characteristic != 2.
    Sum<E>
    Compute the sum of a list of elements over an additive group.