Hello,<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">&nbsp; I think your original code was in fact optimal. &nbsp;For example, it takes<br>

about 7.1 seconds to figure out that 36028797018963971 is prime on my<br>
64 bit machine here.</blockquote><div><br><br>The original routine (is_prime) is still there. I had expressed in my previous mail<br>&gt; but is_prime should be used for that due to its superior efficiency.<br><br>It takes less than a second to determine the primality of 36028797018963971 by is_prime. is_prime2 is the implementation of Sieve of Eratosthenes to determine the prime numbers, not very efficient to determine primality, as you just said.<br>
<br>Here are a few additions :<br><br>1) nCr - A Memory and Time efficient routine to calculate n! / (n-r)! r! . <br><br>2) newton_raphson - Determination of root, Newton-Raphson method. The user has to overload the function fn(x) &amp; fnd(x)&nbsp; [its derivative] to implement his given function.<br>
<br>3) ivp - Solution to the Initial Value Problem dy/dx = fnd2(x,y) , Given y(x0) = y0, y(x1) = ?<br><br>4) romberg_integral - Definite Integration within closed limits [a, b], Romberg&#39;s Method. fn(x) has to be overloaded.<br>
&nbsp;<br><br></div></div>Thanks,<br>Rupinder<br>