<!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>
      <journal-title-group>
        <journal-title>PLP</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>asymptoticplp: Approximating probabilistic logic programs on large domains</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Bao Loi Quach</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Felix Q. Weitkämper</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Ludwig-Maximilians-Universität München</institution>
          ,
          <addr-line>Oettingenstr. 67, 80538 München</addr-line>
          ,
          <country country="DE">Deutschland</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <volume>9</volume>
      <fpage>0000</fpage>
      <lpage>0002</lpage>
      <abstract>
        <p>Probabilistic logic programs are logic programs in which some of the clauses are annotated with probabilistic facts. The behaviour of relations in these clauses can be very complex, leading to scalability issues. Asymptotic representations, in which queries are completely independent of the domain size and which approximate a probabilistic logic program on large domains, allow us to gain an understanding on how a probabilistic logic programs will behave for increasing domain sizes, and can be computed without actually having to execute the logic program. In particular, every probabilistic logic program under the distribution semantics is asymptotically equivalent to an acyclic probabilistic logic program consisting only of determinate clauses over probabilistic facts. We present asymptoticplp, a Prolog implementation of an algorithm which computes this. The transformation proceeds in several, modular steps which are of independent interest. These steps include rewriting the probabilistic logic program to a formula of least fixed point logic and then applying asymptotic quantifier elimination on the formula. Quantifier-free first-order formulas are then rewritten as acyclic determinate stratified DATALOG formulas, which together with the original probabilistic facts form a (probabilistic) logic program.</p>
      </abstract>
      <kwd-group>
        <kwd>Probabilistic logic programming</kwd>
        <kwd>Quantifier elimination</kwd>
        <kwd>Datalog</kwd>
        <kwd>Least Fixed Point Logic</kwd>
        <kwd>SWI-Prolog</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        The asymptotic theory of finite structures has been studied for more than half a century,
beginning with the 1969 work of Glebskii et al. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], who showed that as the size of domains
under consideration increases, every sentence of first-order logic without constants is eventually
either almost surely true or almost surely false. In fact, Glebskii et al. showed more: they
demonstrated that every formula of first-order logic, including those with constants and free
varables, is almost surely equivalent to one without quantifiers. This result was extended by
Blass et al. in 1985 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], who showed that it remains true even if we allow special quantifiers to
compute fixed points of formulas.
      </p>
      <p>
        In the succeeding years, least fixed point logic as investigated by Blass et al. was related to
logic programs, and in 1991 Abiteboul and Vianu [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] demonstrated a correspondence between
stratified Datalog programs and formulas in least fixed point logic.
      </p>
      <p>
        Probabilistic logic programming under the distribution semantics, established independently
in the early 1990s by Poole [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and Sato [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], has blossomed since then into an independent
research discipline and a promising paradigm, useful in probabilistic programming for allowing
recursion, in artificial intelligence as a modelling language in the presence of uncertainty and
in machine learning for combining statistical learning methods with inductive logic
programmming.
      </p>
      <p>
        By viewing a probabilistic logic program as a deterministic Datalog program over independent
probabilistic facts, the distribution semantics allows the rich theory developed by logicians over
decades of studying finite models to be brought to bear on the analysis of probabilistic logic
programs. In particular, the second author [6, Theorem 27] recently showed that the analysis of
Blass et al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] is directly applicable to probabilistic logic programs. In the language of
probabilistic logic programming this means that on domains of increasing size, every probabilistic
logic program is asymptotically equivalent to one in which all clauses are determinate, that is,
all atoms occuring in the body also occur in the head.
      </p>
      <p>The relevance of this can be seen by considering the complexity of inference: In general,
computing the probability of atomic queries even in acyclic probabilistic logic programs is
intractable in the size of the underlying domain, as it generalises first-order model counting,
which is known to be intractable. However, if the probabilistic logic program is determinate,
then the situation changes completely. In this case, the probability of an atomic query is actually
completely independent of the size of the underlying domain and can therefore be calculated in
constant time, disregarding the domain entirely.</p>
      <p>In this contribution, we report on asymptoticplp, an implementation in SWI-Prolog of the
transformation of a probabilistic logic program into an asymptotically equivalent determinate
program. We outline the relevant theory, describe the system as it is available and with its
current limitations as a research prototype, explain the rationale behind the algorithms used for
its individual steps and briefly discuss our experiences and the relevance of the implementation
to probablistic logic programming and beyond.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Preliminaries</title>
      <p>
        Our outline of the theory closely follows [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], whose theoretical results are implemented by the
system presented here.
      </p>
      <sec id="sec-2-1">
        <title>2.1. First-order logic</title>
        <p>
          This paper follows the notation of Ebbinghaus and Flum [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], which we outline here. Full
information can be found in Chapter 1 there. A vocabulary, sometimes called a relational
vocabulary for emphasis, is a finite set of relation symbols, each of which are assigned a natural
number arity, and of constant symbols, but does not contain function symbols. We also assume
an infinite set of first-order variables, customarily referred to by lower-case letters from the end
of the alphabet, i. e.  to . For a vocabulary , an atomic -formula or -atom is an expression
of the form (1, . . . , ), where  is a relation symbol of arity  and every  is either a
variable or a constant. An -literal is either an atom  or its negation ¬ . A quantifier-free
-formula is a Boolean combination of atoms, where conjunction is indicated by ∧, disjunction
by ∨ and logical implication by →. A first-order formula is made up from atoms using Boolean
connectives as well as existential and universal quantifiers over variables , indicated by ∃ and
∀ respectively. To simplify the notation for longer strings of quantifiers, we use the shorthand
∀1,..., for ∀1 . . . ∀ , and analogously for ∃. In Subsection 2.4 we also refer to second-order
formulas, which are introduced there.
        </p>
        <p>Let  be a first-order formula. An occurrence of a variable  in  is called bound if it is in
the scope of a quantifier annotated with that variable and free otherwise.  is called free in 
if it occurs freely. We use the notation  (1, . . . , ) for  to assert that every free variable
in  is from 1, . . . , . We also abuse notation and write (⃗, ⃗) for an atomic formula with
constants ⃗ and free variables ⃗, even though they don’t necessarily appear in that order. A
formula with no free variables is called a sentence, and a set of sentences is called a theory.
Sentences making up a given theory are also called its axioms.</p>
        <p>Since tuples such as 1, . . . ,  occur frequently and their exact length is often not important,
we use the notation ⃗ to indicate a tuple of arbitrary finite length in many contexts.</p>
        <p>If  is a vocabulary, then an -structure  consists of a finite non-empty set , the domain
of , along with an interpretation of the relation symbols and constants of  as relations
and elements of  respectively. If  is a relation symbol and  a constant, then we  and
 for their respective interpretations in . Let  be an -structure, let  (1, . . . , ) be a
ifrst-order -formula and let 1, . . . ,  be a tuple of elements of the domain  of . Then we
write  |=  (1, . . . , ) whenever  (1, . . . , ) holds with respect to the interpretation of
1, . . . ,  for 1, . . . , and call  a model of  (1, . . . , ).</p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. Logic Programming</title>
        <p>
          Our terminology for logic programs is taken from Ebbinghaus and Flum [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], where one can
ifnd a more detailed exposition.
        </p>
        <p>A general logic program in a vocabulary  is a finite set Π of clauses of the form  ←
 1, . . . ,  , where  ≥ 0,  is an atomic formula and  1, . . . ,   are literals. We call  the head
and  1, . . . ,   the body of the logic program. The intensional relation symbols are those that
occur in the head of any clause of a program, while the relation symbols occurring only in the
body of clauses are called extensional. We write (, Π) ext for the extensional vocabulary, or
ext where the logic program is clear from context.</p>
        <p>An acyclic logic program is one in which no intensional relation symbol occurs in the body of
any clause (This is at first glance a stronger condition than the usual definition of acyclicity, but
by successively unfolding head atoms used in the body of a clause, every acyclic logic program
in the usual sense can easily be brought to this form).</p>
        <p>A pure Datalog program is a general logic program in which no intensional relation symbol
appears within any negated literal. To afix a meaning to a pure Datalog program, consider it
as a function which take as input a finite ext-structure  and returns as output an extension
Π of  to . Starting from an empty interpretation of the relation symbols not in ext, we
successively expand them by applying the rules of Π . We give an informal description of this
process:</p>
        <p>Let  (⃗) be the head of a clause and  1(⃗, ⃗), . . . ,  (⃗, ⃗) the body, and let ⃗ be a tuple of
elements of the domain  of length equal to ⃗. Then whenever there is a tuple ⃗ such that
 |=  (⃗, ⃗) for every , we add  (⃗) to the interpretation of the relation symbol  of the
atom  . Successively proceed in this manner until nothing can be added by applying any of the
clauses of Π . Since the domain of  is finite, this is bound to happen eventually.</p>
        <p>As the restriction for no intensional relation symbol to occur negated in the body of a
clause turns out to be too strong for many practical applications, we consider a generalisation
to stratifiable Datalog programs. A general logic program Π in a vocabulary  is called a
stratifiable Datalog program if there is a partition of  into subvocabularies ext = 0, . . . 
such that the following holds:</p>
        <p>The corresponding logic programs Π 1, . . . , Π , where Π  is defined as the set of clauses
whose head atom starts with a relation symbol from , are pure Datalog programs, and the
extensional vocabulary of Π  is contained in 0 ∪ · · · ∪  − 1.</p>
        <p>If Π is a stratifiable Datalog program in  and  an ext-structure, then  is obtained by
applying Π 1, . . . , Π  successively.</p>
        <p>A (pure/stratifiable) Datalog formula is an expression of the form (Π ,  )⃗, where Π is a
(pure/stratifiable) Datalog program,  an intensional relation symbol and ⃗ a tuple of variables.
We say that a Datalog formula holds in an ext-structure  for a tuple of elements ⃗ of the same
length as ⃗, written  |= (Π ,  )⃗, if  (⃗) is true in Π.</p>
      </sec>
      <sec id="sec-2-3">
        <title>2.3. Probabilistic logic programming</title>
        <p>
          Our discussion on probabilistic logic programming considers a probabilistic logic program under
the distribution semantics, as a stratifiable Datalog program over probabilistic facts. This covers
several diferent equally expressive formalisms [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. Note that in particular, probabilistic logic
programs as used here do not involve function symbols, unstratified negation or higher-order
constructs.
        </p>
        <p>Definition 1. A probabilistic logic program consists of probabilistic facts and deterministic
rules, where the deterministic part is a stratifiables Datalog program. We consider it in our
framework of abstract distribution semantics as follows:</p>
        <p>ℛ is given by relation symbols ′ for every probabilistic fact  :: (⃗), with ′ := .
Their arity is just the arity of .</p>
        <p>is given by the vocabulary of the probabilistic logic program and additionally the ′ in ℛ.</p>
        <p>Let Π be the stratifiable Datalog program obtained by prefixing the program
{′(⃗) ← (⃗)|′ ∈ ℛ} to the deterministic rules of the probabilistic logic program.</p>
        <p>Then  for a  ∈ ∖ℛ is given by (Π ,  )⃗.</p>
        <p>Notation. Although we have allowed second-order variables in the inductive definitions above,
we will assume from now on unless mentioned otherwise that LFP formulas do not have free
second-order variables.</p>
      </sec>
      <sec id="sec-2-4">
        <title>2.4. Least fixed point logic</title>
        <p>
          We will now proceed briefly to discuss fixed point logics, which extend ordinary first-order
logic with support for recursion. Modelling Datalog programs within fixed-point logic has a
long history in database theory, starting with work by Abiteboul and Vianu in the late 1980s
[
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. Our presentation follows the book by Ebbinghaus and Flum (2006, Chapter 8), to which we
refer the reader for a more detailed exposition. We begin by introducing the syntax.
        </p>
        <p>As atomic second-order formulas occur, as subformulas of least fixed point formulas, we will
introduce second-order variables.</p>
        <p>Definition 2. Assume an infinite set of second-order variables, indicated customarily by
uppercase letters from the end of the alphabet, each annotated with a natural number arity. Then an
atomic second-order formula  is either a (first-order) atomic formula, or an expression of the
form (1, . . . , ), where  is a second-order variable of arity  and 1, . . . ,  are constants
or (first-order) variables.</p>
        <sec id="sec-2-4-1">
          <title>We now proceed to least fixed point formulas.</title>
          <p>Definition 3. A formula  is called positive in a variable  if  is in the scope of an even number
of negation symbols in  .</p>
          <p>A formula in least fixed point logic or LFP formula over a vocabulary ℛ is defined inductively
as follows:
1. Any atomic second-order formula is an LFP formula.
2. If  is an LFP formula, then so is ¬ .
3. If  and  are LFP formulas, then so is  ∨ 
4. If  is an LFP formula, then so is ∃ for a first-order variable .
5. If  is an LFP formula, then so is [LFP⃗,  ]⃗, where  is positive in the second-order
variable  and the lengths of the string of first-order variables ⃗ and the string of terms
⃗ coincide with the arity of .</p>
          <p>An occurrence of a second-order variable  is bound if it is in the scope of an LFP quantifier
LFP⃗, and free otherwise.</p>
          <p>Fixed point semantics have been used extensively in logic programming theory, and we will
exploit this when relating the model theory of LFP to probabilistic logic programming below.</p>
          <p>We first associate an operator with each LFP formula  :
Definition 4. Let  (⃗, ⃗, , ⃗ ) be an LFP formula, with the length of ⃗ equal to the arity of
, and let  be an ℛ-structure with domain . Let ⃗ and ⃗ be an interpretation of ⃗ and ⃗
respectively. Then we define the operator   : P() → P() as follows:
  () := {︁⃗ ∈ | |=  (⃗, ⃗, , ⃗)}︁ .</p>
          <p>Since we have restricted Rule 5 in Definition 3 to positive formulas,   is monotone for all 
(i. e.  ⊆   () for all  ⊆ ). Therefore we have:
Fact 1. For every LFP formula  (⃗, ⃗, , ⃗ ) and every ℛ-structure on a domain  and
interpretation of variables as in Definition 4, there is a relation  ⊆  such that  =   () and
that for all ′ with ′ =   (′) we have  ⊆ ′.</p>
          <p>Definition 5.</p>
          <p>We call the  from Fact 1 the least fixed point of  (⃗, ⃗, , ⃗ )</p>
          <p>Now we are ready to define the semantics of least fixed point logic:
Definition 6. By induction on the definition of an LFP formula, we define when an LFP formula
 (⃗, ⃗) is said to hold in an ℛ-structure  for a tuple ⃗ from the domain of  and relations ⃗
of the correct arity:</p>
          <p>The first-order connectives and quantifiers ¬, ∨ and ∃ as well as ∧ and ∀ defined from them
in the usual way are given the usual semantics.</p>
          <p>An atomic second order formula (⃗, ⃗) holds if and only if (⃗, ⃗) ∈ .
[LFP⃗,  ]⃗ holds if and only if ⃗ is in the least fixed point of   (⃗,).</p>
          <p>Least fixed point logics are related to logic programming by the following fact [ 7, Theorem
9.1.1]:
Fact 2. For every stratifiable Datalog formula (Π ,  )⃗ as above, there exists an LFP formula
 (⃗) over the extensional vocabulary ℛ of Π such that for every ℛ-structure  and every tuple ⃗
of elements of  of the same length as ⃗,  |=  (⃗) if and only if  |= (Π ,  )⃗.</p>
        </sec>
      </sec>
      <sec id="sec-2-5">
        <title>2.5. Asymptotic quantifier elimination</title>
        <p>As we are interested in the asymptotic behaviour of formulas, we introduce the notion of
abstract families of distributions:
Definition 7. A family of distributions for a relational vocabulary  is a sequence (︀ ())︀ ∈N
of probability distributions on the set Ω  of all -structures with domain {1, . . . , } ⊆ N.</p>
        <p>Such families are induced by logical formulas (or logic programs) and probabilistic facts as
follows.</p>
        <p>
          Definition 8. Let  be a relational vocabulary, ℛ ⊆  , and let (ℛ) be a logical language over
ℛ. Then an abstract -distribution over ℛ (with vocabulary ) consists of the following data:
For every  ∈ ℛ a number  ∈ Q ∩ [
          <xref ref-type="bibr" rid="ref1">0, 1</xref>
          ].
        </p>
        <p>For every  ∈ ∖ℛ, an (ℛ)-formula  of the same arity as .</p>
        <p>In the following we will assume that all vocabularies are finite. The semantics of an abstract
distribution is only defined relative to a domain , which we will also assume to be finite. The
formal definition is as follows:
Definition 9. Let (ℛ) be a logical language over ℛ and let  be a finite set. Let  be an
abstract -distribution over ℛ. Let Ω  be the set of all ℛ-structures with domain .
(), is defined as follows:
Then the probability distribution on Ω  induced by  , written 
For all  ∈ Ω , if ∃⃗∈⃗∃∈∖ℛ : (⃗) ⇎ (⃗), then ()({}) := 0
Otherwise, ()({}) := ∏︀ (|{⃗∈⃗|(⃗)}|) × ∏︀ (1 − )|{⃗∈⃗|¬(⃗)}|</p>
        <p>∈ℛ ∈ℛ</p>
        <p>In other words, all the relations in ℛ are independent with probability  and the relations
in  ∖ ℛ are defined deterministically by the (ℛ)-formulas . We will illustrate that with an
example.</p>
        <p>Example 1. Let ℛ = {,  },  = {, , }, for a unary relation  a binary relation  and a
unary relation . Then an abstract distribution over () has numbers  and  which encode
probabilities. Consider the first-order distribution  with   = ∃ (() ∧  (, )). For any
() is obtained by making an independent choice of () or ¬() for every
domain , 
 ∈ , with a  probability of (). Similarly, an independent choice of  (, ) or ¬ (, )
is made for every pair (, ) from 2, with a  probability of  (, ). Then, for any possible
ℛ-structure, the interpretation of  is determined by ∀() ↔   ().</p>
        <p>We introduce our notion of asymptotic equivalence for families of distributions:
Definition 10. Two families of distributions (()) and (′()) are asymptotically equivalent
if lim sup |()() − ′()()| = 0
→∞⊆ Ω</p>
        <sec id="sec-2-5-1">
          <title>This gives us the following setting for asymptotic quantifier elimination:</title>
          <p>Definition 11. Let (ℛ) be an extension of the class of quantifier-free ℛ-formulas. Then
(ℛ) has asymptotic quantifier elimination if every abstract (ℛ) distribution is asymptotically
equivalent to a quantifier-free distribution over (ℛ).</p>
          <p>
            Building on prior work by Glebskii et al. [
            <xref ref-type="bibr" rid="ref1">1</xref>
            ] on asymptotic quantifier elimination for
firstorder logic, Blass et al. [
            <xref ref-type="bibr" rid="ref2">2</xref>
            ] showed (phrased in the language adopted here):
Theorem 1. Least fixed point logic has asymptotic quantifier elimination.
          </p>
          <p>To obtain a characterisation within probabilistic logic programming, however, we need to
translate quantifier-free first order formulas back to stratifiable Datalog.</p>
          <p>In fact, they can be mapped to a subset of stratifiable Datalog that is well-known from logic
programming:
Definition 12. A Datalog program, Datalog formula or probabilistic logic program is called
determinate if every variable occurring in the body of a clause also occurs in the head of that
clause.</p>
          <p>Example 2. Examples of determinate clauses in this sense are () :−  () or (, ) :− ().
Indeterminate clauses include () :−  () or () :− (, ).</p>
          <p>Determinacy corresponds exactly to the fragment of probabilistic logic programs identified
as projective by Jaeger and Schulte [9, Proposition 4.3].</p>
          <p>
            Indeed, Ebbinghaus and Flum’s [
            <xref ref-type="bibr" rid="ref7">7</xref>
            ] proof of their Theorem 9.1.1 shows:
Fact 3. Every quantifier-free first order formula is equivalent to an acyclic determinate stratifiable
Datalog formula.
          </p>
          <p>This leads to the main result of this subsection, the implemented transformation.
Theorem 2. Every probabilistic logic program is asymptotically equivalent to an acyclic
determinate probabilistic logic program.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Description of the system</title>
      <p>asymptoticplp is an SWI-Prolog program, available at
https://swish.swi-prolog.org/p/asymptoticPLP.pl and entirely written in SWI-Prolog.</p>
      <p>The main entry point into the program is the predicate compute_lp_form/3, to be used with
the first argument instantiated to the deterministic part of the program to be approximated,
and the second argument instantiated to the query predicate. The third argument is then
bound to a determinate logic program such that when readding the probabilistic facts, the
resulting probabilistic logic program is asymptotically equivalent to the original program on
large domains with respect to the query predicate.</p>
      <p>Programs are represented as lists of clauses of the form head− vars− body, where variables
are rendered as ordinary lowercase Prolog atoms.</p>
      <p>Example 3. Consider the example of connectedness in a probabilistic graph. Here, we have a
random graph with edge relation edge/2, true for any pair of nodes with fixed probability  ∈
(0, 1). This can be expressed with a probabilistic fact such as 0.5 :: edge(X,Y ). Connectedness
of two nodes is then expressed by the usual Datalog clauses,
c o n n e c t e d ( X , Y ) : −
c o n n e c t e d ( X , Z ) : −
e d g e ( X , Y ) .</p>
      <p>c o n n e c t e d ( X , Y ) , e d g e ( Y , Z ) .</p>
      <p>In the representation used by the system, the program is given by the list
[ c o n n e c t e d − [x , y ] − [ edge − [x , y ] ] ,</p>
      <p>c o n n e c t e d − [x , z ] − [ c o n n e c t e d − [x , y ] , edge − [y , z ] ] ]</p>
      <p>Informally, we can argue that in a suficiently large random graph, there will always be for
any two nodes  and  a third node  such that  is adjacent to  and  is adjacent to . Thus,
we expect that asymptotically, any two nodes will be connected.</p>
      <p>This is confirmed by computation in the system, which returns connected− [x,y]− [], its
notation for a clause with empty body which is unconditionally true.</p>
      <p>Example 4. A probabilistic logic programming classic is the “friends-smokers model”. In this
program, there is a random graph of friendship connections between diferent people.
Additionally, there is a certain baseline probability of anyone starting smoking. Then, whenever a
person befriends another and that person smokes, there is a certain probability that this person
also takes up smoking. We thus have a random graph with edge relation friends /2, true for
any pair of nodes with fixed probability  ∈ (0, 1). This can be expressed with a probabilistic
fact such as 0.3 :: friends (X,Y ).</p>
      <p>Using the syntactic sugar of probabilistic clauses, we can write the remaining model as
follows:
0 . 1 : : smokes ( X ) .
0 . 2 : : smokes ( X ) : −</p>
      <p>f r i e n d s ( X , Y ) , smokes ( Y ) .</p>
      <p>This encodes a probabilistic logic program with auxiliary predicates u/1 and v/2 as follows:
smokes ( X ) : −
smokes ( X ) : −
u ( X ) .</p>
      <p>f r i e n d s ( X , Y ) , smokes ( Y ) , v ( X , Y ) .</p>
      <p>Informally, we can see that in a suficiently large group of people in which everyone has a
certain chance to smoke and to be your friend, there is bound to be someone who smokes and
is your friend; in fact, there are bound to be any number of such people, and one of them will
convince you to take up smoking.</p>
      <p>This is confirmed by computation in the system, which returns smokes− [x]− [], its notation
for a clause with empty body which is unconditionally true.</p>
      <p>However, consider an altered model where only nice people have friends:
smokes ( X ) : −
smokes ( X ) : −
f r i e n d s ( X , Y ) : −
0 . 1 : : u ( X ) .
0 . 2 : : v ( X , Y ) .
0 . 3 : : w( X , Y ) .</p>
      <p>u ( X ) .
f r i e n d s ( X , Y ) , smokes ( Y ) , v ( X , Y ) .</p>
      <p>n i c e ( X ) , w( X , Y ) .</p>
      <p>In this model, the reasoning above only works for nice people. This leads us to conclude that
the only people who smoke are either those who take up the habit on their own accord, or are
nice enough to have friends.</p>
      <p>This is again confirmed by the system, which delivers a program equivalent to
[smokes− [x]− [u− [x]], smokes− [x]− [nice− [x]]].</p>
      <p>As explained in greater detail in Section 4, the system procedes by converting the input
program into an equivalent least fixed point formula and then using asymptotic quantifier
elimination to eliminate all uses of the fixed point quantifier and all classical existential and
universal quantifiers in the resulting formula. Since to the best of our knowledge this is the
ifrst implementation of both conversion to formulas and asymptotic quantfier elimination,
asymptoticplp also provides predicates that perform those steps in isolation.</p>
      <p>To understand how these are invoked, one needs only to understand the representation used
for formulas of first-order logic and for least fixed point quantifiers. We tried to facilitate use by
adopting a natural syntax, which is best understood from example:
l f p ( c o n n e c t e d ,
edge − [x , y ] or
e x i s t s ( [ a t ] , c o n n e c t e d − [x , a t ] and edge − [ a t , y ] ) )
Existential and universal quantifiers are written using the term constructors exists /2 and
forall /2, which take as their first argument a list of bound variables (potentially more than one
to avoid unnecessary nesting of quantifiers) and as their second argument a formula. Boolean
connectives use the infix constructors and/2 and or/2 and the term constructor not/1.</p>
      <p>The least fixed point quantifier is represented by the constructor lfp /2, which takes as its
ifrst argument the predicate with respect to which the fixed point is computed, and as its second
argument a formula.</p>
      <p>So the example formula above is the translation of Example 3 to a formula of least fixed point
logic, and can be computed in the system using the predicate compute_lp_lfp/3, whose first
argument is the logic program to be translated and whose second argument holds the target
predicate, in this case connected.</p>
      <p>Similarly, the system allows direct access to the asymptotic quantifier elimination algorithm
for least fixed point formulas using the predicate compute_lfp_form/2, which takes as its first
argument the least fixed point formula to be converted and binds the second argument to
an asymptotically equivalent quantifier-free formula. The predicate reduced_quant_elim/2
behaves identically, but only works for first-order formulas. It is provided separately because
of the relatively greater interest in the asymptotic theory of first-order logic by logicians and
combinatoricists, and allows for optimisations to be added for this case in particular.</p>
      <sec id="sec-3-1">
        <title>Current limitations</title>
        <p>The system is currently a research prototype, with some limitations that should be overcome
before it is more widely deployed. Constants in clause heads or bodies are not currently
supported by the system. Furthermore, the single-letter atoms a, b, c, d, e, f, g and h are used
by the system for substituting variables, and no two variable names should difer from each
other by merely prefixing one of those letters. To be safe, it is recommended to begin variable
names with letters later in the alphabet. Alternatively, or if in larger examples the system
requires more variables to substitute, the system can also be invoked with the query predicate
compute_lp_form/4, where the third argument holds the list of names to be used for forming
substitute variables. Also, the system currently does not support overloading of predicate names
within the probabilistic logic program, as it refers to predicates simply by name rather than
with associated arities.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Description of the algorithm</title>
      <p>The algorithm proceeds in several stages, which have been described separately in the classical
ifnite model theory literature. The overarching structure can be seen in the pseudo-code below.
(Π 1, . . . , Π ) = S t r a t i f i c a t i o n ( Π )
f o r i =1 t o n</p>
      <p>For i n t e n s i o n a l p r e d i c a t e s  of Π  ,
i n t e n s i o n a l p r e d i c a t e s 1, . . . ,  of Π  f o r  &lt; 
Φ ( ) = L P _ t o _ S L F P ( Π ,  )
Φ ( ) = s u b s t i t u t e ( 1, . . . ,  , Φ (1), . . . , Φ () , Φ ( ) )
Φ = Φ( )
Ψ = S L F P _ t o _ L F P ( Φ )
Ψ 0 = ⊥
While Ψ + ≢ Ψ
Ψ + = AQE ( S t e p ( Ψ ) )
Ψ = Ψ +</p>
      <p>In the first part of the process, the logic program and query predicate are converted into a
formula of least fixed point logic, a realisation of Fact 2.</p>
      <p>
        This procedure has several stages. First, the program is explicitly stratified. Then, LP_to_SLFP
converts every stratum to a formula in simultaneous least fixed point logic . Simultaneous least
ifxed point logic is an intermediate formalism, in which the fixed point iteration is applied to a
number of first-order formulas simultaneously. Since this aligns closely with the operational
semantics of Datalog, constructing the equivalent formula in simultaneous least fixed point logic
reduces to an essentially syntactic rewrite. The procedure employed by us is a generalisation of
Clark’s Completion [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] to stratified logic programs. It was first presented by Abiteboul and
Vianu [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], and a good exposition is found in Ebbinghaus and Flum [7, Theorem 9.1.1].
      </p>
      <p>Predicates from lower strata are then successively substituted until the final stratum has been
converted into a simultaneous least fixed point logic formula all of whose predicates lie in the
extensional vocabulary of Π .</p>
      <p>SLFP_to_LFP then converts the simultaneous least fixed point formula into an ordinary least
ifxed point formula in the sense of Subsection 2.4.</p>
      <p>
        While simultaneous fixed points do not increase the expressivity of fixed point logic, their
removal comes at a cost. There are two classical ways to replace them with ordinary fixed point
quantifiers, either increasing the arities of the predicates involved or increasing the nesting
depth of the fixed point quantifiers. Following Kreutzer [ 11, page 40], we have decided to
implement the latter algorithm going back to Bekić [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], as lower arities prove more favourable
for the remaining steps of the algorithm.
      </p>
      <p>
        Following the asymptotic analysis of Blass et al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], it remains to compute a first-order
formula asymptotically equivalent to the least fixed point formula just constructed, and to
compute a quantifier-free formula asymptotically equivalent to that first-order one.
      </p>
      <p>
        We first turn to the elimination of the least fixed point constructor. The algorithm implicit
in Blass et al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] proceeds by unfolding the iteration rule represented by the least fixed point
formula. This is represented by the Step function in the pseudocode above. The promise of
asymptotic quantifier-elimination guarantees that this procedure will eventually no longer
result in asymptotically distinguishable formulas, since there is only a finite number of possible
quantifier-free formulas available. Note that this subproblem is already EXPTIME-complete [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        Given a first-order formula, AQE computes an asymptotically equivalent quantifier-free
one. Several classical algorithms for this can be found in the theoretical literature. In terms of
complexity, an optimal approach was given by Grandjean [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], who showed that the theory
of almost all finite structures is decidable in polynomial space using a semantic method that
makes indirect use of quantifier elimination. However, we decided to implement the direct
quantifier elimination algorithm going back to Gaifman [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] and elaborated in the seminal
paper by Glebskii et al. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] which first established the completeness of the first-order theory of
almost all relational structures. We followed Lingsch-Rosenfeld’s modern exposition [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] of the
algorithm in our implementation.
      </p>
      <p>
        Although Grandjean [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] contends that this algorithm is ineficient and it is indeed not
optimal in its worst-case complexity, we found it very well suited to our application. This is
because it enables us to interleave the iteration steps of the transformation algorithm of Blass
et al. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] with the quantifier elimination procedure.
      </p>
      <p>Thus, we simplify the formulas considerably as we unfold the iteration rule and can reduce
checking the termination condition of the iteration to checking the satisfiability of a
quantifierfree formula, which can easily be implemented using SAT-solving techniques.</p>
    </sec>
    <sec id="sec-5">
      <title>5. Discussion and conclusion</title>
      <p>The system presented here allows users to test the asymptotic behaviour of probabilistic logic
programs on large domains statically without running them on large databases. This is
particularly important for probabilistic logic programs since the complexity of probabilistic inference
makes querying large domains with general programs intractable. The asymptotically equivalent
determinate programs computed by the system evaluate queries independently of domain size,
thereby allowing queries to be approximated statically without access to a particular domain.
Thus, one could see the present system as a contribution to scalable approximate inference, with
an approximation that converges to the correct result with exponential speed as the domain
size increases.</p>
      <p>Equally, static analysis of a probabilistic logic program can also be seen as a form of verification
of certain properties. From this point of view, asymptoticplp allows for a “sanity check” that the
behaviour of a program on large domains matches the behaviour expected by the programmer.
For instance, a program that predicts disease transmission in a group of people may well be
expected to predict increased infection rate with an increase in population size. This can easily
be verified with asymptoticplp. Overall, static analysis tools for probabilistic logic programs are
scarce, and therefore we hope that this system may inspire other approaches to be implemented
efectively.</p>
      <p>
        While the worst-case complexity of computing the asymptotically equivalent quantifier-free
formulas for a given formula in least fixed point logic is EXPTIME-complete [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], we have seen
that naturally occurring examples stemming from probabilistic logic programs can actually
often be evaluated very quickly. The reason for this gap can be seen by comparing the number
of iterations required until the termination condition is satisfied with the maximal number of
iterations guaranteed by the upper bound in the complexity proof [2, Theorem 4.1], computed
within our system by the compute_alpha/4 predicate. For instance, the theoretical maximal
number of iterations in the highly recursive Example 3 is 256, but the algorithm terminates
already after 2 iterations. In Example 4, which is typical of a probabilistic logic program
written using probabilistic clauses, the theoretical maximal number of iterations is 16, while the
algorithm in fact terminates after just 3 iterations.
      </p>
      <p>Beyond the relevance for probabilistic logic programming proper, this system is to the best
of our knowledge the first practical implementation of any decision or quantifier elimination
procedure for the theory of almost all finite structures, whether for first-order logic or for
ifxed point logic. It can be hoped that researchers in finite model theory, database theory and
the combinatorics of random graphs find it useful to be able to evaluate the asymptotics of
properties of random graphs efectively.</p>
      <p>The encouraging runtime for sample programs also points to the importance of interleaving
iteration and quantifier elimination steps, an insight that may inspire similar eforts aimed at
evaluating least fixed point formulas in other theories with first-order quantifier elimination
but daunting complexity, such as the theory of the rational order or the theory of real-closed
and algebraically closed fields.</p>
      <p>
        Similar results on limiting approximations have been obtained for formalisms outside of
probabilistic logic programming. This includes Cozman and Maua’s Bayesian networks
specifications [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], for which the first-order asymptotic quantifier elimination algorithm implemented
here is immediately applicable, and varous formalisms based on lifting Bayesian networks
to a relational language. Jaeger proved that as long as their combination functions satisfy a
certain property, exponential convergence, the probabilities induced by a relational Bayesian
network will always converge with increasing domain size [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. More recently, the second
author demonstrated convergence for domain-size aware relational logistic regression networks
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], and Koponen and the second author showed convergence for formalisms with a range of
statistical quantifiers [19, 20, 21, 22].
      </p>
      <p>Our approach to implementation is not immediately transferable to relational Bayesian
networks since it is based on the clear distinction between logical and probabilistic part inherent
in probabilistic logic programs, as well as on the sophisticated logical description of Datalog
semantics developed in the literature. Additionally, arguably the key contribution of our
implementation concept is the ability to deal with recursive programs via fixed point logic, while
Bayesian networks and similar formalisms based on directed graphical models are inherently
acyclic.</p>
      <sec id="sec-5-1">
        <title>5.1. Further work</title>
        <p>
          Currently, an important limitation of the system is that it does not natively support named
domain constants in probabilistic logic programs. As explained by Ebbinghaus and Flum [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], clauses
involving constants can be refactored as a preprocessing step, where say p[const (min)]− []
would be replaced with p[x]− [const(x , min)], indicating that the variable  is equal to the
constant min. This is very similar to how clauses with duplicate head variables are treated
already and should fit well into the existing architecture.
        </p>
        <p>Performance could be improved by replacing the current satisfiability check within the
termination condition with a state-of-the-art SAT solver, which could simply be grafted into
the definition of the notsat /1 predicate.</p>
      </sec>
      <sec id="sec-5-2">
        <title>5.2. Conclusion</title>
        <p>Overall, the system provides a tool for modellers and deployers of probabilistic logic programs
statically to evaluate the behaviours of programs on large domains, while at the same time
providing insights into the relevance of quantifier elimination for the eficient evaluation of
least fixed point formulas. While the current limitations, particularly the lack of support for
constants in formulas, somewhat limit its scope, the prototype shows the promise of the method
despite the seemingly prohibitive worst-case complexity of the problem.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>During the work leading up to this publication, the second author was supported by
LMUexcellent, funded by the Federal Ministry of Education and Research (BMBF) and the Free State of
Bavaria under the Excellence Strategy of the Federal Government and the Länder.
logistic regression models, CoRR abs/2103.15140 (2021). arXiv:2103.15140.
[19] V. Koponen, Conditional probability logic, lifted bayesian networks, and almost sure
quantifier elimination, Theor. Comput. Sci. 848 (2020) 1–27. doi: 10.1016/j.tcs.2020.
08.006.
[20] F. Weitkämper, Statistical relational artificial intelligence with relative frequencies: A
contribution to modelling and transfer learning across domain sizes, CoRR abs/2202.10367
(2022). arXiv:2202.10367.
[21] V. Koponen, F. Weitkämper, Asymptotic elimination of partially continuous aggregation
functions in directed graphical models, Information and Computation 293 (2023) 105061.
doi:10.1016/j.ic.2023.105061.
[22] V. Koponen, F. Weitkämper, On the relative asymptotic expressivity of
inference frameworks, CoRR abs/2204.09457 (2022). doi:10.48550/arXiv.2204.09457.
arXiv:2204.09457.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Y. V.</given-names>
            <surname>Glebskii</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. I.</given-names>
            <surname>Kogan</surname>
          </string-name>
          ,
          <string-name>
            <surname>M. I.</surname>
          </string-name>
          <article-title>Liogon'kii, V. A. Talanov, Range and degree of realizability of formulas in the restricted predicate calculus</article-title>
          ,
          <source>Cybernetics</source>
          <volume>5</volume>
          (
          <year>1969</year>
          )
          <fpage>142</fpage>
          -
          <lpage>154</lpage>
          . doi:
          <volume>10</volume>
          . 1007/BF01071084.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>A.</given-names>
            <surname>Blass</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Gurevich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kozen</surname>
          </string-name>
          ,
          <article-title>A Zero-One Law for Logic with a Fixed-Point Operator</article-title>
          ,
          <source>Information and Control</source>
          <volume>67</volume>
          (
          <year>1985</year>
          )
          <fpage>70</fpage>
          -
          <lpage>90</lpage>
          . doi:
          <volume>10</volume>
          .1016/S0019-
          <volume>9958</volume>
          (
          <issue>85</issue>
          )
          <fpage>80027</fpage>
          -
          <lpage>9</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>S.</given-names>
            <surname>Abiteboul</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Vianu</surname>
          </string-name>
          ,
          <article-title>Datalog extensions for database queries and updates</article-title>
          ,
          <source>Journal of Computer and System Sciences</source>
          <volume>43</volume>
          (
          <year>1991</year>
          )
          <fpage>62</fpage>
          -
          <lpage>124</lpage>
          . doi:
          <volume>10</volume>
          .1016/
          <fpage>0022</fpage>
          -
          <lpage>0000</lpage>
          (
          <issue>91</issue>
          )
          <fpage>90032</fpage>
          -
          <lpage>Z</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>D.</given-names>
            <surname>Poole</surname>
          </string-name>
          ,
          <article-title>Probabilistic Horn abduction and Bayesian networks</article-title>
          ,
          <source>Artificial Intelligence</source>
          <volume>64</volume>
          (
          <year>1993</year>
          )
          <fpage>81</fpage>
          -
          <lpage>129</lpage>
          . doi:
          <volume>10</volume>
          .1016/
          <fpage>0004</fpage>
          -
          <lpage>3702</lpage>
          (
          <issue>93</issue>
          )
          <fpage>90061</fpage>
          -
          <lpage>F</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>T.</given-names>
            <surname>Sato</surname>
          </string-name>
          ,
          <article-title>A statistical learning method for logic programs with distribution semantics</article-title>
          , in: L.
          <string-name>
            <surname>Sterling</surname>
          </string-name>
          (Ed.),
          <string-name>
            <surname>Logic</surname>
            <given-names>Programming</given-names>
          </string-name>
          ,
          <source>Proceedings of the Twelfth International Conference on Logic Programming</source>
          , Tokyo, Japan, June 13-16,
          <year>1995</year>
          , MIT Press,
          <year>1995</year>
          , pp.
          <fpage>715</fpage>
          -
          <lpage>729</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>F.</given-names>
            <surname>Weitkämper</surname>
          </string-name>
          ,
          <article-title>An asymptotic analysis of probabilistic logic programming with implications for expressing projective families of distributions, Theory and Practice of Logic Programming (</article-title>
          <year>2021</year>
          ). doi:
          <volume>10</volume>
          .1017/S1471068421000314.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>H.-D. Ebbinghaus</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Flum</surname>
          </string-name>
          , Finite model theory, Springer Science &amp; Business
          <string-name>
            <surname>Media</surname>
          </string-name>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>F.</given-names>
            <surname>Riguzzi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Swift</surname>
          </string-name>
          ,
          <article-title>A survey of probabilistic logic programming</article-title>
          ,
          <source>Declarative Logic Programming: Theory, Systems</source>
          , and
          <string-name>
            <surname>Applications</surname>
          </string-name>
          (
          <year>2018</year>
          )
          <fpage>185</fpage>
          -
          <lpage>228</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>M.</given-names>
            <surname>Jaeger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Schulte</surname>
          </string-name>
          ,
          <article-title>Inference, learning, and population size: Projectivity for SRL models</article-title>
          , in: Eighth International Workshop on Statistical Relational
          <source>AI (StarAI)</source>
          ,
          <year>2018</year>
          . arXiv:
          <year>1807</year>
          .00564.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>K. L. Clark</surname>
          </string-name>
          , Negation as Failure,
          <string-name>
            <surname>Springer</surname>
            <given-names>US</given-names>
          </string-name>
          , Boston, MA,
          <year>1978</year>
          , pp.
          <fpage>293</fpage>
          -
          <lpage>322</lpage>
          . doi:
          <volume>10</volume>
          .1007/ 978-1-
          <fpage>4684</fpage>
          -3384-5_
          <fpage>11</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>S.</given-names>
            <surname>Kreutzer</surname>
          </string-name>
          ,
          <article-title>Pure and applied fixed-point logics</article-title>
          ,
          <source>Dissertation</source>
          , RWTH Aachen,
          <year>2002</year>
          . URL: https://publications.rwth-aachen.de/record/59225.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>H.</given-names>
            <surname>Bekić</surname>
          </string-name>
          ,
          <article-title>Definable operations in general algebras, and the theory of automata and lfowcharts</article-title>
          , in: C. B.
          <string-name>
            <surname>Jones</surname>
          </string-name>
          (Ed.),
          <source>Programming Languages and Their Definition: H. Bekič (1936-1982)</source>
          , Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>1984</year>
          , pp.
          <fpage>30</fpage>
          -
          <lpage>55</lpage>
          . doi:
          <volume>10</volume>
          .1007/ BFb0048939.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>E.</given-names>
            <surname>Grandjean</surname>
          </string-name>
          ,
          <article-title>Complexity of the first-order theory of almost all finite structures</article-title>
          ,
          <source>Information and Control</source>
          <volume>57</volume>
          (
          <year>1983</year>
          )
          <fpage>180</fpage>
          -
          <lpage>204</lpage>
          . doi:
          <volume>10</volume>
          .1016/S0019-
          <volume>9958</volume>
          (
          <issue>83</issue>
          )
          <fpage>80043</fpage>
          -
          <lpage>6</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>H.</given-names>
            <surname>Gaifman</surname>
          </string-name>
          ,
          <article-title>Concerning measures in first order calculi</article-title>
          ,
          <source>Israel Journal of Mathematics</source>
          <volume>2</volume>
          (
          <year>1964</year>
          )
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          . doi:
          <volume>10</volume>
          .1007/BF02759729.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M.</given-names>
            <surname>Lingsch Rosenfeld</surname>
          </string-name>
          , Asymptotic Quantifier elimination, Bachelorarbeit, LMU Munich,
          <year>2022</year>
          . URL: https://www.en.pms.ifi.lmu.de/publications.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>F. G.</given-names>
            <surname>Cozman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. D.</given-names>
            <surname>Mauá</surname>
          </string-name>
          ,
          <article-title>The finite model theory of Bayesian network specifications: Descriptive complexity and zero/one laws</article-title>
          ,
          <source>Int. J. Approx. Reason</source>
          .
          <volume>110</volume>
          (
          <year>2019</year>
          )
          <fpage>107</fpage>
          -
          <lpage>126</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.ijar.
          <year>2019</year>
          .
          <volume>04</volume>
          .003.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>M.</given-names>
            <surname>Jaeger</surname>
          </string-name>
          ,
          <article-title>Convergence results for relational bayesian networks</article-title>
          ,
          <source>in: Thirteenth Annual IEEE Symposium on Logic in Computer Science</source>
          , Indianapolis, Indiana, USA, June 21-24,
          <year>1998</year>
          , IEEE Computer Society,
          <year>1998</year>
          , pp.
          <fpage>44</fpage>
          -
          <lpage>55</lpage>
          . doi:
          <volume>10</volume>
          .1109/LICS.
          <year>1998</year>
          .
          <volume>705642</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>F.</given-names>
            <surname>Weitkämper</surname>
          </string-name>
          ,
          <article-title>Scaling the weight parameters in markov logic networks</article-title>
          and relational
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>