Database Reference
In-Depth Information
as explained in Sect. 1.4.1 in the Introduction, we cannot use the schema mapping
x 2 StudentRome (x 1 ,x 2 )
x 1
StudentMilan (x 1 ,x 2 )
StudentFlorence (x 1 ,x 2 ) Student (x 1 ,x 2 )
because the left-hand sides of implications in tgds (and SOtgds) are only conjunctive
formulae.
Consequently, we have to make a decomposition of such a disjunction into the
three conjunctive components. Hence, the SOtgd for this schema mapping is a for-
mula Φ equal to:
x 2 StudentRome (x 1 ,x 2 )
Student (x 1 ,x 2 )
x 1
x 2 StudentMilan (x 1 ,x 2 )
Student (x 1 ,x 2 )
∧∀
x 1
x 2 StudentFlorence (x 1 ,x 2 )
Student (x 1 ,x 2 ) ,
∧∀
x 1
and, consequently, we define the mapping
M AB ={
Φ
}: A B
.
Thus, we obtain the sketch's mapping
M AB =
MakeOperads(
M AB )
={
q 1 ,q 2 ,q 3 , 1 r }: A B
with q 1 O( StudentRome , Student ),q 2 O( StudentMilan , Student ) ,
q 3
O( StudentFlorence , Student ) .
Consequently, we obtain the isomorphic arrow f
α (
=
{
q 1 ,q 2 ,q 3 , 1 r }
)
:
A
B where f
={
α(q 1 ),α(q 2 ),α(q 3 ),q }
is the set of injective functions:
in 1 =
α(q 1 )
:
α( StudentRome )
α( Student ),
in 2 =
α(q 2 )
:
α( StudentMilan )
α( Student ),
in 3 =
α(q 3 )
:
α( StudentFlorence )
α( Student ),
with the information flux (here x denotes the tuple (x 1 ,x 2 ) ) equal to:
f
=
B T (f )
T π x StudentRome A x StudentMilan A ,
π x StudentFlorence A
=
T α( StudentRome ),α( StudentMilan ),α( StudentFlorence )
= TA,
=
i.e., it is monic and, from the fact that TA = TB and hence f = TB , it is also epic.
Consequently, from Proposition 8 , f
:
A
B is an isomorphism.
with a new relation Takes1 (x 1 ,x 3 ) that associates
student names with courses (as in Example 2 ) such that α( Takes1 ) is not the empty
relation then f = TA TB , and hence in this case the morphism above f : A B
is a monic arrow only.
If we enlarge the schema
B
Search WWH ::




Custom Search