<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>The Theory behind Minimizing Research Data</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Tanja Auge</string-name>
          <email>tanja.auge@uni-rostock.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andreas Heuer</string-name>
          <email>heuer@informatik.uni-rostock.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Rostock</institution>
          ,
          <addr-line>Rostock, Germany https://dbis.informatik.uni-rostock.de</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>In research data management and other applications, the primary research data have to be archived for a longer period of time to guarantee the reproducibility of research results. How can we minimize the amount of data to be archived, especially in the case of constantly changing databases or database schemes and permanently performing new evaluations on these data? In this article, we will consider evaluation queries given in an extended relational algebra. For each of the operations, we will decide whether we can compute an inverse mapping to automatically compute a (minimal) subdatabase of the original research database when only the evaluation query and the evaluation result is stored. We will distinguish between different types of inverses from exact inverses to data exchange equivalent inverses. If there is no inverse mapping, especially for aggregation operations, we will derive the necessary provenance information to be able to perform the calculation of this subdatabase. The theory behind this minimization of research data, that has to be archived to guarantee reproducible research, is based on the CHASE&amp;BACKCHASE technique, the theory of schema mappings and their inverses, and the provenance polynomials to be used for how provenance.</p>
      </abstract>
      <kwd-group>
        <kwd>Data Provenance</kwd>
        <kwd>Research Data Management</kwd>
        <kwd>CHASE</kwd>
        <kwd>Inverse Schema Mappings</kwd>
        <kwd>Data Exchange Equivalence</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>In several applications, an extensive amount of data has to be managed, analyzed,
stored, and archived due to legal and provenance purposes. In our projects,
we consider quite different applications dealing with growing amounts of data,
such as research data management with measurement data and sensor data
management for smart (assistive) systems aiming at the derivation of activity
and intention models by means of Machine Learning algorithms. In all of these
cases, the massive amount of primary measurement or sensor data has to be
reduced to an important kernel, that has to be archived for a longer period (often
ten years, due to legal reasons).</p>
      <p>Since the database of research and sensor data and its database schema
evolves over time, the researcher or smart system developer is forced to store
complete snapshots of the data each time, the database or database schema
changes. In most cases, the management of research or sensor data becomes
difficult to handle. The problem is, how to calculate the kernel of important
data when databases or database schemes are changing. This is the aim of our
research project. Which parts of the original database have to be frozen, when
evaluations of research data are performed, or when decisions of smart systems
have to be recorded? We want to minimize the subdatabase that has to be stored
to guarantee the reproducibility of the performed evaluation.</p>
      <p>
        How to automatically compute this minimal subdatabase of the primary data?
Given an evaluation query and the result of the evaluation query, is it possible
to derive the minimal subdatabase simply by an inverse mapping without any
additional annotations of the data and without any need to freeze the original
database? Or do we have to store some additional information, e.g. provenance
polynomials [
        <xref ref-type="bibr" rid="ref13 ref15">13, 15</xref>
        ] or some kernel of the original database? In the latter case,
we want to automatically compute these provenance polynomials or database
kernels that need to be archived, too. In contrast to [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], we will give
no introduction to the three provenance types where, why and how in this
paper. Here, we mainly concentrate on how to derive the answer for the why
and how -provenance-queries called Qprov by inverse mappings (from the result
to the original database) on the classification of the types of inverses representing
Qprov.
      </p>
      <p>
        Our use case and main application scenario for minimizing research data
is a cooperation of our database research group and the Leibniz Institute for
Baltic Sea Research Warnemuende (IOW). Applications, data, data integration
processes, evaluation queries, and data provenance problems are described in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]
in more detail. There, we described the use of a bitemporal database solution to
handle provenance management as well as data and schema evolution.
      </p>
      <p>
        In this paper, we want to describe the first step of our research: given an
evaluation query and an evaluation result, does there exist an inverse mapping
that computes a subdatabase of the original database that guarantees the
reproducibility of the result? If there is no such inverse mapping, can we add some
annotations like provenance polynomials to do so? In our case, the evaluation
query is given in an extended relational algebra (adding some basic scalar,
arithmetical operations, grouping, and aggregates to the classical relational algebra).
For the derivation of the inverse mapping, we will adapt the theory of inverse
schema mappings from the areas of data exchange, schema evolution and schema
integration [
        <xref ref-type="bibr" rid="ref10 ref11 ref12">10–12</xref>
        ]. We will use the CHASE process [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] to perform the
evaluation query on the original database and the BACKCHASE process [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] to do the
inverse mapping.
      </p>
      <p>In the next section, we will briefly introduce some fundamental definitions
and results of the CHASE&amp;BACKCHASE process, as well as schema mappings
and their inverses. In Section 3, we introduce new types of inverse mappings,
the tuple preserving relaxed CHASE-inverse and the result equivalent
CHASEinverse. In Section 4, we will determine the possible types of inverses that can
be computed for a specific operator of the extended relational algebra.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        The idea of our work is based on the combination of three different basic
techniques: CHASE&amp;BACKCHASE, CHASE-inverse schema mappings and data
provenance. In this paper, we will introduce the first two of these. For a more
detailed introduction into the state of the art in data provenance, we refer to
[
        <xref ref-type="bibr" rid="ref2 ref3 ref4">2–4</xref>
        ].
2.1
      </p>
      <sec id="sec-2-1">
        <title>The CHASE</title>
        <p>The CHASE is a tool universally applicable in database theory. It is used, for
example, to incorporate dependencies within a database or a relational algebra
expression, to implicate dependencies, to verify the equivalence of database
schemas under given dependencies, and to handle (replace or clean) null values in
databases. The idea of this algorithm can be summarized as follows: For a CHASE
object and a CHASE parameter ∗ (in most cases: a set of dependencies), the
CHASE incorporates ∗ into the object , so that ∗ is implicitly contained in ,
and thus satisfies the dependencies in ∗. The result can be presented as:
chase∗( ) = ∗ .</p>
        <p>
          The CHASE has its original application in database design [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ], which is based on
the tableau definitions in [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. The CHASE can not only be used with functional
dependencies (FDs) and join dependencies (JDs) as ∗ on tableaus as but also
with tgds/s-t tgds (a generalization of JDs, see below) and egds (a generalization
of FDs, see below) as ∗ on databases as . This is described among others by
Fagin et al. in [
          <xref ref-type="bibr" rid="ref10 ref12">10, 12</xref>
          ].
        </p>
        <p>For a query Q and a source instance I, the CHASE returns a result instance
K = chaseM(I) if the following holds:
– Q is defined as a schema mapping M = (S1, S2, Σ) with source and target
schemas S1 and S2 and a set of dependencies Σ describing the semantics of
the query;
– I is the source instance in S1;
– K is target instance in S2.</p>
        <p>These dependencies can be tgds or s-t tgds and egds. A tuple-generating
dependency (tgd) is a sequence of the form</p>
        <p>∀x : (φ(x) → ∃y : ψ(x, y))
with conjunctions φ(x) and ψ(x, y) of atoms from x and x and y respectively1. If
φ(x) is a conjunction of atoms over a source scheme S and ψ(x, y) a conjunction
1 x and y are vectors of variables x1, x2, . . . or y1, y2, . . .
of atoms over a target scheme T , such a sequence is also called source-to-target
tuple-generating dependency (s-t tgd). An equality-generating dependency (egd)
is for two variables x1, x2 from x defined by</p>
        <p>∀x : (φ(x) → (x1 = x2)).</p>
        <p>
          The CHASE&amp;BACKCHASE is an algorithm for rewriting queries using views
while exploiting integrity constraints. It was introduced in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] for queries and
views expressed as conjunctive queries and integrity constraints expressed as egds
and tgds. While the CHASE step incorporates the dependencies into the query,
the BACKCHASE step will perform the logical or physical optimization of the
query, resulting in an optimized query execution plan. In fact, the BACKCHASE
can be seen as a CHASE step in the inverse direction.
2.2
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Inverting schema mappings</title>
        <p>
          A schema mapping M is a triple (S1, S2, Σ), consisting of a source schema S1,
a target schema S2 and a set of dependencies Σ that specifies the relationship
between the source and target schema. CHASE-inverses are a special form of
schema mappings [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] first formulated by R. Fagin [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. CHASE-inverses work
in situations where there is information loss, due to the existence of null values
and missing information in databases. Since a CHASE-inverse does not
necessarily have to exist, Fagin distinguishes three different types of CHASE-inverses:
exact, classical and relaxed CHASE-inverses. In general, the inverse of a schema
mapping M : S1 → S2 is defined as a schema mapping M∗ : S2 → S1 whose
composition M ◦ M∗ corresponds to the identity function.
        </p>
        <p>
          Inverse mappings are used in schema evolution, for example. While an exact
CHASE-inverse always reconstructs the original database, the classical
CHASEinverse only returns an instance I∗ which is equivalent to the original database
instance I, i.e. I∗ and I are equal except for the homomorphic mapping of
marked null values to other marked null values or attribute values. The relaxed
CHASE-inverse is another version of the CHASE-inverse [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. It does not require
an equivalent relationship between the original instance I and the recovered
instance I∗ = chaseM∗ (chaseM(I)), but data exchange equivalence (see Section
3) and the existence of a homomorphism between the recovered instance I∗ and
the source instance I.
2.3
        </p>
      </sec>
      <sec id="sec-2-3">
        <title>Combination of the techniques introduced</title>
        <p>Given an original research database over database schema S1 and an evaluation
query Q, we now want to derive the result of the (why or how ) provenance
query Qprov either as some type of inverse of Q or, if not possible, by use of
provenance information. To calculate this minimal subdatabase of the original
research database, that has to be archived to guarantee the reproducibility of
the evaluations, we will use
– st-tgds for the basic operations of the extended relational algebra, to be used
to express the evaluation query Q,
– the CHASE to formally evaluate Q on the original database instance I, to
produce the result instance K,
– the BACKCHASE step to formally evaluate the provenance query Qprov, i.e.
some kind of inverse mapping, to determine the minimal subdatabase I∗ of
I (or an equivalent data set) that we will call recovered instance,
– and the different types of inverses of mappings (see Section 3) to determine
whether this inverse can be calculated with or without additional annotations
like provenance polynomials (see Subsection 4.3).</p>
        <p>
          The complete process is defined in [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. We will now add new types of inverse
mappings to the ones used by Fagin: the tuple preserving relaxed CHASE-inverse
and the result equivalent CHASE-inverse.
3
        </p>
        <p>Tuple preserving relaxed and result equivalent</p>
        <p>
          CHASE-inverse
The relaxed CHASE-inverse is a weakening of the classical CHASE-inverse. It
does not require an equivalence relationship between the source instance and the
recovered instance I∗, but data exchange equivalence [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] and the existence of a
homomorphism from the recovered instance I∗ to the source instance I.
        </p>
        <p>To preserve the number of tuples of the original database we extend the
definition of the relaxed CHASE-inverse and we call it tuple preserving relaxed
CHASEinverse (tp-relaxed). This sharpens the character of the relaxed CHASE-inverse.
In the opposite, a weakened definition is a schema mapping M = (S1, S2, Σ),
called result equivalent CHASE-inverse, with regard to M (short: I ↔M K),
where the data exchange equivalence is valid for two instances I and K over S, i.e.
chaseM(I) ≡ chaseM(K). The result equivalent CHASE-inverse only requires
result equivalence and no additional homomorphism from I∗ to I and is therefore
the weakest CHASE-inverse. Overall, this results in the reduction:
result equivalent
relaxed
tp-relaxed
exact.</p>
        <p>This reduction forms the sufficient condition for the existence of a
CHASEinverse. The necessary condition follows from the respective definition of the
CHASE-inverse. Table 1 summarizes these conditions.</p>
        <p>If the recovered instance I∗ contains tuples with (marked) null values whose
remaining attribute values match the attribute values of a tuple of the source
instance I (for example (1, 3, 5) ∈ I and (1, 3, n1) ∈ I∗), then I∗ is called section
of the instance I (short: I∗ I). In other words, there is a homomorphism
h that maps the tuples from I∗ to the tuples from I. For the above example,
1 7→ 1, 3 7→ 3 and n1 7→ 5 applies. If I∗ contains no (marked) null values and all
tuples from I∗ are also tuples in I, we write I∗ ⊆ I.</p>
        <p>With these types of inverses, CHASE-inverse schema mappings can now
be found for almost all basic operations of the extended algebra, we use for</p>
        <p>CHASE-inverse Sufficient condition Necessary condition
Exact - I∗ = I
Classical Exact CHASE-inverse I∗ ≡ I
Tp-relaxed Exact CHASE-inverse I∗ I, | I∗ |=| I |
Relaxed Tp-relaxed CHASE-inverse I∗ I</p>
        <p>Result equivalent Relaxed CHASE-inverse I∗ ↔M I
the evaluation queries in research data management or the Machine Learning
algorithms in smart, sensor-based systems.
4</p>
        <p>Basic operations and CHASE-inverse schema mappings
In this paper we discuss the following problems: Is there an inverse mapping for
an evaluation query and an evaluation result that calculates a sub-database of
the original database and that guarantees the reproducibility of the result? And,
if there is no such inverse mapping, can we add some annotations like provenance
polynomials to do so? Therefore we neglect the homomorphy demanded by R.
Fagin and define the so-called result equivalent CHASE-inverse. On the other
hand we extend the definition of relaxed CHASE-inverse with the additional
property that the number of tuples has to be equal in the source and the
result instance. For almost each of the relational basic operations one of the four
CHASE-inverse types can be detected now. For this purpose, the respective
operation is formulated as s-t tgd and processed using the CHASE&amp;BACKCHASE
method. By composing the basic operations, CHASE-inverse mappings can also
be found for general evaluation queries such as SQL-implementations of Machine
Learning algorithms.
4.1</p>
      </sec>
      <sec id="sec-2-4">
        <title>Basic operations as s-t tgds</title>
        <p>
          The basic operations of the extended relational algebra (copy, renaming,
projection, natural join, selection, set operations and also arithmetic operations) can
be written as s-t tgds based on their representations in Datalog. For aggregation
and grouping, we refer to [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]. The other operations are defined in [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ]. In Figure
1, we will present a small excerpt of these basic operations as s-t tgds, where
rj are relations, ai domain variables for attributes Ai, resp., and dom(Ai) the
domain of Ai.
4.2
        </p>
      </sec>
      <sec id="sec-2-5">
        <title>CHASE&amp;BACKCHASE</title>
        <p>The recovered instance I∗ = chaseM∗ (K) = chaseM∗ (chaseM(I)) is thus the
result of a query Qprov on the result instance K. I∗ contains whole tuples from I
or tuples restricted to certain attributes of the source schema (and filled with
(marked) null values).</p>
        <p>Copy:</p>
        <sec id="sec-2-5-1">
          <title>Projection:</title>
        </sec>
        <sec id="sec-2-5-2">
          <title>Natural Join:</title>
        </sec>
        <sec id="sec-2-5-3">
          <title>Selection:</title>
          <p>r(a1, a2, a3) → r(a1, a2, a3)
r(a1, a2, a3) → r(a1, a3)
r1(a1, a2) ∧ r2(a2, a3) → r(a1, a2, a3)
∃c ∈ dom(A1) : r(a1, a2) ∧ a1θc → r(a1, a2)
with θ ∈ {&lt;, ≤, =, 6=, ≥, &gt;}</p>
          <p>
            The second CHASE application is used here to “mapping back” the result
instance K to the source instance I. However, this is usually only partially
successful, so that an additional recovered instance I∗ must be introduced, which
is then compared with the source instance. This phase can be interpreted as the
BACKCHASE phase. The idea of the CHASE&amp;BACKCHASE method is based
on the idea of Deutsch et al. [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ]. However, if two schema mappings M and M∗
are given instead of dependencies applied to queries as in [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ], the BACKCHASE
step chaseM∗ (K) can be regarded as a kind of inverse schema mapping of the
CHASE step chaseM(I). In other words, the mapping M∗ is an CHASE-inverse
mapping of M.
A general investigation of the most important basic operations on the existence of
CHASE-inverse mappings forms the core of the Master’s Thesis “Implementation
of Provenance Queries in Big Data Analytics Environments”[
            <xref ref-type="bibr" rid="ref2">2</xref>
            ]. For an overview,
we follow the lines of [
            <xref ref-type="bibr" rid="ref4">4</xref>
            ] in the next two paragraphs. Thus, with a few exceptions,
an exact, tp-relaxed, relaxed or result equivalent CHASE-inverse schema mapping
can be specified for the basic operations copy, renaming, projection, natural join
and selection, the set operations and classic aggregate functions (MIN, MAX,
COUNT, SUM, AVG) and also for grouping and the arithmetic operations
(see Table 2, column 2).
          </p>
          <p>The existence of an exact CHASE-inverse (=) can only be proven for a few
relational operations such as copy or one-variable arithmetic operations. While
no CHASE-inverse can be found for the selection for inequality and the set
difference (xxx), most operations are tp-relaxed ( tp), relaxed ( ) or result
equivalent CHASE-inverses (↔).</p>
          <p>I(S1):</p>
          <p>
            The addition of provenance information allows the specification of stronger
CHASE-inverse schema mappings than without (see Table 2, column 4). The
provenance polynomials and (minimal) witness bases required for this correspond
to the definitions in [
            <xref ref-type="bibr" rid="ref15 ref16 ref5 ref7">16, 5, 15, 7</xref>
            ]. Thus, in the case of aggregation operations SUM
and AVG as well as union, an exact CHASE-inverse (=) can be constructed by
using data provenance information instead of a result equivalent CHASE-inverse
(↔). For other operations such as selection or MAX and COUNT the inverse
type cannot be improved despite additional data provenance information. The
type of these inverses is always relaxed ( ) or tp-relaxed ( tp). The operations
copy, renaming, natural join with duplicates and also one-variable arithmetic
operations provide an exact CHASE-inverse (=) without any additional
provenance aspects. Despite provenance, no CHASE-inverse can be found for selection
of inequality and set difference.
          </p>
          <p>The situation is different for aggregate functions SUM and AVG. For
illustration we consider the schema S1, consisting of the attributes id, module and grade.
The evaluation query Q performs the aggregation of the attribute grade. Without
using data provenance, one tuple (m1, n1, 1.725) is generated, which stores the
aggregated value AVG(grade) (see also Figure 2). A result equivalent
CHASEinverse exists. By using provenance information, the exact CHASE-inverse can
only be defined for the aggregated attribute grade itself. Therefore, the used
provenance polynomial is calculated as t = 1.3⊗t1+K2.3⊗t2+K1.0⊗t3+K2.3⊗t4 .
Ret1+Kt2+Kt3+Kt4
lated to the whole relation, there just can be specified a tp-relaxed CHASE-inverse
mapping. In order to guarantee an exact CHASE-inverse in this case, the relation
K0(S20) must be stored too (gray box in Figure 3), in addition to the evaluation
query Q = AVG(grade), the result database K(S2) and the provenance
polynomial t. The gray colored records of the recovered instance I∗ are no longer null
values, but can be specified concretely.</p>
          <p>I(S1):</p>
          <p>This additional side table K0 is, however, in many cases not necessary or
desired, for example due to data privacy aspects. A concrete traceability of the
recovered result is already possible with the CHASE-inverse mapping shown in
Figure 3 without the gray extension K0. In this case the id and module numbers
have to be replaced by null values. The s-t tgds for this operation (aggregation
with provenance polynomials) looks like</p>
          <p>R(id, module, grade) → Rresult(f (grade)) with f (x) = AVG(x)
for the CHASE and</p>
          <p>Rresult(avg grade) → ∃ ID, Module : R(ID, Module, grade)
for the BACKCHASE step, where the grade can concretely be calculated from
the result attribute value of avg grade and the provenance polynomial t.</p>
          <p>An explicit specification of the respective inverse M∗ is also possible. Thus,
the CHASE-inverse can be the identity mapping, renaming, projection, selection,
the null value extension in Ai and null tuple generation, the reconstruction of
lost attribute values Ai and the reconstruction of lost tuples. For relaxed schema
mappings one of the above inverse always exists. The inverse can even be specified
explicitly for the following operations: The natural join, one-variable arithmetic
operations (multiplication, division, addition, and subtraction) as well as the
renaming can be inverted by the projection, the inverse arithmetic operations
(division, multiplication, subtraction, and addition, resp.) and the renaming. The
inverse schema mapping of a result equivalent schema mapping is already the
identity. All realizations are represented in the third and fifth column of Table
2. In the case of aggregation, i.e. M = AVG(Ai), this means for the inverse
mapping M∗ the reconstruction of the lost attribute value Ai and the null value
extension in Aj with i 6= j.</p>
          <p>For grouping, we have to distinguish three cases: an inverse type of relaxed
( ) for MIN and MAX and tp-relaxed ( tp) for COUNT. For SUM and
AVG there exists a result equivalent CHASE-inverse (↔) or an exact
CHASEinverse (=) with and without using provenance information. For the inverse M∗
this results in the identity mapping, the generation of null tuples, the null value
extension in Ai and the reconstruction of lost tuples and concrete attribute values
Ai (see Table 2, column 3 and 5).
4.4</p>
        </sec>
      </sec>
      <sec id="sec-2-6">
        <title>Composition of basic operations</title>
        <p>For the composition M = M1 ◦ ... ◦ Mn of operations, the inverse mapping
M∗ = (M1 ◦ ... ◦ Mn)−1 = M∗n ◦ ... ◦ M2∗ ◦ M1∗ results in a composition of
the inverse suboperations M1∗, ..., M∗n. The type of the CHASE-inverse M∗ thus
corresponds to the type of the weakest partial inverse Mi∗ with i = 1, ..., n. If
there are no CHASE-inverses to the suboperations Mi (i = 1, ..., n), there is also
no CHASE-inverse to the schema mapping M.</p>
        <p>We use such a composition to implement more complex evaluation queries
on research data such as Machine Learning algorithms, e.g. the Hidden Markov
model. This model is one of the best-known machine learning algorithms. It
describes a stochastic model in which a system is modeled by a Markov chain —
a kind of “memory protocol” — with unobserved states. The future development
of the process therefore depends only on the last observed state, but not on the
previous states.</p>
        <p>
          Based on the representation of the Hidden Markov model in the form of SQL
statements [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ], the required operations addition and subtraction, scalar
multiplication and division as well as matrix-vector and matrix-matrix multiplication
can be examined for the existence of CHASE-inverse mappings. Overall, the
composition of these operations results in a result equivalent CHASE inverse.
5
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Conclusion</title>
      <p>In this paper, we investigated whether an inverse mapping exists for an evaluation
query and an evaluation result, which calculates a subdatabase of the original
database that guarantees the reproducibility of the result. For this purpose we
have defined new CHASE-inverses and determined the possible types of inverses
that can be computed for a specific operator of the extended algebra. In some
cases, we used additional annotations like provenance polynomials. In Table 2,
we have shown in which cases these additional annotations are necessary.</p>
      <p>m m
A tc</p>
      <p>o o
j in ru fr f</p>
      <p>r</p>
      <p>o o
ll n it it
u io c c</p>
      <p>e e
n s j j
i i</p>
      <p>m m</p>
      <p>A A o o
j in in fr f</p>
      <p>r</p>
      <p>A</p>
      <p>A t s s
ceeavnn ?IsreevnMiitteynd iganβmAi← iltseeeoxnnu rsceonA+i itttreaobun itttreaobun iitteynd iitteynd xxx xxx iltsceeon iitteynd xxx iitseeoxnnn ltreeeagnpu ilftttrsaoob itseeeoxnn ilftttrsaoob itseeeoxnn iitteynd rceonA+i ltseandup :///+−
o
l u
n n l
i j i j f a</p>
      <p>o v</p>
      <p>o
l c
l</p>
      <p>e
u r
n
p
t
−
,
+
{
rov In an lau lau on on</p>
      <p>re v v o o
P ll ll it it
t u u c c</p>
      <p>e e
u n n j j
o
p
e t
s = = =
x p
t
↔ ↔
↔=
) ) ) ) / ) ∈
itreaonpM()R (())rAAij←R (())rAiR .()(r/1122RR (())rcθAiR (())rθAAijR i,tθhw&lt;{∈≤ (())rcA=i6R (())rAA=ij6R ()(r1122∪RR ()(r1122∩RR ()(r1122−RR (())rAXAiR ((rTOUNAiR (())rUMAiR (())rVGAiR (()r;)(FAGijjR i)tθθhαwR
O r β π r σ σ σ σ r r r M C S A γ (
r
Table 2: Basic operations and their exact (=), tp-relaxed ( tp), relaxed ( ) or result
equivalent( )CHASE-inversewithrestrictiontotheattributeAi forCOUNT,SUM
↔
and AVG</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Aho</surname>
            ,
            <given-names>A. V.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Beeri</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Ullman</surname>
            ,
            <given-names>J. D.</given-names>
          </string-name>
          :
          <article-title>The Theory of Joins in Relational Databases</article-title>
          .
          <source>ACM TODS, No. 3</source>
          , Vol.
          <volume>4</volume>
          , pp.
          <fpage>297</fpage>
          -
          <lpage>314</lpage>
          (
          <year>1979</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Auge</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Umsetzung von Provenance-Anfragen in Big-Data-Analytics-Umgebungen</article-title>
          . University of Rostock,
          <source>Master's Thesis</source>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Auge</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Heuer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Combining Provenance Management and Schema Evolution. To be published in “Provenance and Annotation of Data and Processes”</article-title>
          ,
          <source>Proceedings of the 7th International Provenance and Annotation Workshop (IPAW)</source>
          , Springer LNCS Volume
          <volume>11017</volume>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Auge</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Heuer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Inverse im Forschungsdatenmanagement - Eine Kombination aus Provenance Management</article-title>
          , Schema- und
          <source>Daten-Evolution. Proceedings of the 30th Workshop on “Grundlagen von Datenbanken”</source>
          .
          <source>In: CEUR-WS.org Workshop Proceedings</source>
          , pp.
          <fpage>108</fpage>
          -
          <lpage>113</lpage>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Amsterdamer</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Deutch</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Tannen</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Provenance for Aggregate Queries</article-title>
          .
          <source>ACM PODS</source>
          , pp.
          <fpage>153</fpage>
          -
          <lpage>164</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Bruder</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ; Klettke,
          <string-name>
            <given-names>M.</given-names>
            ; Mo¨ller, M.L.; Meyer, F.;
            <surname>Heuer</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          ;
          <article-title>Ju¨rgensmann, S.;</article-title>
          <string-name>
            <surname>Feistel</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <source>Daten wie Sand am Meer - Datenerhebung</source>
          , -strukturierung,
          <article-title>-management und Data Provenance fu¨r die</article-title>
          <string-name>
            <surname>Ostseeforschung</surname>
          </string-name>
          , Datenbank-Spektrum,
          <volume>17</volume>
          ,
          <issue>2</issue>
          , pp.
          <fpage>183</fpage>
          -
          <lpage>196</lpage>
          ,
          <year>2017</year>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Buneman</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Khanna</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Tan</surname>
            ,
            <given-names>W. C.</given-names>
          </string-name>
          :
          <article-title>Why and Where: A Characterization of Data Provenance</article-title>
          . In: ICDT, Springer, Vol.
          <volume>1</volume>
          , pp.
          <fpage>316</fpage>
          -
          <lpage>330</lpage>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Cheney</surname>
          </string-name>
          , J.;
          <string-name>
            <surname>Chiticariu</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Tan</surname>
            ,
            <given-names>W. C.</given-names>
          </string-name>
          : Provenance in Databases: Why, How, and
          <string-name>
            <surname>Where</surname>
          </string-name>
          .
          <source>Foundations and Trends in Databases</source>
          , Vol.
          <volume>1</volume>
          , No.
          <issue>4</issue>
          , pp.
          <fpage>379</fpage>
          -
          <lpage>474</lpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Deutsch</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Popa</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Tannen</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Physical Data Independence, Constraints, and Optimization with Universal Plans</article-title>
          .
          <source>Proceedings of 25th International Conference on Very Large Data Bases</source>
          , pp.
          <fpage>459</fpage>
          -
          <lpage>470</lpage>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Fagin</surname>
          </string-name>
          , R.:
          <source>Inverting Schema Mappings. ACM TODS, No. 4</source>
          , Vol.
          <volume>32</volume>
          , pp.
          <volume>25</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>25</lpage>
          :
          <fpage>23</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Fagin</surname>
            , R.; Kolaitis,
            <given-names>P. G.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Popa</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Tan</surname>
            ,
            <given-names>W. C.</given-names>
          </string-name>
          :
          <article-title>Quasi-Inverses of Schema Mappings</article-title>
          .
          <source>ACM TODS, No. 2</source>
          , Vol.
          <volume>33</volume>
          , pp.
          <volume>11</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>11</lpage>
          :
          <fpage>52</fpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Fagin</surname>
            , R.; Kolaitis,
            <given-names>P. G.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Popa</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Tan</surname>
            ,
            <given-names>W. C.</given-names>
          </string-name>
          :
          <article-title>Schema Mapping Evolution Through Composition and Inversion</article-title>
          .
          <source>In: Schema Matching and Mapping</source>
          , Springer (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Green</surname>
            , T.J.; Karvounarakis,
            <given-names>G.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Tannen</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Provenance semirings</article-title>
          .
          <source>Proceedings of the 26th ACM Symposium on PODS</source>
          , pp.
          <fpage>31</fpage>
          -
          <lpage>40</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Greco</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Molinaro</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          : Datalog and
          <string-name>
            <given-names>Logic</given-names>
            <surname>Databases</surname>
          </string-name>
          .
          <source>Synthesis Lectures on Data Management</source>
          , Morgan &amp; Claypool Publishers (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Green</surname>
          </string-name>
          , T. J.;
          <string-name>
            <surname>Tannen</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>The Semiring Framework for Database Provenance</article-title>
          .
          <source>Proceedings of the 36th ACM Symposium on PODS</source>
          , pp.
          <fpage>93</fpage>
          -
          <lpage>99</lpage>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Herschel</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A Hybrid Approach to Answering Why-Not Questions on Relational Query Results</article-title>
          .
          <source>J. Data and Information Quality, No. 3</source>
          , Vol.
          <volume>5</volume>
          , pp.
          <volume>10</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          :
          <fpage>29</fpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Mohapatra</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Genesereth</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          : Aggregation in Datalog Under Set Semantics Stanford University, Techn.
          <source>Report</source>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Marten</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Heuer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <source>Machine Learning on Large Databases: Transforming Hidden Markov Models to SQL Statements. OJDB</source>
          , Vol.
          <volume>4</volume>
          , pp.
          <fpage>22</fpage>
          -
          <lpage>42</lpage>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Maier</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Mendelzon</surname>
            ,
            <given-names>A. O.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Sagiv</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Testing Implications of Data Dependencies</article-title>
          .
          <source>ACM TODS, No. 4</source>
          , Vol.
          <volume>4</volume>
          , pp.
          <fpage>455</fpage>
          -
          <lpage>469</lpage>
          (
          <year>1979</year>
          )
          <article-title>j s s e =6 e =6 n e i=6 lau ,i lau ,i ito tu , v j v j c ib Aj iton te A te A tru ttr u in u in s a ·</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>