     }
 }
 
-__global__ void test_kernel(bignum* dev_c, bignum* dev_a, bignum* dev_b)
+__global__ void normal_addition(bignum* dev_c, bignum* dev_a, bignum* dev_b)
 {
     for (int i = 0; i < NUMBER_OF_TESTS; i++)
     {

    bignum* host_c = (bignum*) calloc(NUMBER_OF_TESTS, sizeof(bignum));

    // generate random numbers for the tests
    start_random_number_generator();
    for (int i = 0; i < NUMBER_OF_TESTS; i++)
    {
        generate_random_bignum(host_a[i]);
        generate_random_bignum(host_b[i]);
    }
    stop_random_number_generator();

    // device operands
    bignum* dev_a;
    bignum* dev_b;

        char* gmp_bignum_c_str = mpz_get_str(NULL, 2, gmp_bignum_c);
        pad_string_with_zeros(&gmp_bignum_c_str);

        if (strcmp(gmp_bignum_c_str, bignum_c_str) != 0)
        {
            printf("incorrect calculation at iteration %d\n", i);
            results_correct = false;
