This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Inputs, Outputs, and Composition in the Logic of Information Flows

Heba Aamer Hasselt UniversityHasseltBelgium [email protected] Bart Bogaerts Vrije Universiteit BrusselBrusselsBelgium [email protected] Dimitri Surinx Hasselt UniversityHasseltBelgium [email protected] Eugenia Ternovska Simon Fraser UniversityBurnaby, BCCanada [email protected]  and  Jan Van den Bussche Hasselt UniversityHasseltBelgium [email protected]
(2018)
Abstract.

The logic of information flows (LIF) is a general framework in which tasks of a procedural nature can be modeled in a declarative, logic-based fashion. The first contribution of this paper is to propose semantic and syntactic definitions of inputs and outputs of LIF expressions. We study how the two relate and show that our syntactic definition is optimal in a sense that is made precise. The second contribution is a systematic study of the expressive power of sequential composition in LIF. Our results on composition tie in the results on inputs and outputs, and relate LIF to first-order logic (FO) and bounded-variable LIF to bounded-variable FO.

This paper is the extended version of a paper presented at KR 2020 (Aamer et al., 2020b).

dynamic logic, expressive prower, binary relations on valuations
copyright: acmcopyrightjournalyear: 2018doi: XXXXXXX.XXXXXXXjournal: TOCLprice: 15.00isbn: 978-1-4503-XXXX-X/18/06ccs: Computing methodologies Knowledge representation and reasoningccs: Theory of computation Logicccs: Software and its engineering Software verification and validation

1. Introduction

The Logic of Information Flows (LIF) (Ternovska, 2017, 2019) is a knowledge representation framework designed to model and understand how information propagates in complex systems, and to find ways to navigate it efficiently. The basic idea is that modules, that can be given procedurally or declaratively, are the atoms of a logic whose syntax resembles first-order logic, but whose semantics produces new modules. In LIF, atomic modules are modeled as relations with designated input and output arguments. Computation is modeled as propagation of information from inputs to outputs, similarly to propagation of tokens in Petri nets. The specification of a complex system then amounts to connecting atomic modules together. For this purpose, LIF uses the classical logic connectives, i.e., the boolean operators, equality, and existential quantification. The goal is to start from constructs that are well understood, and to address the fundamental question of what logical means are necessary and sufficient to model computations declaratively. The eventual goal, which goes beyond the topic of this paper, is to come up with restrictions or extensions of LIF that make the computations efficient.

In its most general form, LIF is a rich family of logics with recursion and higher-order variables. Atomic modules are given by formulae in various logics, and may be viewed as solving the task of Model Expansion (Mitchell and Ternovska, 2005): the input structure is expanded to satisfy the specification of a module thus producing an output. The semantics is given in terms of pairs of structures. We can, for example, give a graph (a relational structure) on the input of a module that returns a Hamiltonian cycle on the output, and compose it sequentially with a module that checks whether the produced cycle is of even length. One can vary both the expressiveness of logics for specifying atomic modules and the operations for combining modules, to achieve desirable complexity of the computation for the tasks of interest.

Many issues surrounding LIF, however, are already interesting in a first-order setting (see, e.g., (Aamer et al., 2020a)); and in fact such a setting is more generic than the higher-order setting, which can be obtained by considering relations as atomary data values. Thus, in this paper, we give a self-contained, first-order presentation of LIF. Syntactically, atomic modules here are relation atoms with designated input and output positions. Such atoms are combined using a set of algebraic operations into LIF expressions. The semantics is defined in terms of pairs of valuations of first-order variables; the first valuation represents a situation right before applying the module, while the second represents a possible situation immediately afterwards. The results in this paper are then also applicable to the case of higher-order variables.

Our contributions can be summarized as follows.

  1. (1)

    While the input and output arguments of atomic modules are specified by the vocabulary, it is not clear how to designate the input and output variables of a complex LIF expression that represents a compound module. Actually, coming up with formal definitions of what it means for a variable to be an input or output is a technically and philosophically interesting undertaking. We propose semantic definitions, based on natural intuitions, which are, of course, open to further debate. The semantic notions of input and output turn out to be undecidable. This is not surprising, since LIF expressions subsume classical first-order logic formulas, for which most inference tasks in general are undecidable.

  2. (2)

    We proceed to give an approximate, syntactic definition of the input and output variables of a formula, which is effectively computable. Indeed, our syntactic definition is compositional, meaning that the set of syntactic input (or output) variables of a formula depends only on the top-level operator of the formula, and the syntactic inputs and outputs of the operands. We prove our syntactic input–output notion to be sound: every semantic input or output is also a syntactic input or output, and the syntactic inputs and outputs are connected by a property that we call input–output determinacy. Moreover, we prove an optimality result: our definition provides the most precise approximation to semantic input and outputs among all compositional and sound definitions.

  3. (3)

    We investigate the expressive power of sequential composition in the context of LIF. The sequential composition of two modules is fundamental to building complex systems. Hence, we are motivated to understand in detail whether or not this operation is expressible in terms of the basic LIF connectives. This question turns out to be approachable through the notion of inputs and outputs. Indeed, there turns out to be a simple expression for the composition of io-disjoint modules. Here, io-disjointness means that inputs and outputs do not overlap. For example, a module that computes a function of xx and returns the result in yy is io-disjoint; a module that stores the result back in xx, thus overwriting the original input, is not.

  4. (4)

    We then use the result on io-disjoint expressions to show that composition is indeed an expressible operator in the classical setting of LIF, where there is an infinite supply of fresh variables. (In contrast, the expression for io-disjoint modules does not need extra variables.)

  5. (5)

    Finally, we complement the above findings with a result on LIF in a bounded-variable setting: in this setting, composition is necessarily a primitive operator.

Many of our notions and results are stated generally in terms of transition systems (binary relations) on first-order valuations. Consequently, we believe our work is also of value to settings other than LIF inasmuch as they involve dynamic semantics. Several such settings, where input–output specifications are important, are discussed in the related work section.

The rest of this paper is organized as follows. In Section 2, we formally introduce the Logic of Information Flows from a first-order perspective. Section 3 presents our study concerning the notion of inputs and outputs of complex expressions. Section 7 then presents our study on the expressibility of sequential composition. Section 8 discusses related work. We conclude in Section 9. In Sections 4, 5, and 6, we give extensive proofs of theorems we discuss in Section 3.

2. Preliminaries

A (module) vocabulary 𝒮\mathcal{S}{} is a triple (𝑁𝑎𝑚𝑒𝑠,𝑎𝑟,𝑖𝑎𝑟)(\mathit{Names},\mathit{ar}{}{},\mathit{iar}{}) where:

  • 𝑁𝑎𝑚𝑒𝑠\mathit{Names} is a nonempty set, the elements of which are called module names;

  • 𝑎𝑟\mathit{ar}{}{} assigns an arity to each module name in 𝑁𝑎𝑚𝑒𝑠\mathit{Names}{};

  • 𝑖𝑎𝑟\mathit{iar}{} assigns an input arity to each module name MM in 𝑁𝑎𝑚𝑒𝑠\mathit{Names}{}, where 𝑖𝑎𝑟(M)𝑎𝑟(M)\mathit{iar}{(M)}\leq\mathit{ar}{}{(M)}.

We fix a countably infinite universe 𝐝𝐨𝐦\mathbf{dom}{} of data elements. An interpretation DD{} of 𝒮\mathcal{S}{} assigns to each module name MM in 𝑁𝑎𝑚𝑒𝑠\mathit{Names} an 𝑎𝑟(M)\mathit{ar}{}{}(M)-ary relation D(M)D(M) over 𝐝𝐨𝐦\mathbf{dom}{}.

Furthermore, we fix a universe of variables 𝕍\mathbb{V}. This set may be finite or infinite; the size of 𝕍\mathbb{V} will influence the expressive power of our logic. A valuation is a function from 𝕍\mathbb{V} to 𝐝𝐨𝐦\mathbf{dom}{}. The set of all valuations is denoted by 𝒱\mathcal{V}. We say that ν1\nu_{1} and ν2\nu_{2} agree on Y𝕍Y\subseteq\mathbb{V} if ν1(y)=ν2(y)\nu_{1}(y)=\nu_{2}(y) for all yYy\in Y and that they agree outside YY if they agree on 𝕍Y\mathbb{V}-Y. A partial valuation on Y𝕍Y\subseteq\mathbb{V} is a function from YY to 𝕍\mathbb{V}; we will also call this a YY-valuation. If ν\nu is a valuation, we use ν|Y\nu|_{Y} to denote its restriction to YY. Let ν\nu be a valuation and let ν1\nu_{1} be a partial valuation on Y𝕍Y\subseteq\mathbb{V}. Then the substitution of ν1\nu_{1} into ν\nu, denoted by ν[ν1]\nu[\nu_{1}], is defined as ν1(ν|𝕍Y)\nu_{1}\cup(\nu|_{\mathbb{V}-Y}). In the special case where ν1\nu_{1} is defined on a single variable xx with ν1(x)=d\nu_{1}(x)=d, we also write ν[ν1]\nu[\nu_{1}] as ν[x:d]\nu[x:d].

We assume familiarity with the syntax and semantics of first-order logic (FO, relational calculus) over 𝒮\mathcal{S} (Enderton, 1972) and use :=:= to mean “is by definition”.

2.1. Binary Relations on Valuations

The semantics of LIF will be defined in terms of binary relations on 𝒱\mathcal{V}{} (abbreviated BRV: Binary Relations on Valuations). Before formally introducing LIF, we define operations on BRVs corresponding to the classical logical connectives, adapted to a dynamic semantics. For boolean connectives, we simply use the standard set operations. For equality, we introduce selection operators. For existential quantification, we introduce cylindrification operators.

Let AA and BB be BRVs, let ZZ be a finite set of variables, and let xx and yy be variables.

  • Set operations: AB,ABA\cup B,A\cap B, and ABA-B are well known.

  • Composition

    A;B:={(ν1,ν2)ν3:(ν1,ν3)A and (ν3,ν2)B}.A\mathbin{;}B:=\{(\nu_{1},\nu_{2})\mid\exists\nu_{3}:(\nu_{1},\nu_{3})\in A\text{ and }(\nu_{3},\nu_{2})\in B\}.
  • Converse

    A:={(ν1,ν2)(ν2,ν1)A}.A^{\smallsmile}:=\{(\nu_{1},\nu_{2})\mid(\nu_{2},\nu_{1})\in A\}.
  • Left and Right Cylindrifications

    cylZl(A)\displaystyle\mathrm{cyl}_{Z}^{l}(A) :={(ν1,ν2)ν1:(ν1,ν2)A and ν1 and ν1 agree outside Z}.\displaystyle:=\{(\nu_{1},\nu_{2})\mid\exists\nu_{1}^{\prime}:(\nu_{1}^{\prime},\nu_{2})\in A\text{ and $\nu_{1}^{\prime}$ and $\nu_{1}$ agree outside $Z$}\}.
    cylZr(A)\displaystyle\mathrm{cyl}_{Z}^{r}(A) :={(ν1,ν2)ν2:(ν1,ν2)A and ν2 and ν2 agree outside Z}.\displaystyle:=\{(\nu_{1},\nu_{2})\mid\exists\nu_{2}^{\prime}:(\nu_{1},\nu_{2}^{\prime})\in A\text{ and $\nu_{2}^{\prime}$ and $\nu_{2}$ agree outside $Z$}\}.
  • Left and Right Selections

    σx=yl(A)\displaystyle\sigma_{x=y}^{\mathit{l}}(A) :={(ν1,ν2)Aν1(x)=ν1(y)}.\displaystyle:=\{(\nu_{1},\nu_{2})\in A\mid\nu_{1}(x)=\nu_{1}(y)\}.
    σx=yr(A)\displaystyle\sigma_{x=y}^{\mathit{r}}(A) :={(ν1,ν2)Aν2(x)=ν2(y)}.\displaystyle:=\{(\nu_{1},\nu_{2})\in A\mid\nu_{2}(x)=\nu_{2}(y)\}.
  • Left-To-Right Selection

    σx=y𝑙𝑟(A):={(ν1,ν2)Aν1(x)=ν2(y)}.\sigma_{x=y}^{\mathit{lr}}(A):=\{(\nu_{1},\nu_{2})\in A\mid\nu_{1}(x)=\nu_{2}(y)\}.

If x¯\bar{x} and y¯\bar{y} are tuples of variables of length nn, we write σx¯=y¯𝑙𝑟(A)\sigma_{\bar{x}=\bar{y}}^{\mathit{lr}}(A) for

σx1=y1𝑙𝑟σx2=y2𝑙𝑟σxn=yn𝑙𝑟(A)\sigma_{x_{1}=y_{1}}^{\mathit{lr}}\sigma_{x_{2}=y_{2}}^{\mathit{lr}}\dots\sigma_{x_{n}=y_{n}}^{\mathit{lr}}(A)

and if zz is a variable we write cylzl\mathrm{cyl}_{z}^{l} for cyl{z}l\mathrm{cyl}_{\{z\}}^{l}. Intuitively, a BRV is a dynamic system that manipulates the interpretation of variables. A pair (ν1,ν2)(\nu_{1},\nu_{2}) in a BRV represents that a transition from ν1\nu_{1} to ν2\nu_{2} is possible, i.e., that when given ν1\nu_{1} as input, the values of the variables can be updated to ν2\nu_{2}. The operations defined above correspond to manipulations/combinations of such dynamic systems. Union, for instance, represents a non-deterministic choice, while composition corresponds to composing two such systems. Left cylindrification corresponds, in the dynamic view, to performing search before following the underlying BRV. Indeed, when given an input ν1\nu_{1}, alternative values for the cylindrified variables are searched for which transitions are possible. The selection operations correspond to performing checks, on the input, the output, or a combination of both in addition to performing what the underlying BRV does.

Some of the above operators are redundant, in the sense that they can be expressed in terms of others, for instance, AB=A(AB)A\cap B=A-(A-B). We also have:

Lemma 2.1.

For any BRV AA, and any variables xx and yy, the following hold:

cylxr(A)\displaystyle\mathrm{cyl}_{x}^{r}(A) =(cylxl(A))\displaystyle=(\mathrm{cyl}_{x}^{l}(A^{\smallsmile}))^{\smallsmile}
cylxl(A)\displaystyle\mathrm{cyl}_{x}^{l}(A) =(cylxr(A))\displaystyle=(\mathrm{cyl}_{x}^{r}(A^{\smallsmile}))^{\smallsmile}
σx=yr(A)\displaystyle\sigma_{x=y}^{\mathit{r}}(A) =Acylxlσ(x,x)=(y,x)𝑙𝑟cylxl(A)\displaystyle=A\cap\mathrm{cyl}_{x}^{l}\sigma_{(x,x)=(y,x)}^{\mathit{lr}}\mathrm{cyl}_{x}^{l}(A)
σx=yl(A)\displaystyle\sigma_{x=y}^{\mathit{l}}(A) =Acylxrσ(y,x)=(x,x)𝑙𝑟cylxr(A)\displaystyle=A\cap\mathrm{cyl}_{x}^{r}\sigma_{(y,x)=(x,x)}^{\mathit{lr}}\mathrm{cyl}_{x}^{r}(A)
σx=yl(A)\displaystyle\sigma_{x=y}^{\mathit{l}}(A) =σx=yr(A)\displaystyle=\sigma_{x=y}^{\mathit{r}}(A^{\smallsmile})^{\smallsmile}

The expression for σx=yr\sigma_{x=y}^{\mathit{r}} can be explained as follows. First, we copy xx from right to left by applying cylxl\mathrm{cyl}_{x}^{l} followed by σx=x𝑙𝑟\sigma_{x=x}^{\mathit{lr}}. Selection σx=yr\sigma_{x=y}^{\mathit{r}} can now be simulated by σx=y𝑙𝑟\sigma_{x=y}^{\mathit{lr}}. The original xx value on the left is restored by a final application of cylxl\mathrm{cyl}_{x}^{l} and intersecting with the original AA.

2.2. The Logic of Information Flows

The language of LIF expressions α\alpha over a vocabulary 𝒮\mathcal{S}{} is defined by the following grammar:

α::=𝑖𝑑M(z¯)ααααααα;ααcylZl(α)cylZr(α)σx=y𝑙𝑟(α)σx=yl(α)σx=yr(α)\alpha::=\mathit{id}\mid M(\overline{z})\mid\alpha\cup\alpha\mid\alpha\cap\alpha\mid\alpha-\alpha\mid\alpha\mathbin{;}{}\alpha\mid\alpha^{\smallsmile}\mid\mathrm{cyl}_{Z}^{l}(\alpha)\mid\mathrm{cyl}_{Z}^{r}(\alpha)\mid\sigma_{x=y}^{\mathit{lr}}(\alpha)\mid\sigma_{x=y}^{\mathit{l}}(\alpha)\mid\sigma_{x=y}^{\mathit{r}}(\alpha)

Here, MM is any module name in 𝒮\mathcal{S}{}; ZZ is a finite set of variables; z¯\overline{z} is a tuple of variables; and x,yx,y are variables. For atomic module expressions, i.e., expressions of the form M(z¯)M(\overline{z}{}), the length of z¯\overline{z}{} must equal 𝑎𝑟(M)\mathit{ar}{}(M). In practice, we will often write M(x¯;y¯)M(\overline{x};\overline{y}) for atomic module expressions, where x¯\overline{x} is a tuple of variables of length 𝑖𝑎𝑟(M)\mathit{iar}(M) and y¯\overline{y} is a tuple of variables of length 𝑎𝑟(M)𝑖𝑎𝑟(M)\mathit{ar}{}(M)-\mathit{iar}(M).

We will define the semantics of a LIF expression α\alpha, in the context of a given interpretation DD, as a BRV which will be denoted by αD\llbracket\alpha\rrbracket_{D{}}. Thus, adapting Gurevich’s terminology (Gurevich, 1983, 1988), every LIF expression α\alpha denotes a global BRV α\llbracket\alpha\rrbracket: a function that maps interpretations DD of 𝒮\mathcal{S} to the BRV α(D):=αD\alpha(D):=\llbracket\alpha\rrbracket_{D{}}.

For atomic module expressions, we define

M(x¯;y¯)D:={(ν1,ν2)𝒱×𝒱ν1(x¯)ν2(y¯)D(M) and ν1 and ν2 agree outside y¯}.\llbracket M(\overline{x};\overline{y})\rrbracket_{D{}}:=\{(\nu_{1},\nu_{2})\in\mathcal{V}{\times}\mathcal{V}\mid\nu_{1}(\overline{x})\cdot\nu_{2}(\overline{y})\in D(M)\text{ and }\nu_{1}\text{ and }\nu_{2}\text{ agree outside }\overline{y}{}\}.

Here, ν1(x¯)ν2(y¯)\nu_{1}(\overline{x})\cdot\nu_{2}(\overline{y}) denotes the concatenation of tuples. Intuitively, the semantics of an expression M(x¯;y¯)M(\overline{x};\overline{y}) represents a transition from ν1\nu_{1} to ν2\nu_{2}: the inputs of the module are “read” in ν1\nu_{1} and the outputs are updated in ν2\nu_{2}. The value of every variable that is not an output is preserved; this important semantic principle is a realization of the commonsense law of inertia (McCarthy and Hayes, 1969; Lifschitz, 1987).

We further define

𝑖𝑑D:={(ν,ν)ν𝒱}.\llbracket\mathit{id}\rrbracket_{D{}}:=\{(\nu,\nu)\mid\nu\in\mathcal{V}{}\}.

The semantics of other operators is obtained directly by applying the corresponding operation on BRVs, e.g.,

αβD\displaystyle\llbracket\alpha-\beta\rrbracket_{D{}} :=αDβD.\displaystyle:=\llbracket\alpha\rrbracket_{D{}}-\llbracket\beta\rrbracket_{D{}}.
σx=y𝑙𝑟(α)D\displaystyle\llbracket\sigma_{x=y}^{\mathit{lr}}(\alpha)\rrbracket_{D{}} :=σx=y𝑙𝑟(αD).\displaystyle:=\sigma_{x=y}^{\mathit{lr}}(\llbracket\alpha\rrbracket_{D{}}).

We say that α\alpha and β\beta are equivalent if αD=βD\llbracket\alpha\rrbracket_{D{}}=\llbracket\beta\rrbracket_{D{}} for each interpretation DD{}, i.e., if they denote the same global BRV.

2.3. Satisfiability of LIF Expressions

In this section, we will show that the problem of deciding whether a given LIF expression is satisfiable is undecidable. Thereto we begin by noting that first-order logic (FO) is naturally embedded in LIF in the following manner. When evaluating FO formulas on interpretations, we agree that the domain of quantification is always 𝐝𝐨𝐦\mathbf{dom}.

Lemma 2.2.

Let 𝒮\mathcal{S} be a vocabulary with 𝑖𝑎𝑟(R)=0\mathit{iar}(R)=0 for every R𝒮R\in\mathcal{S}. Then, for every FO formula φ\varphi over 𝒮\mathcal{S}, there exists a LIF expression αφ\alpha_{\varphi} such that for every interpretation DD{} the following holds:

αφD={(ν,ν)D,νφ}.\llbracket\alpha_{\varphi}\rrbracket_{D{}}=\{(\nu,\nu)\mid D,\nu\models\varphi\}.
Proof.

The proof is by structural induction on φ\varphi.

  • If φ\varphi is x=yx=y, take αφ=σx=yr(𝑖𝑑)\alpha_{\varphi}=\sigma_{x=y}^{\mathit{r}}(\mathit{id}).

  • If φ\varphi is R(x¯)R(\bar{x}) for some R𝒮R\in\mathcal{S}, take αφ=𝑖𝑑R(;x¯)\alpha_{\varphi}=\mathit{id}\cap R(;\bar{x}).

  • If φ\varphi is φ1φ2\varphi_{1}\lor\varphi_{2}, take αφ=αφ1αφ2\alpha_{\varphi}=\alpha_{\varphi_{1}}\cup\alpha_{\varphi_{2}}.

  • If φ\varphi is ¬φ1\neg\varphi_{1}, take αφ=𝑖𝑑αφ1\alpha_{\varphi}=\mathit{id}-\alpha_{\varphi_{1}}.

  • If φ\varphi is xφ1\exists x\,\varphi_{1}, take αφ=\alpha_{\varphi}= σx=x𝑙𝑟(cylxl(cylxr(αφ1)))\sigma_{x=x}^{\mathit{lr}}(\mathrm{cyl}_{x}^{l}(\mathrm{cyl}_{x}^{r}(\alpha_{\varphi_{1}}))). ∎

It is well known that satisfiability of FO formulas over a fixed countably infinite domain is undecidable. This leads to the following undecidability result.

Problem: Satisfiability Given: a LIF expression α\alpha. Decide: Is there an interpretation DD such that αD\llbracket\alpha\rrbracket_{D{}}\neq\emptyset?

Proposition 2.3.

The satisfiability problem is undecidable.

Proof.

The proof is by reduction from the satisfiability of FO formulas. Let φ\varphi be an FO formula and let αφ\alpha_{\varphi} be the LIF expression obtained from Lemma 2.2. It is clear that αφ\alpha_{\varphi} is satisfiable iff φ\varphi is. ∎

3. Inputs and Outputs

We are now ready to study inputs and outputs of LIF expressions, and, more generally, of global BRVs. We first investigate what inputs and outputs mean on the semantic level before introducing a syntactic definition for LIF expressions.

3.1. Semantic Inputs and Outputs for Global BRVs

Intuitively, an output is a variable whose value can be changed by the expression, i.e., a variable that is not subject to inertia.

Definition 3.1.

A variable xx is a semantic output for a global BRV QQ if there exists an interpretation DD{} and (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D{}) such that ν1(x)ν2(x)\nu_{1}(x)\neq\nu_{2}(x). We use Osem(Q)O^{\mathrm{sem}}(Q) to denote the set of semantic output variables of QQ. If α\alpha is a LIF expression, we call a variable a semantic output of α\alpha if it is a semantic output of α\llbracket\alpha\rrbracket. We also write Osem(α)O^{\mathrm{sem}}(\alpha) for the semantic outputs of α\alpha. A variable that is not a semantic output is also called an inertial variable.

Defining semantic inputs is a bit more subtle. Intuitively, a variable is an input for a BRV if its value on the left-hand side matters for determining the right-hand side (i.e., that if the value of the input would have been different, so would have been the right-hand side; which is in fact a very coarse counterfactual definition of actual causality (Lewis, 1973)). However, a naive formalization of this intuition would result in a situation in which all inertial variables (variables that are not outputs) are inputs since their value on the right-hand side always equals to the one on the left-hand side. A slight refinement of our intuition is that the inputs are those variables whose value matters for determining the possible values of the outputs. This is formalized in the following definitions.

Definition 3.2.

Let QQ be a global BRV and X,YX,Y be sets of variables. We say that XX determines QQ on YY if for every interpretation DD{}, every (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D{}) and every ν1\nu_{1}^{\prime} such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on XX, there exists a ν2\nu_{2}^{\prime} such that ν2=ν2\nu_{2}^{\prime}=\nu_{2} on YY and (ν1,ν2)Q(D)(\nu_{1}^{\prime},\nu_{2}^{\prime})\in Q(D{}).

Definition 3.3.

A variable xx is a semantic input for a global BRV QQ if 𝕍{x}\mathbb{V}-\{x\} does not determine QQ on Osem(Q)O^{\mathrm{sem}}(Q). The set of input variables of QQ is denoted by Isem(Q)I^{\mathrm{sem}}(Q). A variable is a semantic input of a LIF expression α\alpha if it is a semantic input of α\llbracket\alpha\rrbracket; the semantic inputs of α\alpha are denoted by Isem(α)I^{\mathrm{sem}}(\alpha).

From Definition 3.2, we can rephrase the definition for semantic inputs to:

Proposition 3.4.

A variable xx is a semantic input for a global BRV QQ iff there is an interpretation DD{}, a value d𝐝𝐨𝐦d\in\mathbf{dom}, and (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D{}) such that there is no valuation ν2\nu_{2}^{\prime} that agrees with ν2\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q) and (ν1[x:d],ν2)Q(D)(\nu_{1}[x:d],\nu_{2}^{\prime})\in Q(D{}).

The following proposition shows that the semantic inputs of QQ are indeed exactly the variables that determine QQ.

Proposition 3.5.

If a set of variables XX determines a global BRV QQ on Osem(Q)O^{\mathrm{sem}}(Q), then Isem(Q)XI^{\mathrm{sem}}(Q)\subseteq X.

Proof.

Let vv be any variable in Isem(Q)I^{\mathrm{sem}}(Q). We know that 𝕍{v}\mathbb{V}-\{v\} does not determine QQ on Osem(Q)O^{\mathrm{sem}}(Q). If vXv\not\in X, then X𝕍{v}X\subseteq\mathbb{V}-\{v\}, so XX would not determine QQ on Osem(Q)O^{\mathrm{sem}}(Q), which is impossible. Hence, vv must be in XX as desired. ∎

Under a mild assumption, also the converse to Proposition 3.5 holds:111Proposition 3.6 indeed provides a converse to Proposition 3.5: given that Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q) and Isem(Q)XI^{\mathrm{sem}}(Q)\subseteq X for some set XX, clearly also XX determines QQ on Osem(Q)O^{\mathrm{sem}}(Q).

Proposition 3.6.

Assume there exists a finite set of variables that determines a global BRV QQ on Osem(Q)O^{\mathrm{sem}}(Q). Then, Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q).

Proof.

Let (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D) and ν1=ν1\nu^{\prime}_{1}=\nu_{1} on Isem(Q)I^{\mathrm{sem}}(Q) for some interpretation DD and valuations ν1\nu_{1}, ν2\nu_{2}, and ν1\nu^{\prime}_{1}. To show that Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q), we need to find a valuation ν2\nu^{\prime}_{2} such that (ν1,ν2)Q(D)(\nu^{\prime}_{1},\nu^{\prime}_{2})\in Q(D) and ν2=ν2\nu^{\prime}_{2}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q). By assumption, let XX be a finite set of variables that determines QQ on Osem(Q)O^{\mathrm{sem}}(Q).

Thereto, take ν1′′\nu^{\prime\prime}_{1} to be the valuation ν1[ν1|X]\nu^{\prime}_{1}[\nu_{1}|_{X}] which is the valuation ν1\nu^{\prime}_{1} after changing the values for the variables in XX to be as in ν1\nu_{1}. Thus, ν1′′=ν1\nu^{\prime\prime}_{1}=\nu_{1} on XX, while ν1′′=ν1\nu^{\prime\prime}_{1}=\nu^{\prime}_{1} outside XX. Since XX determines QQ on Osem(Q)O^{\mathrm{sem}}(Q), we know that there is a valuation ν2′′\nu^{\prime\prime}_{2} such that (ν1′′,ν2′′)Q(D)(\nu^{\prime\prime}_{1},\nu^{\prime\prime}_{2})\in Q(D) and ν2′′=ν2\nu^{\prime\prime}_{2}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q). To reach our goal, we would like to do incremental changes to ν1′′\nu^{\prime\prime}_{1} in order to be similar to ν1\nu^{\prime}_{1} while showing that each of the intermediate valuations does satisfy the determinacy conditions.

From construction, we know that ν1′′=ν1\nu^{\prime\prime}_{1}=\nu^{\prime}_{1} on XIsem(Q)X\cap I^{\mathrm{sem}}(Q). Using the finiteness assumption for XX, let XIsem(Q)X-I^{\mathrm{sem}}(Q) be the set of variables {x1,,xn}\{x_{1},\ldots,x_{n}\}. Define the sequence of valuations μ0,μ1,,μn\mu_{0},\mu_{1},\ldots,\mu_{n} such that:

  • μ0:=ν1′′\mu_{0}:=\nu^{\prime\prime}_{1}; and

  • μi:=μi1[{xiν1(xi)}]\mu_{i}:=\mu_{i-1}[\{x_{i}\mapsto\nu^{\prime}_{1}(x_{i})\}] so μi\mu_{i} is μi1\mu_{i-1} after changing the value of xix_{i} to be as in ν1\nu^{\prime}_{1}.

We claim that for i{0,,n}i\in\{0,\ldots,n\}, there exists a valuation κi\kappa_{i} such that (μi,κi)Q(D)(\mu_{i},\kappa_{i})\in Q(D) and κi=ν2\kappa_{i}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q). Since μn\mu_{n} is clearly the same valuation as ν1\nu^{\prime}_{1}, we can then take ν2\nu^{\prime}_{2} to be κn\kappa_{n} which is the required.

We verify our claim by induction.

Base Case::

for i=0i=0, we can see that κ0=ν2′′\kappa_{0}=\nu^{\prime\prime}_{2}.

Inductive Step::

for i>0i>0, by assumption, we know that there is a valuation κi1\kappa_{i-1} such that (μi1,κi1)Q(D)(\mu_{i-1},\kappa_{i-1})\in Q(D) and κi1=ν2\kappa_{i-1}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q). It is clear that μi=μi1\mu_{i}=\mu_{i-1} outside {xi}\{x_{i}\} which is 𝕍{xi}\mathbb{V}-\{x_{i}\}. Since xiIsem(Q)x_{i}\not\in I^{\mathrm{sem}}(Q), we know that 𝕍{xi}\mathbb{V}-\{x_{i}\} determines QQ on Osem(Q)O^{\mathrm{sem}}(Q). Hence, there is a valuation κi\kappa_{i} such that (μi,κi)Q(D)(\mu_{i},\kappa_{i})\in Q(D) and κi=κi1\kappa_{i}=\kappa_{i-1} on Osem(Q)O^{\mathrm{sem}}(Q). Since κi1=ν2\kappa_{i-1}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q), we can see that κi=ν2\kappa_{i}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q). ∎

In the next remark, we show that without our assumption, we can find an example of a global BRV that is not determined on its semantic outputs by its semantic inputs.

Remark 3.7.

Let QQ be the global BRV that maps every DD to the same BRV, namely:

Q(D)={(ν1,ν2)𝒱×𝒱ν1 and ν2 differ on finitely many variables}.Q(D)=\{(\nu_{1},\nu_{2})\in\mathcal{V}\times\mathcal{V}\mid\nu_{1}\text{ and }\nu_{2}\text{ differ on finitely many variables}\}.

Since the variables that can be changed by QQ are not restricted, we see that Osem(Q)=𝕍O^{\mathrm{sem}}(Q)=\mathbb{V}. We now verify that Isem(Q)=I^{\mathrm{sem}}(Q)=\emptyset. Let vv be any variable. We can see that vIsem(Q)v\not\in I^{\mathrm{sem}}(Q). Thereto, we check that 𝕍{v}\mathbb{V}-\{v\} determines QQ on Osem(Q)O^{\mathrm{sem}}(Q). Let DD be an interpretation and ν1\nu_{1}, ν2\nu_{2}, and ν1\nu_{1}^{\prime} valuations such that (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D) and ν1=ν1\nu_{1}^{\prime}=\nu_{1} outside {v}\{v\}. Since ν1\nu_{1} and ν2\nu_{2} differ on finitely many variables, we can see that ν1\nu_{1}^{\prime} and ν2\nu_{2} also do. Hence, (ν1,ν2)Q(D)(\nu_{1}^{\prime},\nu_{2})\in Q(D).

Finally, we verify that Isem(Q)I^{\mathrm{sem}}(Q) does not determine QQ on Osem(Q)O^{\mathrm{sem}}(Q). To see a counterexample, let DD be an interpretation and ν1\nu_{1} be the valuation that assigns 11 to every variable. We can see that (ν1,ν1)Q(D)(\nu_{1},\nu_{1})\in Q(D). Let ν2\nu_{2} be the valuation that assigns 22 to every variable. It is clear that ν2=ν1\nu_{2}=\nu_{1} on Isem(Q)=I^{\mathrm{sem}}(Q)=\emptyset, however, clearly (ν2,ν1)Q(D)(\nu_{2},\nu_{1})\not\in Q(D). By Proposition 3.6, we know that there is no finite set of variables that does determine QQ on Osem(Q)O^{\mathrm{sem}}(Q).∎

The reader should not be lulled into believing that Isem(Q)I^{\mathrm{sem}}(Q) determines a global BRV QQ on the set 𝕍\mathbb{V} of all variables since Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q) and no other variable outside Osem(Q)O^{\mathrm{sem}}(Q) can have its value changed. In the following remark, we give a simple counterexample.

Remark 3.8.

We show that Isem(Q)I^{\mathrm{sem}}(Q) does not necessarily determine QQ on 𝕍\mathbb{V} for every global BRV QQ. Take QQ to be defined by the LIF expression σx=yl(𝑖𝑑)\sigma_{x=y}^{\mathit{l}}(\mathit{id}), so, for every DD, we have

Q(D)={(ν,ν)ν𝒱 such that ν(x)=ν(y)}.Q(D)=\{(\nu,\nu)\mid\nu\in\mathcal{V}\text{ such that }\nu(x)=\nu(y)\}.

It is clear that Osem(Q)=O^{\mathrm{sem}}(Q)=\emptyset and Isem(Q)={x,y}I^{\mathrm{sem}}(Q)=\{x,y\}.

Let ν1\nu_{1} be the valuation that assigns 11 to every variable. Clearly, (ν1,ν1)Q(D)(\nu_{1},\nu_{1})\in Q(D) for any interpretation DD. Now take ν1\nu^{\prime}_{1} to be the valuation that assigns 11 to xx and yy, while it assigns 22 to every other variable. It is clear that ν1=ν1\nu^{\prime}_{1}=\nu_{1} on Isem(Q)I^{\mathrm{sem}}(Q).

If Isem(Q)I^{\mathrm{sem}}(Q) were to determine QQ on 𝕍\mathbb{V}, we should find a valuation ν2\nu_{2} that agrees with ν1\nu_{1} on 𝕍\mathbb{V} such that (ν1,ν2)Q(D)(\nu^{\prime}_{1},\nu_{2})\in Q(D). In other words, this means that (ν1,ν1)Q(D)(\nu^{\prime}_{1},\nu_{1})\in Q(D), which is clearly not possible.∎

Assuming determinacy holds for some global BRV, we next show that it actually satisfies an even stricter version of determinacy.

Proposition 3.9.

Let QQ be a global BRV. If Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q), then for every interpretation DD, every (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D) and every ν1\nu_{1}^{\prime} that agrees with ν1\nu_{1} on Isem(Q)I^{\mathrm{sem}}(Q) and outside Osem(Q)O^{\mathrm{sem}}(Q), we have (ν1,ν2)Q(D)(\nu_{1}^{\prime},\nu_{2})\in Q(D).

Proof.

Suppose that

(1) (ν1,ν2)Q(D) and ν1=ν1 on Isem(Q) and outside Osem(Q).(\nu_{1},\nu_{2})\in Q(D)\text{ and }\nu^{\prime}_{1}=\nu_{1}\text{ on }I^{\mathrm{sem}}(Q)\text{ and outside }O^{\mathrm{sem}}(Q).

We know that all the variables outside Osem(Q)O^{\mathrm{sem}}(Q) are inertial, so

(2) ν1=ν2 outside Osem(Q).\nu_{1}=\nu_{2}\text{ outside }O^{\mathrm{sem}}(Q).

Since Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q), we know that there exists ν2\nu_{2}^{\prime} such that:

  1. (i)

    ν2=ν2\nu_{2}^{\prime}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q);

  2. (ii)

    (ν1,ν2)QD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket Q\rrbracket_{D{}}.

From (ii), we know that

(3) ν1=ν2 outside Osem(Q).\nu_{1}=\nu_{2}\text{ outside }O^{\mathrm{sem}}(Q).

Together Equations (13) imply that ν2=ν2\nu^{\prime}_{2}=\nu_{2} outside Osem(Q)O^{\mathrm{sem}}(Q). Combining this with (i), we know that ν2=ν2\nu_{2}=\nu_{2}^{\prime}, whence (ν1,ν2)Q(D)(\nu_{1}^{\prime},\nu_{2})\in Q(D) as desired. ∎

Intuitively, the inputs and outputs are the only variables that matter for a given global BRV, similar to how in classical logic the free variables are the only ones that matter. All other variables can take arbitrary values, but, their values are preserved by inertia, i.e., remain unchanged by the dynamic system. We now formalize this intuition.

Definition 3.10.

Let QQ be a global BRV and XX a set of variables. We say that QQ is inertially cylindrified on XX if:

  1. (1)

    all variables in XX are inertial; and

  2. (2)

    for every interpretation DD, every (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D), and every XX-valuation ν\nu^{\prime} also (ν1[ν],ν2[ν])Q(D)(\nu_{1}[\nu^{\prime}],\nu_{2}[\nu^{\prime}])\in Q(D).

Proposition 3.11.

Every global BRV QQ is inertially cylindrified outside the semantic inputs and outputs of QQ assuming that Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q).

Proof.

Let QQ be a global BRV such that Isem(Q)I^{\mathrm{sem}}(Q) determines QQ on Osem(Q)O^{\mathrm{sem}}(Q). Moreover, let XX be the set of variables that are neither semantic inputs nor semantic outputs of QQ. It is trivial to show that all the variables in XX are inertial since none of the variables in XX is a semantic output of QQ. What remains to show is that for every interpretation DD, every (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D), and every XX-valuation ν\nu^{\prime} also (ν1[ν],ν2[ν])Q(D)(\nu_{1}[\nu^{\prime}],\nu_{2}[\nu^{\prime}])\in Q(D).

Let (ν1,ν2)Q(D)(\nu_{1},\nu_{2})\in Q(D) for an arbitrary interpretation DD and let ν1=ν1[ν]\nu^{\prime}_{1}=\nu_{1}[\nu^{\prime}] be a valuation for some XX-valuation ν\nu^{\prime}. Since ν1=ν1\nu^{\prime}_{1}=\nu_{1} on Isem(Q)I^{\mathrm{sem}}(Q), we know by determinacy that there is a valuation ν2\nu^{\prime}_{2} such that (ν1,ν2)Q(D)(\nu^{\prime}_{1},\nu^{\prime}_{2})\in Q(D) and ν2=ν2\nu^{\prime}_{2}=\nu_{2} on Osem(Q)O^{\mathrm{sem}}(Q). We now argue that ν2=ν2[ν]\nu^{\prime}_{2}=\nu_{2}[\nu^{\prime}]. On the variables of Osem(Q)O^{\mathrm{sem}}(Q), we know that ν2=ν2[ν]\nu_{2}=\nu_{2}[\nu^{\prime}], whence, ν2=ν2[ν]\nu^{\prime}_{2}=\nu_{2}[\nu^{\prime}] on Osem(Q)O^{\mathrm{sem}}(Q). Now we consider the variables that are not in Osem(Q)O^{\mathrm{sem}}(Q). It is clear that ν1=ν2\nu_{1}=\nu_{2} outside Osem(Q)O^{\mathrm{sem}}(Q), whence, ν1[ν]=ν1=ν2=ν2[ν]\nu_{1}[\nu^{\prime}]=\nu^{\prime}_{1}=\nu^{\prime}_{2}=\nu_{2}[\nu^{\prime}] outside Osem(Q)O^{\mathrm{sem}}(Q). ∎

Remark 3.12.

Without the assumption, we can give an example of a global BRV that is not inertially cylindrified outside its semantic inputs and outputs. Let QQ be the global BRV that maps every DD to the same BRV, namely:

Q(D)={(ν,ν)ν𝒱 and no value in the domain occurs infinitely often in ν}.Q(D)=\{(\nu,\nu)\mid\nu\in\mathcal{V}\text{ and no value in the domain occurs infinitely often in }\nu\}.

It is clear that Osem(Q)=O^{\mathrm{sem}}(Q)=\emptyset and Isem(Q)=I^{\mathrm{sem}}(Q)=\emptyset.

We proceed to verify that QQ is not inertially cylindrified on 𝕍\mathbb{V}. Let DD be any interpretation and ν\nu be any valuation that maps every variable to a unique value from the domain. We can see that (ν,ν)QD(\nu,\nu)\in\llbracket Q\rrbracket_{D{}} since every value in ν\nu appears only once. Now fix some a𝐝𝐨𝐦a\in\mathbf{dom} arbitrarily and consider the valuation ν\nu^{\prime} that maps every variable to aa. We can see that (ν[ν],ν[ν])QD(\nu[\nu^{\prime}],\nu[\nu^{\prime}])\not\in\llbracket Q\rrbracket_{D{}} since aa appears infinitely often in ν=ν[ν]\nu^{\prime}=\nu[\nu^{\prime}].∎

We remark that the converse of Proposition 3.11 is not true:

Remark 3.13.

Consider the same global BRV Q discussed in Remark 3.7 where we showed that Isem(Q)I^{\mathrm{sem}}(Q) does not determine QQ on Osem(Q)O^{\mathrm{sem}}(Q). Recall that Osem(Q)=𝕍O^{\mathrm{sem}}(Q)=\mathbb{V}, so the set of variables outside the semantic inputs and outputs is empty. Trivially, however, QQ is inertially cylindrified on \emptyset.

3.2. Semantic Inputs and Outputs for LIF Expressions

3.2.1. Properties of LIF Expressions

As we have discussed in the previous section, a global BRV has the properties of determinacy and inertial cylindrification under the assumption that there is a finite set of variables that determines the global BRV on its semantic outputs. From the results of Section 3.3, this assumption indeed holds for LIF assumptions. Indeed, we will define there, for every expression α\alpha, a finite set of “syntactic input variables” and we will show that this set determines α\llbracket\alpha\rrbracket on a set of “syntactic output variables”. Moreover, the latter set will contain Osem(α)O^{\mathrm{sem}}(\alpha).

3.2.2. Determining Semantic Inputs and Outputs

For atomic LIF expressions, the semantic inputs and outputs are easy to determine, as we will show first. Unfortunately, we show next that the problem is undecidable for general expressions.

We show that semantic inputs and outputs are exactly what one expects for atomic modules:

Proposition 3.14.

If α\alpha is an atomic LIF expressions M(x¯;y¯)M(\bar{x};\bar{y}), then

  • Isem(α)={xix¯=x1,,xn for i{1,,n}}I^{\mathrm{sem}}(\alpha)=\{x_{i}\mid\bar{x}=x_{1},\ldots,x_{n}\text{ for }i\in\{1,\ldots,n\}\}; and

  • Osem(α)={yiy¯=y1,,ym for i{1,,m}}O^{\mathrm{sem}}(\alpha)=\{y_{i}\mid\bar{y}=y_{1},\ldots,y_{m}\text{ for }i\in\{1,\ldots,m\}\}.

Example 3.15.

A variable can be both input and output of a given expression. A very simple example is an atomic module P1(x;x)P_{1}(x;x). To illustrate where this can be useful, assume 𝐝𝐨𝐦=\mathbf{dom}=\mathbb{Z} and consider an interpretation DD such that D(P1)={(n,n+1)n}D(P_{1})=\{(n,n+1)\mid n\in\mathbb{Z}\}. In that case, the expression P1(x;x)P_{1}(x;x) represents a dynamic system in which the value of xx is incremented by 11; xx is an output of the system since its value is changed; it is an input since its original value matters for determining its value in the output.

We will now show that the problem of deciding whether a given variable is a semantic input or output of a LIF expression is undecidable. Proposition 2.3 showed that satisfiability of LIF expressions is undecidable. This leads to the following undecidability results.

Problem: Semantic Output Membership Given: a variable xx and a LIF expression α\alpha. Decide: xOsem(α)x\in O^{\mathrm{sem}}(\alpha)?

Proposition 3.16.

The semantic output membership problem is undecidable.

Proof.

The proof is by reduction from the satisfiability of LIF expressions. Let α\alpha be a LIF expression. Take β\beta to be cylxl(α)\mathrm{cyl}_{x}^{l}(\alpha). What remains to show is that xOsem(β)x\in O^{\mathrm{sem}}(\beta) \Leftrightarrow α\alpha is satisfiable.

()(\Rightarrow) Let xOsem(β)x\in O^{\mathrm{sem}}(\beta). Then, there is certainly an interpretation DD and valuations ν1\nu_{1} and ν2\nu_{2} such that (ν1,ν2)cylxl(α)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{x}^{l}(\alpha)\rrbracket_{D{}}. Hence, there is also a valuation ν1\nu_{1}^{\prime} such that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Certainly, α\alpha is satisfiable.

()(\Leftarrow) Let α\alpha be satisfiable. Then, there is an interpretation DD and valuations ν1\nu_{1} and ν2\nu_{2} such that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Also, let ν\nu^{\prime} be an {x}\{x\}-valuation that maps xx to aa with aν2(x)a\neq\nu_{2}(x). It is clear then that (ν[ν],ν)cylxl(α)D(\nu[\nu^{\prime}],\nu)\in\llbracket\mathrm{cyl}_{x}^{l}(\alpha)\rrbracket_{D{}}. We thus see that xOsem(β)x\in O^{\mathrm{sem}}(\beta). ∎

Problem: Semantic Input Membership Given: a variable xx and a LIF expression α\alpha. Decide: xIsem(α)x\in I^{\mathrm{sem}}(\alpha)?

Proposition 3.17.

The semantic input membership problem is undecidable.

Proof.

Let α\alpha be a LIF expression. Take β\beta to be σx=zl(α)\sigma_{x=z}^{\mathit{l}}(\alpha), where zz is a variable that is not used in α\alpha and different from xx. What remains to show is that xIsem(β)x\in I^{\mathrm{sem}}(\beta) \Leftrightarrow α\alpha is satisfiable.

()(\Rightarrow) Let xIsem(β)x\in I^{\mathrm{sem}}(\beta). Then, certainly, there is an interpretation DD and valuations ν1\nu_{1} and ν2\nu_{2} such that (ν1,ν2)σx=zl(α)DαD(\nu_{1},\nu_{2})\in\llbracket\sigma_{x=z}^{\mathit{l}}(\alpha)\rrbracket_{D{}}\subseteq\llbracket\alpha\rrbracket_{D{}}. Certainly, α\alpha is satisfiable.

()(\Leftarrow) Let α\alpha be satisfiable. Then, there is an interpretation DD and valuations ν1\nu_{1} and ν2\nu_{2} such that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Without loss of generality, we can assume that ν1(z)=ν1(x)\nu_{1}(z)=\nu_{1}(x) since zz is a fresh variable. Hence, (ν1,ν2)σx=zl(α)D(\nu_{1},\nu_{2})\in\llbracket\sigma_{x=z}^{\mathit{l}}(\alpha)\rrbracket_{D{}}. Let ν1\nu^{\prime}_{1} be a valuation that agrees with ν1\nu_{1} outside xx such that ν1(x)ν1(x)\nu^{\prime}_{1}(x)\neq\nu_{1}(x). Since xx and zz are different variables, also ν1(x)ν1(z)\nu^{\prime}_{1}(x)\neq\nu^{\prime}_{1}(z), so clearly there is no valuation ν2\nu^{\prime}_{2} such that (ν1,ν2)σx=zl(α)D(\nu^{\prime}_{1},\nu^{\prime}_{2})\in\llbracket\sigma_{x=z}^{\mathit{l}}(\alpha)\rrbracket_{D{}}. We then see that xIsem(β)x\in I^{\mathrm{sem}}(\beta). ∎

3.3. Syntactic Inputs and Outputs

Since both the membership problems for semantic inputs and outputs are undecidable, to determine inputs and outputs in practice, we will need decidable approximations of these concepts. Before giving our syntactic definition, we define some properties of candidate definitions.

Definition 3.18.

Let II and OO be functions from LIF expressions to sets of variables. We say that (I,O)(I,O) is a sound input–output definition if the following hold:

  • If α=M(x¯;y¯)\alpha=M(\overline{x};\overline{y}), then I(α)=x¯I(\alpha)=\overline{x} and O(α)=y¯O(\alpha)=\overline{y},

  • O(α)Osem(α)O(\alpha)\supseteq O^{\mathrm{sem}}(\alpha), and

  • I(α)I(\alpha) determines α\llbracket\alpha\rrbracket on O(α)O(\alpha).

The first condition states that on atomic expressions (of which we know the inputs), II and OO are defined correctly. The next condition states OO approximates the semantic notion correctly. We only allow for overapproximations; that is, false positives are allowed while false negatives are not. The reason for this is that falsely marking a variable as non-output while it is actually an output would mean incorrectly assuming the variable cannot change value. The last condition establishes the relation between II and OO, and is called input–output determinacy. It states that the inputs need to be large enough to determine the outputs, as such generalizing the defining condition of semantic inputs. Essentially, this means that whenever we overapproximate our outputs, we should also overapproximate our inputs to compensate for this; that correspondence is formalized in Lemma 3.22.

We first remark that a proposition similar to Proposition 3.5 can be made about sound output definitions.

Proposition 3.19.

Let (I,O)(I,O) be a sound input-output definition, α\alpha be a LIF expression, and XX a set of variables. Then, Isem(α)XI^{\mathrm{sem}}(\alpha)\subseteq X if XX determines α\llbracket\alpha\rrbracket on O(α)O(\alpha).

Proof.

The proof follows directly from Proposition 3.5 and knowing that O(α)Osem(α)O(\alpha)\supseteq O^{\mathrm{sem}}(\alpha). Indeed, in general, if XX determines α\llbracket\alpha\rrbracket on some YY and YZY\supseteq Z, then clearly also XX determines α\llbracket\alpha\rrbracket on ZZ. ∎

This proposition along with the input-output determinacy condition imply a condition similar to the second condition about II:

Proposition 3.20.

Let (I,O)(I,O) be a sound input-output definition and α\alpha be a LIF expression. Then, I(α)Isem(α)I(\alpha)\supseteq I^{\mathrm{sem}}(\alpha).

Proof.

The proof follows from Proposition 3.19 and knowing that I(α)I(\alpha) determines α\llbracket\alpha\rrbracket on O(α)O(\alpha). ∎

Besides requiring that our definitions to be sound, we will focus on definitions that are compositional, in the sense that definitions of inputs and outputs of compound expressions can be given in terms of their direct subexpressions essentially treating subexpressions as black boxes. This means that the definition nicely follows the inductive definition of the syntax. Formally:

Definition 3.21.

Suppose II and OO are functions from LIF expression to sets of variables. We say that (I,O)(I,O) is compositional if for all LIF expressions α1\alpha_{1}, α2\alpha_{2}, β1\beta_{1}, and β2\beta_{2} with I(α1)=I(α2)I(\alpha_{1})=I(\alpha_{2}), O(α1)=O(α2)O(\alpha_{1})=O(\alpha_{2}), I(β1)=I(β2)I(\beta_{1})=I(\beta_{2}), and O(β1)=O(β2)O(\beta_{1})=O(\beta_{2}) the following hold:

  • For every unary operator \square : I(α1)=I(α2)I(\square\alpha_{1})=I(\square\alpha_{2}), and O(α1)=O(α2)O(\square\alpha_{1})=O(\square\alpha_{2}); and

  • For every binary operator \boxdot: I(α1β1)=I(α2β2)I(\alpha_{1}\boxdot\beta_{1})=I(\alpha_{2}\boxdot\beta_{2}), and O(α1β1)=O(α2β2)O(\alpha_{1}\boxdot\beta_{1})=O(\alpha_{2}\boxdot\beta_{2}).

The previous definition essentially states that in order to be compositional, the inputs and outputs of α1β1\alpha_{1}\boxdot\beta_{1} and α1\square\alpha_{1} should only depend on the inputs and outputs of α1\alpha_{1} and β1\beta_{1}, and not on their inner structure.

The following lemma rephrases input–output determinacy in terms of the inputs and outputs: in order to determine the output-value of an inertial variable, we need to know its input-value.

Lemma 3.22.

Let (I,O)(I,O) be a sound input–output definition and let α\alpha be a LIF expression. If α\alpha is satisfiable, then

O(α)Osem(α)I(α).O(\alpha)-O^{\mathrm{sem}}(\alpha)\subseteq I(\alpha).

If (I,O)(I,O) is compositional, this holds for all α\alpha.

Proof.

Let xO(α)Osem(α)x\in O(\alpha)-O^{\mathrm{sem}}(\alpha). For the sake of contradiction, assume that xI(α)x\not\in I(\alpha), so Proposition 3.11 is applicable since xIsem(α)x\not\in I^{\mathrm{sem}}(\alpha) as we know by the soundness of (I,O)(I,O). Hence, α\llbracket\alpha\rrbracket is inertially cylindrified on {x}\{x\}. We claim that this contradicts the fact that (I,O)(I,O) is a sound definition. In particular, we can verify that I(α)I(\alpha) can not determine α\llbracket\alpha\rrbracket on O(α)O(\alpha) in case α\alpha is satisfiable. Let DD be an interpretation and ν1\nu_{1} and ν2\nu_{2} be valuations such that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. We also know that ν1(x)=ν2(x)\nu_{1}(x)=\nu_{2}(x) since α\llbracket\alpha\rrbracket is inertially cylindrified on {x}\{x\}. Take ν1\nu^{\prime}_{1} to be the valuation ν1[{xa}]\nu_{1}[\{x\mapsto a\}] where aν1(x)a\neq\nu_{1}(x). By determinacy, we know that there is a valuation ν2\nu^{\prime}_{2} such that (ν1,ν2)αD(\nu^{\prime}_{1},\nu^{\prime}_{2})\in\llbracket\alpha\rrbracket_{D{}} and ν2=ν2\nu^{\prime}_{2}=\nu_{2} on O(α)O(\alpha). Thus, ν2(x)=ν2(x)a\nu^{\prime}_{2}(x)=\nu_{2}(x)\neq a since xO(α)x\in O(\alpha). On the other hand, ν2(x)=ν1(x)=a\nu^{\prime}_{2}(x)=\nu^{\prime}_{1}(x)=a since α\llbracket\alpha\rrbracket is inertially cylindrified on {x}\{x\}. Hence, a contradiction.

For the compositional case, we can always replace subexpressions by atomic expressions with the same inputs and outputs to ensure satisfiability. It is clear that when α\alpha is an atomic module expression, it is always satisfiable. Now, consider any LIF expression α\alpha which is of the form α1\square\alpha_{1} or α1α2\alpha_{1}\boxdot\alpha_{2}, where \square is any of the unary operators and \boxdot is any of the binary operator. Construct two atomic expressions M1M_{1} and M2M_{2} such that I(Mi)=I(αi)I(M_{i})=I(\alpha_{i}) and O(Mi)=O(αi)O(M_{i})=O(\alpha_{i}) for i=1,2i=1,2. By compositionality, we know that I(α1)=I(M1)I(\square\alpha_{1})=I(\square M_{1}) and O(α1)=O(M1)O(\square\alpha_{1})=O(\square M_{1}) for any unary operator, while I(α1α2)=I(M1M2)I(\alpha_{1}\boxdot\alpha_{2})=I(M_{1}\boxdot M_{2}) and O(α1α2)=O(M1M2)O(\alpha_{1}\boxdot\alpha_{2})=O(M_{1}\boxdot M_{2}) for any binary operator. Next, we give examples for an interpretation DD in which any M1D\llbracket\square M_{1}\rrbracket_{D{}} and M1M2D\llbracket M_{1}\boxdot M_{2}\rrbracket_{D{}} can be shown not be empty, so M1\square M_{1} and M1M2M_{1}\boxdot M_{2} are satisfiable expressions.

In what follows, let ν1\nu_{1} be the valuation that assigns 11 to every variable.

Case \boxdot is -

Let DD be the interpretation with

  • D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\}; and

  • D(M2)=D(M_{2})=\emptyset.

It is clear that (ν1,ν1)M1D(\nu_{1},\nu_{1})\in\llbracket M_{1}\rrbracket_{D{}}, and (ν1,ν1)M2D(\nu_{1},\nu_{1})\not\in\llbracket M_{2}\rrbracket_{D{}}, whence, (ν1,ν1)M1M2D(\nu_{1},\nu_{1})\in\llbracket M_{1}-M_{2}\rrbracket_{D{}}.

All other cases

Let DD be the interpretation with

  • D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\}; and

  • D(M2)={(1,,1;1,,1)}D(M_{2})=\{(1,\ldots,1;1,\ldots,1)\}.

We can see that (ν1,ν1)M1D(\nu_{1},\nu_{1})\in\llbracket M_{1}\rrbracket_{D{}}. Consequently, (ν1,ν1)M1D(\nu_{1},\nu_{1})\in\llbracket\square M_{1}\rrbracket_{D{}} for any unary operator \square. We can also see that (ν1,ν1)M2D(\nu_{1},\nu_{1})\in\llbracket M_{2}\rrbracket_{D{}}, whence, (ν1,ν1)M1M2D(\nu_{1},\nu_{1})\in\llbracket M_{1}\boxdot M_{2}\rrbracket_{D{}} for any binary operator {,,;}\boxdot\in\{\cup,\cap,;\}. ∎ We now provide a sound and compositional input–output definition. While the definition might seem complex, there is a good reason for the different cases. Indeed, as we show below in Theorem 3.28, our definition is optimal among the sound and compositional definitions. In the definition, the condition x=synyx\mathop{=_{\mathrm{syn}}}y simply means that xx and yy are the same variable and \mathbin{\triangle}{} denotes the symmetric difference of two sets.

Definition 3.23.

The syntactic inputs and outputs of a LIF expression α\alpha, denoted Isyn(α)I^{\mathrm{syn}}(\alpha) and Osyn(α)O^{\mathrm{syn}}(\alpha) respectively, are defined recursively as given in Table 1.

αIsyn(α)Osyn(α)𝑖𝑑M(x¯;y¯){x1,,xn} where x¯=x1,,xn{y1,,yn} where y¯=y1,,ynα1α2Isyn(α1)Isyn(α2)(Osyn(α1)Osyn(α2))Osyn(α1)Osyn(α2)α1α2Isyn(α1)Isyn(α2)(Osyn(α1)Osyn(α2))Osyn(α1)Osyn(α2)α1α2Isyn(α1)Isyn(α2)(Osyn(α1)Osyn(α2))Osyn(α1)α1;α2Isyn(α1)(Isyn(α2)Osyn(α1))Osyn(α1)Osyn(α2)α1Osyn(α1)Isyn(α1)Osyn(α1)cylxl(α1)Isyn(α1){x}Osyn(α1){x}cylxr(α1)Isyn(α1)Osyn(α1){x}σx=y𝑙𝑟(α1){Isyn(α1)if x=syny and yOsyn(α1)Isyn(α1){x,y}if xsyny and yOsyn(α1)Isyn(α1){x}otherwise{Osyn(α1){x}if x=synyOsyn(α1)otherwiseσx=yl(α1){Isyn(α1)if x=synyIsyn(α1){x,y}otherwiseOsyn(α1)σx=yr(α1){Isyn(α1)if x=synyIsyn(α1)({x,y}Osyn(α1))otherwiseOsyn(α1)\begin{array}[]{l|l|l}\hline\cr\hline\cr\alpha&I^{\mathrm{syn}}(\alpha)&O^{\mathrm{syn}}(\alpha)\\ \hline\cr\hline\cr\mathit{id}&\emptyset&\emptyset\\ \hline\cr M(\overline{x};\overline{y})&\{x_{1},\ldots,x_{n}\}\text{ where }\overline{x}=x_{1},\ldots,x_{n}&\{y_{1},\ldots,y_{n}\}\text{ where }\overline{y}=y_{1},\ldots,y_{n}\\ \hline\cr\alpha_{1}\cup\alpha_{2}&I^{\mathrm{syn}}(\alpha_{1})\cup I^{\mathrm{syn}}(\alpha_{2})\cup(O^{\mathrm{syn}}(\alpha_{1})\mathbin{\triangle}{}O^{\mathrm{syn}}(\alpha_{2}))&O^{\mathrm{syn}}(\alpha_{1})\cup O^{\mathrm{syn}}(\alpha_{2})\\ \hline\cr\alpha_{1}\cap\alpha_{2}&I^{\mathrm{syn}}(\alpha_{1})\cup I^{\mathrm{syn}}(\alpha_{2})\cup(O^{\mathrm{syn}}(\alpha_{1})\mathbin{\triangle}{}O^{\mathrm{syn}}(\alpha_{2}))&O^{\mathrm{syn}}(\alpha_{1})\cap O^{\mathrm{syn}}(\alpha_{2})\\ \hline\cr\alpha_{1}-\alpha_{2}&I^{\mathrm{syn}}(\alpha_{1})\cup I^{\mathrm{syn}}(\alpha_{2})\cup(O^{\mathrm{syn}}(\alpha_{1})\mathbin{\triangle}{}O^{\mathrm{syn}}(\alpha_{2}))&O^{\mathrm{syn}}(\alpha_{1})\\ \hline\cr\alpha_{1}\mathbin{;}{}\alpha_{2}&I^{\mathrm{syn}}(\alpha_{1})\cup(I^{\mathrm{syn}}(\alpha_{2})-O^{\mathrm{syn}}(\alpha_{1}))&O^{\mathrm{syn}}(\alpha_{1})\cup O^{\mathrm{syn}}(\alpha_{2})\\ \hline\cr\alpha_{1}^{\smallsmile}&O^{\mathrm{syn}}(\alpha_{1})\cup I^{\mathrm{syn}}(\alpha_{1})&O^{\mathrm{syn}}(\alpha_{1})\\ \hline\cr\mathrm{cyl}_{x}^{l}(\alpha_{1})&I^{\mathrm{syn}}(\alpha_{1})-\{x\}&O^{\mathrm{syn}}(\alpha_{1})\cup\{x\}\\ \hline\cr\mathrm{cyl}_{x}^{r}(\alpha_{1})&I^{\mathrm{syn}}(\alpha_{1})&O^{\mathrm{syn}}(\alpha_{1})\cup\{x\}\\ \hline\cr\sigma_{x=y}^{\mathit{lr}}(\alpha_{1})&\begin{cases}I^{\mathrm{syn}}(\alpha_{1})&\text{if }x\mathop{=_{\mathrm{syn}}}y\text{ and }y\not\in O^{\mathrm{syn}}(\alpha_{1})\\ I^{\mathrm{syn}}(\alpha_{1})\cup\{x,y\}&\text{if }x\mathop{\not=_{\mathrm{syn}}}y\text{ and }y\not\in O^{\mathrm{syn}}(\alpha_{1})\\ I^{\mathrm{syn}}(\alpha_{1})\cup\{x\}&\text{otherwise}\end{cases}&\begin{cases}O^{\mathrm{syn}}(\alpha_{1})-\{x\}&\text{if }x\mathop{=_{\mathrm{syn}}}y\\ O^{\mathrm{syn}}(\alpha_{1})&\text{otherwise}\end{cases}\\ \hline\cr\sigma_{x=y}^{\mathit{l}}(\alpha_{1})&\begin{cases}I^{\mathrm{syn}}(\alpha_{1})&\text{if }x\mathop{=_{\mathrm{syn}}}y\\ I^{\mathrm{syn}}(\alpha_{1})\cup\{x,y\}&\text{otherwise}\end{cases}&O^{\mathrm{syn}}(\alpha_{1})\\ \hline\cr\sigma_{x=y}^{\mathit{r}}(\alpha_{1})&\begin{cases}I^{\mathrm{syn}}(\alpha_{1})&\text{if }x\mathop{=_{\mathrm{syn}}}y\\ I^{\mathrm{syn}}(\alpha_{1})\cup(\{x,y\}-O^{\mathrm{syn}}(\alpha_{1}))&\text{otherwise}\end{cases}&O^{\mathrm{syn}}(\alpha_{1})\\ \hline\cr\hline\cr\end{array}
Table 1. Syntactic inputs and outputs for LIF expressions.

While it would be tedious to discuss the motivation for all the cases of Definition 1 (their motivation will be clarified in Theorem 3.28), we discuss here one of the most difficult parts, namely the case where α=σx=ylr(α1)\alpha=\sigma^{lr}_{x=y}(\alpha_{1}). For a given interpretation DD,

αD={(ν1,ν2)α1Dν1(x)=ν2(y)}.\llbracket\alpha\rrbracket_{D{}}=\{(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}\mid\nu_{1}(x)=\nu_{2}(y)\}.

First, since αDα1D\llbracket\alpha\rrbracket_{D{}}\subseteq\llbracket\alpha_{1}\rrbracket_{D{}}, it is clear that the outputs of α\alpha should be a subset of those of α1\alpha_{1} (if α1\alpha_{1} admits no pairs in its semantics that change the value of a variable, then neither does α\alpha). For the special case in which xx and yy are the same variable, this selection enforces xx to be inertial, i.e., it should not be an output of α\alpha.

Secondly, all inputs of α1\alpha_{1} remain inputs of α\alpha. Since we select those pairs whose yy-value on the right equals the xx-value on the left, clearly xx must be an input of α\alpha (the special case x=synyx\mathop{=_{\mathrm{syn}}}y and yOsyn(α1)y\not\in O^{\mathrm{syn}}(\alpha_{1}) only covers cases where α1\alpha_{1} and α\alpha are actually equivalent). Whether yy is an input depends on α1\alpha_{1}: if yOsyn(α1)y\not\in O^{\mathrm{syn}}(\alpha_{1}), yy is inertial. Since we compare the input-value of xx with the output-value of yy, essentially this is the same as comparing the input-values of both variables, i.e., the value of yy on the input-side matters. On the other hand, if yOsyn(α1)y\in O^{\mathrm{syn}}(\alpha_{1}), the value of yy can be changed by α1\alpha_{1} and thus this selection does not force yy being an input.

Our syntactic definition is clearly compositional (since we only use the inputs and outputs of subexpressions). An important result is that our definition is also sound, i.e., our syntactic concepts are overapproximations of the semantic concepts.

Theorem 3.24 (Soundness Theorem).

(Isyn,Osyn)(I^{\mathrm{syn}},O^{\mathrm{syn}}) is a sound input–output definition.

Proof.

The proof is given in Section 4. ∎

Of course, since the semantic notions of inputs and outputs are undecidable and our syntactic notions clearly are decidable, expressions exist in which the semantic and syntactic notions do not coincide. We give some examples.

Example 3.25.

Consider the LIF expression

α:=σx=ylσx=yr(R(x;y))\alpha:=\sigma_{x=y}^{\mathit{l}}\sigma_{x=y}^{\mathit{r}}(R(x;y))

In this case, Osem(α)=O^{\mathrm{sem}}(\alpha)=\emptyset. However, it can be verified that Osyn(α)={x,y}O^{\mathrm{syn}}(\alpha)=\{x,y\}.

Example 3.26.

Consider the LIF expression

α:=σx=x𝑙𝑟cylxrcylxl(P(x;)).\alpha:=\sigma_{x=x}^{\mathit{lr}}\mathrm{cyl}_{x}^{r}\mathrm{cyl}_{x}^{l}(P(x;)).

Thus, we first cylindrify xx on both sides and afterwards only select those pairs that have inertia, therefore, we reach an expression α\alpha that is equivalent to 𝑖𝑑\mathit{id}. As such, xx is inertially cylindrified in α\alpha where xOsem(α)x\not\in O^{\mathrm{sem}}(\alpha) and xIsem(α)x\not\in I^{\mathrm{sem}}(\alpha). However, Isyn(α)={x}I^{\mathrm{syn}}(\alpha)=\{x\}.

These examples suggest that our definition can be improved. Indeed, one can probably keep coming up with ad-hoc but more precise approximations of inputs and outputs for various specific patterns of expressions. Such improvements would not be compositional, as they would be based on inspecting the structure of subexpressions. In the following results, we show that (Isyn,Osyn)(I^{\mathrm{syn}},O^{\mathrm{syn}}) is actually the most precise sound and compositional input–output definition.

Theorem 3.27 (Precision Theorem).

Let α\alpha be a LIF expression that is either atomic, or a unary operator applied to an atomic module expression, or a binary operator applied to two atomic module expressions involving different module names. Then

Osem(α)=Osyn(α) and Isem(α)=Isyn(α).O^{\mathrm{sem}}(\alpha)=O^{\mathrm{syn}}(\alpha)\text{ and }I^{\mathrm{sem}}(\alpha)=I^{\mathrm{syn}}(\alpha).
Proof.

The proof is given in Section 5. ∎

Now, the precision theorem forms the basis for our main result on syntactic inputs and outputs, which states that Definition 1 yields the most precise sound and compositional input–output definition.

Theorem 3.28 (Optimality Theorem).

Suppose (I,O)(I,O) is a sound and compositional input–output definition. Then for each LIF expression α\alpha:

Isyn(α)I(α) and Osyn(α)O(α).I^{\mathrm{syn}}(\alpha)\subseteq I(\alpha)\text{ and }O^{\mathrm{syn}}(\alpha)\subseteq O(\alpha).
Proof.

The proof is given in Section 6. ∎

4. Soundness Theorem Proof

In this section, we prove Theorem 3.24. Thereto, we need to verify its three conditions for every LIF expression α\alpha according to Definition 3.18:

Atomic Module Case::

If α=M(x¯;y¯)\alpha=M(\overline{x};\overline{y}), then Isyn(α)=x¯I^{\mathrm{syn}}(\alpha)=\overline{x} and Osyn(α)=y¯O^{\mathrm{syn}}(\alpha)=\overline{y}.

This is clear from the definitions.

Output Approximation::

Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\supseteq O^{\mathrm{sem}}(\alpha).

The output approximation property is shown in Proposition 4.1, which is given in Section 4.1.

Syntactic Input-Output Determinacy::

Isyn(α)I^{\mathrm{syn}}(\alpha) determines α\llbracket\alpha\rrbracket on Osyn(α)O^{\mathrm{syn}}(\alpha).

The syntactic input-output determinacy property is shown in Lemma 4.6, which is given in Section 4.3. First, however, in Section 4.2, we need to prove a syntactic version of Property 3.11, which will be used in the proof of the syntactic input-output determinacy property.

4.1. Proof of Output Approximation

In this section, we prove:

Proposition 4.1.

Let α\alpha be a LIF expression. Then, Osem(α)Osyn(α)O^{\mathrm{sem}}(\alpha)\subseteq O^{\mathrm{syn}}(\alpha).

To prove this proposition, we introduce the following notion which is related to Definition 3.10.

Definition 4.2.

A BRV BB has inertia outside a set of variables ZZ if for every (ν1,ν2)B(\nu_{1},\nu_{2})\in B, we have ν1=ν2\nu_{1}=\nu_{2} outside ZZ. A global BRV QQ has inertia outside a set of variables ZZ if Q(D)Q(D) has inertia outside ZZ for every interpretation DD.

Using this notion, Proposition 4.1 can be equivalently formulated as follows.

Proposition 4.3 (Inertia Property).

Let α\alpha be a LIF expression. Then, α\llbracket\alpha\rrbracket has inertia outside Osyn(α)O^{\mathrm{syn}}(\alpha).

In the remainder of this section we prove the inertia property by structural induction on the shape of LIF expressions. Also, we remove the superscript from OsynO^{\mathrm{syn}} and refer to it simply by OO.

4.1.1. Atomic Modules

Let α\alpha be of the form M(x¯;y¯)M(\bar{x};\bar{y}). Recall that O(α)=YO(\alpha)=Y where YY is the set of variables in y¯\overline{y}. The property directly follows from the definition of the semantics for atomic modules.

4.1.2. Identity

Let α\alpha be of the form 𝑖𝑑\mathit{id}. Recall that O(α)=O(\alpha)=\emptyset. The property directly follows from the definition of 𝑖𝑑\mathit{id}.

4.1.3. Union

Let α\alpha be of the form α1α2\alpha_{1}\cup\alpha_{2}. Recall that O(α)=O(α1)O(α2)O(\alpha)=O(\alpha_{1})\cup O(\alpha_{2}). If (ν1,ν2)α1α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\cup\alpha_{2}\rrbracket_{D{}}, then at least one of the following holds:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Then, by induction we know that ν1=ν2\nu_{1}=\nu_{2} outside O(α1)O{(\alpha_{1})}. Since O(α1)O(α1)O(α2)=O(α)O(\alpha_{1})\subseteq O(\alpha_{1})\cup O(\alpha_{2})=O(\alpha), we know that ν1=ν2\nu_{1}=\nu_{2} outside O(α)O(\alpha).

  2. (2)

    (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Similar.

4.1.4. Intersection

Let α\alpha be of the form α1α2\alpha_{1}\cap\alpha_{2}. Recall that O(α)=O(α1)O(α2)O(\alpha)=O(\alpha_{1})\cap O(\alpha_{2}). If (ν1,ν2)α1α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\cap\alpha_{2}\rrbracket_{D{}}, then (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. By induction, ν1=ν2\nu_{1}=\nu_{2} outside O(α1)O(\alpha_{1}) and also ν1=ν2\nu_{1}=\nu_{2} outside O(α2)O(\alpha_{2}). Hence, ν1=ν2\nu_{1}=\nu_{2} outside O(α1)O(α2)O(\alpha_{1})\cap O(\alpha_{2}).

4.1.5. Composition

Let α\alpha be of the form α1;α2\alpha_{1}\mathbin{;}{}\alpha_{2}. Recall that O(α)=O(α1)O(α2)O(\alpha)=O(\alpha_{1})\cup O(\alpha_{2}). If (ν1,ν2)α1;α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\mathbin{;}{}\alpha_{2}\rrbracket_{D{}}, then there exists a valuation ν\nu such that (ν1,ν)α1D(\nu_{1},\nu)\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν,ν2)α2D(\nu,\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. By induction, ν1=ν\nu_{1}=\nu outside O(α1)O(\alpha_{1}) and also ν=ν2\nu=\nu_{2} outside O(α2)O(\alpha_{2}). Hence, ν1=ν2=ν\nu_{1}=\nu_{2}=\nu outside O(α1)O(α2)O(\alpha_{1})\cup O(\alpha_{2}).

4.1.6. Difference

Let α\alpha be of the form α1α2\alpha_{1}-\alpha_{2}. Recall that O(α)=O(α1)O(\alpha)=O(\alpha_{1}). The proof then follows immediately by induction.

4.1.7. Converse

Let α\alpha be of the form α1\alpha_{1}^{\smallsmile}. Recall that O(α)=O(α1)O(\alpha)=O(\alpha_{1}). The proof is immediate by induction.

4.1.8. Left and Right Selections

Let α\alpha be of the form σx=yl(α1)\sigma_{x=y}^{\mathit{l}}(\alpha_{1}) or σx=yr(α1)\sigma_{x=y}^{\mathit{r}}(\alpha_{1}). Recall that O(α)=O(α1)O(\alpha)=O(\alpha_{1}). The proof is immediate by induction.

4.1.9. Left-to-Right Selection

Let α\alpha be of the form σx=y𝑙𝑟(α1)\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}). Recall the definition:

O(α)={O(α1)if xsynyO(α1){x}otherwiseO(\alpha)=\begin{cases}O(\alpha_{1})&\text{if }x\mathop{\not=_{\mathrm{syn}}}y\\ O(\alpha_{1})-\{x\}&\text{otherwise}\end{cases}

If (ν1,ν2)σx=y𝑙𝑟(α1)D(\nu_{1},\nu_{2})\in\llbracket\sigma_{x=y}^{\mathit{lr}}(\alpha_{1})\rrbracket_{D{}}, then we know that:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    ν1(x)=ν2(y)\nu_{1}(x)=\nu_{2}(y).

By induction from (1), we know that ν1=ν2\nu_{1}=\nu_{2} outside O(α1)O(\alpha_{1}). Hence, for xsynyx\mathop{\not=_{\mathrm{syn}}}y case we are done. In the other case, we must additionally show that ν1(x)=ν2(x)\nu_{1}(x)=\nu_{2}(x), which follows from (2)(\ref{innertia:sellr2}).

4.1.10. Right and Left Cylindrifications

Let α\alpha be of the form cylxr(α1)\mathrm{cyl}_{x}^{r}(\alpha_{1}). The case for left cylindrification is analogous. Recall that O(α)=O(α1){x}O(\alpha)=O(\alpha_{1})\cup\{x\}. If (ν1,ν2)cylxr(α1)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{x}^{r}(\alpha_{1})\rrbracket_{D{}}, then there exists ν\nu such that:

  1. (1)

    (ν1,ν)α1D(\nu_{1},\nu)\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    ν=ν2\nu=\nu_{2} outside {x}\{x\}.

By induction from (1), we know that ν1=ν\nu_{1}=\nu outside O(α1)O(\alpha_{1}). Combining this with (2), we know that ν1=ν2\nu_{1}=\nu_{2} outside O(α1){x}O(\alpha_{1})\cup\{x\} as desired.

4.2. Proof of Syntactic Free Variable Property

Lemma 4.4 (Syntactic Free Variable Property).

Let α\alpha be a LIF expression. Denote Isyn(α)Osyn(α)I^{\mathrm{syn}}(\alpha)\cup O^{\mathrm{syn}}(\alpha) by 𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha). Then, α\alpha is inertially cylindrified on 𝕍𝑓𝑣𝑎𝑟𝑠(α)\mathbb{V}-\mathit{fvars}(\alpha).

In the proof of this Lemma, we will often make use of the Lemma 4.5. In what follows, for a set of variables XX, we define X¯\overline{X} to be 𝕍X\mathbb{V}-X. In the rest of the section, we remove the superscript from OsynO^{\mathrm{syn}} and refer to it simply by OO.

Lemma 4.5.

Let BB be a BRV that has inertia on YY. Then, BB is inertially cylindrified on YY if and only if BB is inertially cylindrified on every XYX\subseteq Y.

Proof.

The ‘if’-direction is immediate. Let us now consider the ‘only if’. To this end, suppose that (ν1,ν2)B(\nu_{1},\nu_{2})\in B and that ν\nu is a partial valuation on XX. Extend ν\nu to a valuation ν\nu^{\prime} by ν=ν1\nu^{\prime}=\nu_{1} on YXY-X. Since BB has inertia on YY, we know that ν1=ν2=ν\nu_{1}=\nu_{2}=\nu^{\prime} on YXY-X. Thus, ν1[ν]=ν1[ν]\nu_{1}[\nu^{\prime}]=\nu_{1}[\nu] and ν2[ν]=ν2[ν]\nu_{2}[\nu^{\prime}]=\nu_{2}[\nu]. The lemma now directly follows since BB is inertially cylindrified on YY. ∎

This Lemma is always applicable for any LIF\mathrm{LIF} expression α\alpha and Y=𝕍𝑓𝑣𝑎𝑟𝑠(α)Y=\mathbb{V}-\mathit{fvars}(\alpha). Indeed, for every interpretation DD{}, we know by Proposition 4.3 that αD\llbracket\alpha\rrbracket_{D{}} has inertia outside O(α)𝑓𝑣𝑎𝑟𝑠(α)O(\alpha)\subseteq\mathit{fvars}(\alpha).

We are now ready to prove Lemma 4.4.

4.2.1. Atomic Modules

Let α\alpha be of the form M(x¯;y¯)M(\bar{x};\bar{y}). Recall that 𝑓𝑣𝑎𝑟𝑠(α)=XY\mathit{fvars}(\alpha)=X\cup Y where XX and YY are the variables in x¯\overline{x} and y¯\overline{y}, respectively. The property directly follows from the definition of the semantics for atomic modules.

4.2.2. Identity

Let α\alpha be of the form 𝑖𝑑\mathit{id}. Recall that 𝑓𝑣𝑎𝑟𝑠(α)=\mathit{fvars}(\alpha)=\emptyset. The property directly follows from the definition of 𝑖𝑑\mathit{id}.

4.2.3. Union

Let α\alpha be of the form α1α2\alpha_{1}\cup\alpha_{2}. Recall that 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α2)\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1})\cup\mathit{fvars}(\alpha_{2}). If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} or (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Let Y=𝕍𝑓𝑣𝑎𝑟𝑠(α)Y=\mathbb{V}-\mathit{fvars}(\alpha) and let ν\nu be a partial valuation on YY. Assume without loss of generality that (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Clearly, Y𝕍𝑓𝑣𝑎𝑟𝑠(α1)Y\subseteq\mathbb{V}-\mathit{fvars}(\alpha_{1}) since 𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha_{1})\subseteq\mathit{fvars}(\alpha). By induction and Lemma 4.5, we know that (ν1[ν],ν2[ν])α1DαD(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha_{1}\rrbracket_{D{}}\subseteq\llbracket\alpha\rrbracket_{D{}} as desired.

4.2.4. Intersection

Let α\alpha be of the form α1α2\alpha_{1}\cap\alpha_{2}. Recall that 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α2)\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1})\cup\mathit{fvars}(\alpha_{2}). If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Let Y=𝕍𝑓𝑣𝑎𝑟𝑠(α)Y=\mathbb{V}-\mathit{fvars}(\alpha) and let ν\nu be a partial valuation on YY. Clearly, Y𝕍𝑓𝑣𝑎𝑟𝑠(αi)Y\subseteq\mathbb{V}-\mathit{fvars}(\alpha_{i}) with i=1,2i=1,2 since 𝑓𝑣𝑎𝑟𝑠(αi)𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha_{i})\subseteq\mathit{fvars}(\alpha). By induction and Lemma 4.5, we know that (ν1[ν],ν2[ν])αiD(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha_{i}\rrbracket_{D{}} with i=1,2i=1,2, whence (ν1[ν],ν2[ν])αD(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha\rrbracket_{D{}} as desired.

4.2.5. Composition

Let α\alpha be of the form α1;α2\alpha_{1}\mathbin{;}{}\alpha_{2}. Recall that 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α2)\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1})\cup\mathit{fvars}(\alpha_{2}). If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then there exists a valuation ν3\nu_{3} such that (ν1,ν3)α1D(\nu_{1},\nu_{3})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν3,ν2)α2D(\nu_{3},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Let Y=𝕍𝑓𝑣𝑎𝑟𝑠(α)Y=\mathbb{V}-\mathit{fvars}(\alpha) and let ν\nu be a partial valuation on YY. Clearly, Y𝕍𝑓𝑣𝑎𝑟𝑠(αi)Y\subseteq\mathbb{V}-\mathit{fvars}(\alpha_{i}) with i=1,2i=1,2 since 𝑓𝑣𝑎𝑟𝑠(αi)𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha_{i})\subseteq\mathit{fvars}(\alpha). By induction and Lemma 4.5, we know that (ν1[ν],ν3[ν])α1D(\nu_{1}[\nu],\nu_{3}[\nu])\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν3[ν],ν2[ν])α2D(\nu_{3}[\nu],\nu_{2}[\nu])\in\llbracket\alpha_{2}\rrbracket_{D{}}. Therefore, we may conclude that (ν1[ν],ν2[ν])α1;α2D(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha_{1}\mathbin{;}{}\alpha_{2}\rrbracket_{D{}}.

4.2.6. Difference

Let α\alpha be of the form α1α2\alpha_{1}-\alpha_{2}. Recall that 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α2)\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1})\cup\mathit{fvars}(\alpha_{2}). If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then we know that:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. By inertia, we know that ν1=ν2\nu_{1}=\nu_{2} outside O(α1)𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α)O(\alpha_{1})\subseteq\mathit{fvars}(\alpha_{1})\subseteq\mathit{fvars}(\alpha).

  2. (2)

    (ν1,ν2)α2D(\nu_{1},\nu_{2})\not\in\llbracket\alpha_{2}\rrbracket_{D{}}.

Let Y=𝕍𝑓𝑣𝑎𝑟𝑠(α)Y=\mathbb{V}-\mathit{fvars}(\alpha) and let ν\nu be a partial valuation on YY. Clearly, Y𝕍𝑓𝑣𝑎𝑟𝑠(αi)Y\subseteq\mathbb{V}-\mathit{fvars}(\alpha_{i}) with i=1,2i=1,2 since 𝑓𝑣𝑎𝑟𝑠(αi)𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha_{i})\subseteq\mathit{fvars}(\alpha). By induction from (1) and Lemma 4.5, we know that (ν1[ν],ν2[ν])α1D(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha_{1}\rrbracket_{D{}}. All that remains is to show that (ν1[ν],ν2[ν])α2D(\nu_{1}[\nu],\nu_{2}[\nu])\not\in\llbracket\alpha_{2}\rrbracket_{D{}} Now, suppose for the sake of contradiction that (ν1[ν],ν2[ν])α2D(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha_{2}\rrbracket_{D{}}. By induction and Lemma 4.5, we know that ((ν1[ν])[ν1|Y],(ν2[ν])[ν1|Y])α2D((\nu_{1}[\nu])[\nu_{1}|_{Y}],(\nu_{2}[\nu])[\nu_{1}|_{Y}])\in\llbracket\alpha_{2}\rrbracket_{D{}}. Clearly, (ν1[ν])[ν1|Y]=ν1(\nu_{1}[\nu])[\nu_{1}|_{Y}]=\nu_{1}. Moreover, (ν2[ν])[ν1|Y]=ν2(\nu_{2}[\nu])[\nu_{1}|_{Y}]=\nu_{2} since ν1=ν2\nu_{1}=\nu_{2} outside 𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha) by (1)(\ref{IC:diff1}). We have thus obtained that (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}, which contradicts (2)(\ref{IC:diff2}).

4.2.7. Converse

Let α\alpha be of the form α1\alpha_{1}^{\smallsmile}. Recall that 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1)\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1}). The property follows directly by induction since 𝑓𝑣𝑎𝑟𝑠(α1)=𝑓𝑣𝑎𝑟𝑠(α1)\mathit{fvars}(\alpha_{1})=\mathit{fvars}(\alpha_{1}^{\smallsmile}).

4.2.8. Left Selection

Let α\alpha be of the form σx=yl(α1)\sigma_{x=y}^{\mathit{l}}(\alpha_{1}). Recall the definition:

𝑓𝑣𝑎𝑟𝑠(α)={𝑓𝑣𝑎𝑟𝑠(α1)if x=syny𝑓𝑣𝑎𝑟𝑠(α1){x,y}otherwise\mathit{fvars}(\alpha)=\begin{cases}\mathit{fvars}(\alpha_{1})&\text{if }x\mathop{=_{\mathrm{syn}}}y\\ \mathit{fvars}(\alpha_{1})\cup\{x,y\}&\text{otherwise}\end{cases}

In case of x=synyx\mathop{=_{\mathrm{syn}}}y, clearly σx=yl(α1)D=α1D\llbracket\sigma_{x=y}^{\mathit{l}}(\alpha_{1})\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}}. The property holds trivially by induction. In the other case when xsynyx\mathop{\not=_{\mathrm{syn}}}y, if (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Let Y=𝕍𝑓𝑣𝑎𝑟𝑠(α)Y=\mathbb{V}-\mathit{fvars}(\alpha) and let ν\nu be a partial valuation on YY. Clearly, Y𝕍𝑓𝑣𝑎𝑟𝑠(α1)Y\subseteq\mathbb{V}-\mathit{fvars}(\alpha_{1}) since 𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha_{1})\subseteq\mathit{fvars}(\alpha). By induction and Lemma 4.5, we know that (ν1[ν],ν2[ν])α1D(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha_{1}\rrbracket_{D{}}. Moreover, since {x,y}Y=\{x,y\}\cap Y=\emptyset, we know that the selection does not look at ν\nu, whence (ν1[ν],ν2[ν])σx=yl(α1)D(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\sigma_{x=y}^{\mathit{l}}(\alpha_{1})\rrbracket_{D{}} as desired.

4.2.9. Right Selection

Let α\alpha be of the form σx=yr(α1)\sigma_{x=y}^{\mathit{r}}(\alpha_{1}). Recall the definition:

𝑓𝑣𝑎𝑟𝑠(α)={𝑓𝑣𝑎𝑟𝑠(α1)if x=syny𝑓𝑣𝑎𝑟𝑠(α1){x,y}otherwise\mathit{fvars}(\alpha)=\begin{cases}\mathit{fvars}(\alpha_{1})&\text{if }x\mathop{=_{\mathrm{syn}}}y\\ \mathit{fvars}(\alpha_{1})\cup\{x,y\}&\text{otherwise}\end{cases}

In case of x=synyx\mathop{=_{\mathrm{syn}}}y, clearly σx=yr(α1)D=α1D\llbracket\sigma_{x=y}^{\mathit{r}}(\alpha_{1})\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}}. Hence, the property holds trivially by induction. In the other case, it is analogous to σx=yl(α1)\sigma_{x=y}^{\mathit{l}}(\alpha_{1}) since here also {x,y}(𝕍𝑓𝑣𝑎𝑟𝑠(α))=\{x,y\}\cap(\mathbb{V}-\mathit{fvars}(\alpha))=\emptyset.

4.2.10. Left-to-Right Selection

Let α\alpha be of the form σx=y𝑙𝑟(α1)\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}). Recall the definition:

𝑓𝑣𝑎𝑟𝑠(α)={𝑓𝑣𝑎𝑟𝑠(α1)if x=syny and yO(α1)𝑓𝑣𝑎𝑟𝑠(α1){x,y}otherwise\mathit{fvars}(\alpha)=\begin{cases}\mathit{fvars}(\alpha_{1})&\text{if }x\mathop{=_{\mathrm{syn}}}y\text{ and }y\not\in O(\alpha_{1})\\ \mathit{fvars}(\alpha_{1})\cup\{x,y\}&\text{otherwise}\end{cases}

In case of x=synyx\mathop{=_{\mathrm{syn}}}y and yO(α1)y\not\in O(\alpha_{1}), clearly σx=y𝑙𝑟(α1)D=α1D\llbracket\sigma_{x=y}^{\mathit{lr}}(\alpha_{1})\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}}. Hence, the property holds trivially by induction. In the other case, it is analogous to σx=yl(α1)\sigma_{x=y}^{\mathit{l}}(\alpha_{1}) since here also {x,y}(𝕍𝑓𝑣𝑎𝑟𝑠(α))=\{x,y\}\cap(\mathbb{V}-\mathit{fvars}(\alpha))=\emptyset.

4.2.11. Right and Left Cylindrifications

Let α\alpha be of the form cylxr(α1)\mathrm{cyl}_{x}^{r}(\alpha_{1}). The case for left cylindrification is analogous. Recall that 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1){y}\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1})\cup\{y\}. If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then there exists a valuation ν3\nu_{3} such that:

  1. (1)

    (ν1,ν3)α1D(\nu_{1},\nu_{3})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    ν3=ν2\nu_{3}=\nu_{2} outside {x}\{x\}.

Let Y=𝕍𝑓𝑣𝑎𝑟𝑠(α)Y=\mathbb{V}-\mathit{fvars}(\alpha) and let ν\nu be a partial valuation on YY. Clearly, Y𝕍𝑓𝑣𝑎𝑟𝑠(α1)Y\subseteq\mathbb{V}-\mathit{fvars}(\alpha_{1}) since 𝑓𝑣𝑎𝑟𝑠(α1)𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha_{1})\subseteq\mathit{fvars}(\alpha). By induction from (1) and Lemma 4.5 we know that (ν1[ν],ν3[ν])α1D(\nu_{1}[\nu],\nu_{3}[\nu])\in\llbracket\alpha_{1}\rrbracket_{D{}}. Since xYx\not\in Y, we know from (2)(\ref{innertia:cylr2}) that ν3[ν]=ν2[ν]\nu_{3}[\nu]=\nu_{2}[\nu] outside {x}\{x\}. Hence, we can conclude that (ν1[ν],ν2[ν])αD(\nu_{1}[\nu],\nu_{2}[\nu])\in\llbracket\alpha\rrbracket_{D{}}.

4.3. Proof of Syntactic Input-Output Determinacy

Syntactic Input-Output determinacy is certainly proved if we can prove the following Lemma.

Lemma 4.6 (Syntactic Input-Output Determinacy).

Let α\alpha be a LIF expression. Then, for every interpretation DD, every (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} and every ν1\nu_{1}^{\prime} that agrees with ν1\nu_{1} on Isyn(α)I^{\mathrm{syn}}(\alpha), there exists a valuation ν2\nu_{2}^{\prime} that agrees with ν2\nu_{2} on Osyn(α)O^{\mathrm{syn}}(\alpha) and (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}.

In the proof, we will make use of a useful alternative formulation of syntactic input-output determinacy which is defined next.

Definition 4.7 (Alternative Input-Output Determinacy).

A LIF expression α\alpha is said to satisfy alternative input-output determinacy if for every interpretation DD, every (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} and every ν1\nu_{1}^{\prime} that agrees with ν1\nu_{1} on Isyn(α)I^{\mathrm{syn}}(\alpha) and outside Osyn(α)O^{\mathrm{syn}}(\alpha), we have (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}.

The following Lemma shows that the two definitions are equivalent. In what follows, will remove the superscript from IsynI^{\mathrm{syn}} and OsynO^{\mathrm{syn}} and refer to them as II and OO, respectively.

Lemma 4.8.

Let α\alpha be a LIF expression. α\alpha satisfies alternative input-output determinacy iff it satisfies syntactic input-output determinacy.

Proof.

The proof of the “if”-direction is similar to the proof of Proposition 3.9. Now, we proceed to verify the other direction. Suppose that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} and ν1=ν1\nu^{\prime}_{1}=\nu_{1} on I(α)I(\alpha). We now construct a new valuation ν1′′\nu^{\prime\prime}_{1} such that it agrees with ν1\nu_{1}^{\prime} on 𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha) and it agrees with ν1\nu_{1} elsewhere. We thus have the following properties for ν1′′\nu_{1}^{\prime\prime}:

  1. (1)

    ν1′′=ν1\nu_{1}^{\prime\prime}=\nu_{1}^{\prime} on 𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha), and

  2. (2)

    ν1′′=ν1\nu_{1}^{\prime\prime}=\nu_{1} on 𝕍𝑓𝑣𝑎𝑟𝑠(α)\mathbb{V}-\mathit{fvars}(\alpha).

We know that ν1=ν1\nu^{\prime}_{1}=\nu_{1} on I(α)I(\alpha) by assumption, whence (1) implies that ν1′′=ν1\nu^{\prime\prime}_{1}=\nu_{1} on I(α)I(\alpha) since I(α)𝑓𝑣𝑎𝑟𝑠(α)I(\alpha)\subseteq\mathit{fvars}(\alpha). Combining this with (2), we know that ν1′′=ν1\nu_{1}^{\prime\prime}=\nu_{1} on I(α)I(\alpha) and outside 𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha). Thus, alternative input-output determinacy implies that (ν1′′,ν2)αD(\nu^{\prime\prime}_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Since ν1′′=ν1\nu_{1}^{\prime\prime}=\nu_{1}^{\prime} on 𝑓𝑣𝑎𝑟𝑠(α)\mathit{fvars}(\alpha), we know that there is a partial valuation ν\nu on 𝕍𝑓𝑣𝑎𝑟𝑠(α)\mathbb{V}-\mathit{fvars}(\alpha) such that ν1′′[ν]=ν1\nu_{1}^{\prime\prime}[\nu]=\nu_{1}^{\prime}. By syntactic free variable, we know that (ν1′′[ν],ν2[ν])αD(\nu_{1}^{\prime\prime}[\nu],\nu_{2}[\nu])\in\llbracket\alpha\rrbracket_{D{}}. Thus, (ν1,ν2[ν])αD(\nu_{1}^{\prime},\nu_{2}[\nu])\in\llbracket\alpha\rrbracket_{D{}} as desired. ∎

We are now ready for the proof of Lemma 4.6. In the following proof, we will use the notation X¯\overline{X} to mean 𝕍X\mathbb{V}-X. Moreover, since we established by Lemma 4.8 that the two definitions for input-output determinacy are equivalent, we will verify any of them for each LIF expression.

4.3.1. Atomic Modules

Let α\alpha be of the form M(x¯;y¯)M(\bar{x};\bar{y}). Recall the definitions:

  • I(α)=XI(\alpha)=X where XX are the variables in x¯\overline{x}.

  • O(α)=YO(\alpha)=Y where YY are the variables in y¯\overline{y}.

Syntactic input-output determinacy directly follows from the definition of the semantics for atomic modules.

4.3.2. Identity

Let α\alpha be of the form 𝑖𝑑\mathit{id}. Recall that the definition for I(α)=O(α)=I(\alpha)=O(\alpha)=\emptyset. We proceed to verify that α\alpha satisfies alternative input-output determinacy. Indeed, this is true since O(α)¯I(α)=𝕍\overline{O(\alpha)}\cup I(\alpha)=\mathbb{V}.

4.3.3. Union

Let α\alpha be of the form α1α2\alpha_{1}\cup\alpha_{2}. Recall the definitions:

  • I(α)=I(α1)I(α2)(O(α1)O(α2))I(\alpha)=I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2})).

  • O(α)=O(α1)O(α2)O(\alpha)=O(\alpha_{1})\cup O(\alpha_{2}).

We proceed to verify that α\alpha satisfies alternative input-output determinacy. If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} or (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Assume without loss of generality that (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Now, let ν1\nu^{\prime}_{1} be a valuation such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). Moreover, we have the following:

O(α)¯I(α)\displaystyle\overline{O(\alpha)}\cup I(\alpha) =O(α1)O(α2)¯I(α1)I(α2)(O(α1)O(α2))\displaystyle=\overline{O(\alpha_{1})\cup O(\alpha_{2})}\cup I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2}))
=O(α1)O(α2)¯I(α1)I(α2)\displaystyle=\overline{O(\alpha_{1})\cap O(\alpha_{2})}\cup I(\alpha_{1})\cup I(\alpha_{2})
=O(α1)¯O(α2)¯I(α1)I(α2)\displaystyle=\overline{O(\alpha_{1})}\cup\overline{O(\alpha_{2})}\cup I(\alpha_{1})\cup I(\alpha_{2})

Therefore, certainly ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). Thus, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} by induction and Lemma 4.8, whence (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} as desired.

4.3.4. Intersection

Let α\alpha be of the form α1α2\alpha_{1}\cap\alpha_{2}. Recall the definitions:

  • I(α)=I(α1)I(α2)(O(α1)O(α2))I(\alpha)=I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2})).

  • O(α)=O(α1)O(α2)O(\alpha)=O(\alpha_{1})\cap O(\alpha_{2}).

We proceed to verify that α\alpha satisfies alternative input-output determinacy. If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Now, let ν\nu^{\prime} be a valuation such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). Just as in the case for \cup, we have that O(α)¯I(α)=O(α1)¯O(α2)¯I(α1)I(α2)\overline{O(\alpha)}\cup I(\alpha)=\overline{O(\alpha_{1})}\cup\overline{O(\alpha_{2})}\cup I(\alpha_{1})\cup I(\alpha_{2}). Therefore, certainly ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). Thus, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}} by induction and Lemma 4.8, whence (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} as desired.

4.3.5. Composition

Let α\alpha be of the form α1;α2\alpha_{1}\mathbin{;}{}\alpha_{2}. Recall the definitions:

  • I(α)=I(α1)(I(α2)O(α1))I(\alpha)=I(\alpha_{1})\cup(I(\alpha_{2})-O(\alpha_{1})).

  • O(α)=O(α1)O(α2)O(\alpha)=O(\alpha_{1})\cup O(\alpha_{2}).

We proceed to verify that α\alpha satisfies syntactic input-output determinacy. If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then there exists a valuation ν\nu such that

  1. (i)

    (ν1,ν)α1D(\nu_{1},\nu)\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (ii)

    (ν,ν2)α2D(\nu,\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}.

Now, let ν1\nu^{\prime}_{1} be a valuation such that

(1) ν1=ν1 on I(α)=I(α1)(I(α2)O(α1))\nu^{\prime}_{1}=\nu_{1}\text{ on }I(\alpha)=I(\alpha_{1})\cup(I(\alpha_{2})-O(\alpha_{1}))

Since I(α1)I(α)I(\alpha_{1})\subseteq I(\alpha), then by induction there exists a valuation ν\nu^{\prime} such that:

  1. (iii)

    (ν1,ν)α1D(\nu^{\prime}_{1},\nu^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (iv)

    ν=ν\nu^{\prime}=\nu on O(α1)O(\alpha_{1}).

By applying inertia to (i) and (iii) we get that ν1=ν\nu_{1}=\nu and ν1=ν\nu_{1}^{\prime}=\nu^{\prime} outside O(α1)O(\alpha_{1}). Combining this with (1) we have that ν=ν1=ν1=ν\nu^{\prime}=\nu_{1}^{\prime}=\nu_{1}=\nu on I(α)O(α1)¯=(I(α1)I(α2))O(α1)I(\alpha)\cap\overline{O(\alpha_{1})}=(I(\alpha_{1})\cup I(\alpha_{2}))-O(\alpha_{1}). Together with (iv), this implies that

(2) ν=ν on I(α1)I(α2)O(α1)\nu^{\prime}=\nu\text{ on }I(\alpha_{1})\cup I(\alpha_{2})\cup O(\alpha_{1})

By induction from (ii), there exists ν2\nu^{\prime}_{2} such that:

  1. (v)

    (ν,ν2)α2D(\nu^{\prime},\nu^{\prime}_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}};

  2. (vi)

    ν2=ν2\nu^{\prime}_{2}=\nu_{2} on O(α2)O(\alpha_{2}).

From (iii) and (vi) we get that (ν1,ν2)αD(\nu^{\prime}_{1},\nu^{\prime}_{2})\in\llbracket\alpha\rrbracket_{D{}}. All that remains to be shown is that ν2=ν2\nu^{\prime}_{2}=\nu_{2} on O(α)O(\alpha). By applying inertia to (ii) and (v) we get that:

ν\displaystyle\nu =ν2 outside O(α2)\displaystyle=\nu_{2}\text{ outside }{O(\alpha_{2})}
ν\displaystyle\nu^{\prime} =ν2 outside O(α2)\displaystyle=\nu_{2}^{\prime}\text{ outside }{O(\alpha_{2})}

Combining this with 2 we have that ν2=ν2\nu^{\prime}_{2}=\nu_{2} on (I(α1)I(α2)O(α1))O(α2)¯=(I(α1)I(α2)O(α1))O(α2)(I(\alpha_{1})\cup I(\alpha_{2})\cup O(\alpha_{1}))\cap\overline{O(\alpha_{2})}=(I(\alpha_{1})\cup I(\alpha_{2})\cup O(\alpha_{1}))-O(\alpha_{2}). Together with (vi) this implies that ν2=ν2\nu^{\prime}_{2}=\nu_{2} on I(α1)I(α2)O(α1)O(α2)I(\alpha_{1})\cup I(\alpha_{2})\cup O(\alpha_{1})\cup O(\alpha_{2}), whence ν2=ν2\nu^{\prime}_{2}=\nu_{2} on O(α)O(\alpha) as desired.

4.3.6. Difference

Let α\alpha be of the form α1α2\alpha_{1}-\alpha_{2}. Recall that:

  • I(α)=I(α1)I(α2)(O(α1)O(α2))I(\alpha)=I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2})).

  • O(α)=O(α1)O(\alpha)=O(\alpha_{1}).

We proceed to verify that α\alpha satisfies alternative input-output determinacy. If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then we know that:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    (ν1,ν2)α2D(\nu_{1},\nu_{2})\not\in\llbracket\alpha_{2}\rrbracket_{D{}}.

Now, let ν1\nu^{\prime}_{1} be a valuation such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). Since O(α1)¯O(α)¯\overline{O(\alpha_{1})}\subseteq\overline{O(\alpha)} and I(α1)I(α)I(\alpha_{1})\subseteq I(\alpha), then ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). Thus, by induction from (1) and Lemma 4.8, we know that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}.

To prove that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, all that remains is to show that (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2})\not\in\llbracket\alpha_{2}\rrbracket_{D{}}. Assume for the sake of contradiction that (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Since ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha) and O(α)¯I(α)=O(α1)¯O(α2)¯I(α1)I(α2)\overline{O(\alpha)}\cup I(\alpha)=\overline{O(\alpha_{1})}\cup\overline{O(\alpha_{2})}\cup I(\alpha_{1})\cup I(\alpha_{2}), we know that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α2)¯I(α2)\overline{O(\alpha_{2})}\cup I(\alpha_{2}). Hence, (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}} by induction and Lemma 4.8, which contradicts (2).

4.3.7. Converse

Let α\alpha be of the form α1\alpha_{1}^{\smallsmile}. Recall the definitions:

  • I(α)=I(α1)O(α1)I(\alpha)=I(\alpha_{1})\cup O(\alpha_{1}).

  • O(α)=O(α1)O(\alpha)=O(\alpha_{1}).

Alternative input-output determinacy holds since O(α)¯I(α)=𝕍\overline{O(\alpha)}\cup I(\alpha)=\mathbb{V}.

4.3.8. Left Selection

Let α\alpha be of the form σx=yl(α1)\sigma_{x=y}^{\mathit{l}}(\alpha_{1}). Recall the definitions:

  • I(α)={I(α1)x=synyI(α1){x,y}otherwiseI(\alpha)=\begin{cases}I(\alpha_{1})&x\mathop{=_{\mathrm{syn}}}y\\ I(\alpha_{1})\cup\{x,y\}&\text{otherwise}\end{cases}

  • O(α)=O(α1)O(\alpha)=O(\alpha_{1})

We proceed to verify that α\alpha satisfies alternative input-output determinacy. Clearly, the property holds trivially by induction in case of x=synyx\mathop{=_{\mathrm{syn}}}y. Indeed, in this case, αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}}. In the other case when xsynyx\mathop{\not=_{\mathrm{syn}}}y, if (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then we know that:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    ν1(x)=ν1(y)\nu_{1}(x)=\nu_{1}(y);

Let ν1\nu_{1}^{\prime} be a valuation such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). In all cases, O(α)O(α1)O(\alpha)\subseteq O(\alpha_{1}). Hence, O(α1)¯O(α)¯\overline{O(\alpha_{1})}\subseteq\overline{O(\alpha)}. Moreover, in all cases I(α1)I(α)I(\alpha_{1})\subseteq I(\alpha). Thus, ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). By induction from (1) and Lemma 4.8, we know that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}.

All that remains to be shown is that ν1(x)=ν1(y)\nu_{1}^{\prime}(x)=\nu_{1}^{\prime}(y). Since {x,y}I(α)\{x,y\}\subseteq I(\alpha), we know that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on {x,y}\{x,y\} by assumption. Hence, ν1(x)=ν1(y)\nu_{1}^{\prime}(x)=\nu_{1}^{\prime}(y) by (2).

4.3.9. Right Selection

Let α\alpha be of the form σx=yr(α1)\sigma_{x=y}^{\mathit{r}}(\alpha_{1}). Recall the definitions:

  • I(α)={I(α1)x=synyI(α1)({x,y}O(α1))otherwiseI(\alpha)=\begin{cases}I(\alpha_{1})&x\mathop{=_{\mathrm{syn}}}y\\ I(\alpha_{1})\cup(\{x,y\}-O(\alpha_{1}))&\text{otherwise}\end{cases}

  • O(α)=O(α1)O(\alpha)=O(\alpha_{1})

We proceed to verify that α\alpha satisfies alternative input-output determinacy. Clearly, the property holds trivially by induction in case of x=synyx\mathop{=_{\mathrm{syn}}}y. Indeed, in this case, αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}}. In the other case when xsynyx\mathop{\not=_{\mathrm{syn}}}y, if (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then we know that:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    ν2(x)=ν2(y)\nu_{2}(x)=\nu_{2}(y);

Let ν1\nu_{1}^{\prime} be a valuation such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). In all cases, O(α)O(α1)O(\alpha)\subseteq O(\alpha_{1}). Hence, O(α1)¯O(α)¯\overline{O(\alpha_{1})}\subseteq\overline{O(\alpha)}. Moreover, in all cases I(α1)I(α)I(\alpha_{1})\subseteq I(\alpha). Thus, ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). By induction from (1) and Lemma 4.8, we know that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Together with (2), we know that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}.

4.3.10. Left-to-Right Selection

Let α\alpha be of the form σx=y𝑙𝑟(α1)\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}). Recall the definitions:

  • I(α)={I(α1)x=syny and yO(α1)I(α1){x,y}xsyny and yO(α1)I(α1){x}otherwiseI(\alpha)=\begin{cases}I(\alpha_{1})&x\mathop{=_{\mathrm{syn}}}y\text{ and }y\not\in O(\alpha_{1})\\ I(\alpha_{1})\cup\{x,y\}&x\mathop{\not=_{\mathrm{syn}}}y\text{ and }y\not\in O(\alpha_{1})\\ I(\alpha_{1})\cup\{x\}&\text{otherwise}\end{cases}

  • O(α)={O(α1){x}x=synyO(α1)otherwiseO(\alpha)=\begin{cases}O(\alpha_{1})-\{x\}&x\mathop{=_{\mathrm{syn}}}y\\ O(\alpha_{1})&\text{otherwise}\end{cases}

We proceed to verify that α\alpha satisfies alternative input-output determinacy. Clearly, αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} in case of x=synyx\mathop{=_{\mathrm{syn}}}y and yO(α1)y\not\in O(\alpha_{1}). Hence, the property holds trivially by induction. In the other cases, if (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then we know that:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    ν1(x)=ν2(y)\nu_{1}(x)=\nu_{2}(y).

Let ν1\nu_{1}^{\prime} be a valuation such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). In all cases, O(α)O(α1)O(\alpha)\subseteq O(\alpha_{1}). Hence, O(α1)¯O(α)¯\overline{O(\alpha_{1})}\subseteq\overline{O(\alpha)}. Moreover, in all cases I(α1)I(α)I(\alpha_{1})\subseteq I(\alpha). Thus, ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). By induction from (1) and Lemma 4.8, we know that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. All that remains to be shown is that ν1(x)=ν2(y)\nu_{1}^{\prime}(x)=\nu_{2}(y). Since xI(α)x\in I(\alpha) and ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha), we have ν1(x)=ν1(x)\nu_{1}^{\prime}(x)=\nu_{1}(x). Together with (2), we get that ν1(x)=ν2(y)\nu_{1}^{\prime}(x)=\nu_{2}(y) as desired, whence (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}.

4.3.11. Right Cylindrification

Let α\alpha be of the form cylxr(α1)\mathrm{cyl}_{x}^{r}(\alpha_{1}). Recall the definitions:

  • I(α)=I(α1)I(\alpha)=I(\alpha_{1}).

  • O(α)=O(α1){x}O(\alpha)=O(\alpha_{1})\cup\{x\}.

  • 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1){x}\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1})\cup\{x\}.

We proceed to verify that α\alpha satisfies alternative input-output determinacy. If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then there exists a valuation ν2\nu^{\prime}_{2} such that:

  1. (1)

    (ν1,ν2)α1D(\nu_{1},\nu^{\prime}_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}};

  2. (2)

    ν2=ν2\nu^{\prime}_{2}=\nu_{2} outside {x}\{x\}.

Now, let ν1\nu_{1}^{\prime} be a valuation such that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). We now split the proof in two cases:

  • Suppose that x𝑓𝑣𝑎𝑟𝑠(α1)x\in\mathit{fvars}(\alpha_{1}). Then, 𝑓𝑣𝑎𝑟𝑠(α)=𝑓𝑣𝑎𝑟𝑠(α1)\mathit{fvars}(\alpha)=\mathit{fvars}(\alpha_{1}). Thus, we know that ν1=ν1\nu_{1}^{\prime}=\nu_{1} on 𝑓𝑣𝑎𝑟𝑠(α1)¯I(α1)\overline{\mathit{fvars}(\alpha_{1})}\cup I(\alpha_{1}), whence ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). Thus, by induction from (1) and Lemma 4.8, we know that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Hence, (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}.

  • Conversely, suppose that x𝑓𝑣𝑎𝑟𝑠(α1)x\not\in\mathit{fvars}(\alpha_{1}). We have O(α)¯I(α)=(O(α1)¯I(α1)){x}\overline{O(\alpha)}\cup I(\alpha)=(\overline{O(\alpha_{1})}\cup I(\alpha_{1}))-\{x\}. Thus, ν1[ν1|{x}]=ν1\nu_{1}^{\prime}[\nu_{1}|_{\{x\}}]=\nu_{1} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}) since ν1=ν1\nu_{1}^{\prime}=\nu_{1} on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). By induction and Lemma 4.8, then (ν1[ν1|{x}],ν2)α1D(\nu_{1}^{\prime}[\nu_{1}|_{\{x\}}],\nu^{\prime}_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. By syntactic free variable, we know that (ν1[ν1|{x}][ν1|{x}],ν2[ν1|{x}])α1D(\nu_{1}^{\prime}[\nu_{1}|_{\{x\}}][\nu_{1}^{\prime}|_{\{x\}}],\nu^{\prime}_{2}[\nu_{1}^{\prime}|_{\{x\}}])\in\llbracket\alpha_{1}\rrbracket_{D{}} since x𝑓𝑣𝑎𝑟𝑠(α1)x\not\in\mathit{fvars}(\alpha_{1}). Clearly, ν1[ν1|{x}][ν1|{x}]=ν1\nu_{1}^{\prime}[\nu_{1}|_{\{x\}}][\nu_{1}^{\prime}|_{\{x\}}]=\nu_{1}^{\prime}, whence (ν1,ν2[ν1|{x}])α1D(\nu_{1}^{\prime},\nu^{\prime}_{2}[\nu_{1}^{\prime}|_{\{x\}}])\in\llbracket\alpha_{1}\rrbracket_{D{}}. Consequently, (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} as desired.

4.3.12. Left Cylindrification

Let α\alpha be of the form cylxl(α1)\mathrm{cyl}_{x}^{l}(\alpha_{1}). Recall the definitions:

  • I(α)=I(α1){x}I(\alpha)=I(\alpha_{1})-\{x\}.

  • O(α)=O(α1){x}O(\alpha)=O(\alpha_{1})\cup\{x\}.

We proceed to verify that α\alpha satisfies alternative input-output determinacy. If (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, then there exists a valuation ν1\nu^{\prime}_{1} such that:

  1. (i)

    ν1=ν1\nu^{\prime}_{1}=\nu_{1} outside {x}\{x\};

  2. (ii)

    (ν1,ν2)α1D(\nu^{\prime}_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}.

Now, let ν\nu be a valuation such that

(1) ν=ν1 on O(α)¯I(α).\nu=\nu_{1}\text{ on }\overline{O(\alpha)}\cup I(\alpha).

Clearly, ν[ν1|{x}]=ν\nu[\nu_{1}^{\prime}|_{\{x\}}]=\nu outside {x}\{x\}. Since xO(α)¯I(α)x\not\in\overline{O(\alpha)}\cup I(\alpha), we also know that ν[ν1|{x}]=ν\nu[\nu_{1}^{\prime}|_{\{x\}}]=\nu on O(α)¯I(α)\overline{O(\alpha)}\cup I(\alpha). Combining this with (1), we get that ν[ν1|{x}]=ν1\nu[\nu_{1}^{\prime}|_{\{x\}}]=\nu_{1}^{\prime} on O(α)¯I(α){x}\overline{O(\alpha)}\cup I(\alpha)\cup\{x\}. Clearly, O(α)¯I(α){x}O(α1)¯I(α1)\overline{O(\alpha)}\cup I(\alpha)\cup\{x\}\supseteq\overline{O(\alpha_{1})}\cup I(\alpha_{1}), whence ν[ν1|{x}]=ν1\nu[\nu_{1}^{\prime}|_{\{x\}}]=\nu_{1}^{\prime} on O(α1)¯I(α1)\overline{O(\alpha_{1})}\cup I(\alpha_{1}). By induction from (ii) and Lemma 4.8, we get that (ν[ν1|{x}],ν2)α1D(\nu[\nu_{1}^{\prime}|_{\{x\}}],\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}, whence also (ν,ν2)α1D(\nu,\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}.

5. Precision Theorem Proof

In this section, we prove Theorem 3.27. By soundness and Proposition 3.20, it suffices to prove Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha) for every LIF expression α\alpha. For the latter inequality, it will be convenient to use the equivalent definition of semantic input variables introduced in Proposition 3.4. Moreover, in the proof of the Precision Theorem, we will often make use of the following two technical lemmas.

Lemma 5.1.

Let MM be a nullary relation name and let DD be an interpretation where D(M)D(M) is nonempty. Then M()D\llbracket M()\rrbracket_{D{}} consists of all identical pairs of valuations.

Proof.

The proof follows directly from the semantics of atomic modules. ∎

Lemma 5.2.

Suppose α1=M1(x1¯;y1¯)\alpha_{1}=M_{1}(\bar{x_{1}};\bar{y_{1}}) and α2=M2(x2¯;y2¯)\alpha_{2}=M_{2}(\bar{x_{2}};\bar{y_{2}}) where M1M2M_{1}\neq M_{2}. Let α\alpha be either α1α2\alpha_{1}\cup\alpha_{2} or α1α2\alpha_{1}-\alpha_{2}. Assume that Osyn(αi)Osem(αi)O^{\mathrm{syn}}(\alpha_{i})\subseteq O^{\mathrm{sem}}(\alpha_{i}) and Isyn(αi)Isem(αi)I^{\mathrm{syn}}(\alpha_{i})\subseteq I^{\mathrm{sem}}(\alpha_{i}) for i=1,2i=1,2. Let jk{1,2}j\neq k\in\{1,2\}. If αD=αkD\llbracket\alpha\rrbracket_{D}=\llbracket\alpha_{k}\rrbracket_{D} for any interpretation DD where D(Mj)D(M_{j}) is empty, then Osyn(αk)Osem(α)O^{\mathrm{syn}}(\alpha_{k})\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(αk)Isem(α)I^{\mathrm{syn}}(\alpha_{k})\subseteq I^{\mathrm{sem}}(\alpha).

Proof.

First, we verify that Osyn(αk)Osem(α)O^{\mathrm{syn}}(\alpha_{k})\subseteq O^{\mathrm{sem}}(\alpha). Let vOsyn(αk)v\in O^{\mathrm{syn}}(\alpha_{k}). Since Osyn(αk)Osem(αk)O^{\mathrm{syn}}(\alpha_{k})\subseteq O^{\mathrm{sem}}(\alpha_{k}), then vOsem(αk)v\in O^{\mathrm{sem}}(\alpha_{k}). By definition, we know that there is an interpretation DD^{\prime} and (ν1,ν2)αkD(\nu_{1},\nu_{2})\in\llbracket\alpha_{k}\rrbracket_{D^{\prime}} such that ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v). Take D′′D^{\prime\prime} to be the interpretation where D′′(M)=D(M)D^{\prime\prime}(M)=D^{\prime}(M) for any MMjM\neq M_{j} while D′′(Mj)D^{\prime\prime}(M_{j}) is empty. Clearly, (ν1,ν2)αD′′(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D^{\prime\prime}}, whence, MjMkM_{j}\neq M_{k} and αD′′=αkD\llbracket\alpha\rrbracket_{D^{\prime\prime}}=\llbracket\alpha_{k}\rrbracket_{D^{\prime}}. It follows then that vOsem(α)v\in O^{\mathrm{sem}}(\alpha).

Similarly, we proceed to verify Isyn(αk)Isem(α)I^{\mathrm{syn}}(\alpha_{k})\subseteq I^{\mathrm{sem}}(\alpha). Let vIsyn(αk)v\in I^{\mathrm{syn}}(\alpha_{k}). Since Isyn(αk)Isem(αk)I^{\mathrm{syn}}(\alpha_{k})\subseteq I^{\mathrm{sem}}(\alpha_{k}), then vIsem(αk)v\in I^{\mathrm{sem}}(\alpha_{k}). By definition, we know that there is an interpretation DD^{\prime}, (ν1,ν2)αkD(\nu_{1},\nu_{2})\in\llbracket\alpha_{k}\rrbracket_{D^{\prime}}, and ν1(v)ν1(v)\nu_{1}^{\prime}(v)\neq\nu_{1}(v) such that (ν1,ν2)αkD(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha_{k}\rrbracket_{D^{\prime}} for every valuation ν2\nu_{2}^{\prime} that agrees with ν2\nu_{2} on Osem(αk)O^{\mathrm{sem}}(\alpha_{k}).

Take D′′D^{\prime\prime} to be the interpretation where D′′(M)=D(M)D^{\prime\prime}(M)=D^{\prime}(M) for any MMjM\neq M_{j} while D′′(Mj)D^{\prime\prime}(M_{j}) is empty. Clearly, αD′′=αkD\llbracket\alpha\rrbracket_{D^{\prime\prime}}=\llbracket\alpha_{k}\rrbracket_{D^{\prime}}, whence, MjMkM_{j}\neq M_{k}. Therefore, Osem(αk)Osem(α)O^{\mathrm{sem}}(\alpha_{k})\subseteq O^{\mathrm{sem}}(\alpha). Hence, vIsem(α)v\in I^{\mathrm{sem}}(\alpha). Indeed, (ν1,ν2)αD′′(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D^{\prime\prime}} and for any valuation ν2\nu_{2}^{\prime} if ν2\nu_{2}^{\prime} agrees with ν2\nu_{2} on Osem(α)O^{\mathrm{sem}}(\alpha), then ν2\nu_{2}^{\prime} agrees with ν2\nu_{2} on Osem(αk)O^{\mathrm{sem}}(\alpha_{k}). ∎

The proof of Theorem 3.27 is done by extensive case analysis. Intuitively, for each of the different operations, and every variable zOsyn(α)z\in O^{\mathrm{syn}}(\alpha), we construct an interpretation DD such that zz is not inertial in αD\llbracket\alpha\rrbracket_{D{}} and thus zOsem(α)z\in O^{\mathrm{sem}}(\alpha). Similarly, for every variable zIsyn(α)z\in I^{\mathrm{syn}}(\alpha), we construct an interpretation DD as a witness of the fact that 𝕍{z}\mathbb{V}-\{z\} does not determine α\llbracket\alpha\rrbracket on Osem(α)O^{\mathrm{sem}}(\alpha) and thus that zIsem(α)z\in I^{\mathrm{sem}}(\alpha). In the proof, we often remove the superscript from IsynI^{\mathrm{syn}} and OsynO^{\mathrm{syn}} and refer to them by II and OO, respectively.

5.1. Atomic Modules

Let α\alpha be of the form α1\alpha_{1}, where α1\alpha_{1} is M(x¯;y¯)M(\bar{x};\bar{y}). Recall the definition:

  • Osyn(α)=YO^{\mathrm{syn}}(\alpha)=Y, where YY are the variables in y¯\bar{y}.

  • Isyn(α)=XI^{\mathrm{syn}}(\alpha)=X, where YY are the variables in x¯\bar{x}.

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vYv\in Y. Consider an interpretation DD where

D(M)={(1,,1;2,,2)}.D(M)=\{(1,\ldots,1;2,\ldots,2)\}.

Let ν1\nu_{1} be the valuation that is 11 everywhere. Also let ν2\nu_{2} be the valuation that is 22 on YY and 11 everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since ν1(x¯)ν2(y¯)D(M)\nu_{1}(\bar{x})\cdot\nu_{2}(\bar{y})\in D(M) and ν1\nu_{1} agrees with ν2\nu_{2} outside YY. Hence, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vXv\in X. Consider the same interpretation DD and the same valuations ν1\nu_{1} and ν2\nu_{2} as discussed above. We already established that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Indeed, this is true since vXv\in X. Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.2. Identity

Let α\alpha be of the form 𝑖𝑑\mathit{id}. We recall that Isyn(α)I^{\mathrm{syn}}(\alpha) and Osyn(α)O^{\mathrm{syn}}(\alpha) are both empty. Hence, Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha) is trivial.

5.3. Union

Let α\alpha be of the form α1α2\alpha_{1}\cup\alpha_{2}, where α1\alpha_{1} is M1(x1¯;y1¯)M_{1}(\bar{x_{1}};\bar{y_{1}}) and α2\alpha_{2} is M2(x2¯;y2¯)M_{2}(\bar{x_{2}};\bar{y_{2}}). We distinguish different cases based on whether M1M_{1} or M2M_{2} is nullary. If M1M_{1} and M2M_{2} are both nullary there is nothing to prove.

5.3.1. M1M_{1} is nullary, M2M_{2} is not

Clearly, αD=α2D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{2}\rrbracket_{D{}} for any interpretation DD where D(M1)D(M_{1}) is empty. By induction and Lemma 5.2, we establish that Osyn(α2)Osem(α)O^{\mathrm{syn}}(\alpha_{2})\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α2)Isem(α)I^{\mathrm{syn}}(\alpha_{2})\subseteq I^{\mathrm{sem}}(\alpha). Since I(α1)I(\alpha_{1}) and O(α1)O(\alpha_{1}) are both empty, then we observe that:

  • Osyn(α)=O(α2)O^{\mathrm{syn}}(\alpha)=O(\alpha_{2}).

  • Isyn(α)=I(α2)O(α2)I^{\mathrm{syn}}(\alpha)=I(\alpha_{2})\cup O(\alpha_{2}).

Thus, O(α2)Osem(α)O(\alpha_{2})\subseteq O^{\mathrm{sem}}(\alpha) and I(α2)Isem(α)I(\alpha_{2})\subseteq I^{\mathrm{sem}}(\alpha) is trivial.

We proceed to verify O(α2)I(α2)Isem(α)O(\alpha_{2})-I(\alpha_{2})\subseteq I^{\mathrm{sem}}(\alpha). Let vO(α2)I(α2)v\in O(\alpha_{2})-I(\alpha_{2}). Consider the interpretation DD where D(M1)D(M_{1}) is not empty and

D(M2)={(1,,1;2,,2)}D(M_{2})=\{(1,\ldots,1;2,\ldots,2)\}

Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}} by Lemma 5.1. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there for every valuation ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}, we show that ν2\nu_{2}^{\prime} and ν1\nu_{1} disagrees on Osem(α)O^{\mathrm{sem}}(\alpha). Thereto, suppose (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}, whence ν2=ν1\nu_{2}^{\prime}=\nu_{1}^{\prime} by Lemma 5.1. Indeed, vO(α2)v\in O(\alpha_{2}), O(α2)Osem(α)O(\alpha_{2})\subseteq O^{\mathrm{sem}}(\alpha), and ν2(v)=2\nu_{2}^{\prime}(v)=2 but ν1(v)=1\nu_{1}(v)=1. Otherwise, (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}}. However, since vO(α2)v\in O(\alpha_{2}), then ν2(v)=2\nu_{2}^{\prime}(v)=2 as well. Therefore, there is no ν2\nu_{2}^{\prime} that agrees with ν1\nu_{1} on Osem(α)O^{\mathrm{sem}}(\alpha) and (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}} at the same time. We conclude that vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.3.2. M2M_{2} is nullary, M1M_{1} is not

This case is symmetric to the previous one.

5.3.3. Neither M1M_{1} nor M2M_{2} is nullary

Recall the definitions:

  • Osyn(α)=O(α1)O(α2)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1})\cup O(\alpha_{2}).

  • Isyn(α)=I(α1)I(α2)(O(α1)O(α2))I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2})).

We first proceed to verify that Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). By induction, Osyn(αi)=Osem(αi)O^{\mathrm{syn}}(\alpha_{i})=O^{\mathrm{sem}}(\alpha_{i}) for i=1i=1 or 22. Consequently, if vO(αi)v\in O(\alpha_{i}), then there is an interpretation DiD_{i}, (ν1,ν2)αiD(\nu_{1},\nu_{2})\in\llbracket\alpha_{i}\rrbracket_{D{}} such that ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v). Indeed, vOsem(α)v\in O^{\mathrm{sem}}(\alpha), whence, (α1Dα2D)αD(\llbracket\alpha_{1}\rrbracket_{D{}}\cup\llbracket\alpha_{2}\rrbracket_{D{}})\subseteq\llbracket\alpha\rrbracket_{D{}} for any interpretation DD.

We then proceed to verify that Isyn(α)Osem(α)I^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). The proof has four possibilities. Each case is discussed separately below.

When vI(α1)v\in I(\alpha_{1})

If vI(α1)v\in I(\alpha_{1}) and M1M2M_{1}\neq M_{2}, it is clear that αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} for any interpretation DD where D(M2)D(M_{2}) is empty. By Lemma 5.2 and by induction, we easily establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

When vI(α2)v\in I(\alpha_{2})

This case is symmetric to the previous one.

When vO(α1)(O(α2)I(α1)I(α2))v\in O(\alpha_{1})-(O(\alpha_{2})\cup I(\alpha_{1})\cup I(\alpha_{2}))

If vO(α1)(O(α2)I(α1)I(α2))v\in O(\alpha_{1})-(O(\alpha_{2})\cup I(\alpha_{1})\cup I(\alpha_{2})), then consider the interpretation DD such that D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\} and D(M2)={(1,,1;1,,1)}D(M_{2})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 22 on vv and 11 elsewhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}}, whence (ν1,ν1)α2D(\nu_{1},\nu_{1})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Now take ν1:=ν1[v:1]\nu_{1}^{\prime}:=\nu_{1}[v:1]. If we can show that ν2\nu_{2}^{\prime} does not agree with ν1\nu_{1} on Osem(α)O^{\mathrm{sem}}(\alpha) for any valuation ν2\nu_{2}^{\prime} such that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}, we are done. Thereto, suppose that there exists a valuation ν2\nu_{2}^{\prime} such that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}.

  • In particular, if (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}, then ν2(v)=1\nu_{2}^{\prime}(v)=1 since vO(α1)v\in O(\alpha_{1}).

  • Otherwise, if (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}}, then ν2(v)=ν1(v)=1\nu_{2}^{\prime}(v)=\nu_{1}^{\prime}(v)=1 since v(I(α2)O(α2))v\not\in(I(\alpha_{2})\cup O(\alpha_{2})).

In both cases, ν2\nu_{2}^{\prime} have to be 11 on vv which disagrees with ν1\nu_{1} on vv. Since vO(α1)v\in O(\alpha_{1}) and O(α1)Osem(α)O(\alpha_{1})\subseteq O^{\mathrm{sem}}(\alpha), then ν2\nu_{2}^{\prime} does not agree with ν1\nu_{1} on Osem(α)O^{\mathrm{sem}}(\alpha) as desired. We conclude that vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

When vO(α2)(O(α1)I(α1)I(α2))v\in O(\alpha_{2})-(O(\alpha_{1})\cup I(\alpha_{1})\cup I(\alpha_{2}))

This case is symmetric to the previous one.

5.4. Intersection

Let α\alpha be of the form α1α2\alpha_{1}\cap\alpha_{2}, where α1\alpha_{1} is M1(x1¯;y1¯)M_{1}(\bar{x_{1}};\bar{y_{1}}) and α2\alpha_{2} is M2(x2¯;y2¯)M_{2}(\bar{x_{2}};\bar{y_{2}}). We distinguish different cases based on whether M1M_{1} or M2M_{2} is nullary. If M1M_{1} and M2M_{2} are both nullary there is nothing to prove.

5.4.1. M1M_{1} is nullary, M2M_{2} is not

In this case, I(α1)I(\alpha_{1}) and O(α1)O(\alpha_{1}) are both empty, then we observe that:

  • Osyn(α)=O^{\mathrm{syn}}(\alpha)=\emptyset.

  • Isyn(α)=I(α2)O(α2)I^{\mathrm{syn}}(\alpha)=I(\alpha_{2})\cup O(\alpha_{2}).

It is trivial to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) since Osyn(α)O^{\mathrm{syn}}(\alpha) is empty.

We proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α2)O(α2)v\in I(\alpha_{2})\cup O(\alpha_{2}). Consider an interpretation DD where D(M1)D(M_{1}) is not empty and D(M2)={(1,,1;1,,1)}D(M_{2})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν1)α2D(\nu_{1},\nu_{1})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no valuation ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, when vI(α2)v\in I(\alpha_{2}), it is clear that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha_{1}\rrbracket_{D{}}. In the other case when vO(α2)I(α2)v\in O(\alpha_{2})-I(\alpha_{2}), there is no ν2\nu_{2}^{\prime} such that (ν1,ν2)(\nu_{1}^{\prime},\nu_{2}^{\prime}) belongs to both α1D\llbracket\alpha_{1}\rrbracket_{D{}} and α2D\llbracket\alpha_{2}\rrbracket_{D{}}. Indeed, the value for ν2(v)\nu_{2}^{\prime}(v) will never be agreed upon by α1\alpha_{1} and α2\alpha_{2}. Hence, (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha\rrbracket_{D{}} as desired. We conclude that vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.4.2. M2M_{2} is nullary, M1M_{1} is not

This case is symmetric to the previous one.

5.4.3. Neither M1M_{1} nor M2M_{2} is nullary

Recall the definitions:

  • Osyn(α)=O(α1)O(α2)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1})\cap O(\alpha_{2}).

  • Isyn(α)=I(α1)I(α2)(O(α1)O(α2))I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2})).

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)O(α2)v\in O(\alpha_{1})\cap O(\alpha_{2}). Consider an interpretation DD such that

D(M1)={(1,,1;o1,,om)}D(M_{1})=\{(1,\ldots,1;o_{1},\ldots,o_{m})\}

, where o1,,omo_{1},\ldots,o_{m} are all the combinations of {1,2}\{1,2\}. Similarly, D(M2)={(1,,1;o1,,on)}D(M_{2})=\{(1,\ldots,1;o_{1},\ldots,o_{n})\}, where o1,,ono_{1},\ldots,o_{n} are all the combinations of {1,2}\{1,2\}.

Let ν1\nu_{1} be the valuation that is 11 everywhere. Also let ν2\nu_{2} be the valuation that is 22 on O(α1)O(α2)O(\alpha_{1})\cap O(\alpha_{2}) and 11 elsewhere. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, whence (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Hence, vOsem(α)v\in O^{\mathrm{sem}}(\alpha). Indeed, ν2(v)ν1(v)\nu_{2}(v)\neq\nu_{1}(v) for vOsyn(α)v\in O^{\mathrm{syn}}(\alpha).

We then proceed to verify Isyn(α)Osem(α)I^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vI(α1)I(α2)(O(α1)O(α2))v\in I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2})). Consider an interpretation DD where

D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\}

Similarly, D(M2)={(1,,1;1,,1)}D(M_{2})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}}, whence (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν1)α2D(\nu_{1},\nu_{1})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no valuation ν2\nu_{2}^{\prime} such that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Indeed, this is clear when vI(α1)v\in I(\alpha_{1}) or vI(α2)v\in I(\alpha_{2}). On the other hand, when v(O(α1)O(α2))(I(α1)I(α2))v\in(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2}))-(I(\alpha_{1})\cup I(\alpha_{2})), we have ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}} whence (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}}. This is not possible since vv belongs to either O(α1)O(\alpha_{1}) or O(α2)O(\alpha_{2}), but not both. Hence, the value for ν2(v)\nu_{2}^{\prime}(v) will never be agreed upon by α1\alpha_{1} and α2\alpha_{2}. We conclude that vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.5. Difference

Let α\alpha be of the form α1α2\alpha_{1}-\alpha_{2}, where α1\alpha_{1} is M1(x1¯;y1¯)M_{1}(\bar{x_{1}};\bar{y_{1}}) and α2\alpha_{2} is M2(x2¯;y2¯)M_{2}(\bar{x_{2}};\bar{y_{2}}). We distinguish different cases based on whether M1M_{1} or M2M_{2} is nullary. If M1M_{1} and M2M_{2} are both nullary there is nothing to prove.

5.5.1. M1M_{1} is nullary, M2M_{2} is not

In this case, I(α1)I(\alpha_{1}) and O(α1)O(\alpha_{1}) are empty. In particular, Osyn(α)O^{\mathrm{syn}}(\alpha) is empty, so Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) is trivial.

We proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Observe that

Isyn(α)=I(α2)O(α2).I^{\mathrm{syn}}(\alpha)=I(\alpha_{2})\cup O(\alpha_{2}).

Let vIsyn(α)v\in I^{\mathrm{syn}}(\alpha). Consider the interpretation DD where D(M1)D(M_{1}) is not empty and D(M2)={(1,,1;1,,1)}D(M_{2})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 22 on vv and 11 elsewhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}}. Take ν1:=ν1[v:1]\nu_{1}^{\prime}:=\nu_{1}[v:1]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}, whence ν2=ν1\nu_{2}^{\prime}=\nu_{1}^{\prime} by Lemma 5.1. However, (ν1,ν1)α2D(\nu_{1}^{\prime},\nu_{1}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}}, so (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha\rrbracket_{D{}} as desired.

5.5.2. M2M_{2} is nullary, M1M_{1} is not

Clearly, αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} for any interpretation DD where D(M2)D(M_{2}) is empty. By induction and Lemma 5.2, we establish that Osyn(α1)Osem(α)O^{\mathrm{syn}}(\alpha_{1})\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α1)Isem(α)I^{\mathrm{syn}}(\alpha_{1})\subseteq I^{\mathrm{sem}}(\alpha). Since I(α2)I(\alpha_{2}) and O(α2)O(\alpha_{2}) are both empty, then we observe that:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1)O(α1)I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup O(\alpha_{1}).

Thus, O(α1)Osem(α)O(\alpha_{1})\subseteq O^{\mathrm{sem}}(\alpha) and I(α1)Isem(α)I(\alpha_{1})\subseteq I^{\mathrm{sem}}(\alpha) is trivial.

We proceed to verify O(α1)I(α1)Isem(α)O(\alpha_{1})-I(\alpha_{1})\subseteq I^{\mathrm{sem}}(\alpha). Let vO(α1)I(α1)v\in O(\alpha_{1})-I(\alpha_{1}). Consider the interpretation DD where D(M2)D(M_{2}) is not empty and

D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\}

Let ν1\nu_{1} be the valuation that is 22 on vv and 11 elsewhere and let ν2\nu_{2} be the valuation that is 11 everywhere. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Take ν1:=ν1[v:1]\nu_{1}^{\prime}:=\nu_{1}[v:1]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}, whence ν2=ν1\nu_{2}^{\prime}=\nu_{1}^{\prime} from the structure of DD. However, (ν1,ν1)α2D(\nu_{1}^{\prime},\nu_{1}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}} by Lemma 5.1, so (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha\rrbracket_{D{}} as desired.

5.5.3. Neither M1M_{1} nor M2M_{2} is nullary

Recall the definitions:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1)I(α2)(O(α1)O(α2))I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup I(\alpha_{2})\cup(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2})).

The proof of Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) is done together with the proof that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) for every vI(α1)v\in I(\alpha_{1}). Discussions for the other cases for vIsyn(α)v\in I^{\mathrm{syn}}(\alpha) follow afterwards. Since M1M2M_{1}\neq M_{2}, it is clear that αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} for any interpretation DD where D(M2)D(M_{2}) is empty. By induction and Lemma 5.2, we establish that Osyn(α1)Osem(α)O^{\mathrm{syn}}(\alpha_{1})\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α1)Isem(α)I^{\mathrm{syn}}(\alpha_{1})\subseteq I^{\mathrm{sem}}(\alpha). Thus, O(α1)Osem(α)O(\alpha_{1})\subseteq O^{\mathrm{sem}}(\alpha) and I(α1)Isem(α)I(\alpha_{1})\subseteq I^{\mathrm{sem}}(\alpha) is trivial.

When vI(α2)I(α1)v\in I(\alpha_{2})-I(\alpha_{1})

Let vI(α2)I(α1)v\in I(\alpha_{2})-I(\alpha_{1}). Consider an interpretation DD where

D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\}

and similarly D(M2)D(M_{2}) ={(1,,1;1,,1)}=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that 22 on vv and 11 elsewhere. Also, let ν2\nu_{2} be the valuation that is 11 on O(α1)O(\alpha_{1}) and agrees with ν1\nu_{1} everywhere else. Clearly, (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Further, (ν1,ν2)α2D(\nu_{1},\nu_{2})\not\in\llbracket\alpha_{2}\rrbracket_{D{}}. Indeed, since vI(α2)v\in I(\alpha_{2}) then ν1\nu_{1} should have the value of 11 on vv for (ν1,ν2)(\nu_{1},\nu_{2}) to be in α2D\llbracket\alpha_{2}\rrbracket_{D{}}. Take ν1:=ν1[v:1]\nu_{1}^{\prime}:=\nu_{1}[v:1]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Hence, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Indeed, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}} whence ν1=ν2\nu_{1}^{\prime}=\nu_{2}^{\prime}. Clearly, (ν1,ν1)α2D(\nu_{1}^{\prime},\nu_{1}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}} showing that (ν1,ν1)αD(\nu_{1}^{\prime},\nu_{1}^{\prime})\not\in\llbracket\alpha\rrbracket_{D{}} as desired. Therefore, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

When v(O(α1)O(α2))(I(α1)I(α2))v\in(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2}))-(I(\alpha_{1})\cup I(\alpha_{2}))

Let v(O(α1)O(α2))(I(α1)I(α2))v\in(O(\alpha_{1})\mathbin{\triangle}O(\alpha_{2}))-(I(\alpha_{1})\cup I(\alpha_{2})). Consider an interpretation DD where D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\} and D(M2)={(1,,1;1,,1)}D(M_{2})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 22 on vv and 11 elsewhere. Also let ν2\nu_{2} be the valuation that is 11 on O(α1)O(\alpha_{1}) and agrees with ν1\nu_{1} everywhere else. Clearly, (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Furthermore, (ν1,ν2)α2D(\nu_{1},\nu_{2})\not\in\llbracket\alpha_{2}\rrbracket_{D{}}. In particular, when vO(α1)(I(α1)I(α2)O(α2))v\in O(\alpha_{1})-(I(\alpha_{1})\cup I(\alpha_{2})\cup O(\alpha_{2})), we know that ν1(v)=2\nu_{1}(v)=2 and ν2(v)=1\nu_{2}(v)=1. Since vO(α2)v\not\in O(\alpha_{2}), then (ν1,ν2)α2D(\nu_{1},\nu_{2})\not\in\llbracket\alpha_{2}\rrbracket_{D{}}. In the other case, when vO(α2)(I(α1)I(α2)O(α1))v\in O(\alpha_{2})-(I(\alpha_{1})\cup I(\alpha_{2})\cup O(\alpha_{1})), we know that ν1(v)=ν2(v)=2\nu_{1}(v)=\nu_{2}(v)=2 since (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Consequently, (ν1,ν2)α2D(\nu_{1},\nu_{2})\not\in\llbracket\alpha_{2}\rrbracket_{D{}} since vO(α2)v\in O(\alpha_{2}) but ν2(v)=2\nu_{2}(v)=2. We verify that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Take ν1:=ν1[v:1]\nu_{1}^{\prime}:=\nu_{1}[v:1]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Hence, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Indeed, (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}} whence ν1=ν2\nu_{1}^{\prime}=\nu_{2}^{\prime}. Clearly, (ν1,ν1)α2D(\nu_{1}^{\prime},\nu_{1}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}} showing that (ν1,ν1)αD(\nu_{1}^{\prime},\nu_{1}^{\prime})\not\in\llbracket\alpha\rrbracket_{D{}} as desired. Therefore, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.6. Composition

Let α\alpha be of the form α1;α2\alpha_{1}\mathbin{;}\alpha_{2}, where α1\alpha_{1} is M1(x1¯;y1¯)M_{1}(\bar{x_{1}};\bar{y_{1}}) and α2\alpha_{2} is M2(x2¯;y2¯)M_{2}(\bar{x_{2}};\bar{y_{2}}). We distinguish different cases based on whether M1M_{1} or M2M_{2} is nullary. If M1M_{1} and M2M_{2} are both nullary there is nothing to prove.

5.6.1. M1M_{1} is nullary, M2M_{2} is not

Clearly, αD=α2D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{2}\rrbracket_{D{}} for any interpretation DD where D(M1)D(M_{1}) is not empty. In this case, I(α1)I(\alpha_{1}) and O(α1)O(\alpha_{1}) are both empty, then we observe that:

  • Osyn(α)=O(α2)O^{\mathrm{syn}}(\alpha)=O(\alpha_{2}).

  • Isyn(α)=I(α2)I^{\mathrm{syn}}(\alpha)=I(\alpha_{2}).

First, we verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α2)v\in O(\alpha_{2}). We know that Osyn(α2)Osem(α2)O^{\mathrm{syn}}(\alpha_{2})\subseteq O^{\mathrm{sem}}(\alpha_{2}) by induction, then vOsem(α2)v\in O^{\mathrm{sem}}(\alpha_{2}). By definition, we know that there is an interpretation DD^{\prime} and (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D^{\prime}} such that ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v). Take D′′D^{\prime\prime} to be the interpretation where D′′(M)=D(M)D^{\prime\prime}(M)=D^{\prime}(M) for any MM1M\neq M_{1} while D′′(M1)D^{\prime\prime}(M_{1}) is not empty. Clearly, (ν1,ν2)αD′′(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D^{\prime\prime}}, whence, M1M2M_{1}\neq M_{2}, (ν1,ν1)α1D′′(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D^{\prime\prime}} by Lemma 5.1, and αD′′=α2D\llbracket\alpha\rrbracket_{D^{\prime\prime}}=\llbracket\alpha_{2}\rrbracket_{D^{\prime}}. It follows then that vOsem(α)v\in O^{\mathrm{sem}}(\alpha).

Similarly, we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α2)v\in I(\alpha_{2}). We know that Isyn(α2)Isem(α2)I^{\mathrm{syn}}(\alpha_{2})\subseteq I^{\mathrm{sem}}(\alpha_{2}) by induction, then vIsem(α2)v\in I^{\mathrm{sem}}(\alpha_{2}). By definition, we know that there is an interpretation DD^{\prime}, (ν1,ν2)α2D(\nu_{1},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D^{\prime}}, and ν1(v)ν1(v)\nu_{1}^{\prime}(v)\neq\nu_{1}(v) such that (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha_{2}\rrbracket_{D^{\prime}} for every valuation ν2\nu_{2}^{\prime} that agrees with ν2\nu_{2} on Osem(α2)O^{\mathrm{sem}}(\alpha_{2}).

Take D′′D^{\prime\prime} to be the interpretation where D′′(M)=D(M)D^{\prime\prime}(M)=D^{\prime}(M) for any MM1M\neq M_{1} while D′′(M1)D^{\prime\prime}(M_{1}) is not empty. Clearly, αD′′=α2D\llbracket\alpha\rrbracket_{D^{\prime\prime}}=\llbracket\alpha_{2}\rrbracket_{D^{\prime}}, whence, M1M2M_{1}\neq M_{2}. Therefore, Osem(α2)Osem(α)O^{\mathrm{sem}}(\alpha_{2})\subseteq O^{\mathrm{sem}}(\alpha). Hence, vIsem(α)v\in I^{\mathrm{sem}}(\alpha). Indeed, (ν1,ν2)αD′′(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D^{\prime\prime}} and for any valuation ν2\nu_{2}^{\prime} if ν2\nu_{2}^{\prime} agrees with ν2\nu_{2} on Osem(α)O^{\mathrm{sem}}(\alpha), then ν2\nu_{2}^{\prime} agrees with ν2\nu_{2} on Osem(α2)O^{\mathrm{sem}}(\alpha_{2}).

5.6.2. M2M_{2} is nullary, M1M_{1} is not

Clearly, αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} for any interpretation DD where D(M2)D(M_{2}) is not empty. In this case, I(α2)I(\alpha_{2}) and O(α2)O(\alpha_{2}) are both empty, then we observe that:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1)I^{\mathrm{syn}}(\alpha)=I(\alpha_{1}).

First, we verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)v\in O(\alpha_{1}). We know that Osyn(α1)Osem(α1)O^{\mathrm{syn}}(\alpha_{1})\subseteq O^{\mathrm{sem}}(\alpha_{1}) by induction, then vOsem(α1)v\in O^{\mathrm{sem}}(\alpha_{1}). By definition, we know that there is an interpretation DD^{\prime} and (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D^{\prime}} such that ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v). Take D′′D^{\prime\prime} to be the interpretation where D′′(M)=D(M)D^{\prime\prime}(M)=D^{\prime}(M) for any MM2M\neq M_{2} while D′′(M2)D^{\prime\prime}(M_{2}) is not empty. Clearly, (ν1,ν2)αD′′(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D^{\prime\prime}}, whence, M1M2M_{1}\neq M_{2}, (ν2,ν2)α2D′′(\nu_{2},\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D^{\prime\prime}} by Lemma 5.1, and αD′′=α1D\llbracket\alpha\rrbracket_{D^{\prime\prime}}=\llbracket\alpha_{1}\rrbracket_{D^{\prime}}. It follows then that vOsem(α)v\in O^{\mathrm{sem}}(\alpha).

Similarly, we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1)v\in I(\alpha_{1}). We know that Isyn(α1)Isem(α1)I^{\mathrm{syn}}(\alpha_{1})\subseteq I^{\mathrm{sem}}(\alpha_{1}) by induction, then vIsem(α1)v\in I^{\mathrm{sem}}(\alpha_{1}). By definition, we know that there is an interpretation DD^{\prime}, (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D^{\prime}}, and ν1(v)ν1(v)\nu_{1}^{\prime}(v)\neq\nu_{1}(v) such that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha_{1}\rrbracket_{D^{\prime}} for every valuation ν2\nu_{2}^{\prime} that agrees with ν2\nu_{2} on Osem(α1)O^{\mathrm{sem}}(\alpha_{1}).

Take D′′D^{\prime\prime} to be the interpretation where D′′(M)=D(M)D^{\prime\prime}(M)=D^{\prime}(M) for any MM2M\neq M_{2} while D′′(M2)D^{\prime\prime}(M_{2}) is not empty. Clearly, αD′′=α1D\llbracket\alpha\rrbracket_{D^{\prime\prime}}=\llbracket\alpha_{1}\rrbracket_{D^{\prime}}, whence, M1M2M_{1}\neq M_{2}. Therefore, Osem(α1)Osem(α)O^{\mathrm{sem}}(\alpha_{1})\subseteq O^{\mathrm{sem}}(\alpha). Hence, vIsem(α)v\in I^{\mathrm{sem}}(\alpha). Indeed, (ν1,ν2)αD′′(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D^{\prime\prime}} and for any valuation ν2\nu_{2}^{\prime} if ν2\nu_{2}^{\prime} agrees with ν2\nu_{2} on Osem(α)O^{\mathrm{sem}}(\alpha), then ν2\nu_{2}^{\prime} agrees with ν2\nu_{2} on Osem(α1)O^{\mathrm{sem}}(\alpha_{1}).

5.6.3. Neither M1M_{1} nor M2M_{2} is nullary

Recall the definitions:

  • Osyn(α)=O(α1)O(α2)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1})\cup O(\alpha_{2}).

  • Isyn(α)=I(α1)(I(α2)O(α1))I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup(I(\alpha_{2})-O(\alpha_{1})).

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)O(α2)v\in O(\alpha_{1})\cup O(\alpha_{2}). Consider an interpretation DD such that

D(M1)={(1,,1;2,,2),(i1,,im;3,,3)}D(M_{1})=\{(1,\ldots,1;2,\ldots,2),(i_{1},\ldots,i_{m};3,\ldots,3)\}

, where i1,,imi_{1},\ldots,i_{m} are all the combinations of {1,2}\{1,2\}. Similarly,

D(M2)={(1,,1;2,,2),(i1,,in;3,,3)}D(M_{2})=\{(1,\ldots,1;2,\ldots,2),(i_{1},\ldots,i_{n};3,\ldots,3)\}

, where i1,,ini_{1},\ldots,i_{n} are all the combinations of {1,2}\{1,2\}.

Let ν1\nu_{1} be the valuation that is 11 everywhere. Also, let ν\nu be the valuation that is 22 on O(α1)O(\alpha_{1}) and 11 elsewhere. Clearly, (ν1,ν)α1D(\nu_{1},\nu)\in\llbracket\alpha_{1}\rrbracket_{D{}}. Let ν2\nu_{2} be the valuation that is 33 on O(α2)O(\alpha_{2}), 22 on O(α1)O(α2)O(\alpha_{1})-O(\alpha_{2}), and 11 elsewhere. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}, whence (ν,ν2)α2D(\nu,\nu_{2})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Hence, vOsem(α)v\in O^{\mathrm{sem}}(\alpha). Indeed, ν2(v)ν1(v)\nu_{2}(v)\neq\nu_{1}(v) for vOsyn(α)v\in O^{\mathrm{syn}}(\alpha).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1)(I(α2)O(α1))v\in I(\alpha_{1})\cup(I(\alpha_{2})-O(\alpha_{1})). Consider an interpretation DD where D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\} and similarly D(M2)={(1,,1;1,,1)}D(M_{2})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}}, whence (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}} and (ν1,ν1)α2D(\nu_{1},\nu_{1})\in\llbracket\alpha_{2}\rrbracket_{D{}}.

Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no valuation ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, when vI(α1)v\in I(\alpha_{1}). Clearly, there is no ν2\nu_{2}^{\prime} such that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}. On the other hand, when vI(α2)O(α1)v\in I(\alpha_{2})-O(\alpha_{1}). Clearly, (ν1,ν)α1D(\nu_{1}^{\prime},\nu)\in\llbracket\alpha_{1}\rrbracket_{D{}}, whence ν=ν1\nu=\nu_{1}^{\prime}. However, there is no ν2\nu_{2}^{\prime} such that (ν1,ν2)α2D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{2}\rrbracket_{D{}}. Thus, there is no ν2\nu_{2}^{\prime} such that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha\rrbracket_{D{}} as desired. We conclude that vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.7. Converse

Let α\alpha be of the form α1\alpha_{1}^{\smallsmile}, where α1:=M(x¯;y¯)\alpha_{1}:=M(\bar{x};\bar{y}). Recall the definitions:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1)O(α1)I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup O(\alpha_{1}).

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)v\in O(\alpha_{1}). Consider an interpretation DD where

D(M)={(1,,1;2,,2)}.D(M)=\{(1,\ldots,1;2,\ldots,2)\}.

Let ν1\nu_{1} be the valuation that is 22 on O(α1)O(\alpha_{1}) and 11 elsewhere. Also let ν2\nu_{2} be the valuation that is 11 everywhere. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since (ν2,ν1)α1D(\nu_{2},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1)O(α1)v\in I(\alpha_{1})\cup O(\alpha_{1}). Consider the same interpretation DD and the same valuations ν1\nu_{1} and ν2\nu_{2}. We established that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Take ν1:=ν1[v:3]\nu_{1}^{\prime}:=\nu_{1}[v:3]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Indeed, when vO(α1)v\in O(\alpha_{1}), then ν1\nu_{1} have to be 22 on vv. In the other case, when vI(α1)O(α1)v\in I(\alpha_{1})-O(\alpha_{1}), then ν1\nu_{1} have to be 11 on vv. Thus, there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}} as desired. Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.8. Left Cylindrification

Let α\alpha be of the form cylxl(α1)\mathrm{cyl}_{x}^{l}({\alpha_{1}}), where α1:=M(x¯;y¯)\alpha_{1}:=M(\bar{x};\bar{y}). Recall the definitions:

  • Osyn(α)=O(α1){x}O^{\mathrm{syn}}(\alpha)=O(\alpha_{1})\cup\{x\}.

  • Isyn(α)=I(α1){x}I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})-\{x\}.

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1){x}v\in O(\alpha_{1})\cup\{x\}. Consider an interpretation DD where D(M)={(1,,1;2,,2)}D(M)=\{(1,\ldots,1;2,\ldots,2)\}. Let ν1\nu_{1} be the valuation that is 33 on xx and 11 elsewhere. Also let ν2\nu_{2} be the valuation that is 22 on O(α1)O(\alpha_{1}) and 11 everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since (ν1[x:1],ν2)α1D(\nu_{1}[x:1],\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1){x}v\in I(\alpha_{1})-\{x\}. Consider the same interpretation DD and the same valuations ν1\nu_{1} and ν2\nu_{2}. We established that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Indeed, this is true since vI(α1){x}v\in I(\alpha_{1})-\{x\}. Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.9. Right Cylindrification

Let α\alpha be of the form cylxr(α1)\mathrm{cyl}_{x}^{r}({\alpha_{1}}), where α1:=M(x¯;y¯)\alpha_{1}:=M(\bar{x};\bar{y}). Recall the definitions:

  • Osyn(α)=O(α1){x}O^{\mathrm{syn}}(\alpha)=O(\alpha_{1})\cup\{x\}.

  • Isyn(α)=I(α1)I^{\mathrm{syn}}(\alpha)=I(\alpha_{1}).

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1){x}v\in O(\alpha_{1})\cup\{x\}. Consider an interpretation DD where D(M)={(1,,1;2,,2)}D(M)=\{(1,\ldots,1;2,\ldots,2)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Also let ν2\nu_{2} be the valuation that is 22 on O(α1)O(\alpha_{1}) and on xx and 11 everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since either (ν1,ν2[x:1])α1D(\nu_{1},\nu_{2}[x:1])\in\llbracket\alpha_{1}\rrbracket_{D{}} or (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1)v\in I(\alpha_{1}). Consider the same interpretation DD and the same valuations ν1\nu_{1} and ν2\nu_{2}. We established that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Indeed, this is true since vI(α1)v\in I(\alpha_{1}). Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.10. Left Selection

Let α\alpha be of the form σx=yl(α1)\sigma_{x=y}^{\mathit{l}}({\alpha_{1}}), where α1:=M(u¯;w¯)\alpha_{1}:=M(\bar{u};\bar{w}), u¯=u1,,un\bar{u}=u_{1},\ldots,u_{n}, and w¯=w1,,wm\bar{w}=w_{1},\ldots,w_{m}. We distinguish different cases based on whether x=synyx\mathop{=_{\mathrm{syn}}}y.

When xx and yy are the same variable (x=synyx\mathop{=_{\mathrm{syn}}}y)

Recall the definitions in this case:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1)I^{\mathrm{syn}}(\alpha)=I(\alpha_{1}).

We proceed to verify that Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Indeed, this is true since αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} for any interpretation DD because of x=synyx\mathop{=_{\mathrm{syn}}}y.

When xx and yy are different variables (xsynyx\mathop{\not=_{\mathrm{syn}}}y)

Recall the definitions in this case:

  • Osyn(α):=O(α1)O^{\mathrm{syn}}(\alpha):=O(\alpha_{1}).

  • Isyn(α):=I(α1){x,y}I^{\mathrm{syn}}(\alpha):=I(\alpha_{1})\cup\{x,y\}.

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)v\in O(\alpha_{1}). Consider an interpretation DD where

D(M)={(1,,1;2,,2)}.D(M)=\{(1,\ldots,1;2,\ldots,2)\}.

Let ν1\nu_{1} be the valuation that is 11 everywhere. Also let ν2\nu_{2} be the valuation that is 22 on O(α1)O(\alpha_{1}) and 11 everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and ν1(x)=ν1(y)\nu_{1}(x)=\nu_{1}(y). Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1){x,y}v\in I(\alpha_{1})\cup\{x,y\}. Consider an interpretation DD where D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}} and ν1(x)=ν1(y)\nu_{1}(x)=\nu_{1}(y). Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, when vI(α1)v\in I(\alpha_{1}), it is clear that there is no ν2\nu_{2}^{\prime} such that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}. In the other case, when vv is either xx or yy, there is no ν2\nu_{2}^{\prime} such that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Indeed, this is true since xsynyx\mathop{\not=_{\mathrm{syn}}}y and ν1(x)ν1(y)\nu_{1}^{\prime}(x)\neq\nu_{1}^{\prime}(y). Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.11. Right Selection

Let α\alpha be of the form σx=yr(α1)\sigma_{x=y}^{\mathit{r}}({\alpha_{1}}), where α1:=M(u¯;w¯)\alpha_{1}:=M(\bar{u};\bar{w}), u¯=u1,,un\bar{u}=u_{1},\ldots,u_{n}, and w¯=w1,,wm\bar{w}=w_{1},\ldots,w_{m}. We distinguish different cases based on whether x=synyx\mathop{=_{\mathrm{syn}}}y.

When xx and yy are the same variable (x=synyx\mathop{=_{\mathrm{syn}}}y)

Recall the definitions in this case:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1)I^{\mathrm{syn}}(\alpha)=I(\alpha_{1}).

We proceed to verify that Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Indeed, this is true since αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} for any interpretation DD because of x=synyx\mathop{=_{\mathrm{syn}}}y.

When xx and yy are different variables (xsynyx\mathop{\not=_{\mathrm{syn}}}y)

Recall the definitions in this case:

  • Osyn(α):=O(α1)O^{\mathrm{syn}}(\alpha):=O(\alpha_{1}).

  • Isyn(α):=I(α1)({x,y}O(α1))I^{\mathrm{syn}}(\alpha):=I(\alpha_{1})\cup(\{x,y\}-O(\alpha_{1})).

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)v\in O(\alpha_{1}). Consider an interpretation DD where

D(M)={(i1,,in;2,,2)}D(M)=\{(i_{1},\ldots,i_{n};2,\ldots,2)\}

such that ij=2i_{j}=2 if uju_{j} is either xx or yy and ujO(α1)u_{j}\not\in O(\alpha_{1}), otherwise, uj=1u_{j}=1. Let ν1\nu_{1} be the valuation that is 22 on xx if xO(α1)x\not\in O(\alpha_{1}), 22 on yy if yO(α1)y\not\in O(\alpha_{1}), and 11 everywhere. Also let ν2\nu_{2} be the valuation that is 22 on O(α1)O(\alpha_{1}) and agrees with ν1\nu_{1} everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and ν2(x)=ν2(y)\nu_{2}(x)=\nu_{2}(y). Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1){x,y}v\in I(\alpha_{1})\cup\{x,y\}. Consider an interpretation DD where D(M1)={(1,,1;1,,1)}D(M_{1})=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}} and ν1(x)=ν1(y)\nu_{1}(x)=\nu_{1}(y). Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, when vI(α1)v\in I(\alpha_{1}), it is clear that there is no ν2\nu_{2}^{\prime} such that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Now we need to verify the same when vv is xx or yy and vI(α1)v\not\in I(\alpha_{1}). Thereto, suppose (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In the case of vv is xx and xI(α1)x\not\in I(\alpha_{1}), this is only possible when xO(α1)x\not\in O(\alpha_{1}). Therefore, ν2(x)=ν1(x)=2\nu_{2}^{\prime}(x)=\nu_{1}^{\prime}(x)=2 but ν2(y)=1\nu_{2}^{\prime}(y)=1 whether yO(α1)y\in O(\alpha_{1}) or not. Hence, (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha\rrbracket_{D{}} since xsynyx\mathop{\not=_{\mathrm{syn}}}y and ν2(x)ν2(y)\nu_{2}^{\prime}(x)\neq\nu_{2}^{\prime}(y). The case when vv is yy and yI(α1)y\not\in I(\alpha_{1}) is symmetric. Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

5.12. Left-to-Right Selection

Let α\alpha be of the form σx=y𝑙𝑟(α1)\sigma_{x=y}^{\mathit{lr}}({\alpha_{1}}), where α1:=M(u¯;w¯)\alpha_{1}:=M(\bar{u};\bar{w}), u¯=u1,,un\bar{u}=u_{1},\ldots,u_{n}, and w¯=w1,,wm\bar{w}=w_{1},\ldots,w_{m}. We distinguish different cases based on whether x=synyx\mathop{=_{\mathrm{syn}}}y and yO(α1)y\in O(\alpha_{1}).

When x=synyx\mathop{=_{\mathrm{syn}}}y and yO(α1)y\in O(\alpha_{1})

Recall the definitions in this case:

  • Osyn(α)=O(α1){x}O^{\mathrm{syn}}(\alpha)=O(\alpha_{1})-\{x\}.

  • Isyn(α)=I(α1){x}I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup\{x\}.

In what follows, since x=synyx\mathop{=_{\mathrm{syn}}}y we will refer to both of them with xx. We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1){x}v\in O(\alpha_{1})-\{x\}. Consider an interpretation DD such that D(M)={(1,,1;o1,,om)}D(M)=\{(1,\ldots,1;o_{1},\ldots,o_{m})\} where oj=1o_{j}=1 if wj=yw_{j}=y, otherwise oj=2o_{j}=2 . Let ν1\nu_{1} be the valuation that is 11 everywhere. Also let ν2\nu_{2} be the valuation that is 22 on O(α1){x}O(\alpha_{1})-\{x\} and 11 everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and ν1(x)=ν2(x)\nu_{1}(x)=\nu_{2}(x). Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1){x}v\in I(\alpha_{1})\cup\{x\}. Consider an interpretation DD where D(M)={(1,,1;1,,1)}D(M)=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, when vI(α1)v\in I(\alpha_{1}) it is clear that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha_{1}\rrbracket_{D{}}. On the other hand, when v=xv=x and xO(α1)I(α1)x\in O(\alpha_{1})-I(\alpha_{1}), clearly ν1(x)=21=ν2(x)\nu_{1}^{\prime}(x)=2\neq 1=\nu_{2}^{\prime}(x). Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

When x=synyx\mathop{=_{\mathrm{syn}}}y and yO(α1)y\not\in O(\alpha_{1})

Recall the definitions in this case:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1)I^{\mathrm{syn}}(\alpha)=I(\alpha_{1}).

In what follows, since x=synyx\mathop{=_{\mathrm{syn}}}y we will refer to both of them with xx. We proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha) and Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Indeed, this is true since αD=α1D\llbracket\alpha\rrbracket_{D{}}=\llbracket\alpha_{1}\rrbracket_{D{}} for any interpretation DD because of x=synyx\mathop{=_{\mathrm{syn}}}y and xO(α1)x\not\in O(\alpha_{1}).

When xsynyx\mathop{\not=_{\mathrm{syn}}}y and yO(α1)y\in O(\alpha_{1})

Recall the definitions in this case:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1){x}I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup\{x\}.

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)v\in O(\alpha_{1}). Consider an interpretation DD such that D(M)={(i1,,in;o1,,om)}D(M)=\{(i_{1},\ldots,i_{n};o_{1},\ldots,o_{m})\} where ij=2i_{j}=2 if uj=xu_{j}=x, otherwise ij=1i_{j}=1. Also, oj=3o_{j}=3 if wj=xw_{j}=x, otherwise oj=2o_{j}=2 . Let ν1\nu_{1} be the valuation that is 22 on xx and 11 everywhere else. Also let ν2\nu_{2} be the valuation that is 22 on O(α1){x}O(\alpha_{1})-\{x\}, 33 on xx if xO(α1)x\in O(\alpha_{1}) and agrees with ν1\nu_{1} everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and ν1(x)=ν2(y)\nu_{1}(x)=\nu_{2}(y). Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha). Indeed, in both cases whether xO(α1)x\in O(\alpha_{1}) or not, ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1){x}v\in I(\alpha_{1})\cup\{x\}. Consider an interpretation DD where D(M)={(1,,1;1,,1)}D(M)=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, when vI(α1)v\in I(\alpha_{1}) it is clear that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha_{1}\rrbracket_{D{}}. On the other hand, when v=xv=x and yO(α1)y\in O(\alpha_{1}), clearly ν1(x)=21=ν2(y)\nu_{1}^{\prime}(x)=2\neq 1=\nu_{2}^{\prime}(y). Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

When xsynyx\mathop{\not=_{\mathrm{syn}}}y and yO(α1)y\not\in O(\alpha_{1})

Recall the definitions in this case:

  • Osyn(α)=O(α1)O^{\mathrm{syn}}(\alpha)=O(\alpha_{1}).

  • Isyn(α)=I(α1){x,y}I^{\mathrm{syn}}(\alpha)=I(\alpha_{1})\cup\{x,y\}.

We first proceed to verify Osyn(α)Osem(α)O^{\mathrm{syn}}(\alpha)\subseteq O^{\mathrm{sem}}(\alpha). Let vO(α1)v\in O(\alpha_{1}). Consider an interpretation DD such that D(M)={(1,,1;2,,2)}D(M)=\{(1,\ldots,1;2,\ldots,2)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Also let ν2\nu_{2} be the valuation that is 22 on O(α1)O(\alpha_{1}) and 11 everywhere else. Clearly, (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν2)α1D(\nu_{1},\nu_{2})\in\llbracket\alpha_{1}\rrbracket_{D{}} and ν1(x)=ν2(y)\nu_{1}(x)=\nu_{2}(y). Indeed, this is true since yO(α1)y\not\in O(\alpha_{1}), then ν1(y)=ν2(y)\nu_{1}(y)=\nu_{2}(y). Therefore, vOsem(α)v\in O^{\mathrm{sem}}(\alpha) since ν1(v)ν2(v)\nu_{1}(v)\neq\nu_{2}(v).

Now we proceed to verify Isyn(α)Isem(α)I^{\mathrm{syn}}(\alpha)\subseteq I^{\mathrm{sem}}(\alpha). Let vI(α1){x,y}v\in I(\alpha_{1})\cup\{x,y\}. Consider an interpretation DD where D(M)={(1,,1;1,,1)}D(M)=\{(1,\ldots,1;1,\ldots,1)\}. Let ν1\nu_{1} be the valuation that is 11 everywhere. Clearly, (ν1,ν1)αD(\nu_{1},\nu_{1})\in\llbracket\alpha\rrbracket_{D{}} since (ν1,ν1)α1D(\nu_{1},\nu_{1})\in\llbracket\alpha_{1}\rrbracket_{D{}}. Take ν1:=ν1[v:2]\nu_{1}^{\prime}:=\nu_{1}[v:2]. We establish that vIsem(α)v\in I^{\mathrm{sem}}(\alpha) by arguing that there is no ν2\nu_{2}^{\prime} for which (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. Thereto, suppose that (ν1,ν2)αD(\nu_{1}^{\prime},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}}. In particular, when vI(α1)v\in I(\alpha_{1}) it is clear that (ν1,ν2)α1D(\nu_{1}^{\prime},\nu_{2}^{\prime})\not\in\llbracket\alpha_{1}\rrbracket_{D{}}. On the other hand, when v=xv=x or v=yv=y, clearly ν1(x)(ν1(y)=ν2(y))\nu_{1}^{\prime}(x)\neq(\nu_{1}^{\prime}(y)=\nu_{2}^{\prime}(y)) since yO(α1)y\not\in O(\alpha_{1}) and xsynyx\mathop{\not=_{\mathrm{syn}}}y. Consequently, vIsem(α)v\in I^{\mathrm{sem}}(\alpha).

6. Optimality Theorem Proof

In this section, we prove Theorem 3.28. Thus, we would like to show that

Isyn(α)I(α) and Osyn(α)O(α).I^{\mathrm{syn}}(\alpha)\subseteq I(\alpha)\text{ and }O^{\mathrm{syn}}(\alpha)\subseteq O(\alpha).

for any LIF expression α\alpha, assuming that (I,O)(I,O) is a sound and compositional input–output definition. The proof is by induction on the structure of α\alpha.

Atomic Modules

For atomic module expressions α\alpha, this follows directly from Theorem 3.27.

Identity

For α=𝑖𝑑\alpha=\mathit{id}, this is immediate since Isyn(𝑖𝑑)=Osyn(𝑖𝑑)=I^{\mathrm{syn}}(\mathit{id})=O^{\mathrm{syn}}(\mathit{id})=\emptyset.

Binary Operators

For α=α1α2\alpha=\alpha_{1}\boxdot\alpha_{2}, where \boxdot is a binary operator, we define two atomic module expressions α1=M1(x¯;y¯)\alpha_{1}^{\prime}=M_{1}(\bar{x};\bar{y}) and α2=M2(u¯,v¯)\alpha_{2}^{\prime}=M_{2}(\bar{u},\bar{v}) where x¯=I(α1)\bar{x}=I(\alpha_{1}), y¯=O(α1)\bar{y}=O(\alpha_{1}), u¯=I(α2)\bar{u}=I(\alpha_{2}), and v¯=O(α2)\bar{v}=O(\alpha_{2}) with MiM_{i} distinct module names of the right arity.

Since (I,O)(I,O) is sound, we know that the following holds for i{1,2}i\in\{1,2\}:

(1) I(αi)=I(αi)=Isyn(αi) and O(αi)=O(αi)=Osyn(αi).I(\alpha_{i})=I(\alpha^{\prime}_{i})=I^{\mathrm{syn}}(\alpha^{\prime}_{i})\text{ and }O(\alpha_{i})=O(\alpha^{\prime}_{i})=O^{\mathrm{syn}}(\alpha^{\prime}_{i}).

Moreover by soundness and Proposition 3.20, we know that:

(2) Isem(α1α2)I(α1α2) and Osem(α1α2)O(α1α2).I^{\mathrm{sem}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})\subseteq I(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})\text{ and }O^{\mathrm{sem}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})\subseteq O(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2}).

From the Precision Theorem, we know that:

(3) Isyn(α1α2)=Isem(α1α2) and Osyn(α1α2)=Osem(α1α2).I^{\mathrm{syn}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})=I^{\mathrm{sem}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})\text{ and }O^{\mathrm{syn}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})=O^{\mathrm{sem}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2}).

From the compositionality of (I,O)(I,O), we know that

(4) I(α1α2)=I(α1α2) and O(α1α2)=O(α1α2).I(\alpha_{1}^{\prime}\boxdot\alpha_{2}^{\prime})=I(\alpha_{1}\boxdot\alpha_{2})\text{ and }O(\alpha_{1}^{\prime}\boxdot\alpha_{2}^{\prime})=O(\alpha_{1}\boxdot\alpha_{2}).

By combining Equations (24), we find that:

(5) Isyn(α1α2)I(α1α2) and Osyn(α1α2)O(α1α2).I^{\mathrm{syn}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})\subseteq I(\alpha_{1}\boxdot\alpha_{2})\text{ and }O^{\mathrm{syn}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})\subseteq O(\alpha_{1}\boxdot\alpha_{2}).

We now claim the following

(6) Isyn(α1α2)Isyn(α1α2) and Osyn(α1α2)Osyn(α1α2).I^{\mathrm{syn}}(\alpha_{1}\boxdot\alpha_{2})\subseteq I^{\mathrm{syn}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2})\text{ and }O^{\mathrm{syn}}(\alpha_{1}\boxdot\alpha_{2})\subseteq O^{\mathrm{syn}}(\alpha^{\prime}_{1}\boxdot\alpha^{\prime}_{2}).

If we prove our claim, then combining Equations (56) establishes our theorem for binary operators.

First, we prove our claim for the inductive cases for outputs of the different binary operators. From the inductive hypothesis and Equation (1), we know that for i{1,2}i\in\{1,2\}:

Osyn(αi)O(αi)=Osyn(αi)O^{\mathrm{syn}}(\alpha_{i})\subseteq O(\alpha_{i})=O^{\mathrm{syn}}(\alpha_{i}^{\prime})

Hence, it is clear that:

  • Osyn(α1)Osyn(α2)O^{\mathrm{syn}}(\alpha_{1})\cup O^{\mathrm{syn}}(\alpha_{2}) is a subset of Osyn(α1)Osyn(α2)O^{\mathrm{syn}}(\alpha^{\prime}_{1})\cup O^{\mathrm{syn}}(\alpha^{\prime}_{2}), which settles the cases when {,;}\boxdot\in\{\cup,\mathbin{;}\} since Osyn(βγ)=Osyn(β)Osyn(γ)O^{\mathrm{syn}}(\beta\boxdot\gamma)=O^{\mathrm{syn}}(\beta)\cup O^{\mathrm{syn}}(\gamma) for any LIF expressions β\beta and γ\gamma.

  • Osyn(α1)Osyn(α2)O^{\mathrm{syn}}(\alpha_{1})\cap O^{\mathrm{syn}}(\alpha_{2}) is a subset of Osyn(α1)Osyn(α2)O^{\mathrm{syn}}(\alpha^{\prime}_{1})\cap O^{\mathrm{syn}}(\alpha^{\prime}_{2}), which settles the case when \boxdot is \cap since Osyn(βγ)=Osyn(β)Osyn(γ)O^{\mathrm{syn}}(\beta\boxdot\gamma)=O^{\mathrm{syn}}(\beta)\cap O^{\mathrm{syn}}(\gamma) for any LIF expressions β\beta and γ\gamma.

  • Osyn(α1)O^{\mathrm{syn}}(\alpha_{1}) is a subset of Osyn(α1)O^{\mathrm{syn}}(\alpha^{\prime}_{1}), which settles the case when \boxdot is - since Osyn(βγ)=Osyn(β)O^{\mathrm{syn}}(\beta\boxdot\gamma)=O^{\mathrm{syn}}(\beta) for any LIF expressions β\beta and γ\gamma.

Now, we consider the inductive cases for the inputs of the different binary operators. Similar to the outputs, we know that for i{1,2}i\in\{1,2\}:

Isyn(αi)I(αi)=Isyn(αi)I^{\mathrm{syn}}(\alpha_{i})\subseteq I(\alpha_{i})=I^{\mathrm{syn}}(\alpha_{i}^{\prime})

Consequently,

  • when xIsyn(α1)(Isyn(α2)Osyn(α1))x\in I^{\mathrm{syn}}(\alpha_{1})\cup(I^{\mathrm{syn}}(\alpha_{2})-O^{\mathrm{syn}}(\alpha_{1})), we consider the following cases:

    • if xIsyn(α1)x\in I^{\mathrm{syn}}(\alpha_{1}), then it is clear that xIsyn(α1)x\in I^{\mathrm{syn}}(\alpha^{\prime}_{1});

    • if x(Isyn(α2)Osyn(α1))x\in(I^{\mathrm{syn}}(\alpha_{2})-O^{\mathrm{syn}}(\alpha_{1})), then we know that xIsyn(α2)x\in I^{\mathrm{syn}}(\alpha^{\prime}_{2}). Moreover, since xOsyn(α1)x\not\in O^{\mathrm{syn}}(\alpha_{1}), we know by soundness of (Isyn,Osyn)(I^{\mathrm{syn}},O^{\mathrm{syn}}) that xOsem(α1)x\not\in O^{\mathrm{sem}}(\alpha_{1}). Now, we differentiate between two cases

      • *

        when xOsyn(α1)x\not\in O^{\mathrm{syn}}(\alpha^{\prime}_{1}), it is clear that x(Isyn(α2)Osyn(α1))x\in(I^{\mathrm{syn}}(\alpha^{\prime}_{2})-O^{\mathrm{syn}}(\alpha^{\prime}_{1})).

      • *

        when xOsyn(α1)x\in O^{\mathrm{syn}}(\alpha^{\prime}_{1}), we know from Equation (1) that xO(α1)x\in O(\alpha_{1}). From Lemma 3.22 and Equation (1), it follows that xI(α1)x\in I(\alpha_{1}) and xIsyn(α1)x\in I^{\mathrm{syn}}(\alpha^{\prime}_{1}).

    In all cases, we verify that xIsyn(α1)(Isyn(α2)Osyn(α1))x\in I^{\mathrm{syn}}(\alpha^{\prime}_{1})\cup(I^{\mathrm{syn}}(\alpha^{\prime}_{2})-O^{\mathrm{syn}}(\alpha^{\prime}_{1})). This settles the case when \boxdot is ;\mathbin{;} since Isyn(βγ)=Isyn(β)(Isyn(γ)Osyn(β))I^{\mathrm{syn}}(\beta\boxdot\gamma)=I^{\mathrm{syn}}(\beta)\cup(I^{\mathrm{syn}}(\gamma)-O^{\mathrm{syn}}(\beta)) for any LIF expressions β\beta and γ\gamma.

  • when xIsyn(α1)Isyn(α2)(Osyn(α1)Osyn(α2))x\in I^{\mathrm{syn}}(\alpha_{1})\cup I^{\mathrm{syn}}(\alpha_{2})\cup(O^{\mathrm{syn}}(\alpha_{1})\mathbin{\triangle}O^{\mathrm{syn}}(\alpha_{2})), we consider the following cases:

    • if xIsyn(αi)x\in I^{\mathrm{syn}}(\alpha_{i}) for some ii, then it is clear that xIsyn(αi)x\in I^{\mathrm{syn}}(\alpha^{\prime}_{i}).

    • if xOsyn(αi)Osyn(αj)x\in O^{\mathrm{syn}}(\alpha_{i})-O^{\mathrm{syn}}(\alpha_{j}) for iji\neq j, we know that xOsyn(αi)x\in O^{\mathrm{syn}}(\alpha^{\prime}_{i}). Since xOsyn(αj)x\not\in O^{\mathrm{syn}}(\alpha_{j}), we know by soundness that xOsem(αj)x\not\in O^{\mathrm{sem}}(\alpha_{j}). Now, we differentiate between two cases

      • *

        when xOsyn(αj)x\not\in O^{\mathrm{syn}}(\alpha^{\prime}_{j}), it is clear that x(Osyn(αi)Osyn(αj))x\in(O^{\mathrm{syn}}(\alpha^{\prime}_{i})\mathbin{\triangle}O^{\mathrm{syn}}(\alpha^{\prime}_{j})).

      • *

        when xOsyn(αj)x\in O^{\mathrm{syn}}(\alpha^{\prime}_{j}), we know from Equation (1) that xO(αj)x\in O(\alpha_{j}). From Lemma 3.22 and Equation (1), it follows that xI(αj)x\in I(\alpha_{j}) and xIsyn(αj)x\in I^{\mathrm{syn}}(\alpha^{\prime}_{j}).

    In all cases, we verify that xIsyn(α1)Isyn(α2)(Osyn(α1)Osyn(α2))x\in I^{\mathrm{syn}}(\alpha^{\prime}_{1})\cup I^{\mathrm{syn}}(\alpha^{\prime}_{2})\cup(O^{\mathrm{syn}}(\alpha^{\prime}_{1})\mathbin{\triangle}O^{\mathrm{syn}}(\alpha^{\prime}_{2})). This settles the cases when {,,}\boxdot\in\{\cup,\cap,-\} since Isyn(βγ)=Isyn(β)Isyn(γ)(Osyn(β)Osyn(γ))I^{\mathrm{syn}}(\beta\boxdot\gamma)=I^{\mathrm{syn}}(\beta)\cup I^{\mathrm{syn}}(\gamma)\cup(O^{\mathrm{syn}}(\beta)\mathbin{\triangle}O^{\mathrm{syn}}(\gamma)) for any LIF expressions β\beta and γ\gamma.

Unary Operators

We follow a similar approach for unary operators. For α=α1\alpha=\square\alpha_{1}, where \square is a unary operator, we define one atomic module expression α1=M1(x¯;y¯)\alpha_{1}^{\prime}=M_{1}(\bar{x};\bar{y}) where x¯=I(α1)\bar{x}=I(\alpha_{1}), and y¯=O(α1)\bar{y}=O(\alpha_{1}).

Since (I,O)(I,O) is sound, we know that the following holds:

(7) I(α1)=I(α1)=Isyn(α1) and O(α1)=O(α1)=Osyn(α1).I(\alpha_{1})=I(\alpha^{\prime}_{1})=I^{\mathrm{syn}}(\alpha^{\prime}_{1})\text{ and }O(\alpha_{1})=O(\alpha^{\prime}_{1})=O^{\mathrm{syn}}(\alpha^{\prime}_{1}).

Moreover, we know that:

(8) Isem(α1)I(α1) and Osem(α1)O(α1).I^{\mathrm{sem}}(\square\alpha^{\prime}_{1})\subseteq I(\square\alpha^{\prime}_{1})\text{ and }O^{\mathrm{sem}}(\square\alpha^{\prime}_{1})\subseteq O(\square\alpha^{\prime}_{1}).

From the precision theorem, we know that:

(9) Isyn(α1)=Isem(α1) and Osyn(α1)=Osem(α1).I^{\mathrm{syn}}(\square\alpha^{\prime}_{1})=I^{\mathrm{sem}}(\square\alpha^{\prime}_{1})\text{ and }O^{\mathrm{syn}}(\square\alpha^{\prime}_{1})=O^{\mathrm{sem}}(\square\alpha^{\prime}_{1}).

From the compositionality of (I,O)(I,O), we know that

(10) I(α1)=I(α1) and O(α1)=O(α1).I(\square\alpha_{1}^{\prime})=I(\square\alpha_{1})\text{ and }O(\square\alpha_{1}^{\prime})=O(\square\alpha_{1}).

By combining Equations (810), we find that:

(11) Isyn(α1)I(α1) and Osyn(α1)O(α1).I^{\mathrm{syn}}(\square\alpha^{\prime}_{1})\subseteq I(\square\alpha_{1})\text{ and }O^{\mathrm{syn}}(\square\alpha^{\prime}_{1})\subseteq O(\square\alpha_{1}).

We now claim the following

(12) Isyn(α1)Isyn(α1) and Osyn(α1)Osyn(α1).I^{\mathrm{syn}}(\square\alpha_{1})\subseteq I^{\mathrm{syn}}(\square\alpha^{\prime}_{1})\text{ and }O^{\mathrm{syn}}(\square\alpha_{1})\subseteq O^{\mathrm{syn}}(\square\alpha^{\prime}_{1}).

If we prove our claim, then combining Equations (1112) establishes our theorem for unary operators.

Proving our claim for the inductive cases for outputs of the different unary operators follows directly from the inductive hypothesis and Equation (7), which states that:

Osyn(α1)O(α1)=Osyn(α1).O^{\mathrm{syn}}(\alpha_{1})\subseteq O(\alpha_{1})=O^{\mathrm{syn}}(\alpha_{1}^{\prime}).

Indeed, Osyn(α1)O^{\mathrm{syn}}(\square\alpha_{1}) and Osyn(α1)O^{\mathrm{syn}}(\square\alpha_{1}^{\prime}), respectively, simply equal Osyn(α1)O^{\mathrm{syn}}(\alpha_{1}) and Osyn(α1)O^{\mathrm{syn}}(\alpha_{1}^{\prime}), except for the possible addition or removal of some fixed variable that depends only on \square.

Now, we consider the inductive cases for inputs. Similar to the outputs, we know that:

Isyn(α1)I(α1)=Isyn(α1).I^{\mathrm{syn}}(\alpha_{1})\subseteq I(\alpha_{1})=I^{\mathrm{syn}}(\alpha_{1}^{\prime}).

Here, we only discuss the cases for σx=y𝑙𝑟\sigma_{x=y}^{\mathit{lr}} and σx=yr\sigma_{x=y}^{\mathit{r}} as all the other cases again follow directly from the above inclusion and the definition of IsynI^{\mathrm{syn}}.

We begin by the cases for σx=y𝑙𝑟\sigma_{x=y}^{\mathit{lr}}. The cases are:

  • when yOsyn(α1)y\in O^{\mathrm{syn}}(\alpha_{1}), we have

    Isyn(σx=y𝑙𝑟(α1))=Isyn(α1){x}Isyn(α1){x}=Isyn(σx=y𝑙𝑟(α1)).I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}))=I^{\mathrm{syn}}(\alpha_{1})\cup\{x\}\subseteq I^{\mathrm{syn}}(\alpha^{\prime}_{1})\cup\{x\}=I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha^{\prime}_{1})).
  • when yOsyn(α1)y\not\in O^{\mathrm{syn}}(\alpha_{1}) and x=synyx\mathop{=_{\mathrm{syn}}}y, we have

    Isyn(σx=y𝑙𝑟(α1))=Isyn(α1)Isyn(α1)Isyn(σx=y𝑙𝑟(α1)).I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}))=I^{\mathrm{syn}}(\alpha_{1})\subseteq I^{\mathrm{syn}}(\alpha^{\prime}_{1})\subseteq I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha^{\prime}_{1})).
  • when yOsyn(α1)y\not\in O^{\mathrm{syn}}(\alpha_{1}) and xsynyx\mathop{\not=_{\mathrm{syn}}}y, by definition

    Isyn(σx=y𝑙𝑟(α1))=Isyn(α1){x,y}.I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}))=I^{\mathrm{syn}}(\alpha_{1})\cup\{x,y\}.

    In case yOsyn(α1)y\not\in O^{\mathrm{syn}}(\alpha^{\prime}_{1}), we are done since Isyn(α1){x,y}Isyn(α1){x,y}=Isyn(σx=y𝑙𝑟(α1))I^{\mathrm{syn}}(\alpha_{1})\cup\{x,y\}\subseteq I^{\mathrm{syn}}(\alpha_{1}^{\prime})\cup\{x,y\}=I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}^{\prime})). Otherwise, yOsyn(α1)y\in O^{\mathrm{syn}}(\alpha^{\prime}_{1}) in which case Isyn(σx=y𝑙𝑟(α1))=Isyn(α1){x}I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha_{1}^{\prime}))=I^{\mathrm{syn}}(\alpha_{1}^{\prime})\cup\{x\}. What remains to show is that yIsyn(α1)y\in I^{\mathrm{syn}}(\alpha^{\prime}_{1}). By Equation 7, we have yO(α1)y\in O(\alpha_{1}). Moreover, yOsem(α1)y\not\in O^{\mathrm{sem}}(\alpha_{1}) since yOsyn(α1)y\not\in O^{\mathrm{syn}}(\alpha_{1}). By Lemma 3.22 and Equation 7, we obtain yI(α1)=Isyn(α1)y\in I(\alpha_{1})=I^{\mathrm{syn}}(\alpha^{\prime}_{1}) as desired.

Finally, we consider the case for σx=yr\sigma_{x=y}^{\mathit{r}} when xsynyx\mathop{\not=_{\mathrm{syn}}}y. The case when x=synyx\mathop{=_{\mathrm{syn}}}y follows directly. By definition,

Isyn(σx=yr(α1))=Isyn(α1)({x,y}Osyn(α1)).I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{r}}(\alpha_{1}))=I^{\mathrm{syn}}(\alpha_{1})\cup(\{x,y\}-O^{\mathrm{syn}}(\alpha_{1})).

We can focus on z{x,y}z\in\{x,y\}. If zOsyn(α1)z\in O^{\mathrm{syn}}(\alpha_{1}) or zOsyn(α1)z\not\in O^{\mathrm{syn}}(\alpha^{\prime}_{1}), we are done. Now, consider the case when zOsyn(α1)z\not\in O^{\mathrm{syn}}(\alpha_{1}), but zOsyn(α1)z\in O^{\mathrm{syn}}(\alpha^{\prime}_{1}). Similar to our reasoning for the last case in σx=y𝑙𝑟\sigma_{x=y}^{\mathit{lr}}, we can show that zIsyn(α1)z\in I^{\mathrm{syn}}(\alpha^{\prime}_{1}), whence, zIsyn(σx=y𝑙𝑟(α1))z\in I^{\mathrm{syn}}(\sigma_{x=y}^{\mathit{lr}}(\alpha^{\prime}_{1})) by definition.

7. Primitivity of Composition

We now turn our attention to the study of composition in LIF. Indeed, LIF has a rich set of logical operators already, plus an explicit operator (;\mathbin{;}) for sequential composition. This begs the question whether ;\mathbin{;} is not already definable in terms of the other operators.

We begin by showing that for “well-behaved” expressions (all subexpressions have disjoint inputs and outputs) composition is redundant in LIF: every well-behaved LIF expression is equivalent to a LIF expression that does not use composition. As a corollary, we will obtain that composition is generally redundant if there is an infinite supply of variables. In contrast, in the bounded variable case, we will show that composition is primitive in LIF. Here, we use LIFnc to denote the fragment of LIF without composition.

7.1. When Inputs and Outputs are Disjoint, Composition is Non-Primitive

Our first non-primitivity result is based on inputs and outputs. We say that a LIF expression β\beta is io-disjoint if Osem(β)Isem(β)=O^{\mathrm{sem}}(\beta)\cap I^{\mathrm{sem}}(\beta)=\emptyset. The following theorem implies that if α\alpha, β\beta, and all their subexpressions are io-disjoint, we can rewrite α;β\alpha\mathbin{;}\beta into a LIFnc expression. Of course, this property also holds in case Osyn(β)Isyn(β)=O^{\mathrm{syn}}(\beta)\cap I^{\mathrm{syn}}(\beta)=\emptyset since the syntactic inputs and outputs overapproximate the semantic ones.

Theorem 7.1.

Let α\alpha and β\beta be LIF expressions such that β\beta is io-disjoint. Then, α;β\alpha\mathbin{;}{}\beta is equivalent to

γ:=cylOsem(β)r(α)cylOsem(α)l(β).\gamma:=\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{sem}}(\alpha)}^{l}(\beta).

Intuitively, the reason why this expression works is as follows: we cylindrify α\alpha on the right. In general, this might result in a loss of information, but since we are only cylindrifying outputs of β\beta, this means we only forget the information that would be overwritten by β\beta anyway. Since the inputs and outputs of β\beta are disjoint, β\beta does not need to know what α\alpha did to those variables in order to determine its own outputs. We also cylindrify β\beta on the left on the outputs of α\alpha, since these values will be set by α\alpha. One then still needs to be careful in showing that the intersection indeed removes all artificial pairs, by exploiting the fact that expressions are inertial outside their output.

Proof.

Let DD{} be an interpretation. First, we show that α;βDγD\llbracket\alpha\mathbin{;}{}\beta\rrbracket_{D{}}\subseteq\llbracket\gamma\rrbracket_{D{}}. If (ν1,ν2)α;βD(\nu_{1},\nu_{2})\in\llbracket\alpha\mathbin{;}{}\beta\rrbracket_{D{}}, then there is a ν3\nu_{3} such that (ν1,ν3)αD(\nu_{1},\nu_{3})\in\llbracket\alpha\rrbracket_{D{}} and (ν3,ν2)βD(\nu_{3},\nu_{2})\in\llbracket\beta\rrbracket_{D{}}. By definition of the outputs of β\beta, ν3\nu_{3} and ν2\nu_{2} agree outside Osem(β)O^{\mathrm{sem}}(\beta). Hence, (ν1,ν2)cylOsem(β)r(α)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\rrbracket_{D{}}. Similarly, we can show that (ν1,ν2)cylOsem(α)l(β)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}.

For the other inclusion, assume that (ν1,ν2)γD(\nu_{1},\nu_{2})\in\llbracket\gamma\rrbracket_{D{}}. Using the definition of the semantics of cylindrification, we find ν2\nu_{2}^{\prime} such that (ν1,ν2)αD(\nu_{1},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}} and ν2\nu_{2} agrees with ν2\nu_{2}^{\prime} outside Osem(β)O^{\mathrm{sem}}{(\beta)} and we find a ν1\nu_{1}^{\prime} such that ν1\nu_{1}^{\prime} agrees with ν1\nu_{1} outside Osem(α)O^{\mathrm{sem}}(\alpha) and (ν1,ν2)βD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\beta\rrbracket_{D{}}. Using the definition of output of β\beta, we know that also ν1\nu_{1}^{\prime} agrees with ν2\nu_{2} outside the outputs of β\beta, thus ν1\nu_{1}^{\prime} and ν2\nu_{2}^{\prime} agree outside the outputs of β\beta, and hence definitely on the inputs of β\beta. We can apply Proposition 3.6 thanks to the (Isyn,Osyn)(I^{\mathrm{syn}},O^{\mathrm{syn}}) soundness, Isyn(α)I^{\mathrm{syn}}(\alpha) is finite and determines Osyn(α)O^{\mathrm{syn}}(\alpha), which contains Osem(α)O^{\mathrm{sem}}(\alpha). So we guarantee that β\beta is determined by its inputs, whence, there exists a ν2′′\nu_{2}^{\prime\prime} such that (ν2,ν2′′)βD(\nu_{2}^{\prime},\nu_{2}^{\prime\prime})\in\llbracket\beta\rrbracket_{D{}} where ν2′′=ν2\nu_{2}^{\prime\prime}=\nu_{2} on the outputs of β\beta and, since β\beta is inertial outside its outputs, ν2′′=ν2\nu_{2}^{\prime\prime}=\nu_{2}^{\prime} outside the outputs of β\beta. But we previously established that ν2\nu_{2}^{\prime} agrees with ν2\nu_{2} outside the outputs of β\beta, whence ν2′′=ν2\nu_{2}^{\prime\prime}=\nu_{2}. Summarized we now found that (ν1,ν2)αD(\nu_{1},\nu_{2}^{\prime})\in\llbracket\alpha\rrbracket_{D{}} and (ν2,ν2)βD(\nu_{2}^{\prime},\nu_{2})\in\llbracket\beta\rrbracket_{D{}}, whence, (ν1,ν2)α;βD(\nu_{1},\nu_{2})\in\llbracket\alpha\mathbin{;}\beta\rrbracket_{D{}} as desired. ∎

Given the undecidability results of Section 3, Theorem 7.1 is not effective. We can however give the following syntactic variant.

Theorem 7.2.

Let α\alpha and β\beta be LIF expressions such that Osyn(β)Isyn(β)=O^{\mathrm{syn}}(\beta)\cap I^{\mathrm{syn}}(\beta)=\emptyset. Then, α;β\alpha\mathbin{;}{}\beta is equivalent to

cylOsyn(β)r(α)cylOsyn(α)l(β).\mathrm{cyl}_{O^{\mathrm{syn}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta).
Proof.

Since Isyn(β)Osyn(β)=I^{\mathrm{syn}}(\beta)\cap O^{\mathrm{syn}}(\beta)=\emptyset, we obtain by Lemma 3.22 that Osem(β)=Osyn(β)O^{\mathrm{sem}}(\beta)=O^{\mathrm{syn}}(\beta). Thus, we alternatively show that α;β\alpha\mathbin{;}\beta is equivalent to the expression

cylOsem(β)r(α)cylOsyn(α)l(β).\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta).

We can also see that β\beta is io-disjoint, since Isyn(β)Osyn(β)=I^{\mathrm{syn}}(\beta)\cap O^{\mathrm{syn}}(\beta)=\emptyset and (Isyn,Osyn)(I^{\mathrm{syn}},O^{\mathrm{syn}}) is sound. Thus, if we show that

cylOsem(β)r(α)cylOsyn(α)l(β)D=cylOsem(β)r(α)cylOsem(α)l(β)D\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}=\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{sem}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}

for any interpretation DD, we can apply Theorem 7.1 and we are done.

Thereto, let DD be an interpretation. By soundness, it is clear that

cylOsem(α)l(β)DcylOsyn(α)l(β)D, so cylOsem(β)r(α)cylOsem(α)l(β)DcylOsem(β)r(α)cylOsyn(α)l(β)D.\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}\subseteq\llbracket\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}\text{, so }\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{sem}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}\subseteq\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}.

What remains to show is that the other inclusion also holds. Thereto, let (ν1,ν2)cylOsem(β)r(α)cylOsyn(α)l(β)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}. Clearly, (ν1,ν2)cylOsem(β)r(α)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\rrbracket_{D{}} and (ν1,ν2)cylOsyn(α)l(β)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}. From (ν1,ν2)cylOsem(β)r(α)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\rrbracket_{D{}}, we can see that ν1=ν2\nu_{1}=\nu_{2} outside Osem(α)Osem(β)O^{\mathrm{sem}}(\alpha)\cup O^{\mathrm{sem}}(\beta). From (ν1,ν2)cylOsyn(α)l(β)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}, we can see that there is a valuation ν1\nu_{1}^{\prime} such that (ν1,ν2)βD(\nu_{1}^{\prime},\nu_{2})\in\llbracket\beta\rrbracket_{D{}} and ν1=ν1\nu_{1}^{\prime}=\nu_{1} outside Osyn(α)O^{\mathrm{syn}}(\alpha). Define ν1′′\nu_{1}^{\prime\prime} to be the valuation ν1[ν1|Osem(β)]\nu_{1}^{\prime}[\nu_{1}|_{O^{\mathrm{sem}}(\beta)}]. By construction and io-disjointness of β\beta, we see that ν1′′=ν1\nu_{1}^{\prime\prime}=\nu_{1}^{\prime} on Isem(β)I^{\mathrm{sem}}(\beta) and outside Osem(β)O^{\mathrm{sem}}(\beta). By Proposition 3.9, we obtain that (ν1′′,ν2)βD(\nu_{1}^{\prime\prime},\nu_{2})\in\llbracket\beta\rrbracket_{D{}}. Define ν\nu to be the valuation ν1′′[ν1|Osem(α)]\nu_{1}^{\prime\prime}[\nu_{1}|_{O^{\mathrm{sem}}(\alpha)}]. By the semantics of cylindrification, we see that (ν,ν2)cylOsem(α)l(β)D(\nu,\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\alpha)}^{l}(\beta)\rrbracket_{D{}}. Consequently, ν=ν2\nu=\nu_{2} outside Osem(α)Osem(β)O^{\mathrm{sem}}(\alpha)\cup O^{\mathrm{sem}}(\beta). Before, we established that ν1\nu_{1} and ν2\nu_{2} agree outside the same set of variables. So we obtain that ν=ν2=ν1\nu=\nu_{2}=\nu_{1} outside Osem(α)Osem(β)O^{\mathrm{sem}}(\alpha)\cup O^{\mathrm{sem}}(\beta). Moreover, we know by construction that ν=ν1′′=ν1\nu=\nu_{1}^{\prime\prime}=\nu_{1} on Osem(β)Osem(α)O^{\mathrm{sem}}(\beta)\cup O^{\mathrm{sem}}(\alpha). Then, ν\nu is the same valuation as ν1\nu_{1}. So we obtain that (ν1,ν2)cylOsem(β)r(α)cylOsem(α)l(β)D(\nu_{1},\nu_{2})\in\llbracket\mathrm{cyl}_{O^{\mathrm{sem}}(\beta)}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{sem}}(\alpha)}^{l}(\beta)\rrbracket_{D{}} as desired. ∎

Example 7.3 (Example 3.15 continued).

Consider the expression

α=P1(x;x);P1(x;y).\alpha=P_{1}(x;x)\mathbin{;}P_{1}(x;y).

with the interpretation DD in Example 3.15. In that case, α\alpha first increments xx by one and subsequently sets the value of yy to one higher than xx. Stated differently,

αD={(ν1,ν2)ν2(x)=ν1(x)+1ν2(y)=ν2(x)+1 and ν1(z)=ν2(z) for z{x,y}}\llbracket\alpha\rrbracket_{D{}}=\bigl{\{}(\nu_{1},\nu_{2})\mid\nu_{2}(x)=\nu_{1}(x)+1\wedge\nu_{2}(y)=\nu_{2}(x)+1\text{ and }\nu_{1}(z)=\nu_{2}(z)\text{ for }z\not\in\{x,y\}\bigr{\}}

Theorem 7.1 tells us that α\alpha is equivalent to

cylyr(P1(x;x))cylxl(P1(x;y)).\mathrm{cyl}_{y}^{r}(P_{1}(x;x))\cap\mathrm{cyl}_{x}^{l}(P_{1}(x;y)).

We see that

cylyr(P1(x;x))D\displaystyle\llbracket\mathrm{cyl}_{y}^{r}(P_{1}(x;x))\rrbracket_{D{}} ={(ν1,ν2)ν2(x)=ν1(x)+1and ν1(z)=ν2(z) for z{x,y}},\displaystyle=\bigl{\{}(\nu_{1},\nu_{2})\mid\nu_{2}(x)=\nu_{1}(x)+1\text{and }\nu_{1}(z)=\nu_{2}(z)\text{ for }z\not\in\{x,y\}\bigl{\}},
cylxl(P1(x;y))D\displaystyle\llbracket\mathrm{cyl}_{x}^{l}(P_{1}(x;y))\rrbracket_{D{}} ={(ν1,ν2)ν2(y)=ν2(x)+1and ν1(z)=ν2(z) for z{x,y}}.\displaystyle=\bigl{\{}(\nu_{1},\nu_{2})\mid\nu_{2}(y)=\nu_{2}(x)+1\text{and }\nu_{1}(z)=\nu_{2}(z)\text{ for }z\not\in\{x,y\}\bigl{\}}.

The intersection of these indeed equals αD\llbracket\alpha\rrbracket_{D{}}.

Theorem 7.1 no longer holds in general if β\beta can have overlapping inputs and outputs, as the following example illustrates.

Example 7.4.

Consider the expression

α:=P1(x;x);P1(x;x).\alpha:=P_{1}(x;x)\mathbin{;}P_{1}(x;x).

with the interpretation DD as in the example above. In this case, α\alpha increments the value of xx by two. However, cylxr(P1(x;x))D\llbracket\mathrm{cyl}_{x}^{r}(P_{1}(x;x))\rrbracket_{D{}} and cylxl(P1(x;x))D\llbracket\mathrm{cyl}_{x}^{l}(P_{1}(x;x))\rrbracket_{D{}} are both equal to

{(ν1,ν2)ν1(z)=ν2(z) for all zx}.\displaystyle\{(\nu_{1},\nu_{2})\mid\nu_{1}(z)=\nu_{2}(z)\text{ for all }z\neq x\}.

Hence, indeed, in this case α\alpha is not equivalent to

cylxr(P1(x;x))cylxl(P1(x;x)).\mathrm{cyl}_{x}^{r}(P_{1}(x;x))\cap\mathrm{cyl}_{x}^{l}(P_{1}(x;x)).

7.2. If 𝕍\mathbb{V} is Infinite, Composition is Non-Primitive

We know from Theorem 7.1 that if β\beta is io-disjoint, α\alpha and β\beta can be composed without using the composition operator. If 𝕍\mathbb{V} is sufficiently large, we can force any expression β\beta to be io-disjoint by having β\beta write its outputs onto unused variables instead of its actual outputs. The composition can then be eliminated following Theorem 7.1, after which we move the variables back so that the “correct” outputs are used. What we need to show is that “moving the variables around”, as described above, is expressible without composition. As before, we define the operators on BRVs but their definition is lifted to LIF expressions in a straightforward way.

Definition 7.5.

Let BB be a BRV and let x¯\bar{x} and y¯\bar{y} be disjoint tuples of distinct variables of the same length. The right move is defined as follows:

mvx¯y¯r(B):={(ν1,ν2)ν2(x¯)=ν1(x¯) and ν2:(ν1,ν2)B and ν2(y¯)=ν2(x¯) and ν2=ν2 outside x¯y¯}.\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(B):=\{(\nu_{1},\nu_{2}^{\prime})\mid\nu_{2}^{\prime}(\bar{x})=\nu_{1}(\bar{x})\text{ and }\exists\nu_{2}:(\nu_{1},\nu_{2})\in B\text{ and }\nu_{2}^{\prime}(\bar{y})=\nu_{2}(\bar{x})\text{ and }\nu_{2}=\nu_{2}^{\prime}\text{ outside }\bar{x}\cup\bar{y}\}.

This operation can be expressed without composition, which we show in the following lemma:

Lemma 7.6.

Let x¯\bar{x} and y¯\bar{y} be disjoint tuples of distinct variables of the same length. Then, for any BRV BB, we have

mvx¯y¯r(B)=σx¯=x¯𝑙𝑟cylx¯rσx¯=y¯rcyly¯r(B).\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(B)=\sigma_{\bar{x}=\bar{x}}^{\mathit{lr}}\mathrm{cyl}_{\bar{x}}^{r}\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(B).
Proof.

We give a “proof by picture”. Consider an arbitrary (ν1,ν2)B(\nu_{1},\nu_{2})\in B:

x¯y¯restx¯y¯resta¯b¯c¯d¯e¯f¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&\bar{b}&\bar{c}&&\bar{d}&\bar{e}&\bar{f}\\ \hline\cr\hline\cr\end{array}

We will verify that when we apply the LHS and the RHS on this pair of valuations, we obtain identical results.

For the LHS, we see that mvx¯y¯r(B)\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(B) yields the following pair of valuations when applied on (ν1,ν2)(\nu_{1},\nu_{2}):

x¯y¯restx¯y¯resta¯b¯c¯a¯d¯f¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&\bar{b}&\bar{c}&&\bar{a}&\bar{d}&\bar{f}\\ \hline\cr\hline\cr\end{array}

Now, we check the RHS. We see that the following set of pairs of valuations is the result of cyly¯r(B)\mathrm{cyl}_{\bar{y}}^{r}(B) when applied on (ν1,ν2)(\nu_{1},\nu_{2}):

x¯y¯restx¯y¯resta¯b¯c¯d¯f¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&\bar{b}&\bar{c}&&\bar{d}&*&\bar{f}\\ \hline\cr\hline\cr\end{array}

Here the asterisk denotes a “wildcard”, i.e., any valuation on y¯\bar{y} is allowed.

Then, we see that σx¯=y¯rcyly¯r(B)\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(B) yields:

x¯y¯restx¯y¯resta¯b¯c¯d¯d¯f¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&\bar{b}&\bar{c}&&\bar{d}&\bar{d}&\bar{f}\\ \hline\cr\hline\cr\end{array}

Next, we see that cylx¯rσx¯=y¯rcyly¯r(B)\mathrm{cyl}_{\bar{x}}^{r}\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(B) yields:

x¯y¯restx¯y¯resta¯b¯c¯d¯f¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&\bar{b}&\bar{c}&&*&\bar{d}&\bar{f}\\ \hline\cr\hline\cr\end{array}

Finally, we see that σx¯=x¯𝑙𝑟cylx¯rσx¯=y¯rcyly¯r(B)\sigma_{\bar{x}=\bar{x}}^{\mathit{lr}}\mathrm{cyl}_{\bar{x}}^{r}\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(B) yields the following pair of valuations which is the same as the result of the LHS.

x¯y¯restx¯y¯resta¯b¯c¯a¯d¯f¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&\bar{b}&\bar{c}&&\bar{a}&\bar{d}&\bar{f}\\ \hline\cr\hline\cr\end{array}

Lemma 7.7.

Let AA and BB be BRVs and let x¯\bar{x} and y¯\bar{y} be disjoint tuples of distinct variables of the same length such that all variables in y¯\bar{y} are inertially cylindrified in AA and BB. In that case:

A;B=mvy¯x¯r(A;mvx¯y¯r(B))A\mathbin{;}B=\mathrm{mv}_{\bar{y}\to\bar{x}}^{\mathit{r}}(A\mathbin{;}\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(B))

What this lemma shows is that we can temporarily move certain variables (the x¯\bar{x}) to unused variables (the y¯\bar{y}) and then move them back. The proof of this lemma is:

Proof of Lemma 7.7.

Again we give a proof by picture. Let the left be a generic pair of valuations that belongs to AA, while the one on the right be a generic one that belongs to BB. The “-” here represents inertial cylindrification.

x¯y¯restx¯y¯resta¯b¯c¯d¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&-&\bar{b}&&\bar{c}&-&\bar{d}\\ \hline\cr\hline\cr\end{array}   x¯y¯restx¯y¯reste¯f¯g¯h¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{e}&-&\bar{f}&&\bar{g}&-&\bar{h}\\ \hline\cr\hline\cr\end{array}

For the LHS, we see that composition can only be applied if c¯=e¯\bar{c}=\bar{e} and d¯=f¯\bar{d}=\bar{f}. Under this assumption, we get that A;BA\mathbin{;}B yields the following:

x¯y¯restx¯y¯resta¯b¯g¯h¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&-&\bar{b}&&\bar{g}&-&\bar{h}\\ \hline\cr\hline\cr\end{array}

Now, we check the RHS. We see that mvx¯y¯r(B)\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(B) yields the following when applied on the generic pair belonging to BB:

x¯y¯restx¯y¯reste¯f¯e¯g¯h¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{e}&*&\bar{f}&&\bar{e}&\bar{g}&\bar{h}\\ \hline\cr\hline\cr\end{array}

To apply the composition in the RHS, we must have c¯=e¯\bar{c}=\bar{e} and d¯=f¯\bar{d}=\bar{f}, which are the same restrictions we had in applying the composition in the LHS, so the expression A;mvx¯y¯r(B)A\mathbin{;}\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(B) yields:

x¯y¯restx¯y¯resta¯b¯e¯g¯h¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&*&\bar{b}&&\bar{e}&\bar{g}&\bar{h}\\ \hline\cr\hline\cr\end{array}

Finally, applying the last move operation, mvy¯x¯r(A;mvx¯y¯r(B))\mathrm{mv}_{\bar{y}\to\bar{x}}^{\mathit{r}}(A\mathbin{;}\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(B)) yields:

x¯y¯restx¯y¯resta¯b¯g¯h¯\begin{array}[]{ccccccc}\hline\cr\hline\cr\bar{x}&\bar{y}&rest&&\bar{x}&\bar{y}&rest\\ \hline\cr\hline\cr\bar{a}&-&\bar{b}&&\bar{g}&-&\bar{h}\\ \hline\cr\hline\cr\end{array}

which is clearly identical to what we had from the LHS. ∎

This finally brings us to the main result of the current subsection.

Theorem 7.8.

If 𝕍\mathbb{V} is infinite, then every LIF expression is equivalent to a LIFnc expression.

Proof.

We prove this theorem by induction on the number of compositions operators in a LIF expression γ\gamma. The base case (no composition operators), is trivial. For the inductive case, consider an expression η\eta containing at least one composition operator. We show how to rewrite η\eta equivalently with one composition operator less. Thereto, take any subexpression α;β\alpha\mathbin{;}\beta such that α\alpha and β\beta are LIFnc expressions. We eliminate this composition as follows. Choose a tuple of variables y¯\bar{y} of the same length as Osyn(β)O^{\mathrm{syn}}{(\beta)}, such that y¯\bar{y} does not occur in γ\gamma. In that case, y¯\bar{y} is inertially cylindrified in α\alpha and in β\beta, and hence, Lemma 7.7 yields that α;β\alpha\mathbin{;}\beta is equivalent to

mvy¯Osyn(β)r(α;mvOsyn(β)y¯r(β)).\mathrm{mv}_{\bar{y}\to O^{\mathrm{syn}}(\beta)}^{\mathit{r}}(\alpha\mathbin{;}\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta)).

We will next show that mvOsyn(β)y¯r(β)\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta) is io-disjoint. Indeed, from the equivalence in Lemma 7.6 and the soundness of our definitions, we can see that

Osem(mvOsyn(β)y¯r(β))=Osem(σx¯=x¯𝑙𝑟cylx¯rσx¯=y¯rcyly¯r(β))Osyn(σx¯=x¯𝑙𝑟cylx¯rσx¯=y¯rcyly¯r(β))=Osyn(β)y¯.O^{\mathrm{sem}}(\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta))=O^{\mathrm{sem}}(\sigma_{\bar{x}=\bar{x}}^{\mathit{lr}}\mathrm{cyl}_{\bar{x}}^{r}\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(\beta))\subseteq O^{\mathrm{syn}}(\sigma_{\bar{x}=\bar{x}}^{\mathit{lr}}\mathrm{cyl}_{\bar{x}}^{r}\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(\beta))=O^{\mathrm{syn}}(\beta)\cup\bar{y}.

Moreover, we generally have Osem(mvx¯y¯r(γ))x¯=O^{\mathrm{sem}}(\mathrm{mv}_{\bar{x}\to\bar{y}}^{\mathit{r}}(\gamma))\cap\bar{x}=\emptyset for any x¯\bar{x} and any LIF expression γ\gamma in which y¯\bar{y} is inertially cylindrified. As a consequence, Osem(mvOsyn(β)y¯r(β))y¯O^{\mathrm{sem}}(\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta))\subseteq\bar{y}.

Also, we can see that

Isem(mvOsyn(β)y¯r(β))=Isem(σx¯=x¯𝑙𝑟cylx¯rσx¯=y¯rcyly¯r(β))Isyn(σx¯=x¯𝑙𝑟cylx¯rσx¯=y¯rcyly¯r(β))=Isyn(β)Osyn(β).I^{\mathrm{sem}}(\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta))=I^{\mathrm{sem}}(\sigma_{\bar{x}=\bar{x}}^{\mathit{lr}}\mathrm{cyl}_{\bar{x}}^{r}\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(\beta))\subseteq I^{\mathrm{syn}}(\sigma_{\bar{x}=\bar{x}}^{\mathit{lr}}\mathrm{cyl}_{\bar{x}}^{r}\sigma_{\bar{x}=\bar{y}}^{\mathit{r}}\mathrm{cyl}_{\bar{y}}^{r}(\beta))=I^{\mathrm{syn}}(\beta)\cup O^{\mathrm{syn}}(\beta).

Since y¯\bar{y} does not occur in β\beta, we indeed obtain that is mvOsyn(β)y¯r(β)\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta) io-disjoint.

Osem(mvOsyn(β)y¯r(β))y¯(Isyn(β)Osyn(β))=.O^{\mathrm{sem}}(\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta))\subseteq\bar{y}\cap(I^{\mathrm{syn}}(\beta)\cup O^{\mathrm{syn}}(\beta))=\emptyset.

We can now apply Theorem 7.2 to eliminate the composition yielding the LIFnc expression

mvy¯Osyn(β)r(cylOsyn(mvOsyn(β)y¯r(β))r(α)cylOsyn(α)l(mvOsyn(β)y¯r(β))).\mathrm{mv}_{\bar{y}\to O^{\mathrm{syn}}(\beta)}^{\mathit{r}}(\mathrm{cyl}_{O^{\mathrm{syn}}(\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta))}^{r}(\alpha)\cap\mathrm{cyl}_{O^{\mathrm{syn}}(\alpha)}^{l}(\mathrm{mv}_{O^{\mathrm{syn}}(\beta)\to\bar{y}}^{\mathit{r}}(\beta))).

7.3. If 𝕍\mathbb{V} is Finite, Composition is Primitive

The case that remains is when 𝕍\mathbb{V} is finite. We will show that in this case, composition is indeed primitive by relating bounded-variable LIF to bounded-variable first-order logic.

Assume 𝕍={x1,,xn}\mathbb{V}=\{x_{1},\ldots,x_{n}\}. Since BRVs involve pairs of 𝕍\mathbb{V}-valuations, we introduce a copy 𝕍y={y1,,yn}\mathbb{V}_{y}=\{y_{1},\ldots,y_{n}\} disjoint from 𝕍\mathbb{V}. For clarity, we also write 𝕍x\mathbb{V}_{x} for 𝕍\mathbb{V}. As usual, by FO[k]\mathrm{FO}[k] we denote the fragment of first-order logic that uses only kk distinct variables. We observe:

Proposition 7.9.

For every LIF expression α\alpha, there exists an FO[3n]\mathrm{FO}[3n] formula φα\varphi_{\alpha} with free variables in 𝕍x𝕍y\mathbb{V}_{x}\cup\mathbb{V}_{y} such that

(ν1,ν2)αD iff D,(ν1ν2)φα,(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}\text{ iff }D{},(\nu_{1}\cup\nu_{2}^{\prime})\models\varphi_{\alpha},

where ν2\nu_{2}^{\prime} is the 𝕍y\mathbb{V}_{y}-valuation such that ν2(yi)=ν2(xi)\nu_{2}^{\prime}(y_{i})=\nu_{2}(x_{i}) for each ii. Furthermore, if α\alpha is a LIFnc expression, φα\varphi_{\alpha} can be taken to be a FO[2n]\mathrm{FO}[2n] formula.

Proof.

The proof is by induction on the structure of α\alpha (using Lemma 2.1, we omit redundant operators).

We introduce a third copy 𝕍z={z1,,zn}\mathbb{V}_{z}=\{z_{1},\ldots,z_{n}\} of 𝕍\mathbb{V}. For every u,v{x,y,z}u,v\in\{x,y,z\} we define ρuv\rho_{uv} as follows:

ρuv:𝕍u𝕍v:uivi\displaystyle\rho_{uv}:\mathbb{V}_{u}\rightarrow\mathbb{V}_{v}:u_{i}\mapsto v_{i}

Using these functions, we can translate a valuation ν\nu on 𝕍=𝕍x\mathbb{V}=\mathbb{V}_{x} to a corresponding valuation on 𝕍u\mathbb{V}_{u} with u{y,z}u\in\{y,z\}. Clearly, νρux\nu\circ\rho_{ux} does this job.

In the proof, we actually show a stronger statement by induction, namely that for each α\alpha and for every uv{x,y,z}u\neq v\in\{x,y,z\} there is a formula φαuv\varphi^{uv}_{\alpha} with free variables in 𝕍u𝕍v\mathbb{V}_{u}\cup\mathbb{V}_{v} in FO[𝕍x𝕍y𝕍z]\mathrm{FO}[\mathbb{V}_{x}\cup\mathbb{V}_{y}\cup\mathbb{V}_{z}] such that for every DD{}:

(ν1,ν2)αD iff D,(ν1ρuxν2ρvx)φαuv.(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}\text{ \ iff \ }D{},(\nu_{1}\circ\rho_{ux}\cup\nu_{2}\circ\rho_{vx})\models\varphi^{uv}_{\alpha}.

Since the notations xx, yy, zz, uu and vv are taken, we use notations aa, bb and cc for variables.

  • α=𝑖𝑑\alpha=\mathit{id}. Take φαuv\varphi^{uv}_{\alpha} to be i=1nui=vi\bigwedge_{i=1}^{n}u_{i}=v_{i}.

  • α=M(a¯;b¯)\alpha=M(\overline{a};\overline{b}). Take φαuv\varphi^{uv}_{\alpha} to be M(ρxu(a¯),ρxv(b¯))cb¯ρxu(c)=ρxv(c)M(\rho_{xu}(\overline{a}),\rho_{xv}(\overline{b}))\land\bigwedge_{c\not\in\overline{b}}\rho_{xu}(c)=\rho_{xv}(c)

  • α=α1α2\alpha=\alpha_{1}\cup\alpha_{2}. Take φαuv\varphi_{\alpha}^{uv} to be φα1uvφα2uv\varphi^{uv}_{\alpha_{1}}\lor\varphi^{uv}_{\alpha_{2}}.

  • α=α1α2\alpha=\alpha_{1}-\alpha_{2}. Take φαuv\varphi_{\alpha}^{uv} to be φα1uv¬φα2uv\varphi_{\alpha_{1}}^{uv}\land\neg\varphi_{\alpha_{2}}^{uv}.

  • α=α1;α2\alpha=\alpha_{1}\mathbin{;}{}\alpha_{2}. Let w{x,y,z}{u,v}w\in\{x,y,z\}-\{u,v\}. Take φαuv\varphi_{\alpha}^{uv} to be w1wn(φα1uwφα2wv)\exists w_{1}\ldots\exists w_{n}\;(\varphi_{\alpha_{1}}^{uw}\land\varphi_{\alpha_{2}}^{wv}).

  • α=α1\alpha=\alpha_{1}^{\smallsmile}. By induction, φα1vu\varphi^{vu}_{\alpha_{1}} exists. This formula can serve as φαuv\varphi_{\alpha}^{uv}.

  • α=σa=b𝑙𝑟(α1)\alpha=\sigma_{a=b}^{\mathit{lr}}(\alpha_{1}). Take φαuv\varphi_{\alpha}^{uv} to be φα1uvρxu(a)=ρxv(b)\varphi_{\alpha_{1}}^{uv}\land\rho_{xu}(a)=\rho_{xv}(b).

  • α=cylal(α1)\alpha=\mathrm{cyl}_{a}^{l}(\alpha_{1}). Take φαuv\varphi_{\alpha}^{uv} to be ρxu(a)φα1uv\exists\rho_{xu}(a)\;\varphi_{\alpha_{1}}^{uv}.∎

Now that we have established that LIFnc can be translated into FO[2n]\mathrm{FO}[2n], all that is left to do is find a Boolean query that can be expressed in LIF with nn variables, but not in FO[2n]\mathrm{FO}[2n]. We find such a query in the existence of a 3n3n-clique. We will first show that we can construct a LIFnc expression α2n\alpha_{2n} such that, given an interpretation DD interpreting a binary relation RR, α2nD\llbracket\alpha_{2n}\rrbracket_{D{}} consists of all 2n2n-cliques of RR. Next, we show how α2n\alpha_{2n} can be used (with composition) to construct an expression α3n\alpha_{\exists 3n} such that α3nD\llbracket\alpha_{\exists 3n}\rrbracket_{D{}} is non-empty if and only if RR has a 3n3n-clique. Since this property cannot be expressed in FO[2n]\mathrm{FO}[2n], we can conclude that composition must be primitive.

To avoid confusion, we recall that a set LL of kk data elements is a kk-clique in a binary relation RR, if any two distinct aa and bb in LL, we have (a,b)R(a,b)\in R (and also (b,a)R(b,a)\in R).

Proposition 7.10.

Suppose that |𝕍|=n|\mathbb{V}|=n with n2n\geq 2 and let 𝒮={R}\mathcal{S}=\{R\} with 𝑎𝑟(R)=𝑖𝑎𝑟(R)=2\mathit{ar}{}{(R)}=\mathit{iar}{(R)}=2. There exists a LIF expression α2n\alpha_{2n} such that

α2nD={(ν1,ν2)ν1(𝕍)ν2(𝕍) is a 2n-clique in D(R)}.\llbracket\alpha_{2n}\rrbracket_{D{}}=\{(\nu_{1},\nu_{2})\mid\nu_{1}(\mathbb{V})\cup\nu_{2}(\mathbb{V})\text{ is a $2n$-clique in }D(R)\}.
Proof.

Throughout this proof, we identify a pair (ν1,ν2)(\nu_{1},\nu_{2}) of two valuations with the 2n2n tuple of data elements

ν1(x1,,xn)ν2(x1,,xn).\nu_{1}(x_{1},\dots,x_{n})\cdot\nu_{2}(x_{1},\dots,x_{n}).

Before coming to the actual expression for α2n\alpha_{2n}, we introduce some auxiliary concepts. First, we define

𝑎𝑙𝑙:=cyl𝕍lcyl𝕍r(𝑖𝑑).\mathit{all}:=\mathrm{cyl}_{\mathbb{V}}^{l}\,\mathrm{cyl}_{\mathbb{V}}^{r}(\mathit{id}).

It is clear that

𝑎𝑙𝑙D={(ν1,ν2)𝒱×𝒱}.\llbracket\mathit{all}\rrbracket_{D{}}=\{(\nu_{1},\nu_{2})\in\mathcal{V}{}\times\mathcal{V}{}\}.

A first condition for being a 2n2n-clique is that all data elements are different. It is clear that the expression

α=:=xy𝕍(σx=yl(𝑎𝑙𝑙)σx=yr(𝑎𝑙𝑙))x,y𝕍σx=y𝑙𝑟(𝑎𝑙𝑙)\alpha_{=}:=\bigcup_{x\neq y\in\mathbb{V}}\bigl{(}\sigma_{x=y}^{\mathit{l}}(\mathit{all})\cup\sigma_{x=y}^{\mathit{r}}(\mathit{all})\bigr{)}\cup\bigcup_{x,y\in\mathbb{V}}\sigma_{x=y}^{\mathit{lr}}(\mathit{all})

has the property that α=D\llbracket\alpha_{=}\rrbracket_{D{}} consists of all 2n2n-tuples where at least one data element is repeated. Hence, αD\llbracket\alpha_{\neq}\rrbracket_{D{}} consists of all 2n2n-tuples of distinct data elements, where

α:=𝑎𝑙𝑙α=\alpha_{\neq}:=\mathit{all}-\alpha_{=}

The second condition for being a 2n2n-clique is that each two distinct elements are connected by RR. In order to check this, we define the following expressions for each two variables xx and yy:

Rx,yl\displaystyle R^{l}_{x,y} :=cyl𝕍{x,y}lcyl𝕍r(R(x,y;)R(y,x;))\displaystyle:=\mathrm{cyl}_{\mathbb{V}-\{x,y\}}^{l}\mathrm{cyl}_{\mathbb{V}}^{r}(R(x,y;)\cap R(y,x;))
Rx,yr\displaystyle R^{r}_{x,y} :=cyl𝕍lcyl𝕍{x,y}r(R(x,y;)R(y,x;))\displaystyle:=\mathrm{cyl}_{\mathbb{V}}^{l}\mathrm{cyl}_{\mathbb{V}-\{x,y\}}^{r}(R(x,y;)\cap R(y,x;))
Rx,ylr\displaystyle R^{lr}_{x,y} :=cyl𝕍{x}lcyl𝕍{y}r(R(x,y;)R(y,x;))\displaystyle:=\mathrm{cyl}_{\mathbb{V}-\{x\}}^{l}\mathrm{cyl}_{\mathbb{V}-\{y\}}^{r}(R(x,y;)\cap R(y,x;))

With these definitions, for instance Rxi,xjlrD\llbracket R^{lr}_{x_{i},x_{j}}\rrbracket_{D{}} consists of all 2n2n-tuples such that the ithi^{\text{th}} and the n+jthn+j^{\text{th}} element are connected (in two directions) in RR, and similar properties hold for RlR^{l} and RrR^{r}. From this, it follows that the expression

α2n=αxy𝕍(Rx,ylRx,yr)x,y𝕍Rx,ylr\alpha_{2n}=\alpha_{\neq}\cap\bigcap_{x\neq y\in\mathbb{V}}\bigl{(}R^{l}_{x,y}\cap R^{r}_{x,y}\bigr{)}\cap\bigcap_{x,y\in\mathbb{V}}R^{lr}_{x,y}

satisfies the proposition; it intersects α\alpha_{\neq} with all the expressions stating that each two data elements must be (bidirectionally) connected by RR. ∎

Notice that α2n\alpha_{2n} can be used to compute all the 2n2n-cliques of the input interpretation. We now use α2n\alpha_{2n} to check for existence of 3n3n-cliques.

Proposition 7.11.

Suppose that |𝕍|=n|\mathbb{V}|=n with n2n\geq 2 and let 𝒮={R}\mathcal{S}=\{R\} with 𝑎𝑟(R)=𝑖𝑎𝑟(R)=2\mathit{ar}{}{(R)}=\mathit{iar}{(R)}=2. Define

α3n:=(α2n;α2n)α2n.\alpha_{\exists 3n}:=(\alpha_{2n}\mathbin{;}{}\alpha_{2n})\cap\alpha_{2n}.

Then, for every interpretation DD{}, α3nD\llbracket\alpha_{\exists 3n}\rrbracket_{D{}} is non-empty if and only if D(R)D{}(R) has a 3n3n-clique.

It is well known that existence of a 3n3n-clique is not expressible in FO[2n]\mathrm{FO}[2n] (Ebbinghaus and Flum, 1999). The above proposition thus immediately implies primitivity of composition.

Theorem 7.12.

Suppose that |𝕍|=n2|\mathbb{V}|=n\geq 2. Then, composition is primitive in LIF. Specifically, no LIFnc expression is equivalent to the LIF expression α3n\alpha_{\exists 3n}.

8. Related Work

LIF grew out of the Algebra of Modular Systems (Ternovska, 2015), which was developed to provide foundations for programming from available components. That paper mentions information flows, in connection with input–output behavior in classical logic, for the first time. The paper also surveys earlier work from the author’s group, as well as other closely related work.

In a companion paper (Aamer et al., 2020a), we report on an application of LIF to querying under limited access patterns, as for instance offered by web services (Mcilraith et al., 2001). That work also involves inputs and outputs, but only of a syntactic nature, and for a restricted variant of LIF (called “forward” LIF) only. The property of io-disjointness turned also to be important in that work, albeit for a quite different purpose.

Our results also relate to the evaluation problem for LIF, which takes as input a LIF expression α\alpha, an interpretation DD, and a valuation ν1\nu_{1}, and where the task is to find all ν2\nu_{2} such that (ν1,ν2)αD(\nu_{1},\nu_{2})\in\llbracket\alpha\rrbracket_{D{}}. From our results, it follows that only the value of ν1\nu_{1} on the input variables is important, and similarly we are only interested in the values of each ν2\nu_{2} on the output variables. A subtle point, however, is that DD may be infinite, and moreover, even if DD itself is not infinite, the output of the evaluation problem may still be. In many cases, it is still possible to obtain a finite representation, for instance by using quantifier elimination techniques as done in Constraint Databases (Kuper et al., 2000).

We have defined the semantics of LIF algebraically, in the style of cylindric set algebra (Henkin et al., 1971; Imieliński and Lipski, 1984). An important difference is the dynamic nature of BRVs which are sets of pairs of valuations, as opposed to sets of valuations which are the basic objects in cylindric set algebra.

Our optimality theorem was inspired by work on controlled FO (Fan et al., 2014), which had as aim to infer boundedness properties of the outputs of first-order queries, given boundedness properties of the input relations. Since this inference task is undecidable, the authors defined syntactic inferences similar in spirit to our syntactic definition of inputs and outputs. They show (their Proposition 4.3) that their definitions are, in a sense, sharp. Note that our optimality theorem is stronger in that it shows that no other compositional and sound definition can be better than ours. Of course, the comparison between the two results is only superficial as the inference tasks at hand are very different.

The Logic of Information Flows is similar to dynamic predicate logic (DPL) (Groenendijk and Stokhof, 1991), in the sense that formulas are also evaluated with respect to pairs of valuations. There is, however a key difference in philosophy between the two logics. LIF starts from the idea that well-known operators from first-order logic can be used to describe combinations and manipulations of dynamic systems, and as such provides a means for procedural knowledge in a declarative language. The dynamics in LIF are dynamics of the described system. Dynamic predicate logic, on the other hand starts from the observation that, in natural language, operators such as conjunction and existential quantification are dynamic, where the dynamics are in the process of parsing a sentence, often related to coreference analysis. To the best of our knowledge, inputs and outputs of expressions have not been studied in DPL.

Since we developed a large part of our work in the general setting of BRVs, and thus of transition systems, we expect several of our results to be applicable in the context of other formalisms where specifying inputs and outputs is important, such as API-based programming (Calvanese et al., 2016) and synthesis (De Giacomo et al., 2013; Alechina et al., 2019), privacy and security, business process modeling (Calvanese et al., 2008), and model combinators in Constraint Programming (Fontaine et al., 2013).

9. Conclusion and Future Work

Declarative modeling is of central importance in the area of Knowledge Representation and Reasoning. The Logic of Information Flows provides a framework to investigate how, and to what degree, dynamic or imperative features can be modeled declaratively. In this paper we have focused on inputs, outputs, and sequential composition, as these three concepts are fundamental to modeling dynamic systems. There are many directions for further research.

Inputs and outputs are not just relevant from a theoretic perspective, but can also have ramifications on computation. Indeed, they form a first handle to parallelize computation of complex LIF expressions, or to decompose problems.

In this paper, we have worked with a basic set of operations motivated by the classical logic connectives. In order to provide a fine control of computational complexity, or to increase expressiveness, it makes sense to consider other operations.

The semantic notions developed in this paper (inputs, outputs, soundness) apply to global BRVs in general, and hence are robust under varying the set of operations. Moreover, our work delineates and demonstrates a methodology for adapting syntactic input–output definitions to other operations.

A specific operation that is natural to consider is converse. The converse of a BRV AA is defined to be {(ν2,ν1)(ν1,ν2)A}\{(\nu_{2},\nu_{1})\mid(\nu_{1},\nu_{2})\in A\}. In the context of LIF (Ternovska, 2019) it can model constraint solving by searching for an input to a module that produces a desired outcome. When we add converse to LIF with only a single variable (|𝕍|=1|\mathbb{V}|=1), and the vocabulary has only binary relations of input arity one, then we obtain the classical calculus of relations (Tarski, 1941). There, converse is known to be primitive (Fletcher et al., 2015). When the number of variables is strictly more than half of the maximum arity of relations in the vocabulary, converse is redundant in LIF, as can be shown using similar techniques as used in this paper to show redundancy of composition. Investigating the exact number of variables needed for non-primitivity is an interesting question for further research.

Another direction for further research is to examine fragments of LIF for which the semantic input or output problem may be decidable, or even for which the syntactic definitions coincide with the semantic definitions.

Finally, an operation that often occurs in dynamic systems is the fixed point construct used by (Ternovska, 2019). It remains to be seen how our work, and the further research directions mentioned above, can be extended to include the fixpoint operation.

Acknowledgements.
This research received funding from the Flemish Government under the “Onderzoeksprogramma Artificiële Intelligentie (AI) Vlaanderen” programme, from FWO Flanders project G0D9616N, and from Natural Sciences and Engineering Research Council of Canada (NSERC). Jan Van den Bussche is partially supported by the National Natural Science Foundation of China (61972455). Heba Aamer is supported by the Special Research Fund (BOF) (BOF19OWB16).

References

  • (1)
  • Aamer et al. (2020a) Heba Aamer, Bart Bogaerts, Dimitri Surinx, Eugenia Ternovska, and Jan Van den Bussche. 2020a. Executable first-order queries in the logic of information flows. In Proceedings 23rd International Conference on Database Theory (Leibniz International Proceedings in Informatics, Vol. 155). Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, 4:1–4:14.
  • Aamer et al. (2020b) Heba Aamer, Bart Bogaerts, Dimitri Surinx, Eugenia Ternovska, and Jan Van den Bussche. 2020b. Inputs, Outputs, and Composition in the Logic of Information Flows. In Proceedings of the 17th International Conference on Principles of Knowledge Representation and Reasoning. 2–11. https://doi.org/10.24963/kr.2020/1
  • Alechina et al. (2019) Natasha Alechina, Tomás Brázdil, Giuseppe De Giacomo, Paolo Felli, Brian Logan, and Moshe Y. Vardi. 2019. Unbounded Orchestrations of Transducers for Manufacturing. In AAAI. AAAI Press, 2646–2653.
  • Calvanese et al. (2008) Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, Massimo Mecella, and Fabio Patrizi. 2008. Automatic Service Composition and Synthesis: the Roman Model. IEEE Data Eng. Bull. 31, 3 (2008), 18–22.
  • Calvanese et al. (2016) Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini, and Moshe Y. Vardi. 2016. Regular Open APIs. In Principles of Knowledge Representation and Reasoning: Proceedings of the Fifteenth International Conference, KR 2016, Cape Town, South Africa, April 25-29, 2016. AAAI Press, 329–338.
  • De Giacomo et al. (2013) Giuseppe De Giacomo, Fabio Patrizi, and Sebastian Sardiña. 2013. Automatic behavior composition synthesis. Artif. Intell. 196 (2013), 106–142.
  • Ebbinghaus and Flum (1999) Heinz-Dieter Ebbinghaus and Jörg Flum. 1999. Finite Model Theory (second ed.). Springer.
  • Enderton (1972) Herbert B. Enderton. 1972. A Mathematical Introduction To Logic. Academic Press.
  • Fan et al. (2014) Wenfei Fan, Floris Geerts, and Leonid Libkin. 2014. On scale independence for querying big data. In Proceedings 33th ACM Symposium on Principles of Database Systems. ACM, 51–62.
  • Fletcher et al. (2015) George H. L. Fletcher, Marc Gyssens, Dirk Leinders, Dimitri Surinx, Jan Van den Bussche, Dirk Van Gucht, Stijn Vansummeren, and Yuqing Wu. 2015. Relative expressive power of navigational querying on graphs. Information Sciences 298 (2015), 390–406.
  • Fontaine et al. (2013) Daniel Fontaine, Laurent Michel, and Pascal Van Hentenryck. 2013. Model Combinators for Hybrid Optimization. In Principles and Practice of Constraint Programming - 19th International Conference, CP 2013, Uppsala, Sweden, September 16-20, 2013. Proceedings. Springer, 299–314.
  • Groenendijk and Stokhof (1991) Jeroen Groenendijk and Martin Stokhof. 1991. Dynamic predicate logic. Linguistics and Philosophy 14 (1991), 39–100.
  • Gurevich (1983) Yuri Gurevich. 1983. Algebras of feasible functions. In Proceedings 24th Symposium on Foundations of Computer Science. IEEE Computer Society, 210–214.
  • Gurevich (1988) Yuri Gurevich. 1988. Logic and the challenge of computer science. In Current Trends in Theoretical Computer Science, E. Börger (Ed.). Computer Science Press, 1–57.
  • Henkin et al. (1971) Leon Henkin, J. Donald Monk, and Alfred Tarski. 1971. Cylindric Algebras. Part I. North-Holland.
  • Imieliński and Lipski (1984) Tomasz Imieliński and Witold Lipski. 1984. The relational model of data and cylindric algebras. J. Comput. System Sci. 28 (1984), 80–102.
  • Kuper et al. (2000) Gabriel M. Kuper, Leonid Libkin, and Jan Paredaens (Eds.). 2000. Constraint Databases. Springer.
  • Lewis (1973) David Lewis. 1973. Causation. Journal of Philosophy 70 (1973), 556–567.
  • Lifschitz (1987) Vladimir Lifschitz. 1987. Formal Theories of Action (Preliminary Report). In Proceedings of the 10th International Joint Conference on Artificial Intelligence. Milan, Italy, August 23-28, 1987, John P. McDermott (Ed.). Morgan Kaufmann, 966–972. http://ijcai.org/Proceedings/87-2/Papers/081.pdf
  • McCarthy and Hayes (1969) John McCarthy and Patrick J. Hayes. 1969. Some Philosophical Problems from the Standpoint of Artificial Intelligence. In Machine Intelligence 4, B. Meltzer and D. Michie (Eds.). Edinburgh University Press, 463–502.
  • Mcilraith et al. (2001) Sheila Mcilraith, Tran Son, and Honglei Zeng. 2001. Semantic Web Services. Intelligent Systems, IEEE 16 (04 2001), 46 – 53.
  • Mitchell and Ternovska (2005) David G. Mitchell and Eugenia Ternovska. 2005. A framework for representing and solving NP search problems. In Proc. AAAI. AAAI Press / The MIT Press, 430–435.
  • Tarski (1941) Alfred Tarski. 1941. On the calculus of relations. Journal of Symbolic Logic 6 (1941), 73–89.
  • Ternovska (2015) Eugenia Ternovska. 2015. An Algebra of Combined Constraint Solving. In Global Conference on Artificial Intelligence, GCAI 2015, Tbilisi, Georgia, October 16-19, 2015. EasyChair, 275–295.
  • Ternovska (2017) Eugenia Ternovska. 2017. Recent progress on the algebra of modular systems. In Proceedings 11th Alberto Mendelzon International Workshop on Foundations of Data Management (CEUR Workshop Proceedings, Vol. 1912), J.L. Reutter and D. Srivastava (Eds.). CEUR-WS.org.
  • Ternovska (2019) Eugenia Ternovska. 2019. An algebra of modular systems: static and dynamic perspectives. In Frontiers of Combining Systems: Proceedings 12th FroCos (Lecture Notes in Artificial Intelligence, Vol. 11715), A. Herzig and A. Popescu (Eds.). Springer, 94–111.