## Disclaimer

Oracle is an exceedingly complicated collection of software and there are more configuration options than you can shake a stick at. As I write this, my 10gR2 database shows 1442 different parameters. Assuming the parameters each had only 2 possible values (which they don’t), the number of possible combination would be 2 raised to the 1442 power. Being as I’m an Oracle guy, I tried to calculate this using SQL*Plus as follows:

^{?}View Code NONE

SQL> select power(2,1442) from dual; select power(2,1442) from dual * ERROR at line 1: ORA-01426: numeric overflow |

Hmmm, must be a really big number. So I google for a web based calculator (it’s easier than finding the windows one – and I hate windows anyway). Low and behold, google has a built in calculator. Try it yourself. Try googling for something like 2*(15**3). Those guys at google are always coming up with something.

So I try to use this to do my calculation and it’s too big for them too (you’d think something called “google” would be able to deal with big numbers, but oh well!).

So next I try Excel and I get this:

So now I’m getting bored trying to figure out a way to calculate it. I’m sure I could get my friend Cary to calculate it with his copy of Mathmatica, but you get the idea. There are basically an (almost) infinite number of variations, so please keep that in mind when trying to reproduce any results that I may spout off about. Your mileage may vary.

Answer from Maple10 tells result has 436 numbers : 121689679549848296476284539719833956128172746808983983951831652023347365468864269429292576963439508278182027446718540810569381644337220853815156314657613612239712834757924740882197032736054344801343165356558510233936904806426545855737390911634598080775602523511373106777607060088046178460822014203870855117130108554646318067801134685013852825258691387386426550771312213642678910868232892059330844780618615710006156570567711150890287104

Thanks Pekka. Now I know!

While perl may not be able to handle large calculations, ruby seems to be completely at home with it –

C:>

C:>perl -e “print 2**1442”

1.#INF

C:>

C:>ruby -e “print 2**1442”

121689679549848296476284539719833956128172746808983983951831652023347365468864269429292576963439508278182027446718540810569381644337220853815156314657613612239712834757924740882197032736054344801343165356558510233936904806426545855737390911634598080775602523511373106777607060088046178460822014203870855117130108554646318067801134685013852825258691387386426550771312213642678910868232892059330844780618615710006156570567711150890287104

C:>

C:>

That’s a number with 435 digits !

It’s a big number but not for simple old bc(1):

bash-3.2# bc -l

bc 1.06

Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.

This is free software with ABSOLUTELY NO WARRANTY.

For details type `warranty’.

2^1442

12168967954984829647628453971983395612817274680898398395183165202334\

73654688642694292925769634395082781820274467185408105693816443372208\

53815156314657613612239712834757924740882197032736054344801343165356\

55851023393690480642654585573739091163459808077560252351137310677760\

70600880461784608220142038708551171301085546463180678011346850138528\

25258691387386426550771312213642678910868232892059330844780618615710\

006156570567711150890287104

it’s really hugggge number, and possibility.