| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: Storing data and code in a Db with LISP-like interface
On 5 May 2006 09:54:03 -0700, vc wrote:
> Dmitry A. Kazakov wrote:
>> On 5 May 2006 04:18:44 -0700, vc wrote: >> >>> Dmitry A. Kazakov wrote: >>> [...] >>>>But ADTs have far less problems with set theory as the application >>>> domain than RM. Trivial examples are: >>>> >>>> 1. Power set operation >>>> 2. Set complement in an infinite universal set >>>> 3. Infinite sets modeled by finite classes of equivalences >>> >>> The paragraph above does make any obvious sense. Could you elaborate ? >> >> Above are set operations. Take SQL, and create power set of a table column, >> row, table, set of tables.
Neither it states *how* to construct union or intersection.
> and constructive set theories do not
> even have the powerset axiom (Martin-Lof).
Ah, but to create {A} from a given set A is definitely constructive. Yet, you cannot this either. The problem is not in the number of elements, and sets we consider are finite anyway.
> What about (2) and (3) ?
2. I don't have problems with A - B, because I am not required to present all elements of the set. To some extend I can go non-constructive.
3. I can construct floating-point numbers [intervals with rational bounds], for example. I can do things symbolically. I don't need to present pi as a set to be able to perform some operations on it.
>>Can you create Z in RM?
Why do you need elementary types? Set theory does not need them. If you guys claim that 1) set theory is everything one needs, 2) your RM perfectly embodies the theory, then a naive listener (like me) could come a conclusion that 1 & 2 => integers, floats, strings are all constructed using sets.
> there is no need to
> construct it. Besides, can you construct Z *anywhere* ?
Any finite subset of, in any language that supports ADTs.
> "Die ganze
> Zahl schuf der liebe Gott, alles Übrige ist Menschenwerk"
Huh, if Kronecker lived today, he could say that God wrote ten commandments in SQL? (:-))
>> Use the standard
>> procedure to create first 100 naturals:
>>
>> {Ø}, {{Ø}}, {{{Ø}}}, ...
>>> [...] >>>> In mathematics you can go either way. Is integer >>>> number rational? How different pairs (1,1),(6,6) can both be 1? >>> >>> You are confused, amigo. In the secondary school algebra, one learns >>> that an integer number ain't no rational. >> >> That depends on construction, they could well be. In the secondary school >> one learns that this does *not* matter.
I can add new elements to Z instead of constructing a set of pairs and then choosing subsets there. There is no *the* rationals. You cannot tag numbers with small etiquettes or RFID chips in case somebody could steal them.
The notion of subtyping relation based on subsets of domain sets is counterproductive. I see no reason why a more universal and consistent approach should harm RM in any way. Especially regarding the fact that implicit types conversions are widely used anyway in the languages like SQL. Is "12" 12?
>>> Rationals are the set of >>> equivalence classes of pairs of integers. The pairs (1,1) and (6,6) >>> simply belong to the same equivalence class, >> >> Welcome in club...
>>> there is no need to use >>> 'inheritance' or some other OOP mumbo-jumbo when talking anout this >>> sort of things. >> >> That mumbo-jumbo expresses algebraic properties. Integer is a subtype of >> Rational in the same sense as a ring exists in a field.
I am free to consider integers a subtype of rationals regardless their construction (=representation.) Important here is only that integer inherits +, -, * which I wish to reuse as well as the programs written for rationals in terms of these operations.
-- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.deReceived on Fri May 05 2006 - 14:02:43 CDT
![]() |
![]() |