test_class.file: lib/common/src/test/java/dk/alexandra/fresco/lib/common/compare/MiscBigIntegerGeneratorsTest.java
test_class.identifier: MiscBigIntegerGeneratorsTest
test_case.body: @Test
    public void getPolyResultNotNull() {
      HashMap<Integer, BigInteger[]> mockMap = new HashMap<>();
      BigInteger[] mockEntry = new BigInteger[] {};
      mockMap.put(2, mockEntry);
  
      MiscBigIntegerGenerators generators =
          new MiscBigIntegerGenerators(BigInteger.valueOf(5), mockMap);
  
      Assert.assertArrayEquals(mockEntry, generators.getPoly(2));
    }
test_case.class_method_signature: MiscBigIntegerGeneratorsTest.getPolyResultNotNull()
test_case.full_signature: @Test public void getPolyResultNotNull()
test_case.identifier: getPolyResultNotNull
test_case.invocations: put valueOf assertArrayEquals getPoly
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void getPolyResultNotNull()
focal_class.declarator: coefficientsOfPolynomiums
focal_class.modifier: private
focal_class.original_string: private Map<Integer, BigInteger[]> coefficientsOfPolynomiums;
focal_class.type: Map<Integer, BigInteger[]>
focal_class.var_name: coefficientsOfPolynomiums
focal_class.declarator: twoPowersList
focal_class.modifier: private
focal_class.original_string: private List<BigInteger> twoPowersList;
focal_class.type: List<BigInteger>
focal_class.var_name: twoPowersList
focal_class.declarator: modulus
focal_class.modifier: private
focal_class.original_string: private BigInteger modulus;
focal_class.type: BigInteger
focal_class.var_name: modulus
focal_class.declarator: reducer
focal_class.modifier: private
focal_class.original_string: private ModularReductionAlgorithm reducer;
focal_class.type: ModularReductionAlgorithm
focal_class.var_name: reducer
focal_class.file: lib/common/src/main/java/dk/alexandra/fresco/lib/common/compare/MiscBigIntegerGenerators.java
focal_class.identifier: MiscBigIntegerGenerators
focal_class.class_method_signature: MiscBigIntegerGenerators.MiscBigIntegerGenerators(BigInteger modulus)
focal_class.full_signature: public  MiscBigIntegerGenerators(BigInteger modulus)
focal_class.identifier: MiscBigIntegerGenerators
focal_class.modifiers: public
focal_class.parameters: (BigInteger modulus)
focal_class.signature:  MiscBigIntegerGenerators(BigInteger modulus)
focal_class.class_method_signature: MiscBigIntegerGenerators.MiscBigIntegerGenerators(BigInteger modulus, HashMap<Integer, BigInteger[]> coefficientsOfPolynomiums)
focal_class.full_signature: protected  MiscBigIntegerGenerators(BigInteger modulus, HashMap<Integer, BigInteger[]> coefficientsOfPolynomiums)
focal_class.identifier: MiscBigIntegerGenerators
focal_class.modifiers: protected
focal_class.parameters: (BigInteger modulus, HashMap<Integer, BigInteger[]> coefficientsOfPolynomiums)
focal_class.signature:  MiscBigIntegerGenerators(BigInteger modulus, HashMap<Integer, BigInteger[]> coefficientsOfPolynomiums)
focal_class.class_method_signature: MiscBigIntegerGenerators.getPoly(int l)
focal_class.full_signature: public BigInteger[] getPoly(int l)
focal_class.identifier: getPoly
focal_class.modifiers: public
focal_class.parameters: (int l)
focal_class.return: BigInteger[]
focal_class.signature: BigInteger[] getPoly(int l)
focal_class.class_method_signature: MiscBigIntegerGenerators.constructPolynomial(int l)
focal_class.full_signature: private BigInteger[] constructPolynomial(int l)
focal_class.identifier: constructPolynomial
focal_class.modifiers: private
focal_class.parameters: (int l)
focal_class.return: BigInteger[]
focal_class.signature: BigInteger[] constructPolynomial(int l)
focal_class.class_method_signature: MiscBigIntegerGenerators.getTwoPowersList(int length)
focal_class.full_signature: public List<BigInteger> getTwoPowersList(int length)
focal_class.identifier: getTwoPowersList
focal_class.modifiers: public
focal_class.parameters: (int length)
focal_class.return: List<BigInteger>
focal_class.signature: List<BigInteger> getTwoPowersList(int length)
focal_class.class_method_signature: MiscBigIntegerGenerators.getExpFromOInt(BigInteger value, int maxBitSize)
focal_class.full_signature: public BigInteger[] getExpFromOInt(BigInteger value, int maxBitSize)
focal_class.identifier: getExpFromOInt
focal_class.modifiers: public
focal_class.parameters: (BigInteger value, int maxBitSize)
focal_class.return: BigInteger[]
focal_class.signature: BigInteger[] getExpFromOInt(BigInteger value, int maxBitSize)
focal_method.body: public BigInteger[] getPoly(int l) {
      // check that l is positive
      Integer lInt = l;
      BigInteger[] result = coefficientsOfPolynomiums.get(lInt);
      if (result == null) {
        // Generate a new set of OInts and store them...
        result = new BigInteger[l + 1];
  
        BigInteger[] coefficients = constructPolynomial(l);
        for (int i = 0; i <= l; i++) {
          result[i] = coefficients[coefficients.length - 1 - i];
        }
  
        coefficientsOfPolynomiums.put(lInt, result);
      }
      return result;
    }
focal_method.class_method_signature: MiscBigIntegerGenerators.getPoly(int l)
focal_method.full_signature: public BigInteger[] getPoly(int l)
focal_method.identifier: getPoly
focal_method.invocations: get constructPolynomial put
focal_method.modifiers: public
focal_method.parameters: (int l)
focal_method.return: BigInteger[]
focal_method.signature: BigInteger[] getPoly(int l)