I've got a very general question about the relational model and it's relationship to 1st order predicate calculus. It will probably seem very basic to most, I'm afraid, a consequence of me grappling with these concepts on my own for the first time. I would love it if someone could please clarify.
One often sees examples of the predicate calculus of the form: P(x,y,z) where P is a predicate with multiple parameters, interpreted for example as "Gary thinks Jimmy likes Kate", with all the arguments coming from a single domain such as "people in my Painting class" or similar. Sometimes you see the results in tabular form with the comment "and this is actually a simple database" or similar. And then you find descriptions of the Relational Algebra (apparently equivalent to the predicate calculus) that define a relation as a subset of the Cartesian Product of however many domains as attributes and creating a tuple accordingly. Fine, no problem with those descriptions in isolation.
But it seems to me that in the relational case, you have a domain (=type) per attribute, but in the Predicate Calculus example above you only have one domain. Further, the expressions seem to be of a different kind altogether. The Relation seems to group the attributes in such a way that they are totally independent of each other, an arbitrary collection of independent facts about each element, that is true by virtue of being present as a tuple in the relation. Whereas in the logic example, the parameters do NOT seem to be independent in the same way- for example the argument order is critical to the interpretation of the resulting proposition. I can't figure out what I'm missing!
It occurs to me that perhaps to say that for the Predicate example ("Gary thinks Jimmy likes Kate"- call it P) that all the arguments come from a single domain is really just shorthand for saying that it is a Cartesion Product of the same domain ("people in my logic class"- call it D), so that the real and proper description of the domain for P is D x D x D. Would that get us out of trouble? I hope somebody can understand my confusion and help an amateur out!