Re: So let me get this right: (Was: NFNF vs 1NF ...)
Date: Sun, 13 Feb 2005 11:48:33 +0000
Message-ID: <420f3e92$0$47780$ed2619ec_at_ptn-nntp-reader01.plus.net>
Jan Hidders wrote:
> Paul wrote:
>> What would an untyped RVA be, and how could they lead to Russell's >> paradox?
>
> An untyped RVA is an RVA that can contain any finite or infinite relation.
>> I thought that you could only get Russell's paradox if you allowed >> RVAs to be relation variables rather than relation values?
>
> In the original naive set theory in which the paradox was formulated
> there is no notion of variable, just values.
Maybe this is the part that says "there may not be practical problems" i.e. the problem only appears in some non-SQL DBMS that allows relations to be defined by expressions (and be infinte) rather than having to constructively defined.
The classic example is the book in the library that lists all directories (books that have lists of other books) held by the library, that don't include a reference to themselves. Should it list itself or not? But here it's about it containing a *reference* to itself (analogous to a relation-variable?) and not an actual copy of itself (analogous to a relation-value?).
I can see maybe there is a problem if you say something like:
UPDATE foo SET rva = foo WHERE id = 123
But would the RVA column "rva" be set to the value of "foo" before the UPDATE? And as it's foo's *value* you're inserting, if (the outer) foo changes, the inner foo won't change as well.
It seems to me that to get Russell's paradox you need to be able to have a column that refers to relations by name, not by value. Isn't this the case in naive set theory also? That you can refer to sets both by name or by explicitly listing (or providing an expression for) their elements?
To understand it, I think I need to be able to see an explicit construction of a relational expression involving RVAs that shows Russell's paradox.
Paul. Received on Sun Feb 13 2005 - 12:48:33 CET