Re: FOL/HOL: is there a middle ground?

From: Ralph Becket <rafe_at_cs.mu.oz.au>
Date: 19 Jul 2004 22:51:21 -0700
Message-ID: <3638acfd.0407192151.8e4df4f_at_posting.google.com>


"Marshall Spight" <mspight_at_dnai.com> wrote in message news:<vE%Kc.136839$Oq2.3490_at_attbi_s52>...
> "Ralph Becket" <rafe_at_cs.mu.oz.au> wrote in message news:3638acfd.0407191600.411bb49f_at_posting.google.com...
>
> > But I still don't understand *why* you'd want relation-valued attributes
> > if you're going to restrict yourself to finite relations. Surely you
> > could get most of that functionality using names. For example:
> >
> > binop A B AopB
> > --------------------
> > "or" F F F
> > "or" F T T
> > "or" T F T
> > "or" T T T
> > "and" F F F
> > "and" F T F
> > "and" T F F
> > "and" T T T
> > "xor" F F F
> > "xor" F T T
> > "xor" T F T
> > "xor" T T F
>
> I completely didn't understand this example. What's supposed
> to mean what here?

Okay, say I'm interested in boolean relations (I'll call them `operators') of arity three. I could store all of my primitive operators in a single table, as I have above. Each row in the table gives the name of the boolean operator and one of the possible instantiations of its three parameters for which that boolean operator holds.

I can refer to a particular boolean operator by name ("or", "and", "xor" etc.) and store that name elsewhere in my database. I can use the table above to make queries against these boolean operators (e.g. "given X and Z, what values of Y satisfy xor(X, Y, Z)?")

One can extend this idea to cover arbitrary finite relations with arbitrary parameter types.

It's easy to construct such things as inverse relations and possible to describe relational composition and so forth (although without a polymorphic type system, you'd probably end up writing a lot of boiler-plate...)

I think this approach gives you much of what you're looking for when you talk about "relation valued attributes".

> Where's the RVA-equivalent?

I'm afraid I'm not really a databases person - what does RVA stand for?

And I still don't understand your motivation for wanting these things (I'm not saying your motivation is invalid, I'm simply curious as to what you want your goal is.)

  • Ralph
Received on Tue Jul 20 2004 - 07:51:21 CEST

Original text of this message