Database Reference
In-Depth Information
B
→
A
, where
Φ
and
Ψ
are the SOtgds
∃
f
1
∀
x
∀
y(r(x,y)
⇒
s(y,f
1
(x,y)))
and
∃
yr(x,f
2
(x,z)))
, respectively, with two Skolem functions
f
1
and
f
2
which returns with fresh new Skolem marked values
ω
i
,
i
=
f
2
∀
x
∀
z(s(x,z)
⇒
0
,
1
,
2
,...
.
Thus, we obtain a cyclic graph
G
=
(V
G
,E
G
)
with
V
G
={
A
,
B
}
and
E
G
=
{
M
AB
,
. The sketch
Sch
(G)
obtained by this graph will have the objects
equal to set
V
G
, two identity arrows for them and mapping-operads
M
BA
}
M
AB
=
MakeOperads(
M
AB
)
={
q
∅
}∪{
v
1
·
q
1
}
where
q
1
∈
O(r,r
q
),v
1
∈
O(r
q
,s)
, and
M
BA
=
MakeOperads(
M
BA
)
={
q
∅
}∪{
v
2
·
q
2
}
where
q
2
∈
O(s,s
q
),v
1
∈
O(s
q
,r)
.
Let us consider an initial situation when both
r
and
s
are the empty relations, and
when a local legacy application inserts a tuple
(a,b)
into the relation
r
, so that we
obtain a mapping-interpretation (a functor)
α
∗
∈
DB
Sch
(G)
such that
A
Int(G)
⊆
=
α
∗
(
A
={
}
, so that a forward insertion chaining
process will begin, and we will consider both Strong and Weak Data Integration
semantics for this database-program specified by sketch
Sch
(G)
, as follows:
1.
Strong Data Integration semantics.
In this case the SOtgds in the database-
mappings in
G
are considered as the axioms.
)
has a single relation
α(r)
(a,b),
α
i
∈
Transition
r
∈
A
s
∈
B
Equations
Int(G)
α
1
1
b,ω
0
(p
0
=
nil),(p
1
={{
b
}
,
⊥}
.p
2
)
α
2
2
b,ω
1
(p
2
={{
b
}
,
⊥}
.p
3
)
α
3
3
ω
1
,ω
2
(p
3
={{
b,ω
1
}
,
⊥}
.p
4
)
α
4
4
ω
1
,ω
3
(p
4
={{
b,ω
1
}
,
⊥}
.p
5
)
α
5
5
ω
3
,ω
4
(p
5
={{
b,ω
1
,ω
3
}
,
⊥}
.p
6
)
...
...
...
...
...
Let us consider the mapping-interpretations
α
i
∈
Int(G)
in each transition
step:
Step 1.
Here
f
=
α
1
(q
1
)
:{
(a,b)
}→{
(b,f
1
(a,b))
}
where
f
1
(a,b)
=
ω
0
,
α
1
(r
q
)
={
(b,ω
0
)
}
and
α
1
(v
1
)
:{
(b,ω
0
)
}→{
(b,ω
0
)
}
is an injection, and
hence
M
AB
is satisfied. However,
α
1
(s
q
)
={
(b,f
2
(b,ω
0
))
}
with
f
2
(b,ω
0
)
=
ω
1
and
α
1
(v
2
)
:{
(b,ω
1
)
}→{
(a,b)
}
is not an injection, and hence
M
BA
is
not satisfied. Consequently,
α
1
is not a model of the database-mapping pro-
gram in
G
.
Step 2.
Here
g
=
α
2
(q
2
)
:{
(b,ω
0
)
}→{
(a,b),(b,f
2
(b,ω
0
))
}
where
f
2
(b,ω
0
)
=
ω
1
,
α
2
(s
q
)
={
(b,ω
1
)
}
and
α
2
(v
2
)
:{
(b,ω
1
)
}→{
(a,b),(b,ω
1
)
}
is an in-
jection, and hence
M
AB
is satisfied. However,
=
(b,ω
0
),
ω
1
,f
1
(b,ω
1
)
α
2
(r
q
)