   double etBackAlloc = 0;
   double etaddBack = 0;
   
-  long sizeToCompute =  (whatOrder + maxExp) / ownLimbSize;
-  
-  for (int i = 0; i < min(size, sizeToCompute); i++) {
+  for (int i = 0; i < size; i++) {
     gettimeofday(&t1, NULL);
     cudaMemcpy(d_res, tmp, nr_rowsA * nr_rowsA * sizeof(long long), cudaMemcpyHostToDevice);
     gettimeofday(&t2, NULL);

void toom3(const cublasHandle_t handle, mpf_class *c, mpf_class *a, mpf_class *b, 
	   double *d_aS, double *d_bS, double *tmpTransferLongToGMP, 
	   long long *tmp, int *sizeMatrix, int *realExpMatrix, int *signMatrix,  
	   double *d_prodRes, long long *d_res, const int nr_rowsA, const int nr_colsA, const int nr_colsB) {
}

// Implements Karatsuba algorithm for matrix multiplication c = a.a^T

void matrixMultSymmBasecase_cuBlas(const cublasHandle_t handle, mpf_class *c, mpf_class *a, 
				   double *d_aS, double *tmpTransferLongToGMP, 
				   long long *tmp, int *sizeMatrix, int *realExpMatrix, int *signMatrix,  
				   double *d_prodRes, long long *d_res, const int nr_rowsA, const int nr_colsA) {
  
  int size = 0; 
  int expA = 0;
