Class BaseArrays

java.lang.Object
de.tilman_neumann.jml.factor.siqs.data.BaseArrays
Direct Known Subclasses:
SolutionArrays

public class BaseArrays
extends java.lang.Object
Passive data structure bundling primes/powers, modular sqrts and logP-values. Having a structure with several arrays of the same size is faster than having an array of a structure, because the former permits to exploit AVX/SSE mechanisms in Java 8.
  • Field Summary

    Fields
    Modifier and Type Field Description
    int[] exponents
    exponents of primes
    byte[] logPArray
    log-values of the primes or powers
    int[] pArray
    powers, e.g.
    long[] pinvArrayL
    2^32 / p for all primes/powers
    int[] primes
    The prime base
    int[] tArray
    the modular sqrt's t with t^2==kN (mod p) for primes p, or t^2==kN (mod power) for powers
  • Constructor Summary

    Constructors
    Constructor Description
    BaseArrays​(int solutionsCount)
    Constructor allocating all arrays.
    BaseArrays​(int[] primes, int[] exponents, int[] powers, int[] tArray, byte[] logPArray, long[] pinvArrayL)
    Constructor setting all arrays.
  • Method Summary

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • primes

      public int[] primes
      The prime base
    • exponents

      public int[] exponents
      exponents of primes
    • pArray

      public int[] pArray
      powers, e.g. powers[i] = primes[i]^exponents[i]
    • tArray

      public int[] tArray
      the modular sqrt's t with t^2==kN (mod p) for primes p, or t^2==kN (mod power) for powers
    • logPArray

      public byte[] logPArray
      log-values of the primes or powers
    • pinvArrayL

      public long[] pinvArrayL
      2^32 / p for all primes/powers
  • Constructor Details

    • BaseArrays

      public BaseArrays​(int solutionsCount)
      Constructor allocating all arrays.
      Parameters:
      solutionsCount -
    • BaseArrays

      public BaseArrays​(int[] primes, int[] exponents, int[] powers, int[] tArray, byte[] logPArray, long[] pinvArrayL)
      Constructor setting all arrays.
      Parameters:
      primes -
      exponents -
      powers -
      tArray -
      logPArray -
      pinvArrayL - array of 2^32/p values