<!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>Leveraging Probabilistic Existential Rules for Adversarial Deduplication</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jose N. Paredes</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Maria Vanina Martinez</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gerardo I. Simari</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marcelo A. Falappa</string-name>
          <email>mfalappag@cs.uns.edu.ar</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CONICET) San Andres 800</institution>
          ,
          <addr-line>(8000) Bahia Blanca</addr-line>
          ,
          <country country="AR">Argentina</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Dept. of Computer Science and Engineering, Universidad Nacional del Sur (UNS) Institute for Computer Science and Engineering (UNS</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>The entity resolution problem in traditional databases, also known as deduplication, seeks to map multiple virtual objects to its corresponding set of real-world entities. Though the problem is challenging, it can be tackled in a variety of ways by means of leveraging several simplifying assumptions, such as the fact that the multiple virtual objects appear as the result of name or attribute ambiguity, clerical errors in data entry or formatting, missing or changing values, or abbreviations. However, in cyber security domains the entity resolution problem takes on a whole di erent form, since malicious actors that operate in certain environments like hacker forums and markets are highly motivated to remain semi-anonymous|this is because, though they wish to keep their true identities secret from law enforcement, they also have a reputation with their customers. The above simplifying assumptions cannot be made in this setting, and we therefore coin the term \adversarial deduplication". In this paper, we propose the use of probabilistic existential rules (also known as Datalog+/{) to model knowledge engineering solutions to this problem; we show that tuple-generating dependencies can be used to generate probabilistic deduplication hypotheses, and equality-generating dependencies can later be applied to leverage existing data towards grounding such hypotheses. The main advantage with respect to existing deduplication tools is that our model operates under the open-world assumption, and thus is capable of modeling hypotheses over unknown objects, which can later become known if new data becomes available.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Deduplication of objects in databases, also known as entity resolution, is a
classical problem in data cleaning [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]; the basic idea is that databases contain objects
that are potential duplicates|seemingly di erent records that correspond to the
same entity or object in the real world|that need to be identi ed and merged [
        <xref ref-type="bibr" rid="ref14 ref8">8,
14</xref>
        ]. There has been a lot of interest on this topic in the last 20 years, yielding a
large body of work that lies mostly in the databases literature. Traditionally,
entities are resolved using pairwise similarity over the attributes of reference [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. The
most recent and promising proposal are those based on so-called collective entity
resolution [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], which exploits additional relational information in the data since
references to di erent entities may co-occur. For instance, one such approach,
called iterative blocking [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ], iteratively groups together matching records in
blocks, giving rise to the possibility of using the information processed so far
to inform further decisions. Data-driven approaches [
        <xref ref-type="bibr" rid="ref13 ref6 ref7">6, 7, 13</xref>
        ] leverage examples
to determine if which pairs of records are duplicates. Recently, [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] has de ned
a declarative framework for entity resolution based on matching dependencies
(MDs). This formalism, which was rst introduced in [
        <xref ref-type="bibr" rid="ref16 ref17">16, 17</xref>
        ], consists of
declarative rules that generalize entity resolution tasks, eliminating duplicates via a
matching process. These rules state that certain attribute values in relational
tuples, under certain similarity conditions over possibly other attribute values
in those tuples, must be made the same. The original semantics for MDs, de ned
in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], was rede ned and extended in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        All of the above-mentioned methods operate under the assumption that the
undesired situation that multiple records refer to the same real-world object is
caused by a mix of clerical errors in data entry (simple typos), ambiguity in
names or other attributes (consider, for instance, the result of transliterations
such as \Kurt Godel" being mapped to \Kurt Goedel"), inconsistent
abbreviations and formatting, missing values (for instance, phone number not provided),
or changing values (for example, one record has an old phone number while
others have an updated one). Though these assumptions adequately re ect many
real-world scenarios, we are interested in others in which they cannot be
assumed to hold. One example of such a scenario is in cyber-security domains
such as malicious hacker forums on the dark/deep web (the part that is not
directly accessible by traditional browsers and search engines)|the entity
resolution problem in this setting becomes quite di erent. In [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ], a system for cyber
threat intelligence was developed that gathers data from various social platforms
on the Internet, focusing particularly on sites in the dark net and deep net. They
collect and store information from hacker forum discussions and marketplaces
o ering products and services that focus on malicious hacking. The system is
designed to extract speci c information from marketplaces (regarding sales of
malware/exploits) and hacker forums (discussions regarding services and threats).
This extracted information is well-structured and can be stored in a relational
database; they maintain two databases, one for marketplaces and the other for
forums. The crawling and parsing of these sites is carried out periodically so that
time-varying data can be collected. For markets, they collect product elds such
as item title, item description, vendor name, CVE number (identi er given by
the National Vulnerability Database [
        <xref ref-type="bibr" rid="ref11 ref25">11, 25</xref>
        ]), shipping details, item reviews, etc.
For forums, they collect other elds such as topic content, post content, topic
author, post author, author status, reputation, and topic interest.
      </p>
      <p>These forums and marketplaces have an interesting characteristic: though
malicious actors of course wish to remain anonymous from law enforcement
agents that might be patrolling, they also enjoy a reputation with their
customers and readers, and so they also wish to remain identi able. In particular,
the same actor typically operates under di erent screen names, keeping certain
aspects constant so that others can recognize them. Furthermore, and perhaps
most importantly, they also leave involuntary traces behind that can be leveraged
in deduplication e orts. We refer to this as the adversarial deduplication/entity
resolution problem. The following is a simpli ed example of the kind of
information that we can obtain from dark web forums and marketplaces.
Example 1. As a running example, consider the simpli ed domain of the
malicious hacker forums. Consider the following relational schema regarding
information about users and their posts in forums:</p>
    </sec>
    <sec id="sec-2">
      <title>User(Id u; Nick); Post(Id po; Id u; Id t);</title>
    </sec>
    <sec id="sec-3">
      <title>HasPosted(Id u; Id t); WritStSim(Id u; Id u);</title>
      <p>which represent users of these forums, posts by users, topics in posts, which
users have posted on which topics, and the writing style similarity between users,
respectively. Furthermore, id u and id po are the keys for relations User and Post,
respectively. Let D1 be an instance of this schema, where t1 is \private sqli tool",
t2 is \Sql Injection", and t3 is \trojan servers as a backdoor":</p>
      <p>D1 = f d1 : Post(p1; a1; t1); d2 : Post(p2; a2; t2); d3 : Post(p3; a3; t3);
d4 : User(a1; `Blackstar'); d5 : User(a2; `Archer');
d6 : User(a3; `Angel Eyes'); d7 : WritStSim(a1; a2)
g</p>
      <p>Finally, another basic assumption generally made by traditional approaches
to entity resolution|which can be seen as a consequence of the other assumptions|
is that the information contained in the databases is complete. In our setting,
on the other hand, it may be the case that the relevant information is yet to be
discovered; in these settings, the open-world assumption becomes crucial,
allowing us to entertain deduplication hypotheses over unnamed entities. In the next
section, we present a formalism that allows for this kind of reasoning, as well as
deal with probabilistic uncertainty.</p>
      <p>The rest of this paper is organized as follows: Section 2 presents the
extension of Datalog+/{ with probabilistic annotations and strati ed negation,
Section 3 presents a two-stage chase procedure that extends the classical chase
with propagation of probabilistic events and EGDs. Sections 4 and 5 introduces
deduplication programs and deduplication threshold queries that can be
answered via the two-stage chase, respectively. We discuss conclusions and future
work in Section 6.
2</p>
      <sec id="sec-3-1">
        <title>Probabilistic Datalog+/{ with Strati ed Negation</title>
        <p>
          In this section, we present the basics of the language of Datalog+/{ from [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ],
its extension with probabilistic uncertainty from [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ], and extend it with
strati ed negation; we rede ne some of the basic concepts to adjust them to our
presentation.
        </p>
        <p>We assume the existence of the following pairwise disjoint (countably in nite)
sets: a set of constants, a set V of variables, and a set N of nulls. Di erent
constants represent di erent values (unique name assumption), while di erent
nulls may represent the same value. We assume a lexicographic order on [ N ,
with every symbol in N following all symbols in . We denote by X sequences
of variables X1; : : : ; Xk with k &gt; 0.</p>
        <p>Consider relational schemas R with a possibly in nite data domain , a nite
set of database predicates (relations) R 2 R, and a set of built-in predicates
for evaluating \=", \:", \ ", comparisons, and arithmetic operations. Each
relation R 2 R has an associated arity n, thus R has the form R(A1; : : : ; An),
where each attribute Ai has associated domain Dom(Ai) . For the sake of
simplicity we may assume that the Ai's are di erent, and di erent predicates do
not share attributes. However, di erent attributes may share the same domain.
An atomic formula (or atom) has the form P (t1; : : : ; tn), where ti 2 Dom(Ai)[V.
A conjunction of atoms is often identi ed with the set of all its atoms. A database
instance D for R is a (possibly in nite) set of ground atoms (or tuples) with
predicates from R and arguments from .</p>
        <p>A homomorphism is a mapping : [ V [ N ! [ V [ N such that (i)
if c 2 then (c) = c, (ii) if c 2 V [ N then (c) 2 [ N , and (iii) is
naturally extended to atoms, sets of atoms, and conjunctions of atoms, that is,
(p(t1; : : : ; tn)) = p( (t1); : : : ; (tn)). A grounding is a homomorphism such
that (c) 2 for every c 2 [ V [ N . Also, given a conjunction of atoms
(X), we denote with pos( (X)) the conjunction of atoms in (X) that appear
positive, and with neg( (X)) the conjunction of atoms in (X) that appear
negated.</p>
        <p>TGDs. A tuple generating dependency (TGD) is a rst-order formula:
( ) 8XY
(X; Y) ! 9Z (X; Z)
(1)
where X; Y; Z are sequences of variables, (X; Y) is a conjunction of atoms and
negated atoms over R (called the body of , denoted body( )), and (X; Z) is
a conjunction of atoms over R (called the head of , denoted head( )). We use
body+( ) and body ( ) to denote pos( (X; Y)) and neg( (X; Y)), respectively.
For ease of presentation, we sometimes omit the universal quanti ers, and assume
that all variables without quanti er are universally quanti ed.</p>
        <p>
          We restrict the language so that all the variables in body ( ) appear already
in some atom in body+( ). Furthermore, we assume is strati ed [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ], i.e.,
can be partitioned into mutually disjoint sets 1; : : : ; k such that:
{ If i contains a predicate A that appears positively in some rule, then there
is no rule in i+1 [ : : : [ k with A in the head.
{ If i contains a predicate A that appears negated in some rule, then there
is no rule in i [ : : : [ k with A in the head.
        </p>
        <p>
          We call h 1; : : : ; ki a strati cation of . As in the case of standard TGDs [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ],
w.l.o.g., we can assume that (X; Z) is a single atom (any set not satisfying this
condition can be translated to an equivalent set that does).
De nition 1. Let be a TGD with body( ) = 8XY (X; Y). We say that
body( ) is satis ed in D through homomorphism h if and only if h is such that
h(pos( (X; Y))) D and h(neg( (X; Y))) 6 D.
        </p>
        <p>A TGD is satis ed in D if and only if whenever the body of is satis ed
through homomorphism h, then there exists an extension h0 of h such that
h0(head( )) D.</p>
        <p>EGDs. Equality generating dependencies (EGDs) are rst order formulas of the
form: 8 X (X) ! Xi = Xj , where (X) is a conjunction of atoms, X is a
sequence of variables, and Xi; Xj 2 X. As with TGDs, we sometimes omit the
universal quanti ers.</p>
        <p>The body of an EGD , denoted body( ), corresponds to (X), and the head,
denoted head( ), corresponds to the equality atom on the right hand side of the
rule. An instance D satis es an EGD , denoted D j= , if whenever there exists
a homomorphism h such that h(body( )) D, then it must be the case that
h(Xi) = h(Xj ). Otherwise, we say that is violated in D.</p>
        <p>
          Probabilistic Annotations
Following [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ], we further assume the existence of a nite set of constants M ,
a nite set of predicate names RM such that R \ RM = ;, and an in nite set
of variables VM , such that V \ VM = ;. These sets give rise to corresponding
Herbrand bases and Herbrand universes consisting of all possible ground terms
and atoms, respectively; these are denoted with HM and UM , respectively.
        </p>
        <p>
          Let M be a probabilistic model that represents a joint probability distribution
over a ( nite) set of random Boolean variables X = fX1; : : : ; Xng such that there
is a 1-to-1 mapping from X to the set of all ground atoms over HM . Examples
of the type of probabilistic models that we assume in this work are Markov
Logic [
          <xref ref-type="bibr" rid="ref28">28</xref>
          ], Bayesian networks [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ], etc.
        </p>
        <p>A (probabilistic) annotation , relative to M , is a ( nite) set of expressions
hA = xii, where A is an atom over RM , M , and VM , xi 2 f0; 1g, and the Xi's
are pairwise distinct. A probabilistic annotation is valid if and only if for any two
di erent expressions A = x; B = y 2 , there does not exist a substitution such
that (A) = (B). A probabilistic scenario is a valid probabilistic annotation
for which j j = jXj and all hA = xii are such that A is ground. We use scn(M )
to denote the set of scenarios in M . A probabilistic annotation is equivalent to
a formula that consists of the disjunction of all the scenarios that belong to the
set denoted by the annotation. Therefore, with a slight abuse of notation, we
sometimes combine annotations with logical operators.</p>
        <p>Intuitively, a probabilistic annotation is used to describe an event in which the
random variables in a probabilistic model M are compatible with the settings
of the random variables described by , i.e., each Xi has the value xi. We
will attach probabilistic annotations to formulas in our language to produce
annotated formulas F : , where F is an atom, a TGD, or an EGD. Intuitively,
the annotation means that F holds whenever the event associated with occurs.
Note that whenever a random variable's value is left unspeci ed in a probabilistic
annotation, the variable is unconstrained; in particular, a formula annotated with
an empty probabilistic annotation means that the formula holds in every world.
An annotated formula F : is referred to as a probabilistic atom whenever F
is atom, a probabilistic TGD (pTGD) if F is a TGD, and a probabilistic EGD
(pEGD) whenever F is an EGD.</p>
        <p>De nition 2. A probabilistic Datalog+/{ knowledge base is a triple KB =
(O; M; af), where O is a nite set of atoms, TGDs, and EGDs, M is probabilistic
model, and af is an annotation function that maps formulas to probabilistic
annotations relative to M .</p>
        <p>For ease of presentation, we sometimes use notation \ : e" to denote
\af( ) = e". Given a probabilistic Datalog+/{ KB KB = (O; M; af) and a
scenario 2 scn(M ), O denotes the (non-probabilistic) Datalog+/{ knowledge
base induced by . Formally, O consists of all formulas Fi (atoms, TGDs, and
EGDs) such that i for some Fi : i 2 O.</p>
        <p>Example 2. Consider the DB from Example 1, and let KB1 = (O1; M1; af1) be
a Datalog+/{ KB. Then, O1 could contain the following TGD !1:
(!1) User(UID; N ) ^ hasPosted(UID; t1) ! hasPosted(UID; t2)
The intuition of this rule is: \Every User that has posts on topic t1, also has posts
on topic t2". The annotation function af1 is de ned such that af1(!1) = e1(t1; t2)
and e1(t1; t2) is an event associated with the probability that a user posted
something related to t2 given that he has posted something related to t1.
O1 could contain the following EGD 1</p>
        <p>( 1) User(UID1; N ) ^ User(UID2; N ) ! UID1 = UID2:
The intuition of this rule is: \Two users cannot share the same user name.".
This rule is annotated with the empty event, that is af1( 1) = ;|therefore, it
always holds.</p>
        <p>Probabilistic model M1 in the above example can be learned from domain
information, and it allows to infer probabilities about possible duplicate user
and correlations regarding certain events, such as posts by users given speci c
topics. We will discuss this in greater detail in Section 4.
3</p>
      </sec>
      <sec id="sec-3-2">
        <title>A Two-stage Chase Procedure</title>
        <p>
          We now extend the classical operational semantics for Datalog+/{, based on the
chase procedure, for the case of the extensions discussed above. This procedure
provides the semantics for the application of rules and constraints, extending
the well-known (oblivious) chase algorithm for testing implications of data
dependencies [
          <xref ref-type="bibr" rid="ref23 ref4">4, 23</xref>
          ] or completing deductive databases [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. The chase provides a
mechanism for repairing a database instance relative to a set of dependencies,
so that the result of the chase (a database instance) satis es the dependencies.
Note that, though [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ] presents a chase procedure for probabilistic Datalog+/{
ontologies, our two-stage chase includes strati ed negation and EGDs.
        </p>
        <p>The building block for the chase procedure is the TGD chase rule; in our
setting, we must also deal with the propagation of probabilistic annotations.
pTGD Chase Rule. We will now de ne the probabilistic TGD chase rule for
a knowledge base KB = (O = (D; ); M; af). Let 2 O be a pTGD of the form
8XY (X; Y) ! 9Z (X; Z) : e ; then, is applicable to D if and only if there
exists a homomorphism h such that one the following cases occur:
a) 1) h maps the atoms in pos( (X; Y)) and neg( (X; Y)) to probabilistic
atoms f 1 : e1; :::; k : ekg D and f k+1 : ek+1; :::; j : ejg * D,
and
2) h(e ^ Vi=1;:::;k ei) is a valid probabilistic annotation.
b) 1) h maps the atoms in pos( (X; Y)) and neg( (X; Y)) to probabilistic
atoms f 1 : e1; :::; k : ekg D and f k+1 : ek+1; :::; j : ejg D,
and
2) h(e ^ Vi=1;:::;k ei ^ Vi=k+1;:::;j :ei) is a valid probabilistic annotations.</p>
        <p>Let be applicable to D, and h0 be a homomorphism that extends h as
follows: for each term Xi 2 X, h0(Xi) = h(Xi) and h0(Z) = zj, where Z is
existentially quanti ed in head( ) and zj is a \fresh" null, i.e., zj 2 N , zj does
not occur in D, and zj lexicographically follows all other nulls already introduced.
The application of on D adds to D one of the following probabilistic atoms
according to the case where is applicable:
a) h0( (X; Z)) : h0(e ^ Vi=1;:::;k ei).
b) h0( (X; Z)) : h0(e ^ Vi=1;:::;k ei ^ Vi=k+1;:::;j :ei).</p>
        <p>
          As a second step, we apply the equality-generating dependencies. We do this
in a separate step over the result of the pTGD chase in order to avoid undesired
interactions between TGDs and EGDs that can lead to undecidability [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ], since
the standard way to avoid this via separability is too strong an assumption in
our case (see Section 4).
pEGD Chase Rule. Let KB = (O = (D; ); M; af) be a probabilistic Datalog+/{
KB, and 2 be a pEGD of the form 8X (X) ! Xm = Xn : e . Then, is
applicable to D if and only if there exists a homomorphism h such that:
a) h maps the atoms in (X) to probabilistic atoms f 1 : e1; :::; k : ekg
and
D,
b) h(e ^ Vi=1;:::;k ei) is a valid probabilistic annotation.
        </p>
        <p>Let be applicable to D, and Xm = f 1 : e1; :::; l : elg f 1 : e1; :::; k : ekg
be the set of probabilistic atoms where Xm occurs in 1 i l; then, the application
of on D results in:
(i) The chase fails if h(Xm) and h(Xn) are constants; this is called a hard
violation. Otherwise,
(ii) for all i : ei 2 Xm replace h(Xm) with h(Xn) and ei with h(e ^Vi=1;:::;k ei),
if h(Xm) is a null and h(Xn) is a constant, or h(Xm) precedes h(Xn) in the
lexicographic order.</p>
        <p>The following section shows how this chase procedure can be used to answer
probabilistic deduplication queries.
4</p>
      </sec>
      <sec id="sec-3-3">
        <title>Deduplication Programs</title>
        <p>In this section we de ne a subclass of Probabilistic Datalog+/{ programs that
are speci cally tailored to declaratively capture the requirements for a
deduplication task in an open-world, adversarial environment.</p>
        <p>Towards this end, we assume that there exists a set E R that we identify
as entity relations, i.e., relations that represent entities of interest in the
application domain. Tuples in these relations have identi ers|keys|that allows us
to compare extensions of the same predicate in di erent instances and to trace
changes to them. Tuple identi ers can be accommodated by simply adding to
each predicate E 2 E an extra attribute (usually denoted with T ) that acts as a
primary key in E. Finally, there is also a prede ned predicate called dedup hypth.</p>
        <p>
          Our formalism is inspired in (relational) matching dependencies (RMDs) [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ],
which provide a declarative way of de ning conditions under which records (or
attribute values) should be made equal|they also establish how this matching is
supposed to be done by means of matching functions. However, as we discussed
before, RMDs are developed under a closed-world assumption, i.e., everything
that is not contained in the database instance is assumed to be false (or to
not exist). Nevertheless, we argue that in the type of domain applications we
are interested in, this assumption is not realistic and therefore we must agree
in that the database instances we are dealing with are potentially incomplete.
Under such scenarios, RMDs are not expressive enough to capture all potential
matchings, since there might be matchings for which we cannot establish speci c
conditions to nd them but rather just make hypotheses based on (weaker)
evidence of other nature|the possibility of value invention a orded by existential
rules thus becomes crucial.
        </p>
        <p>To specify the kind of rules we require, we slightly modify pTGDs so they
can be used to infer potential matchings (or matching hypotheses). For this, we
assume that for every attribute Aj appearing in a n-nary relation R 2 R, where
the schema of R is R(A1; : : : ; An), there exists a binary similarity relation Aj
that is re exive and symmetric. Thus, they are capable of expressing similarity
conditions over attribute values as done in RMDs, since the \ " predicates can
simply occur in the body.
dhTGDs. A Duplication Hypothesis Tuple Generating Dependency (or dhTGD)
is simply a pTGD of the following form:
8XY
(X; Y) ! 9Zdedup hypth(X; Z) ^
OUTPUT


body(ri)  …  not(head(ri))
  dedup_hyp  …
Fig. 1. Overview of a possible dhTGD learning process: relational association rule
mining algorithms are applied over a set of available data sources; each such rule then
leads to one output dhTGD characterizing situations that violate the corresponding
association rule and therefore are the basis of a duplicate entity hypothesis.
where X; Y; Z are sequences of variables, X and Z are variables and X 2 X; Z 2
Z, (X; Y) is a conjunction of atoms and negated atoms over R, and is also
a conjunction of atoms.</p>
        <p>
          dhTGDs are a special class of pTGDs that generate deduplication hypotheses|
essentially, they allow to create hypotheses about potential matchings, which
are kept and later con rmed or discarded whenever new information is added to
(or extracted from) the data sources. Informally, dhTGDs capture situations in
which we have reasons to believe that entities may be duplicated but we do not
know which other entity could correspond to them. Figure 1 describes one
possible way in which dhTGDs could be automatically derived from data. A relational
association rule mining algorithm (such as [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]) is used to discover patterns in
the available data sources, which are rules of the form r : body(r) ! head(r));
therefore, entities that satisfy the conditions in the body but not those in the
head are potential candidates for entities that have duplicate identities|see
Example 3 below for a concrete scenario.
pEGDs as companions to dhTGDs. As we saw in Section 3,
equalitygenerating dependencies are applied as a second step after all (dh)TGDs are
applied; the goal of this step is to complete the database with the information
that might be available with respect to the null values in the dedup hypth atoms.
One kind of pEGDs that might be useful can be automatically derived from
dhTGDs by taking the negation of body ( ) as the body of the pEGD.
Figure 2 illustrates this procedure, and the following is a simple example based on
the running example.
        </p>
        <p>Example 3. Consider the running example, and suppose we have obtained a
relational association rule that states that \if a user has posts related to topic
t1, then he has posts related to topic t2". This can be translated into the following
dhTGD:
(!2) User(UID ; N ) ^ hasPosted (UID ; t1) ^ not(hasPosted (UID ; t2)) !
9Z dedup hypth(UID ; Z) ^ hasPosted(Z; t2):
dedup_hyp atom
same atoms
of body(2)
( 2) 
( ,  ) ∧ ℎ
( ,  1) ∧  (ℎ
( ,  2)) → ∃ 
_ℎ ( ,  ) ∧ ℎ
 ( ,  2)
dedup_hyp atom
same atoms
of body(2)
atoms to find
similar entity
( 2) 
_ℎ (  1,  ) ∧ 
(  2,  ) ∧ ℎ
(  2,  2) ∧ 
(  1,  2) →  =   2
The intuition of this rule is \If a user that has some post on topic t1 but he does
not have any post on topic t2, then we generate the hypothesis that there exists
another user corresponding to him (whose identity is currently unknown) who
has posted on topic t2".</p>
        <p>As shown in Figure 2, an equality-generating dependency can be derived
from !2 by taking the atoms from body (!2) and some additional conditions
that, when true, can help obtain the identity of the hitherto unknown entity
that participates in the deduplication hypothesis:
( 2) dedup hypth(UID1; Z) ^ User(UID2; N ) ^ hasPosted(UID2; t2) ^</p>
        <p>WritStSim(UID1; UID2) ! Z = UID2:
The intuition of this rule is \If we have a duplicate user hypothesis between user
UID1 and an unknown user Z, and user UID2 has posts on topic t2 with similar
writing style to user UID1, then Z may correspond to UID2".</p>
        <p>Putting all of this together, the following example illustrates how the chase
procedure unfolds over the scenario in the running example.</p>
        <p>Example 4. Considering the DB D1 presented in Example 1, a probabilistic
Extended Datalog+/{ KB representing a deduplication program can be KB2 =
(O2; M; af) where O2 = (D1; 2) and M1 is the same probabilistic model from
Example 2. The set 2 contains the (classical) TGD:</p>
        <p>( ) User(UID ; N ) ^ Post(Id po; UID; T ) ! hasPosted (UID ; T );
and also contains the dhTGD !2 and pEGD 2 from the previous example. The
annotation function af is de ned as follows:
{ af(!2) = e1(t1; t2), where the event e1(t1; t2) is associated with the
probability that a user has some post on t2 given that he has some post on t1.
User(a1,‘Blackstar’)</p>
        <p>Post(p1,a1,t1)</p>
        <p>User(a2,‘Archer’)</p>
        <p>Post(p2,a2,t2)</p>
        <p>User(a3,‘Angel Eyes’)</p>
        <p>Post(p3,a3,t3)</p>
        <p>TGD 
hasPosted(a1,t1)
e1(t1,t2) dhTGD 2
hasPosted(z1, t2)
e1(t1,t2)</p>
        <p>{ af( 2) = e2, where the event e2 is associated with the probability that two
users with similar writing style actually correspond to the same underlying
user.</p>
        <p>In the previous example, that the application of the dhTGD !2 produces
a deduplication hypothesis for user a2, but the lack of information causes the
candidate for such a duplicate to remain as a null value. However, the subsequent
application of pEGD 2 lets us conclude that user a2|who has a similar writing</p>
        <p>INPUT
cf. Figure 2
style to a1|is a likely option (event e1(t1; t2) ^ e2 has probability 0.76 according
to Figure 4). Note that the dhTGD could be applied multiple times, so that if
there are other possible candidates, fresh dedup hypth atoms can be generated
as needed.
5</p>
      </sec>
      <sec id="sec-3-4">
        <title>Finding Duplicates: Threshold Deduplication Queries</title>
        <p>The problem of identifying seemingly di erent entities within a knowledge base
(or set of knowledge bases) that actually correspond to the same real world
entity can be addressed as a query answering problem: given a knowledge base,
we want to have a principled way of answering questions regarding the occurrence
of duplicate entities. The chase procedure presented above can be used to answer
queries of the form:</p>
        <p>Q(X) = dedup(eid; X; );
where eid is a speci c entity of interest, and 2 [0; 1] represents a threshold
probability value. Answers to queries of this form simply consist of possible values for
variable X such that the chase procedure generates atoms dedup hypth(eid,val )
with an associated event e with PrM (e) . Figure 5 illustrates the overall
query answering process.</p>
        <p>
          The following result states that the two-stage chase procedure described in
Section 3 can be stopped after a nite number of steps in order to answer
threshold deduplication queries whenever the underlying classical TGDs belong to a
fragment of Datalog+/{ for which conjunctive queries are decidable; this can be
guaranteed via syntactic conditions such such as guardedness [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ], stickiness [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ],
acyclicity, or their weak counterparts [
          <xref ref-type="bibr" rid="ref10 ref15 ref9">9, 10, 15</xref>
          ], or semantic conditions such as
shyness [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ], nite expansion sets (fes), bounded treewidth sets (bts), and nite
uni cation sets (fus)) [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ]|cf. [29, Section 1.3.3] for a brief overview of many
such conditions.
        </p>
        <p>Proposition 1. Let KB = (O = (D; ); M; af) be a probabilistic Datalog+/{
ontology with strati ed negation, and Q(X) = dedup(eid; X; ) be a threshold
deduplication query. If O belongs to a fragment of Datalog+/{ for which a nite
portion of chase(D; ) can be computed in order to answer conjunctive queries,
then there exists a nite portion of the two-stage probabilistic chase procedure
that can be used to answer threshold deduplication query Q over KB.</p>
        <p>Essentially, this result holds since the rst stage of our chase procedure
applies TGDs and dhTGDs (which are a special case of classical TGDs) in the
order given by the strati cation, and the second stage is simply an application
of pEGDs over a xed structure. Both stages involve carrying over probabilistic
events, which are then used in conjunction with the probabilistic model to check
which atoms surpass the threshold given in the query.
6</p>
      </sec>
      <sec id="sec-3-5">
        <title>Conclusions and Future Work</title>
        <p>In this paper, we have introduced the adversarial deduplication problem as a
variant of the classical deduplication (or entity resolution) problem in which
one cannot assume that the existence of multiple records corresponding to the
same real-world entity is the result of innocent or casual errors such as typos,
transliterations, or inconsistently-updated values, but rather the result of actors
deliberately trying to avoid identi cation. As a motivating scenario we took
malicious hacker forums and marketplaces on the dark web, where this sort of
practice is commonplace and having tools at hand to address it would have a
great impact on e orts such as early-warning of cyber attacks, understanding
the social networks of buyers and sellers, and identi cation of leading vendors
of speci c types of products.</p>
        <p>We proposed the use of probabilistic Datalog+/{ as a way to tackle the
problem of nding pairs of virtual objects for which we have reasons to believe that
they correspond to the same real-world entity, where a speci c kind of
probabilistic TGDs (called deduplication hypothesis-generating dependencies) and EGDs
can be applied in order to derive deduplication hypotheses. The main strength
of this approach is that it allows to reason about unknown objects via value
invention, which is essential in this setting|not having this capability renders
traditional entity resolution tools ine ective. Another advantage of our approach
is that dhTGDs can be automatically obtained via relational association rule
mining algorithms, and corresponding EGDs can also be derived with additional
domain knowledge. Finally, we developed a two-stage probabilistic chase
procedure in which (dh)TGDs are rst exhaustively applied, and then pEGDs are
used to associate concrete values to null values generated in the rst step. We
showed that this modi ed chase procedure can be used to answer deduplication
threshold queries, leveraging chase termination results from the existential rules
and Datalog+/{ literature.</p>
        <p>
          Ongoing and future work involves investigating other kinds of deduplication
queries, such as instance checking (\what is the probability that two given virtual
objects correspond to the same real-world entity?"), all pairs threshold (\which
pairs of virtual objects are suspected to correspond to the same real-world entity
with probability at least p?"), and more general conjunctive queries. We are
also interested in investigating the complexity of query answering algorithms
for all such queries, and under which conditions they can be guaranteed to run
in polynomial time. We plan to evaluate the performance of our approach on
both synthetic and real-world data on malicious hacker forums and marketplaces
on the dark web obtained via a collaboration with a cyber threat intelligence
company. Finally, we would also like to explore the relationship between our
formalism and other approaches to probabilistic modeling with unknown objects,
such as [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]
Acknowledgments. This work was supported by funds provided by CONICET,
Agencia Nacional de Promocion Cient ca y Tecnologica, Universidad Nacional
del Sur, Argentina, by the EU H2020 research and innovation programme under
the Marie Sklodowska-Curie grant agreement 690974 for the project \MIREL:
MIning and REasoning with Legal texts", and by the US Department of the
Navy, O ce of Naval Research, grant N00014-15-1-2742. Any opinions, ndings,
and conclusions or recommendations expressed in this material are those of the
authors and do not necessarily re ect the views of the O ce of Naval Research.
        </p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Abiteboul</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hull</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vianu</surname>
          </string-name>
          , V. (eds.):
          <article-title>Foundations of Databases: The Logical Level</article-title>
          .
          <string-name>
            <surname>Addison-Wesley Longman</surname>
          </string-name>
          Publishing Co., Inc., Boston, MA, USA (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Baget</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mugnier</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rudolph</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Thomazo</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Walking the complexity lines for generalized guarded existential rules</article-title>
          .
          <source>In: Proce. IJCAI</source>
          . pp.
          <volume>712</volume>
          {
          <issue>717</issue>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Bahmani</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bertossi</surname>
            ,
            <given-names>L.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vasiloglou</surname>
          </string-name>
          , N.:
          <article-title>Erblox: Combining matching dependencies with machine learning for entity resolution</article-title>
          .
          <source>Int. J. Approx. Reasoning</source>
          <volume>83</volume>
          ,
          <issue>118</issue>
          {
          <fpage>141</fpage>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Beeri</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vardi</surname>
          </string-name>
          , M.Y.:
          <article-title>A proof procedure for data dependencies</article-title>
          .
          <source>J. ACM</source>
          <volume>31</volume>
          (
          <issue>4</issue>
          ),
          <volume>718</volume>
          {
          <fpage>741</fpage>
          (
          <year>1984</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Bertossi</surname>
            ,
            <given-names>L.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kolahi</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lakshmanan</surname>
            ,
            <given-names>L.V.S.</given-names>
          </string-name>
          :
          <article-title>Data cleaning and query answering with matching dependencies and matching functions</article-title>
          .
          <source>Theory Comput. Syst</source>
          .
          <volume>52</volume>
          (
          <issue>3</issue>
          ),
          <volume>441</volume>
          {
          <fpage>482</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Bhattacharya</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Getoor</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Collective entity resolution in relational data</article-title>
          .
          <source>ACM Trans. Knowl. Discov. Data</source>
          <volume>1</volume>
          (
          <issue>1</issue>
          ) (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Bhattacharya</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Getoor</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Query-time entity resolution</article-title>
          .
          <source>J. Artif. Intell. Res</source>
          .
          <volume>30</volume>
          ,
          <issue>621</issue>
          {
          <fpage>657</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Bleiholder</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Naumann</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Data fusion</article-title>
          .
          <source>ACM Comput. Surv</source>
          .
          <volume>41</volume>
          (
          <issue>1</issue>
          ),
          <volume>1</volume>
          {
          <fpage>41</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Cal</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottlob</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kifer</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Taming the in nite chase: Query answering under expressive relational constraints</article-title>
          .
          <source>J. Artif. Intell. Res</source>
          .
          <volume>48</volume>
          ,
          <issue>115</issue>
          {
          <fpage>174</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Cal</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottlob</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pieris</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Towards more expressive ontology languages: The query answering problem</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>193</volume>
          ,
          <issue>87</issue>
          {
          <fpage>128</fpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. CVE:
          <article-title>Common vulnerabilities and exposures: The standard for information security vulnerability names</article-title>
          . http://cve.mitre.org/ (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Dehaspe</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Toivonen</surname>
          </string-name>
          , H.:
          <article-title>Discovery of relational association rules</article-title>
          .
          <source>In: Relational data mining</source>
          , pp.
          <volume>189</volume>
          {
          <fpage>212</fpage>
          . Springer (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Diaz-Valenzuela</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martin-Bautista</surname>
            ,
            <given-names>M.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vila</surname>
            ,
            <given-names>M.A.</given-names>
          </string-name>
          , Campan~a,
          <string-name>
            <surname>J.R.:</surname>
          </string-name>
          <article-title>An automatic system for identifying authorities in digital libraries</article-title>
          .
          <source>Expert Syst. Appl</source>
          .
          <volume>40</volume>
          (
          <issue>10</issue>
          ),
          <volume>3994</volume>
          {
          <fpage>4002</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Elmagarmid</surname>
            ,
            <given-names>A.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ipeirotis</surname>
            ,
            <given-names>P.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verykios</surname>
            ,
            <given-names>V.S.:</given-names>
          </string-name>
          <article-title>Duplicate record detection: A survey</article-title>
          .
          <source>IEEE T. Knowl. Data En</source>
          .
          <volume>19</volume>
          (
          <issue>1</issue>
          ),
          <volume>1</volume>
          {
          <fpage>16</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Fagin</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kolaitis</surname>
            ,
            <given-names>P.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Miller</surname>
            ,
            <given-names>R.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Popa</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Data exchange: semantics and query answering</article-title>
          .
          <source>Theor. Comput. Sci</source>
          .
          <volume>336</volume>
          (
          <issue>1</issue>
          ),
          <volume>89</volume>
          {
          <fpage>124</fpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Fan</surname>
          </string-name>
          , W.:
          <article-title>Dependencies revisited for improving data quality</article-title>
          .
          <source>In: Proc. ACM PODS</source>
          . pp.
          <volume>159</volume>
          {
          <issue>170</issue>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Fan</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jia</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Ma, S.:
          <article-title>Reasoning about record matching rules</article-title>
          .
          <source>PVLDB</source>
          <volume>2</volume>
          (
          <issue>1</issue>
          ),
          <volume>407</volume>
          {
          <fpage>418</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Getoor</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Machanavajjhala</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Entity resolution: Theory, practice and open challenges</article-title>
          .
          <source>PVLDB</source>
          <volume>5</volume>
          (
          <issue>12</issue>
          ),
          <year>2018</year>
          {
          <year>2019</year>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Gottlob</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lukasiewicz</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martinez</surname>
            ,
            <given-names>M.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simari</surname>
            ,
            <given-names>G.I.</given-names>
          </string-name>
          :
          <article-title>Query answering under probabilistic uncertainty in Datalog+/{ ontologies</article-title>
          . Ann. Math. Artif. Intell.
          <volume>69</volume>
          (
          <issue>1</issue>
          ),
          <volume>37</volume>
          {
          <fpage>72</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Gottlob</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rudolph</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simkus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Expressiveness of guarded existential rule languages</article-title>
          .
          <source>In: Proc. ACM PODS</source>
          . pp.
          <volume>27</volume>
          {
          <issue>38</issue>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Leone</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Manna</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Terracina</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Veltri</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>E ciently computable datalog9 programs</article-title>
          .
          <source>In: Proc. KR</source>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Lukasiewicz</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cali</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottlob</surname>
          </string-name>
          , G.:
          <article-title>A general Datalog-based framework for tractable query answering over ontologies</article-title>
          .
          <source>J. Web Semant</source>
          .
          <volume>14</volume>
          (
          <issue>0</issue>
          ) (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <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 T. Database Syst</source>
          .
          <volume>4</volume>
          (
          <issue>4</issue>
          ),
          <volume>455</volume>
          {
          <fpage>469</fpage>
          (
          <year>1979</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Milch</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marthi</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Russell</surname>
            ,
            <given-names>S.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sontag</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ong</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kolobov</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>BLOG: probabilistic models with unknown objects</article-title>
          .
          <source>In: Proc. IJCAI</source>
          . pp.
          <volume>1352</volume>
          {
          <issue>1359</issue>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25. NIST:
          <article-title>National Vulnerability Database</article-title>
          . https://nvd.nist.gov/ (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Nunes</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Diab</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gunn</surname>
            ,
            <given-names>A.T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marin</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mishra</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paliath</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Robertson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shakarian</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Thart</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shakarian</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Darknet and deepnet mining for proactive cybersecurity threat intelligence</article-title>
          .
          <source>In: Proc. ISI</source>
          . pp.
          <volume>7</volume>
          {
          <issue>12</issue>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Pearl</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          :
          <article-title>Probabilistic Reasoning in Intelligent Systems: Networks of Plausible Inference</article-title>
          . Morgan Kaufmann Publishers Inc. (
          <year>1988</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Richardson</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Domingos</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Markov logic networks</article-title>
          .
          <source>Mach. Learn</source>
          .
          <volume>62</volume>
          (
          <issue>1-2</issue>
          ),
          <volume>107</volume>
          {
          <fpage>136</fpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Simari</surname>
            ,
            <given-names>G.I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Molinaro</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martinez</surname>
            ,
            <given-names>M.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lukasiewicz</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Predoiu</surname>
          </string-name>
          , L.:
          <article-title>OntologyBased Data Access Leveraging Subjective Reports</article-title>
          . Springer Briefs in Computer Science, Springer (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <surname>Whang</surname>
            ,
            <given-names>S.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Menestrina</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koutrika</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Theobald</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garcia-Molina</surname>
          </string-name>
          , H.:
          <article-title>Entity resolution with iterative blocking</article-title>
          .
          <source>In: Proc. SIGMOD</source>
          .
          <string-name>
            <surname>Stanford</surname>
          </string-name>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>