Skip site navigation (1) Skip section navigation (2)

Re: Bug #534: factorial function

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: lockhart(at)fourpalms(dot)org, j(dot)richter(at)wallstreet-develop(dot)de, pgsql-bugs(at)postgresql(dot)org
Subject: Re: Bug #534: factorial function
Date: 2001-12-29 20:40:13
Message-ID: 200112292040.fBTKeDr04534@candle.pha.pa.us (view raw or flat)
Thread:
Lists: pgsql-bugs
> Thomas Lockhart <lockhart(at)fourpalms(dot)org> writes:
> >> ... I'd be sorely tempted to replace all three by a single
> >> function that takes integer and returns numeric.
> 
> > Yikes. Although numeric is theoretically nice, it is hundreds of times
> > slower than native doubles.
> 
> (a) As a wise man once said, "I can make it arbitrarily fast, if it
> doesn't have to give the right answer".  (b) The factorial function
> doesn't strike me as a performance bottleneck.  (c) I have no objection
> to offering a double-precision-based gamma function alongside the
> integer factorial function.  But I think factorial should give an exact
> answer as far as is possible before it overflows.

float8 is the wrong way to go with factorial.  It is imprecise and only
goes to 69!.  Numeric seems like the way to go with this function.

Added to TODO:

	* Change factorial to return a numeric

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman(at)candle(dot)pha(dot)pa(dot)us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

In response to

pgsql-bugs by date

Next:From: pgsql-bugsDate: 2001-12-31 16:50:03
Subject: Bug #546: un-pg_restore-able pg_dump
Previous:From: guardDate: 2001-12-29 17:07:42
Subject: pl/tcl for cygwin not install

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group