# Re: Example of expression bias?

From: Cimode <cimode_at_hotmail.com>
Date: 21 Jun 2006 07:45:29 -0700

J M Davitt wrote:
> Cimode wrote:
> > J M Davitt wrote:
> >
> >>paul c wrote:
> >>
> >>>Tony D wrote:
> >>>
> >>>>...
> >>>>
> >>>>>A data type in RM = (a domain1 to draw values from) + (restrictions
> >>>>>implemented on domain1 --> domain constraint) + (operators that can be
> >>>>>defined using that data type)
> >>>>>...
> >>>>
> >>>>This may be one definition of a data type (not quite one I'd accept, as
> >>>>we've thrashed over elsewhere), but there is nothing particular to RM
> >>>>...
> >>>
> >>>"domain constraint" seems an uncommon term to me because we usually talk
> >>>of constraints on relations. but I often puzzle over constraints,
> >>>thinking that they could be as fundamental as any other notion, e.g.,
> >>>once one arrives at a similar conception of relations to Codd's, one
> >>>could view everything that one does with them as either adding or
> >>>subtracting constraints.
> >>
> >>CJD calls them type constraints; they define the set of values
> >>that constitute the type. Types are named, so the sets are named.
> >>
> >>The only thing I'd argue about in Cimode's definition is that
> >>operators are part of the data type. In fact, D+D make the point
> >>that the declaration of operators is orthogonal to the declaration
> >>of types -- given that the types are extant before the operators.
> >
> > No need to argue on that, operators are indeed a part of a data type
> > definition. I would personally define *possible* operators applyable
> > at domain level then define attribute *permissible* operators at data
> > type level .

```>
```

> Then, would you explain why D+D are wrong? And you should probably
> elaborate on what the "domain level" and the "data type level" are.
Domain level refers to possible value.

> And, while you're at it, explain in which data type definition [sic]
> an operation like, say, division, defined on integers and returning
> a rational, belongs?
Data type definition is independent of output. In RM, data type definition concerns exclusively input (IPO speaking) because the primary focus of RM data type definition is datum integrity 'as a value holder'.

operations between randomly defined data types are a much more complex issue. It's pure ensemblist math. It has not been discussed.
> [snip]
Received on Wed Jun 21 2006 - 16:45:29 CEST

Original text of this message