Re: Storing data and code in a Db with LISP-like interface
Date: 6 May 2006 06:02:40 -0700
Message-ID: <1146920560.007032.222640_at_y43g2000cwc.googlegroups.com>
Dmitry A. Kazakov wrote:
> 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.
> >
> > That's a silly request since it's widely know that ZFC does not state
> > *how* to construct a powerset,
>
> Neither it states *how* to construct union or intersection.
That is correct, but the union axiom has a clear and intuitive constructive interpretation that the powerset axiom lacks. In fact, there is no finite first-order formula that would describe elements of the powerset without relying on the prior existence of such elements (circularity).
>
> > 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.
What's that supposed to mean ?
>
> 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?
> >
> > In RM, Z is a predefined elementary type,
>
> 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.
They are, we just use prepackaged products (as any computational model does),
>
> > there is no need to
> > construct it. Besides, can you construct Z *anywhere* ?
>
> Any finite subset of, in any language that supports ADTs.
Go ahead and oblige us with an example.
[...]
> >>>> 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.
> >
> > What does not matter ? What alternative rationals do you have in mind ?
>
> I can add new elements to Z instead of constructing a set of pairs and then
> choosing subsets there.
What's that supposed to mean ?
But there are. You may consider revisiting that dusty secondary school algebra book.
> 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?
No, and I hope you know that.
> >>
> >> That mumbo-jumbo expresses algebraic properties. Integer is a subtype of
> >> Rational in the same sense as a ring exists in a field.
> >
> > So using your favourite OOP mumbo-jumbo, how would you go about
> > constructing rationals?
>
> 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.
Forgetting for a moment about how dubious your idea of inheriting integers from rationals is, my real question was, how do you construct rationals ? Surely, they must be constructed first so that you could inherit integers then. Please oblige.
>
> --
> Regards,
> Dmitry A. Kazakov
> http://www.dmitry-kazakov.de
Received on Sat May 06 2006 - 15:02:40 CEST