<!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>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>H Alice Movies Alice Music Bob Basketball</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Concordia University</institution>
          ,
          <addr-line>Montreal</addr-line>
          ,
          <country country="CA">Canada</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Universal Nulls (Extended Abstract) In this paper we revisit the foundations of the relational model and unearth universal nulls, showing that they can be treated on par with the usual existential nulls [10,4,5,2] Recall that an existential null in a tuple in a relation R represents an existentially quanti ed variable in an atomic sentence R(::). This corresponds to the intuition \value exists, but is unknown." A universal null, on the other hand, does not represent anything unknown, but stands for all values of the domain. In other words, a universal null represents a universally quanti ed variable. Universal nulls have an obvious application in databases, as the following example shows. The symbol \∗" denotes a universal null. Example 1. Consider binary relations F (ollows) and H(obbies), where F (x; y) means that user x follows user y on a social media site, and H(x; z) means that z is a hobby of user x. Let the database be the following.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>(1)
The answer to our example query is {(Movies); (Music)}. Note that star-nulls
also can be part of an answer. For instance, the query x1; x2 : F (x1; x2) would
return all the tuples in F . ◂</p>
      <p>
        Another area of applications of \*"-nulls relates to intuitionistic, or
constructive database logic. In the constructive four-valued approach of [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and the
three-valued approach of [
        <xref ref-type="bibr" rid="ref12 ref5">5,12</xref>
        ] the proposition A ∨ ¬A is not a tautology. In
order for A ∨ ¬A to be true, we need a constructive proof of A or a constructive
proof of ¬A. Therefore both [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] assume that the database I has a theory
of the negative information, i.e. that I = (I+; I−), where I+ contains the positive
information and I− the negative information. The papers [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] then show
how to transform an FO-query ' x
      </p>
      <p>( ) to a pair of queries ('+(x); '−(x)) such
that '+(x) returns the tuples a for which '(a) is true in I, and '−(x) returns
the tuples a for which '(a) is true in I (i.e. '(a) is proven to be false in I). It
turns out that databases containing \*"-nulls are suitable for storing I−.
Example 2. Suppose that the instance in Example 1 represents I+, and that all
negative information we have deduced about the H(obbies) relation, is that we
know Alice doesn't play Volleyball that Bob only has Basketball as hobby, and
that Chris has no hobby at all. This negative information about the relation H
is represented by the table H− below. Note that H− is part of I−.</p>
      <p>H−
Alice Volleyball
Bob ∗ (except Basketball)</p>
      <p>Chris ∗
Suppose the query ' asks for people who have a hobby, that is ' = x1 : ∃x2 H(x1; x2).
Then '+ = x1 : ∃x2 H+(x1; x2), and '− = x1 : ∀x2 H−(x1; x2). Evaluating '+ on
I+ returns {(Alice); (Bob)}, and evaluating '− on I− returns {(Chris)}. Note
that there is no closed-world assumption as the negative facts are explicit. Thus
it is unknown whether someone called David has a hobby or not. ◂</p>
      <p>This example highlights our main motivation for adding universal nulls to
databases. When intuitionistic logic is used in answering queries with negation
against four-valued database instances, universal quanti ers are necessary. In
fact, even the simplest queries, such as Conjunctive Queries will be translated
to a universally quanti ed disjunction of the atoms in the query. The cost of
evaluating FO-queries ' intuitionistically on four-valued databases remains the
same as evaluating ' with standard semantics on two-valued databases. Note
however that '+ and '− are always negation free.</p>
      <p>
        The Cylindric Set Algebra [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ] |as an algebraization of rst order logic| is
an algebra on sets of valuations of variables in an FO-formula. A valuation of
variables {x1; x2; : : :} can be represented as a tuple , where (i) = (xi). Any
subset of all valuations can then be represented by a relation C of such tuples.
In particular, if the FO-formula only involves a nite number n of variables,
then the representing relation C has arity n. Note however that C can have
an in nite number of tuples, since the domain, named D from now on, of the
variables (such as the users of a social media site) should be assumed unbounded.
One of the basic connections [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ] between FO and Cylindric Set Algebra is
that, given any interpretation I and FO-formula ', the set of valuations under
which ' is true in I can be represented as such a relation C. Moreover, each
logical connective and quanti er corresponds to an operator in the Cylindric Set
Algebra. Naturally disjunction corresponds to union, conjunction to intersection,
and negation to complement. More interestingly, existential quanti cation on
variable xi corresponds to cylindri cation ci on column i, de ned as
ci(C) = { ∶ (i~a) ∈ C; for some a ∈ D};
where (i~a) denotes the valuation (tuple) ′, and ′(i) = a and ′(j) = (j) for
i ≠ j. The algebraic counterpart of universal quanti cation can be derived from
cylindri cation and complement, or be de ned directly as inner cylindri cation
ic(C) = { ∶ (i~a) ∈ C; for all a ∈ D}:
In addition, in order to represent equality, the Cylindric Set Algebra also contains
constant relations dij = {t ∈ Dn ∶ t(i) = t(j)}, representing the equality xi ≈ xj .
That is, dij is the set of all valuations , such that (i) = (j).
      </p>
      <p>
        The objects C and dij of [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ] are of course in nitary. In this paper we
therefore develop a nitary representation mechanism, namely relations containing
universal nulls \∗" and certain equality literals. These objects are called Star
Tables when they represent the records stored in the database. When used as
runtime constructs in algebraic query evaluation, they will be called Star Cylinders.
Example 1 showed star-tables in a database. The run-time variable binding
pattern of the query (1), as well as its algebraic evaluation is shown in the
star-cylinders in Example 3 below.
      </p>
      <p>Example 3. Continuing Example 1, in that database the atoms F (x1; x2) and
H(x3; x4) of query (1) are represented by star-tables CF and CH , and the equality
atom is represented by the star-cylinder C23. Note that these are positional
relations, the \attributes" x1; x2; x3; x4 are added for illustrative purposes only.</p>
      <p>CF
x1 x2 x3 x4
Alice Chris ∗ ∗
∗ Alice ∗ ∗
Bob ∗ ∗ ∗
Chris Bob ∗ ∗</p>
      <p>CH
x1 x2 x3 x4
∗ ∗ Alice Movies
∗ ∗ Alice Music
∗ ∗ Bob Basketball
The algebraic translation of query (1) is the SCA-expression
C23
x1 x2 x3 x4
∗</p>
      <p>∗ ∗ ∗ 2=3
c_2(c_3(_1c((CF ⩀ CH ) ⩀ C23)))
(2)
The intersection of CF and CH is carried out as star-intersection ⩀, where for
instance {(a; ∗; ∗)} ⩀ {(∗; b; ∗)} = {(a; b; ∗)}. The result will contain 12 tuples,
and when these are star-intersected with C23, the star-cylinder C23 will act as a
selection by columns 2 and 3 being equal. The result is the left-most star-cylinder
C′ = (CF ⩀ CH ) ⩀ C23 below.
x1 x2 x3 x4
∗ Alice Alice Movies
∗ Alice Alice Music
Bob Alice Alice Movies
Bob Alice Alice Music
Bob Bob Bob Basketball
Chris Bob Bob Basketball
x1 x2 x3 x4</p>
      <p>Alice Alice Movies
Alice Alice Music
x1 x2 x3 x4</p>
      <p>Movies</p>
      <p>
        Music
∗ ∗
∗ ∗
Applying the inner star-cylindri cation on column 1 results in C′′ in the middle
above. Finally, applying outer star-cylindri cations on columns 2 and 3 of
starcylinder C′′ yields the nal result C′′′ = c_2(c_3(_1c((CF ⩀ CH ) ⩀ C23))) right-most
above. The system can now return the answer, i.e. the values of column 4 in
cylinder C′′′. Note that columns where all rows are \∗" do not actually have to
be materialized at any stage. Negation requires some additional details that can
be found in the full version [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. ◂
      </p>
      <p>
        The aim of this paper is to develop a clean and sound modeling of universal
nulls, and furthermore show that the model can be seamlessly extended to
incorporate the existential nulls of Imielinski and Lipski [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. We show that FO
and our Cylindric Star Algebra are equivalent in expressive power when it comes
to querying databases containing universal nulls, and that our algebraic queries
can be evaluated naively. This will be done in three steps: In Section 2 we show
the equivalence between FO and Cylindric Set Algebra (CA) [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ] over in nitary
databases. This was of course only the starting point of [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ], and we recast the
result here in terms of database theory.1 In Section 3 we introduce our nitary
Cylindric Star Algebra (SCA) 2, and show the equivalence between CA and SCA,
thus denomstrating that certain in nitary cylinders can be nitely represented as
star-cylinders, and that our nitary Cylindric Star Algebra on nite star-cylinders
mirrors the Cylindric Set Algebra on the in nite cylinders they represent.
      </p>
      <p>
        At the end of Section 3 we we take the third step show how to tie these
two results together, delivering the promised SCA evaluation of FO queries on
databases containing universal nulls. In the full paper [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] we seamlessly extend
our framework to also handle existential nulls, and show that naive evaluation
can still be used for positive queries (allowing universal quanti cation, but not
negation) on databases containing both universal and existential nulls. The full
paper [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] shows that all SCA expressions can be evaluated in time polynomial in
the size of the database when only universal nulls are present. In [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] we also show
that when both universal and existential nulls are present, the certain answer to
any negation-free (allowing inner cylindri cation, i.e. universal quanti cation)
SCA query can be evaluated naively in polynomial time. The full paper [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]
also includes complexity results related to database and view containment for
databases with universal nulls.
1 Van Den Bussche [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] has recently referred to [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ] in similar terms.
2 In this extended abstract we only describe the positive case, where there is no negation
in the query or database. The extension to include negation is developed in the full
paper [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>Relational calculus and cylindric set algebra
Throughout this paper we assume a xed schema R = {R1; : : : ; Rm; ≈}, where
each Rp, p ∈ {1; : : : ; m}, is a relational symbol with an associated positive integer
ar(Rp), called the arity of Rp. The symbol ≈ represents equality.</p>
      <p>Logic. Our calculus is the standard domain relational calculus. Let {x1; x2; : : :}
be a countably in nite set of variables. We de ne the set of FO-formulas '
(over R) in the usual way: Rp(xi1 ; : : : ; xiar(Rp) ) and xi ≈ xj are atomic formulas,
and these are closed under ∧; ∨; ¬; ∃xi; and ∀xi; in a well-formed manner possibly
using parenthesis's for disambiguation. If an FO-formula uses n variables, it will
be called an FOn-formula.</p>
      <p>Instances. Let D = {a1; a2; : : :} be a countably in nite domain. An instance I
(over R) is a mapping that assigns a possibly in nite subset RpI of Dar(Rp) to
each relation symbol Rp, and ≈I = {(a; a) ∶ a ∈ D}. Note that our instances are
in nite model-theoretic ones. The set of tuples actually recorded in the database
will be called the stored database (to be de ned in Section 3).</p>
      <p>
        In order to de ne the (standard) notion of truth of an FOn-formula ' in an
instance I we rst de ne a valuation to be a mapping ∶ {x1; : : : ; xn} → D. If
is a valuation, xi a variable and a ∈ D, then (i~a) denotes the valuation which is
the same as , except (i~a)(xi) = a. Then we use the usual recursive de nition
of I ⊧ ', meaning instance I satisfying ' under valuation , i.e. I ⊧ (xi ≈ xj )
if ( (xi); (xj )) ∈ ≈I , I ⊧ Rp(xi1 ; : : : ; xiar(Rp) ) if ( (xi1 ); : : : ; (xiar(Rp) )) ∈ RpI,
and I ⊧ ∃xi ' if I ⊧ (i~a) ' for some a ∈ D, and so on. Our stored databases
will be nite representations of in nite instances, so the semantics of answers to
FO-queries will be de ned in terms of the in nite instances:
De nition 1. Let I be an instance, and ' an FOn-formula with f ree(') =
{xi1 ; : : : ; xik }, k ≤ n. Then the answer to ' on I is de ned as
'I = {( (xi1 ); : : : ; (xik )) ∶ I ⊧
'}:
Algebra. As noted in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] the relational algebra is really a disguised version of
the Cylindric Set Algebra of Henkin, Monk, and Tarski [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ]. We shall therefore
work directly with the Cylindric Set Algebra instead of Codd's Relational Algebra.
Apart from the conceptual clarity, the Cylindric Set Algebra will also allow us to
smoothly introduce the promised universal nulls.
      </p>
      <p>Let n be a xed positive integer. The basic building block of the Cylindric Set
Algebra is an n-dimensional cylinder C ⊆ Dn. Note that a cylinder is essentially
an in nite n-ary relation. They will however be called cylinders, in order to
distinguish them from instances. The rows in a cylinder will represent run-time
variable valuations, whereas tuples in instances represent facts about the real
world. We also have special cylinders called diagonals, of the form dij = {t ∈ Dn ∶
t(i) = t(j)} representing the equality xi ≈ xj . We can now de ne the Cylindric
Set Algebra.</p>
      <p>De nition 2. Let C and C′ be in nite n-dimensional cylinders. The Cylindric
Set Algebra consists of set theoretic union C ⋃ C′, complement C = Dn ∖ C,
diagonals dij = {t ∈ Dn ∶ t(i) = t(j)}, and outer cylindri cation:</p>
      <p>
        ci(C) = {t ∈ Dn ∶ t(i~a) ∈ C; for some a ∈ D}:
The operation ci corresponds to existential quanti cation of variable xi. For the
geometric intuition behind the name cylindri cation, see [
        <xref ref-type="bibr" rid="ref11 ref8">8,11</xref>
        ]. Intersection is
considered a derived operator, and we also introduce the inner cylindri cation as
a derived operator ic(C) = ci(C); corresponding to universal quanti cation. Note
that
      </p>
      <p>
        ic(C) = {t ∈ Dn ∶ t(i~a) ∈ C; for all a ∈ D}:
Equivalence of FO and CA. In the next two theorems we will restate, in the
context of the relational model, the correspondence between domain relational
calculus and cylindric set algebra as query languages on instances [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ]. An
expression E in cylindric set algebra of dimension n will be called a
CAnexpression. When translating an FOn-formula to a CAn-expression we rst need
to extend all k-ary relations in I to n-ary by lling the n − k last columns in all
n I .
possible ways. The result is denoted h ( )
      </p>
      <p>Once an instance is expanded it becomes a sequence C = (C1; : : : ; Cm; dij)i;j
of n-dimensional cylinders and diagonals, on which Cylindric Set Algebra
Expressions can be applied. The main technical di culty in the translation from FOn to
CAn is the correlation of the variables in the FOn-sentence ' with the columns
in the expanded relations in the instance. This can be achieved using a derived
\swapping" operator zi1;:::;ik that interchanges the columns il and jl, where l ∈
j1;:::;jk
{1; : : : ; k}.3 Every atom Rp in ' will correspond to a CAn-expression Cp = h (
n RpI).</p>
      <p>However, for every occurrence of an atom Rp(xi1 ; : : : ; xik ) in ' we need to
interchange the columns 1; : : : ; k with columns i1; : : : ; ik. This is achieved by the
expression z1;:::;k</p>
      <p>i1;:::;ik (Cp). The entire FOn-formula ' with f ree(') = {xi1 ; : : : ; xik }
will then correspond to the CAn-expression E' = zi11;:;::::;:k;ik (F'), where F' is de ned
recursively as follows:
{ If ' = Rp(xi1 ; : : : ; xik ) where k = ar(Rp), then F' = zi11;:;::::;:k;ik (Cp):
{ If ' = xi ≈ xj, then F' = dij.
{ If ' = ∨ , then F' = F ⋃ F , if ' = ∧ , then F' = F</p>
      <p>' = ¬ , then F' = F .
{ If ' = ∃xi , then F' = ci(F ).</p>
      <p>{ If ' = ∀xi , then F' = ic(F ).</p>
      <p>
        For an example, let us reformulate the F O4-query ' from (1) as
⋂ F , and if
x4 : ∃x2∃x3∀x1 R1(x1; x2) ∧ R2(x3; x4) ∧ (x2 ≈ x3):
3 For a de nition of swapping using primitive operators, see De nition 1.5.12 in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
When translating ', the relation R1I is rst expanded to C1 = R1I × D × D, and R2I
is expanded to C2 = R2I × D × D. In order to correlate the variables in ' with the
columns in the expanded relations, we do the shifts z11;;22(C1) and z31;;42(C2). The
equality (x2 ≈ x3) was expanded to the diagonal d23 = {t ∈ Dn ∶ t(2) = t(3)} so
here the variables are already correlated. After this the conjunctions are replaced
with intersections and the quanti ers with cylindri cations. Finally, the column
corresponding to the free variable x4 in ' (whose bindings will constitute the
answer) is shifted to column 1. The nal CAn-expression will then be evaluated
against I as E'(h4(I)) =
z41c23( 1c(z11;;22(R1I × D2)
z13;;42(R2I × D2)
d23)):
We now have E'(h4(I)) = h (
      </p>
      <p>
        4 'I ). The following fundamental result follows from
[
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ]. For the bene t of the readers who don't want to consult [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ], an explicit
proof (in the current notation) can be found in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>Theorem 1. For all FOn-formulas ', there is a CAn expression E', such that
E'(hn(I)) = h (</p>
      <p>n 'I ); for all instances I. ◂</p>
      <p>
        The translation from CAn-expressions to FOn-formulas is fairly
straightforward an can be found in the full version [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
3
      </p>
      <p>
        Cylindric Set Algebra and Cylindric Star Algebra
Since cylinders can be in nite, we want a nite mechanism to represent (at
least some) in nite cylinders, and the mechanism to be closed under queries.
Our representation mechanism comes in two variations, depending on whether
negation is allowed or not. Here we only consider the positive (no negation) case.
The full machinery is described in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>Star Cylinders. We de ne an n-dimensional (positive) star-cylinder C_ to be a
nite set of n-ary star-tuples, the latter being elements of (D ∪ {∗})n × ´( n),
where n denotes the set of all equalities of the form i = j, with i; j ∈ {1; : : : ; n}.
Star-tuples will be denoted t_; u_ ; : : :. A star-tuple such as t_ = (a; ∗; c; ∗; ∗; {(4 = 5)})
is meant to represent the set of all \ordinary" tuples (a; x; c; y; y) where x; y ∈ D.
It will be convenient to assume that all our star-cylinders are in the following
normal form.</p>
      <p>De nition 3. An n-dimensional star-cylinder C_ is said to be in normal form if
t_(n + 1) ⊧ (i = j) entails (i = j) ∈ t_(n + 1) and t_(i) = t_(j), for all star-tuples t_ ∈ C_ .</p>
      <p>The symbol ⊧ above stands for standard logical implication. It is easily
seen that maintaining star-cylinders in normal form can be done e ciently in
polynomial time. We shall therefore assume without loss of generality that all
star-cylinders and star-tuples are in normal form. We next de ne the notion of
dominance, where a dominating star-tuple represents a superset of the ordinary
tuples represented by the dominated star-tuple. First we de ne a relation ⪯ ⊆
(D ∪ {∗})2 by a ⪯ a, ∗ ⪯ ∗, and a ⪯ ∗, for all a ∈ D.</p>
      <p>De nition 4. Let t_ and u_ be n-dimensional star-tuples. We say that u_
dominates t_, denoted t_ ⪯ u_, if t_(i) ⪯ u_(i) for all i ∈ {1;:::;n}, and (i = j) ∈ u_(n + 1)
entails (i = j) ∈ t_(n + 1) when t_(i) = t_(j) = ∗, and entails t_(i) = t_(j) otherwise.</p>
      <p>We complete the de nition by stipulating that t_ ⪯ u_ whenever t_(n + 1) =
{false}4. We can now de ne the meet t_⋏ u_ of star-tuples t_ and u_ :
De nition 5. Let t_ and u_ be n-ary star-tuples. If t_(j);u_ j
( ) ∈ D for some j
and t_ j ( ) then t_⋏ u_ (i) = a for i ∈ {1;:::;n}, and t_⋏ u_(n + 1) = {false}. 5
( ) ≠ u_ j
Otherwise, for i ∈ {1;:::;n}
⎧t_(i) if t_(i) ∈ D
⎪
⎪
t_⋏ u_ (i) = ⎨⎪u_ i</p>
      <p>( ) if u_(i) ∈ D
⎪⎪⎩⎪∗ if t_(i) = u_(i) = ∗
and t_⋏ u_ (n + 1) = t_(n + 1) ∪ u_(n + 1):</p>
      <p>For an example, let t_ = (a;∗;∗;∗;∗;{(3 = 4)}) and u_ = (∗;b;∗;∗;∗;{(4 = 5)}).
Then we have t_⋏ u_ = (a;b;∗;∗;∗;{(3 = 4);(4 = 5);(3 = 5)}). Note that t_⋏ u_ ⪯ t_,
and t_⋏ u_ ⪯ u_. Note also that for n-ary star-tuples t_∅ = (a;a;:::;a;{false}) and
t_Dn = (∗;∗;:::;∗;{true}), and for any n-ary star-tuple t_, it holds that t_⋏ t_∅ = t_∅,
t_⋏ t_Dn = t_, and t_∅ ⪯ t_ ⪯ t_Dn.</p>
      <p>We extend the order ⪯ to include \ordinary" n-ary tuples t ∈ Dn by identifying
(a1;:::;an) with star-tuple (a1;:::;an;{true}). Let C_ be an n-dimensional
starcylinder. We can now de ne the meaning of C_ to be the set [[C ]] of all ordinary
_
tuples it represents, where [[C_ ]] = {t ∈ Dn ∶ t ⪯ u_ for some u_ ∈ C_}: We lift the
order to n-dimensional star-cylinders C_ and D_ , by stipulating that C_ ⪯ D_ , if for
all star-tuples t_ ∈ C_ there is a star-tuple u_ ∈ D_ , such that t_ ⪯ u_.</p>
      <p>Lemma 1. Let C_ and D_ be n-dimensional (positive) star-cylinders. Then it
holds that [[C_]] ⊆ [[D]] i C ⪯ D_ .</p>
      <p>_ _
Positive Cylindric Star Algebra. Next we rede ne the positive cylindric set
operators so that [[C_ ○_ D_ ]] = [[C_]] ○ [[D_ ]] or ○([[C_]]) = [[○_(C_)]], for each
positive cylindric operator ○, its rede nition ○_, and star-cylinders C_ and D_ .
De nition 6. The positive cylindric star-algebra consists of the operators
1. Star-diagonal: d_ij = {(∗;:::;∗;(i = j))}
2. Star-union: C_ ⊍ D_ = {t_ ∶ t_ ∈ C_ or t_ ∈ D_ }
3. Star-intersection: C_ ⩀ D_ = {t_⋏ u_ ∶ t_ ∈ C_ and u_ ∈ D_ }
4. Outer cylindri cation: Let i ∈ {1;:::;n}, let C_ be an n-dimensional
starcylinder, and t_ ∈ C_. Then</p>
      <p>t_(j) if j ≠ i
c_i(t_)(j) = ∗ if j = i
4 Note that only in this case t_ is not in normal form.
5 Here a is an arbitrary constant in D.</p>
      <p>for j ∈ {1; : : : ; n}, and</p>
      <p>c_i(t_)(n + 1) = {(j = k) ∈ t_(n + 1) ∶ j; k ≠ i}:</p>
      <p>We then let c_i(C_ ) = {c_i(t_ ) ∶ t_ ∈ C_ }:
5. Inner cylindri cation: Let C_ be an n-dimensional cylinder and i ∈ {1; : : : ; n}.</p>
      <p>Then _ic(C_ ) = {t ∈ C ∶ t_(i) = ∗ and (i = j) ∉ t_(n + 1) for any j}:</p>
      <p>_ _</p>
      <p>The class of positive SCAn- and CAn-expressions will be denoted SCA+n and
CA+n. We illustrate the positive cylindric star-algebra with the following small
example.</p>
      <p>Example 4. Let C_ 1 = {(a; ∗; ∗; ∗; ∗; {(3 = 4)})}, C_ 2 = {(∗; b; ∗; ∗; ∗; {(4 = 5)})},
_ _ _ _
C3 = {(a; b; ∗; ∗; ∗; {(4 = 5)})}, and consider _3c((c_1;4(C1 ⩀ C2)) ⊍ C3): Then we
have the following.</p>
      <p>(c_1;4(C_ 1 ⩀ C_2)) ⊍ C3 = {(∗; b; ∗; ∗; ∗; {(3 = 5)})</p>
      <p>C_ 1 ⩀ C2 = {(a; b; ∗; ∗; ∗; {(3 = 4); (4 = 5); (3 = 5)})}</p>
      <p>_
c_1;4(C_ 1 ⩀ C2) = {(∗; b; ∗; ∗; ∗; {(3 = 5)})}</p>
      <p>_
_3c((c1;4(C_ 1 ⩀ C_2)) ⊍ C3) = {(a; b; ∗; ∗; ∗; {(4 = 5)})}</p>
      <p>(a; b; ∗; ∗; ∗; {(4 = 5)})}</p>
      <p>Next we show that the cylindric star-algebra has the promised property.
Theorem 2. For every SCA+n-expression E_ and the corresponding CA+n
expression E, it holds that [[E( _ _</p>
      <p>_ C)]] = E([[C]]) for every sequence of n-dimensional
star-cylinders and star-diagonals C_.</p>
      <p>Stored databases with universal nulls. We now show how to use star
cylindric algebra to evaluate FO-queries on stored databases containing universal
nulls. Let k be a positive integer. Then a k-ary star-relation R_ is a nite set
of star-tuples of arity k. In other words, a k-ary star-relation is a star-cylinder
of dimension k. A sequence R_ of star-relations (over schema R) is called a
stored database. Examples 1 and 3 show stored databases. A stored database R_
_ _ _
represents the in nite instance [[R]] = ([[R1]]; : : : ; [[Rm]]; {(a; a)}a∈D):</p>
      <p>Everything that is de ned for star-cylinders applies to k-ary star-relations.
The major exception is that no operators from the cylindric star-algebra are
applied to star-relations. To do that, we rst need to expand the stored database
R_, by lling columns n − k : : : n with ∗ in all k-ary relations, and similarly for the
diagonals. The result is denoted h_n( R_). We are now ready for our main result.6
Theorem 3. For every FOn-formula ' there is an SCAn expression E_ ', such
that for every stored database R_, we have hn('[[R_ ]]) = [[E_ '( h_n( R_))]]:
6 It might be argued for some applications that the \*"-value should range over the
nite active domain only. This can be achieved in the positive framework by requiring
for each star-cylinder C_ (expanded star-relation), and each star-tuple t_ ∈ C_ , that if
ci([[t_]]) ⊆ [[C_ ]], then C_ also contains a star-tuple u_ , where u_ = t_(i~∗).</p>
    </sec>
    <sec id="sec-2">
      <title>Related and future work</title>
      <p>
        Universal nulls were rst studied in the early days of database theory by Biskup
in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. This was a follow-up on his earlier paper on existential nulls [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The
problem with Biskup's approach, as noted by himself, was that the semantics for
his algebra worked only for individual operators, not for compound expressions
(i.e. queries). This was remedied in the foundational paper [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] by Imielinski and
Lipski, as far as existential nulls were concerned. Universal nulls next came up in
[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], where Imielinski and Lipski showed that Codd's Relational Algebra could
be embedded in CA, the Cylindric Set Algebra of Henkin, Monk, and Tarski
[
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ]. As a side remark, Imielinski and Lipski suggested that the semantics of
their \∗" symbol could be seen as modeling the universal null of Biskup, and
proposed a simpli ed version of the star-cylinders corresponding to the structures
in Diagonal-free Cylindric Set Algebras [
        <xref ref-type="bibr" rid="ref8 ref9">8,9</xref>
        ]. The exact FO-expressive power of
the nite diagonal-free star-cylinders is an open question. Nevertheless, using the
techniques of [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], it can be shown that naive existential nulls can be seamlessly
incorporated in diagonal-free star-cylinders.
      </p>
    </sec>
    <sec id="sec-3">
      <title>References</title>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Joachim</given-names>
            <surname>Biskup</surname>
          </string-name>
          .
          <article-title>A foundation of codd's relational maybe-operations</article-title>
          .
          <source>ACM Trans. Database Syst</source>
          .,
          <volume>8</volume>
          (
          <issue>4</issue>
          ):
          <volume>608</volume>
          {
          <fpage>636</fpage>
          ,
          <year>1983</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Joachim</given-names>
            <surname>Biskup</surname>
          </string-name>
          .
          <article-title>Extending the relational algebra for relations with maybe tuples and existential and universal null values</article-title>
          .
          <source>Fundam. Inform.</source>
          ,
          <volume>7</volume>
          (
          <issue>1</issue>
          ):
          <volume>129</volume>
          {
          <fpage>150</fpage>
          ,
          <year>1984</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3. Jan Van den Bussche.
          <article-title>Applications of Alfred Tarski's ideas in database theory</article-title>
          . In Computer Science Logic, 15th International Workshop, Paris, France,
          <source>September 10-13</source>
          ,
          <year>2001</year>
          , pages
          <fpage>20</fpage>
          {
          <fpage>37</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Ronald</given-names>
            <surname>Fagin</surname>
          </string-name>
          , Phokion G. Kolaitis, Lucian Popa, and
          <article-title>Wang Chiew Tan</article-title>
          .
          <article-title>Reverse data exchange: coping with nulls</article-title>
          .
          <source>In PODS</source>
          , pages
          <volume>23</volume>
          {
          <fpage>32</fpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Amelie</given-names>
            <surname>Gheerbrant</surname>
          </string-name>
          , Leonid Libkin, and
          <string-name>
            <given-names>Cristina</given-names>
            <surname>Sirangelo</surname>
          </string-name>
          .
          <article-title>Nave evaluation of queries over incomplete databases</article-title>
          .
          <source>ACM Trans. Database Syst</source>
          .,
          <volume>39</volume>
          (
          <issue>4</issue>
          ):
          <volume>31</volume>
          :1{
          <fpage>31</fpage>
          :
          <fpage>42</fpage>
          ,
          <year>December 2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>G.</given-names>
            <surname>Grahne</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Moallemi. Universal</surname>
          </string-name>
          (and
          <string-name>
            <surname>Existential) Nulls. ArXiv</surname>
          </string-name>
          e-prints,
          <year>March 2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. Gosta Grahne, Ali Moallemi, and
          <string-name>
            <given-names>Adrian</given-names>
            <surname>Onet</surname>
          </string-name>
          .
          <article-title>Intuitionistic data exchange</article-title>
          .
          <source>In Proceedings of the 9th Alberto Mendelzon International Workshop on Foundations of Data Management</source>
          , Lima, Peru, May 6 -
          <issue>8</issue>
          ,
          <year>2015</year>
          .,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Leon</given-names>
            <surname>Henkin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J Donald</given-names>
            <surname>Monk</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Alfred</given-names>
            <surname>Tarski. Cylindric Algebras{Part</surname>
          </string-name>
          <string-name>
            <surname>I</surname>
          </string-name>
          ,volume
          <volume>64</volume>
          of
          <article-title>Studies in Logic and the Foundations of Mathematics</article-title>
          . North-Holland Publishing Company,
          <year>1971</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Leon</given-names>
            <surname>Henkin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J Donald</given-names>
            <surname>Monk</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Alfred</given-names>
            <surname>Tarski</surname>
          </string-name>
          . Cylindric Algebras{
          <string-name>
            <surname>Part</surname>
            <given-names>II</given-names>
          </string-name>
          , volume
          <volume>115</volume>
          of
          <article-title>Studies in Logic and the Foundations of Mathematics</article-title>
          . North-Holland Publishing Company,
          <year>1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <article-title>Tomasz Imielinski and Witold Lipski Jr</article-title>
          .
          <article-title>Incomplete information in relational databases</article-title>
          .
          <source>J. ACM</source>
          ,
          <volume>31</volume>
          (
          <issue>4</issue>
          ):
          <volume>761</volume>
          {
          <fpage>791</fpage>
          ,
          <year>1984</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <article-title>Tomasz Imielinski and Witold Lipski Jr</article-title>
          .
          <article-title>The relational model of data and cylindric algebras</article-title>
          .
          <source>J. Comput. Syst. Sci.</source>
          ,
          <volume>28</volume>
          (
          <issue>1</issue>
          ):
          <volume>80</volume>
          {
          <fpage>102</fpage>
          ,
          <year>1984</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>Leonid</given-names>
            <surname>Libkin</surname>
          </string-name>
          .
          <article-title>Negative knowledge for certain query answers</article-title>
          .
          <source>In Web Reasoning and Rule Systems - 10th International Conference</source>
          ,
          <year>2016</year>
          , pages
          <fpage>111</fpage>
          {
          <fpage>127</fpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>