# Arbitrary-precision Integer Calculator for bignum arithmetic

TuringBombe
Beaconaut APICalc 2 just released on Jan.18, 2011, which is an arbitrary-precision integer calculator for bignum arithmetic, cryptography analysis and number theory research......

http://www.beaconaut.com/forums/default.aspx?g=posts&t=13"

Last edited by a moderator:

TylerH
Cool. What bignum lib does it use?

I usually use perl with BigInt for it's quick turnaround and GMP integration.

Does your calc support set building? I've always wanted a prog to output, say, all the elements of {x exists in Z | 1 <= x <= 100, x^2 - x}. I write a lot of simple perl scripts with some very deeply nested loops to generate similar(but usually more complex) lists.

I also suggest a move to the computer forum.

TuringBombe
Cool. What bignum lib does it use?

I usually use perl with BigInt for it's quick turnaround and GMP integration.

Does your calc support set building? I've always wanted a prog to output, say, all the elements of {x exists in Z | 1 <= x <= 100, x^2 - x}. I write a lot of simple perl scripts with some very deeply nested loops to generate similar(but usually more complex) lists.

I also suggest a move to the computer forum.

To be honest, We didn't use any bignum lib online, We completely implemented our own bignum lib start from scratch. Hopely you will like and enjoy it. Actually we will improve it step by step in the next releases according to end-user's feedback.

Last edited:
yuiop
How does it compare to Pari/GP which is free software that has been around for many years? See http://en.wikipedia.org/wiki/PARI/GP or http://pari.math.u-bordeaux.fr/

PARI/GP performs arbitrary precision calculations (e.g., the significand can be millions of digits long—and billions of digits on 64-bit machines). It can compute factorizations, perform elliptic curve computations and perform algebraic number theory calculations. It also allows computations with matrices, polynomials, power series, algebraic numbers and implements many special functions.

Also available is gp2c, the GP-to-C compiler, which compiles GP scripts into the C language and transparently loads the resulting functions into gp. The advantage of this is that gp2c-compiled scripts will typically run three to four times faster

Last edited by a moderator:
TuringBombe
How does it compare to Pari/GP which is free software that has been around for many years? See http://en.wikipedia.org/wiki/PARI/GP or http://pari.math.u-bordeaux.fr/

Thank you for providing these two websites! Actually I didn't know them before. I just reviewed these two web sites quickly and I think maybe the key difference among them is that Beacouant APICalc 2 is a desktop-based application and very easy-to-use like a traditional handhelp calculator, but Pari/GP are likely to be third-party bignum SDK or libraries, that is, people have to use it by programatically, right?

Last edited by a moderator:
yuiop
Thank you for providing these two websites! Actually I didn't know them before. I just reviewed these two web sites quickly and I think maybe the key difference among them is that Beacouant APICalc 2 is a desktop-based application and very easy-to-use like a traditional handhelp calculator, but Pari/GP are likely to be third-party bignum SDK or libraries, that is, people have to use it by programatically, right?
I used Pari/GP quite a while ago. The Pari part is a sort of command line calculator (no fancy buttons) and the GP part is its own interpreted programming language. For applications where more speed is required GP can be compiled to C code. The command line calculator is perhaps a bit more scary than a calculator with virtual keys and it requires you know the cammands, but it not too bad. A very gentle introduction is given in this tutorial http://pari.math.u-bordeaux.fr/pub/pari/manuals/2.3.3/tutorial.pdf [Broken] which gives a good idea of how Pari/Gp works. Pari/GP is very powerful and has some very sophisticated mathematical functions, but I guess Beacouant APICalc 2 has a more user friendly user interface. Pari/GP is also limited when it comes to symbolic solving and can not compete with Mathematica or Maple on those terms.

Last edited by a moderator:
TuringBombe
I used Pari/GP quite a while ago. The Pari part is a sort of command line calculator (no fancy buttons) and the GP part is its own interpreted programming language. For applications where more speed is required GP can be compiled to C code. The command line calculator is perhaps a bit more scary than a calculator with virtual keys and it requires you know the cammands, but it not too bad. A very gentle introduction is given in this tutorial http://pari.math.u-bordeaux.fr/pub/pari/manuals/2.3.3/tutorial.pdf [Broken] which gives a good idea of how Pari/Gp works. Pari/GP is very powerful and has some very sophisticated mathematical functions, but I guess Beacouant APICalc 2 has a more user friendly user interface. Pari/GP is also limited when it comes to symbolic solving and can not compete with Mathematica or Maple on those terms.

I totally agree with you, you are definitely right! and thank you again for all the introduction to pari/GP, I will take some time to learn more about it later.

Last edited by a moderator:
TuringBombe
Beaconaut APICalc 2 screenshot:

Meanwhile, there's an example to demo RSA big calculation in the user manual which you can find it after installing the trial version. I'd like to describe it here for you again, the following is the example to use Beaconaut APICalc 2 to calculate encryption and decryption using RSA Module Exponentation Algorithm .

Typically, ModExp is used to analyze RSA encryption and decryption. For example below:

Modulus(n):49470617055557138882502006021680798234904060873538447993201487446612857999946343566470732472232840921751800111671533657652196093363279492170745257009990215629877622424478327028552313744534027258454459040740573267268740709944205350140323691107504840748624152446121435410416969294813761260393402171895432733209

Public Exp(e):65537

Private Exp(d):35840287132426765859609003248690118561930585932764781889882152432445465887017293933747812346943181515247500943011801243043262134563506268035872633822639650429560086715914796422476921417849449156218352031170829879330334720944027628565093444001689626064649535655541016847824981792819410667625388283991016934113

Message(M):123456789

Using Beaconaut APICalc 2 for encayption and decryption below:

Encryption: Cyphertext(C) = M^d mod n =33057560502538321062510091496371760019637925248826410185573201662611046361684873165185648434477847228927576106364782017447616571997736375598820823740701657538287177450325178893414688170607108084971167397966867857782703304154240708716036851150481227902336862953423739348608335643259043981364491801073012931620

Decryption: Message(M) = C^e mod n = 123456789

Very interesting and easy-to-use!