Oracle FAQ Your Portal to the Oracle Knowledge Grid
 HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US

Home -> Community -> Usenet -> comp.databases.theory -> Re: Parts explosion with repeated subtrees

# Re: Parts explosion with repeated subtrees

From: Damjan S. Vujnovic <damjan_at_NOSPAMgaleb.etf.bg.ac.yu>
Date: Sun, 15 Dec 2002 00:28:04 +0100
Message-ID: <atgeo9\$ejq\$1@news.etf.bg.ac.yu>

Suppose we have to design a database that will be able to:

• represent polinomials, like: Ai(x) = ai[ni]*x^ni + ... + ai[1]*x + ai[0]
• support math operations on them, like: "For a given A1(x), ..., A1000(x) find polinomial A1001(x) where A1001(x) = A1(x)*A2(x)* ... *A999(x) + A1000(x)"

The most frequent task would be to multiply those polinomials. Adding polinomials is less frequent operation (say 1000 times), as well as calculating the value of a polinomial Ai(x) for a given x.

I'm quite aware that my brain would be pleased with the representation like:

CREATE TABLE Poli (

poli_name VARCHAR(10) NOT NULL,
coeff_order INT NOT NULL,
coeff_value FLOAT NOT NULL,
CONSTRAINT pk_Coeff PRIMARY KEY(poli_name, coeff_order));

but my brain won't do any queries on those tables... RDBMS will. So, I find myself responsible to neglect my ego and serve my data to RDBMS in a way that is most acceptable to it.

Would it be a sin to represent those polinomials using FFT? If no, in what way is this different to representing trees with some brain-unfriendly pairs of numbers called "nested sets"?

regards,
Damjan

P.S. I'm quite aware that no one would ever use RDBMS to multiply polinomials and that this example is a complete fiction, but the point to show that the design closest to our brain is not always closest to the "brain" of the RDBMS. Received on Sat Dec 14 2002 - 17:28:04 CST

Original text of this message

 HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US