# Re: Constraints and Functional Dependencies

From: Cimode <cimode_at_hotmail.com>
Date: 24 Feb 2007 10:17:19 -0800

On 24 fév, 09:01, "Marshall" <marshall.spi..._at_gmail.com> wrote:
> Questions, comments, corrections, criticisms? Anyone have any
> alternate formulas for functional dependencies or candidate
> keys?

> With such a system, a relation R with attribute a (which I will
> write as R(a)) having a as a foreign key into S(b) is expressed
> as follows:
>
> forall R(a): exists S(b): a = b
>
> So we can express foreign keys this way.
Critisicm.

Proof:
Consider R, S, P relation with P being the pk of R and S R
a0 a1

```1, A
2, A
3, B
4, C

```

S
b1 b2

```10, A
20, A
30, B
40, C

```

P
c
A
B
C

I prefer the following formalization.

Given Relation R and relation P, the definition of R *including* a foreign key of P

x being a tuple of R,
y being a tuple of S,

for all N degree relation*s* R AND all respective empty sets of R defined as R(0): there exists one and only one 1st-degree S: for all x in R: R(x) /\ S(y) <> R(0)

Additional critiscism coming tomorrow on candidate keys and fd(on next formal expressions) Received on Sat Feb 24 2007 - 19:17:19 CET

Original text of this message