We can now formally define the interval partitioning (IP) problem. An instance of IP consists of a collection R of intervals and a limit X for the maximum number of intervals allowed in a partition fragment. The reason why we have to allow collections rather than sets is the following: In a temporal relation, for example, two tuples may be distinct yet but can have the same timestamp interval. In the partitioning process it might be necessary to count every tuple but actually neglect all attribute values apart from the timestamp. Intervals that originate from one or more temporal relations can therefore appear more than once and it is important to know how many times.
Figure 5.2 shows an example of such a situation using
a simple, uniform partition of the time domain. There are twenty
intervals - represented as bold bars - and a uniform partition of
the time line that goes from 0 to 20. The
breakpoints - 5, 10 and 15 in this case - are
shown by vertical lines. The breakpoints themselves belong to the
respective left fragment. The figure then gives the resulting loads of the
fragments in circles which add up to a total of 39. This means that
the partitioning process caused 19 overlaps, i.e. 19 times intervals
cross breakpoint lines.
The goal is now to find an integer m and a partition ...,
of the span L(R). m can hold any suitable
value. The intervals of R are partitioned such
that
is put into a fragment Rk if and
only if r intersects with the partition range
(pk-1,pk] that corresponds to Rk (
). There are
two constraints for an optimal P :
(14) |
(15) |
Please note the following: the number of intervals within a fragment
Rk can be calculated from the value of the functions and
. Intervals that intersect with the partition range (pk-1,pk]
either
Lemma 28638
Given a collection R of intervals and a partition is given by the number of intervals falling into a fragment by the equation
(16) |