Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

IDNI AG, https://tau.netohad@idni.org \CopyrightCC-BY \hideLIPIcs\ccsdescTheory of computation Modal and temporal logics \ccsdescComputing methodologies Temporal reasoning \ccsdescComputing methodologies Boolean algebra algorithms

Guarded Successor: A Novel Temporal Logic

Ohad Asor
Abstract

We present GS (Guarded Successor), a novel decidable temporal logic with several unique distinctive features. Among those, it allows infinitely many data values that come not only with equality but with a somehow rich theory too: the first-order theory of atomless Boolean algebras. The language also distinguishes between inputs and outputs, and has a decision procedure for determining whether for all inputs exist outputs, at each point of time. Moreover, and maybe most surprisingly, the data values can be nothing but sentences in GS itself. We also present a non-temporal fragment called NSO (Nullary Second Order) that enjoys merely this last property. These results are crucial necessary ingredients in any meaningful design of safe AI. Finally, all those results are obtained from a novel treatment of the first-order theory of atomless Boolean algebras.

keywords:
Temporal Logic, Boolean Algebras, Guarded Fragment

1 Introduction

Traditional computation is temporal manipulation of bits. Bits, are the elements of the smallest possible Boolean algebra. The construction here can be seen as a generalization of this into working over certain infinite Boolean algebras. Decidability of a specification language in this model is of course much less trivial. Further, we will show how this generalization can support some very surprising abilities.

In the following, GS (Guarded Successor) is introduced, an innovative and decidable temporal logic that offers several distinctive features. First, it accommodates infinitely many data values, enhanced by a complex theory: the first-order theory of atomless Boolean algebras. Second, the language differentiates between input and output variables, and allows a decision procedure to prove that for all inputs there exist outputs, at each point in time. Third, and perhaps most surprisingly, the data values can be sentences in GS itself. The language is closed under Boolean combinations and allows quantification over both data values and time points. Its decision procedure is of a uniquely simplistic and elegant nature, and differs very much from other common decision procedures. It relies on the ability to enhance certain languages with recurrence relations (a form of fixed-point operators), in particular an extension of the first order theory of atomless Boolean algebras.

We also present NSO (Nullary Second Order logic, a name that was selected during the first incarnations of the idea and perhaps has to be reconsidered), a non-temporal fragment that maintains the above third property. All of these findings stem from a new approach to the first-order theory of atomless Boolean algebras. These results are essential for designing safe AI systems.

For ease of understanding we will first introduce the non-temporal NSO logic and afterwards we will introduce GS, which can be seen as a temporal extension of NSO. All nontrivial proofs not appearing in the main text, appear in the appendix.

Ongoing implementation of the languages described in this paper appears at the repository
https://github.com/idni/tau-lang.

Intellectual Property

The methods described here are protected from unauthorized use by IDNI Inc intellectual property rights, including patents. However, IDNI Inc. grants permission to use the methods for free in the following specific enumerated non-commercial instances: personal use, educational use , and academic purposes. The enumerated non-commercial instances do not include creation of open-source software that is distributed to others (whether for free or otherwise).

Acknowledgements

I would like to thank Enrico Franconi, Paweł Parys, and Lucca Tiemens for their review of this material and plenty of useful discussions.

1.1 NSO

The goal of NSO is to have a language that can speak about its own sentences in a consistent and decidable way. Tarski’s Undefinability of Truth has shown that this is impossible under a certain broad setting. The key of NSO is to abstract sentences, so much so, that they make merely Boolean algebra (BA) elements. In particular, there is no access to the syntax of the sentences (in contrast to Tarski’s setting which relies on Gödel numbers), and logically equivalent sentences are identified.

Any classical logic closed under Boolean combinations makes a BA called the Lindenbaum-Tarski Algebra (LTA) of that logic. Recall that this is only up to logical equivalence. Now observe two important points: 1. Any such logic that has an infinite signature (whether constant, relation, or function symbols), makes an atomless BA. 2. All countable atomless BAs are isomorphic (which is a well known theorem), and moreover, all atomless BAs are elementarily equivalent, as proved by Tarski. Clearly all sentences in languages of interest are finite strings over a finite alphabet, hence countable. The countable atomless BA is therefore the LTA of major logics of interest.

When we say “the theory of BA interpreted in a fixed BA \mathcal{B}caligraphic_B” we mean not only the first order theory of BA interpreted in \mathcal{B}caligraphic_B (recall that an interpretation is a mapping taking symbols from the signature to actual objects in a structure), but we also mean that its signature is equipped with constants that are interpreted in each element of \mathcal{B}caligraphic_B, so each element has a unique constant assigned to it. We will refer to those constants as the interpreted constants.

Fix a language \mathcal{L}caligraphic_L that its LTA makes an atomless BA. Let NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ] be the first-order theory of BA interpreted in that LTA, so each sentence in \mathcal{L}caligraphic_L is a constant symbol in NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ]. So far, NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ] is a language that speaks about \mathcal{L}caligraphic_L, but still not about itself. To this end, first we make the LTA of NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ] be an atomless BA as well (as currently it is only the two-element BA, as any logic that is interpreted in a fixed structure). This can be done by adding infinitely many uninterpreted constant symbols (the uninterpreted constants), or any other such trick. Then, the interpreted constants are extended to include sentences in NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ] (this is well-founded by introducing curly brackets as below). Since both \mathcal{L}caligraphic_L and NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ] make an atomless BA, they are elementarily equivalent under the signature of BA. By that we can make NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ] speak (including quantify) over its own sentences. Further, NSO[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ] is decidable iff \mathcal{L}caligraphic_L is decidable.

1.2 GS

As an intuitive starting point, any formula with two free variables, in any logic, can be seen as defining a set of sequences: we say that a sequence s𝑠sitalic_s models ϕ(x,y)italic-ϕ𝑥𝑦\phi\left(x,y\right)italic_ϕ ( italic_x , italic_y ) iff any two consecutive elements si1,sisubscript𝑠𝑖1subscript𝑠𝑖s_{i-1},s_{i}italic_s start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT in the sequence satisfy ϕ(si1,si)italic-ϕsubscript𝑠𝑖1subscript𝑠𝑖\phi\left(s_{i-1},s_{i}\right)italic_ϕ ( italic_s start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) (we can interpret ϕitalic-ϕ\phiitalic_ϕ in a fixed model, or one may appeal to any suitable notion of satisfiability). We then write sϕ(x,y)models𝑠italic-ϕ𝑥𝑦s\models\phi\left(x,y\right)italic_s ⊧ italic_ϕ ( italic_x , italic_y ). Now consider the class of logics having the following property: fix a finite set of constant and variable symbols. Then the set of formulas making use only of those constant and free variable symbols (we allow, and require, arbitrarily many quantified variables), up to logical equivalence, is finite. Here, the most relevant such logic is the theory of atomless BA (whether or not interpreted in a fixed BA, and when it does, it is equipped with infinitely many interpreted constants as above, and this is the nontrivial case).

Denote by |s|𝑠\left|s\right|| italic_s | the length of s𝑠sitalic_s. Given ϕ(x,y)italic-ϕ𝑥𝑦\phi\left(x,y\right)italic_ϕ ( italic_x , italic_y ), consider the following process: ask whether exists s𝑠sitalic_s s.t. |s|=2𝑠2\left|s\right|=2| italic_s | = 2 and sϕmodels𝑠italic-ϕs\models\phiitalic_s ⊧ italic_ϕ, then whether exists s𝑠sitalic_s s.t. |s|=3𝑠3\left|s\right|=3| italic_s | = 3 and sϕmodels𝑠italic-ϕs\models\phiitalic_s ⊧ italic_ϕ, and so on. This series of questions may take the form of a recurrence relation ϕn(x):=y.ϕn1(y)ϕ(x,y)formulae-sequenceassignsubscriptitalic-ϕ𝑛𝑥𝑦subscriptitalic-ϕ𝑛1𝑦italic-ϕ𝑥𝑦\phi_{n}\left(x\right):=\exists y.\phi_{n-1}\left(y\right)\wedge\phi\left(x,y\right)italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_x ) := ∃ italic_y . italic_ϕ start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT ( italic_y ) ∧ italic_ϕ ( italic_x , italic_y ) with base-case ϕ2(x):=y.ϕ(x,y)formulae-sequenceassignsubscriptitalic-ϕ2𝑥𝑦italic-ϕ𝑥𝑦\phi_{2}\left(x\right):=\exists y.\phi\left(x,y\right)italic_ϕ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_x ) := ∃ italic_y . italic_ϕ ( italic_x , italic_y ) (though our preferred form will be slightly different). Then ϕn(x)subscriptitalic-ϕ𝑛𝑥\phi_{n}\left(x\right)italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_x ) means “exists a sequence of length n𝑛nitalic_n starting with x𝑥xitalic_x”, and then to get a final answer (per each n𝑛nitalic_n) we of course need to consider x.ϕn(x)formulae-sequence𝑥subscriptitalic-ϕ𝑛𝑥\exists x.\phi_{n}\left(x\right)∃ italic_x . italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_x ). Due to the finiteness property above, this series of questions is going to loop (i.e. at one point, a logically equivalent formula will occur), and even reach a fixed point due to the monotonic nature of the setting. We obtain a result of the form: “if a sequence of length N𝑁Nitalic_N exists, then a sequence of any larger length exists”. It is easy to see that this implies the existence of an infinite sequence as well.

For now we mention only two additional points, which are apparently unique to this language in the landscape of decidable temporal logics:

  1. 1.

    Seen as a program specification language, those sequences are actually outputs or states, however we’d like to support inputs as well. This means that we’d like to prove that for each input, at each point of time, exists an output, that does not depend on future inputs (time-compatible). So we can deal with formulas of the form ϕ(xn,xn1,yn,yn1)italic-ϕsubscript𝑥𝑛subscript𝑥𝑛1subscript𝑦𝑛subscript𝑦𝑛1\phi\left(x_{n},x_{n-1},y_{n},y_{n-1}\right)italic_ϕ ( italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT ) where xn,xn1subscript𝑥𝑛subscript𝑥𝑛1x_{n},x_{n-1}italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT are the current and previous inputs, respectively, and similarly for the outputs yn,yn1subscript𝑦𝑛subscript𝑦𝑛1y_{n},y_{n-1}italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT. Observe the bounded lookback in this formula, and observe that n𝑛nitalic_n can be seen as a free variable of sort \mathbb{N}blackboard_N which is implicitly quantified universally. The quantifier pattern for the inputs and outputs would look like x1y1x2y2for-allsubscript𝑥1subscript𝑦1for-allsubscript𝑥2subscript𝑦2\forall x_{1}\exists y_{1}\forall x_{2}\exists y_{2}\dots∀ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∀ italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT …. It is easy to express it as a recurrence relation similar to the above, and again use the finiteness property as above.

  2. 2.

    Allowining GS to operate over the LTA of its own sentences, in the fashion of NSO, so ϕitalic-ϕ\phiitalic_ϕ is in the language of atomless BA, gives us a software specification language where inputs and outputs may be sentences in this very same language. This allows, for the first time, support implementations of the form: “reject a software update if it doesn’t satisfy certain desired properties” where the currently running program is written in the same language as the update, as well as those “desired properties”. It is therefore a crucial ingredient in AI safety. Fortunately, even decidability is preserved.

2 The Theory of Atomless Boolean Algebras

We assume that the reader is familiar with the definition of atomless BAs. We will denote the Boolean operations by ,,\cup,\cap,^{\prime}∪ , ∩ , start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT (disjunction, conjunction, complementation, respectively) to distinguish them from logical connectives.

2.1 Boolean Functions and Equations

We follow Rudeanu’s terminology.

Definition 1.

A Boolean Function (BF) is a Boolean combination of variables and constants (from some chosen BA). A Simple Boolean Function (SBF) is a BF where all constants appearing in it are either 00 or 1111.

Note that this is in contrast to the common definition of BF, which is typically defined as what we call SBF. Also note that SBFs can be understood over any BA, but a BF which is not an SBF has to be understood over a single BA.

In the standard fashion, constant symbols in the theory of BA are only 0,1010,10 , 1. However we deal with a much richer setting in which the theory of BA is interpreted in a fixed BA (typically atomless). The theory is then enhanced with infinitely many constant symbols in its signature, each uniquely corresponding to each of the BA elements. We’ll refer to those as the interpreted constants.

An atomic formula in the language of BA (interpreted in some fixed BA) is therefore of the form f(X)=g𝑓𝑋𝑔f\left(X\right)=gitalic_f ( italic_X ) = italic_g(X)𝑋\left(X\right)( italic_X ) where f,g𝑓𝑔f,gitalic_f , italic_g are BFs and X𝑋Xitalic_X is a tuple of variables. Note that this is equivalent to f(X)+g(X)=0𝑓𝑋𝑔𝑋0f\left(X\right)+g\left(X\right)=0italic_f ( italic_X ) + italic_g ( italic_X ) = 0 where +++ denotes the ring sum, alternatively XOR, or symmetric difference (similarly we’ll use juxtaposition for conjunction, mixing set-theoretic and ring-theoretic notations). So we assume that atomic formulas are of the form f(X)=0𝑓𝑋0f\left(X\right)=0italic_f ( italic_X ) = 0. In the standard formulation of the theory of BA (that do not involve the interpreted constants), atomic formulas would have to involve merely SBFs, and not BFs in general.

Any BA induces a partial order defined by abab=0𝑎𝑏𝑎superscript𝑏0a\leq b\leftrightarrow ab^{\prime}=0italic_a ≤ italic_b ↔ italic_a italic_b start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = 0. Recall that a BA is atomless iff the following holds: x.(x0)(y.0<y<x)formulae-sequencefor-all𝑥𝑥0𝑦.0𝑦𝑥\forall x.\left(x\neq 0\right)\rightarrow\left(\exists y.0<y<x\right)∀ italic_x . ( italic_x ≠ 0 ) → ( ∃ italic_y .0 < italic_y < italic_x ) For ease of understanding of virtually any BA material, it is useful to bear in mind Stone’s representation theorem for BAs: any BA is isomorphic to a field of sets. Practically, it means that BA elements can always be realized as sets, where the Boolean operations coincide with the usual set operations, and \leq coincides with \subseteq. This justifies our set-theoretic notation. In LTAs, a formula can be seen as a set of models, which automatically entails identification under logical equivalence.

Given a system of equations i[fi(X)=0]subscript𝑖delimited-[]subscript𝑓𝑖𝑋0\bigwedge_{i}\left[f_{i}\left(X\right)=0\right]⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT [ italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_X ) = 0 ] (we shall always assume that all systems contain finitely many equations), it is easy to see that it is equivalent to a single equation [ifi(X)]=0delimited-[]subscript𝑖subscript𝑓𝑖𝑋0\left[\bigcup_{i}f_{i}\left(X\right)\right]=0[ ⋃ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_X ) ] = 0. We shall refer to this as squeezing the positives. Similar “squeezing” is generally not possible for a system of the form i[fi(X)0]subscript𝑖delimited-[]subscript𝑓𝑖𝑋0\bigwedge_{i}\left[f_{i}\left(X\right)\neq 0\right]⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT [ italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_X ) ≠ 0 ], at least not in infinite BAs.

Definition 2.

A minterm in n𝑛nitalic_n variables, denoted by XAsuperscript𝑋𝐴X^{A}italic_X start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT, is a product x1a1x2a2xnansuperscriptsubscript𝑥1subscript𝑎1superscriptsubscript𝑥2subscript𝑎2superscriptsubscript𝑥𝑛subscript𝑎𝑛x_{1}^{a_{1}}x_{2}^{a_{2}}\dots x_{n}^{a_{n}}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_a start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUPERSCRIPT … italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_a start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_POSTSUPERSCRIPT where A{0,1}n𝐴superscript01𝑛A\in\left\{0,1\right\}^{n}italic_A ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT and xi1=xi;xi0=xiformulae-sequencesuperscriptsubscript𝑥𝑖1subscript𝑥𝑖superscriptsubscript𝑥𝑖0superscriptsubscript𝑥𝑖x_{i}^{1}=x_{i};x_{i}^{0}=x_{i}^{\prime}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT = italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ; italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT = italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT.

If xy=0𝑥𝑦0xy=0italic_x italic_y = 0 then we say that x,y𝑥𝑦x,yitalic_x , italic_y are disjoint. So 00 is disjoint from all elements including itself. Observe that XAXB=0superscript𝑋𝐴superscript𝑋𝐵0X^{A}X^{B}=0italic_X start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT italic_X start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT = 0 iff AB𝐴𝐵A\neq Bitalic_A ≠ italic_B or XA=0superscript𝑋𝐴0X^{A}=0italic_X start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT = 0 or XB=0superscript𝑋𝐵0X^{B}=0italic_X start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT = 0.

Definition 3.

A function nsuperscript𝑛\mathcal{B}^{n}\rightarrow\mathcal{B}caligraphic_B start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT → caligraphic_B is in minterm normal form if it is written as f(X)=A{0,1}ncAXA𝑓𝑋subscript𝐴superscript01𝑛subscript𝑐𝐴superscript𝑋𝐴f\left(X\right)=\bigcup_{A\in\left\{0,1\right\}^{n}}c_{A}X^{A}italic_f ( italic_X ) = ⋃ start_POSTSUBSCRIPT italic_A ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_c start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT italic_X start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT where cAsubscript𝑐𝐴c_{A}\in\mathcal{B}italic_c start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ∈ caligraphic_B.

Clearly any function in minterm normal form is a BF. The converse is also true. cf. [4] for the proof of the following theorem:

Theorem 4.

A function nsuperscript𝑛\mathcal{B}^{n}\rightarrow\mathcal{B}caligraphic_B start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT → caligraphic_B is a BF iff it can be written in minterm normal form f(X)=A{0,1}nf(A)XA𝑓𝑋subscript𝐴superscript01𝑛𝑓𝐴superscript𝑋𝐴f\left(X\right)=\bigcup_{A\in\left\{0,1\right\}^{n}}f\left(A\right)X^{A}italic_f ( italic_X ) = ⋃ start_POSTSUBSCRIPT italic_A ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_f ( italic_A ) italic_X start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT.

Note that we use X,A𝑋𝐴X,Aitalic_X , italic_A as tuples of variables, so the notation f(X),f(A)𝑓𝑋𝑓𝐴f\left(X\right),f\left(A\right)italic_f ( italic_X ) , italic_f ( italic_A ) should be clear.

Corollary 5.

A BF is uniquely determined by its values over the two-element BA.

Now we describe Boole’s consistency condition. A system of equations is consistent if it has a solution. The following was discovered by Boole and is actually a case of quantifier elimination:

Theorem 6.

Let f:n:𝑓superscript𝑛f:\mathcal{B}^{n}\rightarrow\mathcal{B}italic_f : caligraphic_B start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT → caligraphic_B be a BF, then X.f(X)=0formulae-sequence𝑋𝑓𝑋0\exists X.f\left(X\right)=0∃ italic_X . italic_f ( italic_X ) = 0 iff [A{0,1}nf(A)]=0delimited-[]subscript𝐴superscript01𝑛𝑓𝐴0\left[\bigcap_{A\in\left\{0,1\right\}^{n}}f\left(A\right)\right]=0[ ⋂ start_POSTSUBSCRIPT italic_A ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_f ( italic_A ) ] = 0 and X.[f(X)0]formulae-sequence𝑋delimited-[]𝑓𝑋0\exists X.\left[f\left(X\right)\neq 0\right]∃ italic_X . [ italic_f ( italic_X ) ≠ 0 ] iff [A{0,1}nf(A)]0delimited-[]subscript𝐴superscript01𝑛𝑓𝐴0\left[\bigcup_{A\in\left\{0,1\right\}^{n}}f\left(A\right)\right]\neq 0[ ⋃ start_POSTSUBSCRIPT italic_A ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT end_POSTSUBSCRIPT italic_f ( italic_A ) ] ≠ 0

Theorem 7.

Let f::𝑓f:\mathcal{B}\rightarrow\mathcal{B}italic_f : caligraphic_B → caligraphic_B be a BF s.t. f(0)f(1)=0𝑓0𝑓10f\left(0\right)f\left(1\right)=0italic_f ( 0 ) italic_f ( 1 ) = 0, or equivalently, x.f(x)=0formulae-sequence𝑥𝑓𝑥0\exists x.f\left(x\right)=0∃ italic_x . italic_f ( italic_x ) = 0. Then f(x)=0𝑥0\left(x\right)=0( italic_x ) = 0 iff x=t+f(t)𝑥𝑡𝑓𝑡x=t+f\left(t\right)italic_x = italic_t + italic_f ( italic_t ) for some t𝑡titalic_t, iff f(0)xf(1)𝑓0𝑥superscript𝑓1f\left(0\right)\leq x\leq f^{\prime}\left(1\right)italic_f ( 0 ) ≤ italic_x ≤ italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ).

Our main proof of correctness for our quantifier elimination method in atomless BA will involve Hall’s marriage theorem. We present it here in its set-theoretical version:

Definition 8.

Let A1,,Ansubscript𝐴1subscript𝐴𝑛A_{1},\dots,A_{n}italic_A start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_A start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT be sets, not necessarily distinct. A choice of elements a1A1,,anAnformulae-sequencesubscript𝑎1subscript𝐴1subscript𝑎𝑛subscript𝐴𝑛a_{1}\in A_{1},\dots,a_{n}\in A_{n}italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ italic_A start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_a start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∈ italic_A start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT such that aiajsubscript𝑎𝑖subscript𝑎𝑗a_{i}\neq a_{j}italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≠ italic_a start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for all ij𝑖𝑗i\neq jitalic_i ≠ italic_j is called a system of distinct representatives.

Theorem 9.

Let 𝒜=A1,,An𝒜subscript𝐴1subscript𝐴𝑛\mathcal{A}=A_{1},\dots,A_{n}caligraphic_A = italic_A start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_A start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT be a sequence of sets, not necessarily distinct. Then 𝒜𝒜\mathcal{A}caligraphic_A does not have a system of distinct representatives, iff there exists a subsequence =B1,,Bmsubscript𝐵1subscript𝐵𝑚\mathcal{B}=B_{1},\dots,B_{m}caligraphic_B = italic_B start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_B start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT of 𝒜𝒜\mathcal{A}caligraphic_A s.t. |iBi|<msubscript𝑖subscript𝐵𝑖𝑚\left|\bigcup_{i}B_{i}\right|<m| ⋃ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_B start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | < italic_m.

Remark 10.

A simple observation which we shall make use of later on is that a system of distinct representatives exists iff it exists for the subsequence in which all infinite A𝐴Aitalic_A’s are removed from it. In other words, infinite sets in a finite collection of sets don’t influence the existence of distinct representatives.

The following theorem is our key step towards quantifier elimination:

Theorem 11.

Let XA1,,XAmsuperscript𝑋subscript𝐴1superscript𝑋subscript𝐴𝑚X^{A_{1}},\dots,X^{A_{m}}italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUPERSCRIPT , … , italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_POSTSUPERSCRIPT be minterms in n𝑛nitalic_n variables, and b1,,bmsubscript𝑏1subscript𝑏𝑚b_{1},\dots,b_{m}italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_b start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT elements in some BA. Then X.i=1m[XAibi]formulae-sequence𝑋superscriptsubscript𝑖1𝑚delimited-[]superscript𝑋subscript𝐴𝑖subscript𝑏𝑖\exists X.\bigwedge_{i=1}^{m}\left[X^{A_{i}}\geq b_{i}\right]∃ italic_X . ⋀ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT [ italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] iff bibj=0subscript𝑏𝑖subscript𝑏𝑗0b_{i}b_{j}=0italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_b start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = 0 whenever AiAjsubscript𝐴𝑖subscript𝐴𝑗A_{i}\neq A_{j}italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≠ italic_A start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

Corollary 12.

The system iI[biXAi0]subscript𝑖𝐼delimited-[]subscript𝑏𝑖superscript𝑋subscript𝐴𝑖0\bigwedge_{i\in I}\left[b_{i}X^{A_{i}}\neq 0\right]⋀ start_POSTSUBSCRIPT italic_i ∈ italic_I end_POSTSUBSCRIPT [ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≠ 0 ] has a solution iff there exists 0<cibi0subscript𝑐𝑖subscript𝑏𝑖0<c_{i}\leq b_{i}0 < italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≤ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT s.t. cicj=0subscript𝑐𝑖subscript𝑐𝑗0c_{i}c_{j}=0italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_c start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = 0 whenever AiAjsubscript𝐴𝑖subscript𝐴𝑗A_{i}\neq A_{j}italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≠ italic_A start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

The corollary reduces the problem of determining consistency of the above system to a case of 9, once treating each bisubscript𝑏𝑖b_{i}italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT as follows: if it can be written as a disjunction of distinct atoms, then we treat it as a set whose elements are those atoms, and each cisubscript𝑐𝑖c_{i}italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is a choice of one or more atoms. If bi0subscript𝑏𝑖0b_{i}\neq 0italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≠ 0 and cannot be written as a union of atoms, then we treat it as an infinite set and by that it is eliminated from the problem as we have pointed out in remark 10.

Remark 13.

Observe that ab=0a=0b=0𝑎𝑏0𝑎0𝑏0a\cup b=0\leftrightarrow a=0\wedge b=0italic_a ∪ italic_b = 0 ↔ italic_a = 0 ∧ italic_b = 0 and recall that each BF can be written as a sum of minterms, or in DNF (note that writing a BF in DNF is not the same thing as writing a formula in DNF). This allows an alternative syntax for theories of BA where atomic formulas are of the form cXA=0𝑐superscript𝑋𝐴0cX^{A}=0italic_c italic_X start_POSTSUPERSCRIPT italic_A end_POSTSUPERSCRIPT = 0. We call this form minterm normal form. Note that this is not the same minterm normal form of BFs, as here it applies to forms of atomic formulas.

The above results together with the last remark imply with the following key conclusion:

Corollary 14.

Finitely many multivariate BFs over an atomless BA have a common nonzero iff none of them is identically zero.

2.2 Quantifier Elimination in Atomless BAs

Given a formula in the language of BA, we can write it in a way such that some chosen innermost quantifier is existential. We then convert everything under that quantifier to DNF. Distributing the existential over the DNF clauses, and squeezing the positives (as above) in each clause, we see that if we can eliminate the existential quantifier from a formula of the form x.f(x)=0igi(x)0formulae-sequence𝑥𝑓𝑥0subscript𝑖subscript𝑔𝑖𝑥0\exists x.f\left(x\right)=0\wedge\bigwedge_{i}g_{i}\left(x\right)\neq 0∃ italic_x . italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) ≠ 0, then we can eliminate all quantifiers. We’ll therefore deal only with such a case.

Lemma 15.

In any BA, the system f(x)=0g(x)0𝑓𝑥0𝑔𝑥0f\left(x\right)=0\wedge g\left(x\right)\neq 0italic_f ( italic_x ) = 0 ∧ italic_g ( italic_x ) ≠ 0 has a solution iff f(0)f(1)=0igi(x+f(x))0𝑓0𝑓10subscript𝑖subscript𝑔𝑖𝑥𝑓𝑥0f\left(0\right)f\left(1\right)=0\wedge\bigwedge_{i}g_{i}\left(x+f\left(x\right% )\right)\neq 0italic_f ( 0 ) italic_f ( 1 ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x + italic_f ( italic_x ) ) ≠ 0 has a solution.

Theorem 16.

In atomless BA, the system f(x)=0iIgi(x)0𝑓𝑥0subscript𝑖𝐼subscript𝑔𝑖𝑥0f\left(x\right)=0\wedge\bigwedge_{i\in I}g_{i}\left(x\right)\neq 0italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i ∈ italic_I end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) ≠ 0 has a solution iff f(0)f(1)=0iIgi(f(0))gi(f(1))0𝑓0𝑓10subscript𝑖𝐼subscript𝑔𝑖𝑓0subscript𝑔𝑖superscript𝑓10f\left(0\right)f\left(1\right)=0\wedge\bigwedge_{i\in I}g_{i}\left(f\left(0% \right)\right)\cup g_{i}\left(f^{\prime}\left(1\right)\right)\neq 0italic_f ( 0 ) italic_f ( 1 ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i ∈ italic_I end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_f ( 0 ) ) ∪ italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) ) ≠ 0.

Proof.

Using the last lemma and 6. ∎

Proposition 17.

For any BF f𝑓fitalic_f we have xf(x)=xf(1)𝑥𝑓𝑥𝑥𝑓1xf\left(x\right)=xf\left(1\right)italic_x italic_f ( italic_x ) = italic_x italic_f ( 1 ) and xf(x)=xf(0)superscript𝑥𝑓𝑥superscript𝑥𝑓0x^{\prime}f\left(x\right)=x^{\prime}f\left(0\right)italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_f ( italic_x ) = italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_f ( 0 ).

Proof.

Exercise. ∎

Lemma 18.

In any BA, f(x)=0igi(x)0𝑓𝑥0subscript𝑖subscript𝑔𝑖𝑥0f\left(x\right)=0\wedge\bigwedge_{i}g_{i}\left(x\right)\neq 0italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) ≠ 0 has a solution iff f(x)=0ixf(1)gi(1)0xf(0)gi(0)0𝑓𝑥0subscript𝑖𝑥superscript𝑓1subscript𝑔𝑖10superscript𝑥superscript𝑓0subscript𝑔𝑖00f\left(x\right)=0\wedge\bigwedge_{i}xf^{\prime}\left(1\right)g_{i}\left(1% \right)\neq 0\vee x^{\prime}f^{\prime}\left(0\right)g_{i}\left(0\right)\neq 0italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_x italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 1 ) ≠ 0 ∨ italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 0 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 0 ) ≠ 0 has a solution, iff

f(0)f(1)=0f(x)=0igi(0)gi(1)0xf(1)gi(1)0xf(0)gi(0)0𝑓0𝑓10𝑓𝑥limit-from0subscript𝑖subscript𝑔𝑖0subscript𝑔𝑖10𝑥superscript𝑓1subscript𝑔𝑖10superscript𝑥superscript𝑓0subscript𝑔𝑖00\begin{array}[]{c}f\left(0\right)f\left(1\right)=0\wedge f\left(x\right)=0% \wedge\\ \bigwedge_{i}g_{i}\left(0\right)g_{i}\left(1\right)\neq 0\vee xf^{\prime}\left% (1\right)g_{i}\left(1\right)\neq 0\vee x^{\prime}f^{\prime}\left(0\right)g_{i}% \left(0\right)\neq 0\end{array}start_ARRAY start_ROW start_CELL italic_f ( 0 ) italic_f ( 1 ) = 0 ∧ italic_f ( italic_x ) = 0 ∧ end_CELL end_ROW start_ROW start_CELL ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 0 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 1 ) ≠ 0 ∨ italic_x italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 1 ) ≠ 0 ∨ italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 0 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 0 ) ≠ 0 end_CELL end_ROW end_ARRAY

has a solution.

Corollary 19.

In atomless BA, the system f(x)=0igi(x)0𝑓𝑥0subscript𝑖subscript𝑔𝑖𝑥0f\left(x\right)=0\wedge\bigwedge_{i}g_{i}\left(x\right)\neq 0italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) ≠ 0 has a solution iff f(0)f(1)=0if(1)gi(1)f(0)gi(0)0𝑓0𝑓10subscript𝑖superscript𝑓1subscript𝑔𝑖1superscript𝑓0subscript𝑔𝑖00f\left(0\right)f\left(1\right)=0\wedge\bigwedge_{i}f^{\prime}\left(1\right)g_{% i}\left(1\right)\cup f^{\prime}\left(0\right)g_{i}\left(0\right)\neq 0italic_f ( 0 ) italic_f ( 1 ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 1 ) ∪ italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 0 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 0 ) ≠ 0.

Proof.

Applying corollary to 18. ∎

By that we conclude the final form of our quantifier elimination algorithm over atomless BAs. Basically we generalized proposition 5.5 in [5] from SBF to BF over atomless BA (or over any BA whenever the cardinalities of the constants appearing in the equations are large enough), using very different and much more direct methods, and we indicated how and why it fails in non-atomless BA. More treatment for the non-atomless case can be found at [1].

2.3 Number of Formulas

We presented minterm normal form of formulas in remark 13. This normal form puts a bound on the number of quantifier-free logically equivalent formulas with n𝑛nitalic_n free variables and k𝑘kitalic_k constants. The accounting is as follows: the formula is itself an SBF of atomic formulas, and there are 22Nsuperscript2superscript2𝑁2^{2^{N}}2 start_POSTSUPERSCRIPT 2 start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT different SBFs in N𝑁Nitalic_N variables. In our case N𝑁Nitalic_N is the number of possible minterms which is readily k2n𝑘superscript2𝑛k2^{n}italic_k 2 start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT. We therefore end up with a triple exponential 22k2nsuperscript2superscript2𝑘superscript2𝑛2^{2^{k2^{n}}}2 start_POSTSUPERSCRIPT 2 start_POSTSUPERSCRIPT italic_k 2 start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT upper bound. This extends to quantified formulas as well due to quantifier elimination.

2.4 Recurrence Relations

We propose the notion of weakly ω𝜔\omegaitalic_ω-categorical theories. Recall that an ω𝜔\omegaitalic_ω-categorical theory is a first order theory in which all of its countable models are isomorphic. The Ryll-Nardzewski theorem says that this definition is equivalent to another definition: that up to logical equivalence, there are only finitely many formulas with free variables taken from a fixed finite set. This gives rise to defining weakly ω𝜔\omegaitalic_ω-categorical theories: those are theories for which the number of formulas using a fixed finite set of free variables and where the constants appearing in them are taken from a fixed finite subset of all constants in the language, up to logical equivalence, is finite. For the sake of this section, it does not matter whether or not the theory is partially interpreted in a fixed structure. The concept of partial interpretation is as follows: suppose we interpret a logic in a fixed structure. Now we enhance this logic with additional uninterpreted constants. Then a partial interpretation would be assigning domain elements to those newly added constant symbols.

It is easy to see, in light of the previous section and the quantifier elimination results, that the theory of atomless BA and of fixed finite BA, are both weakly ω𝜔\omegaitalic_ω-categorical. In what follows we shall deal only with those BA theories. However many of the constructions in this section and across this paper can be carried out into any weakly ω𝜔\omegaitalic_ω-categorical theory.

We are now ready to define formulas in the language of BA (or any weakly ω𝜔\omegaitalic_ω-categorical theory) enhanced with recurrence relations. Any such formula takes the form ϕn(X)=Φ(X,ϕn1(X),ϕn2(X),)subscriptitalic-ϕ𝑛𝑋Φ𝑋subscriptitalic-ϕ𝑛1𝑋subscriptitalic-ϕ𝑛2𝑋\phi_{n}\left(X\right)=\Phi\left(X,\phi_{n-1}\left(X\right),\phi_{n-2}\left(X% \right),\dots\right)italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X ) = roman_Φ ( italic_X , italic_ϕ start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT ( italic_X ) , italic_ϕ start_POSTSUBSCRIPT italic_n - 2 end_POSTSUBSCRIPT ( italic_X ) , … ) together with suitable base conditions ϕ1(X)=,ϕ2(X)=,formulae-sequencesubscriptitalic-ϕ1𝑋subscriptitalic-ϕ2𝑋\phi_{1}\left(X\right)=\dots,\phi_{2}\left(X\right)=\dots,\dotsitalic_ϕ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_X ) = … , italic_ϕ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_X ) = … , …. Clearly those recurrence relations do not always have a fixed point, but weakly ω𝜔\omegaitalic_ω-categoricity guarantees a partial fixed point. It is easy to pin down all cases in which a given formula has a fixed point (in case the theory we start with is decidable), as well as apply basic remedies for the case that only a partial fixed point exists, but those are omitted here for the sake of brevity.

We have shown that any formula in the theory of atomless BA enhanced with recurrence relations can be written in an equivalent form without recurrence relations.

3 NSO: Nullary Second Order Logic

Building on what we said in the introduction, we shall not merely present a language, but a language-extension mechanism, altough this extension is not in the standard sense, namely formulas in the base language are not, as for themselves, formulas in the extended language, but constant symbols in it, as we shall see. This extension preserves decidability, let alone consistency. We further consider extending many languages at once, and it is indeed yet another feature of our construction to allow languages to co-exist in one unified language, albeit, of course, the interaction between those languages is very limited. Referring to many BAs at once is easily done by considering the many-sorted theory of BA, alternatively the product algebra.

Fix arbitrary languages (the base logics) in which their formulas (or sentences), up to logical equivalence, make a BA. Then we can consider the many-sorted BA theory interpreted in those BAs. Constants in that languge are formulas in the base logics. Quantification takes the same semantics of quantification over arbitrary BA elements. If the base logics make an atomless BA, then the extended language has decidable satisfiability iff the base logics have. Otherwise decidable model counting is required, or more precisely, when seen as a BA, to tell whether an element is a disjunction of at least n𝑛nitalic_n distinct atoms.

Denote the extended language by NSO[1,,n]𝑁𝑆𝑂subscript1subscript𝑛NSO\left[\mathcal{L}_{1},\dots,\mathcal{L}_{n}\right]italic_N italic_S italic_O [ caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , caligraphic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ]. We show that NSO[1,,n]𝑁𝑆𝑂subscript1subscript𝑛NSO\left[\mathcal{L}_{1},\dots,\mathcal{L}_{n}\right]italic_N italic_S italic_O [ caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , caligraphic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] can have itself as a base-logic. So far, each NSO formula is either true or false, because it is interpreted in a fixed model (being the BA which is the LTA of the base logic), and therfore makes a small BA (only two elements). To obtain an atomless BA from formulas in NSO[1,,n]𝑁𝑆𝑂subscript1subscript𝑛NSO\left[\mathcal{L}_{1},\dots,\mathcal{L}_{n}\right]italic_N italic_S italic_O [ caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , caligraphic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] we can simply enhance it with infinitely many uninterpreted constant symbols. After doing so, we now let interepreted constants to be formulas in NSO[1,,n]𝑁𝑆𝑂subscript1subscript𝑛NSO\left[\mathcal{L}_{1},\dots,\mathcal{L}_{n}\right]italic_N italic_S italic_O [ caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , caligraphic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] appearing inside curly brackets (in order to avoid syntactic ambiguity), and handling of quantifiers for the sake of a decision procedure can be done by means of the atomless BA quantifier elimination algorithm. The basic syntax of NSO[1,,n]𝑁𝑆𝑂subscript1subscript𝑛NSO\left[\mathcal{L}_{1},\dots,\mathcal{L}_{n}\right]italic_N italic_S italic_O [ caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , caligraphic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] is therefore

ϕ:=var:sort.ϕ|ϕϕ|¬ϕ|bf=0\phi:=\exists var:sort.\phi|\phi\wedge\phi|\neg\phi|bf=0italic_ϕ := ∃ italic_v italic_a italic_r : italic_s italic_o italic_r italic_t . italic_ϕ | italic_ϕ ∧ italic_ϕ | ¬ italic_ϕ | italic_b italic_f = 0
sort:=1||n|NSO[1,,Ln]assign𝑠𝑜𝑟𝑡conditionalsubscript1subscript𝑛𝑁𝑆𝑂subscript1subscript𝐿𝑛sort:=\mathcal{L}_{1}|\dots|\mathcal{L}_{n}|NSO\left[\mathcal{L}_{1},\dots,L_{% n}\right]italic_s italic_o italic_r italic_t := caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT | … | caligraphic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT | italic_N italic_S italic_O [ caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ]
bf:=var|{ϕsort}|const|0|1|bfbf|bfassign𝑏𝑓𝑣𝑎𝑟superscriptitalic-ϕ𝑠𝑜𝑟𝑡𝑐𝑜𝑛𝑠𝑡01𝑏𝑓𝑏𝑓𝑏superscript𝑓bf:=var|\left\{\phi^{sort}\right\}|const|0|1|bf\cap bf|bf^{\prime}italic_b italic_f := italic_v italic_a italic_r | { italic_ϕ start_POSTSUPERSCRIPT italic_s italic_o italic_r italic_t end_POSTSUPERSCRIPT } | italic_c italic_o italic_n italic_s italic_t | 0 | 1 | italic_b italic_f ∩ italic_b italic_f | italic_b italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT

where ϕsuperscriptitalic-ϕ\phi^{\mathcal{L}}italic_ϕ start_POSTSUPERSCRIPT caligraphic_L end_POSTSUPERSCRIPT means any formula in the language \mathcal{L}caligraphic_L. Clearly, each bf𝑏𝑓bfitalic_b italic_f may only contain variables and constants from the same sort. const𝑐𝑜𝑛𝑠𝑡constitalic_c italic_o italic_n italic_s italic_t refers to an uninterpreted constant. The deep-most level of formulas in [nested] curly brackets will be either a formula in 1,,nsubscript1subscript𝑛\mathcal{L}_{1},\dots,\mathcal{L}_{n}caligraphic_L start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , caligraphic_L start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT or a formula in the language of BA in which the only constants appearing in it are 0,1010,10 , 1. It is then interpreted as a formula over arbitrary atomless BA since they’re all elementarily equivalent. It is easy to see that going inductively over the depth of curly brackets, gives a decision procedure as well as semantics to this language.

4 GSSOTC: A Temporal Logic

We devise a new, decidable, family of temporal logics over infinite data values, where those values come with theories much richer than merely equality, in particular with the theory of atomless Boolean Algebras (as well as fixed finite ones though such a case does not amount to a significant novelty). Further, this language enjoys the distinctive ability to verify statements of the form “at each point of time, for all inputs exist a well-defined output/state, possibly depending on the previous output/state”. It also presents a new kind of decision procedure, unrelated to automata, tableaux, or to any other decision method known to the author.

To describe the language in simple intuitive terms: fix an atomless BA and consider the theory of BA interpreted in this structure (with interpreted constants as above so the LTA of this logic is the countable atomless BA). Consider formulas with free variables xnk,,xn,ynk,,ynsubscript𝑥𝑛𝑘subscript𝑥𝑛subscript𝑦𝑛𝑘subscript𝑦𝑛x_{n-k},\dots,x_{n},y_{n-k},\dots,y_{n}italic_x start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT , … , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT where the x𝑥xitalic_x’s are understood as inputs and the y𝑦yitalic_y’s are understood as outputs, and n𝑛nitalic_n is any time point (so it can be seen as a free variable of sort \mathbb{N}blackboard_N). So it describes connection between current and previous inputs and outputs at each point of time. This is basically almost the full language.

This technique works for any weakly ω𝜔\omegaitalic_ω-categorical language, as long as it supports conjunction and quantification. However in the atomless BA case we get the unique property of a language that can speak of its own sentences, in the spirit of NSO.

4.1 Time-Compatible Structures

A sequence of elements from some domain 𝒟𝒟\mathcal{D}caligraphic_D can be seen as a function 𝒟𝒟\mathbb{N}\rightarrow\mathcal{D}blackboard_N → caligraphic_D. A function between sequences is therefore of type (𝒟)(𝒟)𝒟𝒟\left(\mathbb{N}\rightarrow\mathcal{D}\right)\rightarrow\left(\mathbb{N}% \rightarrow\mathcal{D}\right)( blackboard_N → caligraphic_D ) → ( blackboard_N → caligraphic_D ). As customary in many texts, [k]delimited-[]𝑘\left[k\right][ italic_k ] will denote the set {1,,k}1𝑘\left\{1,\dots,k\right\}{ 1 , … , italic_k }.

Definition 20.

A function f:(𝒟)(𝒟):𝑓𝒟𝒟f:\left(\mathbb{N}\rightarrow\mathcal{D}\right)\rightarrow\left(\mathbb{N}% \rightarrow\mathcal{D}\right)italic_f : ( blackboard_N → caligraphic_D ) → ( blackboard_N → caligraphic_D ) between sequences is prefix-preserving (alternatively time-compatible, TC) if for all sequences p,s𝑝𝑠p,sitalic_p , italic_s, if p𝑝pitalic_p is a strict prefix of s𝑠sitalic_s, then f(p)𝑓𝑝f\left(p\right)italic_f ( italic_p ) is a strict prefix f(s)𝑓𝑠f\left(s\right)italic_f ( italic_s ). We extend this notion also for f:([n]𝒟)([n]𝒟):𝑓delimited-[]𝑛𝒟delimited-[]𝑛𝒟f:\left(\left[n\right]\rightarrow\mathcal{D}\right)\rightarrow\left(\left[n% \right]\rightarrow\mathcal{D}\right)italic_f : ( [ italic_n ] → caligraphic_D ) → ( [ italic_n ] → caligraphic_D ).

Definition 21.

A Time-Compatible (TC) Structure of length N{}𝑁N\in\mathbb{N}\cup\left\{\infty\right\}italic_N ∈ blackboard_N ∪ { ∞ } is a domain 𝒟𝒟\mathcal{D}caligraphic_D with prefix-preserving functions 𝒟N𝒟Nsuperscript𝒟𝑁superscript𝒟𝑁\mathcal{D}^{N}\rightarrow\mathcal{D}^{N}caligraphic_D start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT → caligraphic_D start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT.

It should be clear that any computer program is a TC structure: at each point of time it takes an input and outputs an output, while the output may depend only on past and present inputs and outputs, not future ones. This is why we refer to prefix-preservation as TC.

Remark 22.

Due to the “lookback” ability, namely the dependence on previous inputs and outputs, we don’t need to refer to the concept of state, as it is subsumed by the concept of output.

Remark 23.

In what follows we will deal only with infinite-time TC structures (so N=𝑁N=\inftyitalic_N = ∞ in the above definition) unless stated otherwise.

Remark 24.

We will eventually be interested with functions from tuples of sequences to tuples of sequences (all tuples of fixed finite size, but the input tuple may be of different size than of the output tuple). All definitions and results should apply mutatis-mutandis.

Remark 25.

The setting can easily be extended to trees rather sequences. It is done by allowing more than one successor relation, and the same methods apply.

Definition 26.

A TC function has bounded lookback (BL) of length k𝑘k\in\mathbb{N}italic_k ∈ blackboard_N (or simply BL[k]delimited-[]𝑘\left[k\right][ italic_k ]) if exists mk𝑚𝑘m\geq kitalic_m ≥ italic_k (the recurrence point), s.t. for each n>m𝑛𝑚n>mitalic_n > italic_m, the output sequence at point n𝑛nitalic_n depends only on the input and output sequences at points n1,,nk𝑛1𝑛𝑘n-1,\dots,n-kitalic_n - 1 , … , italic_n - italic_k, as well as the input at point n𝑛nitalic_n.

Corollary 27.

If f𝑓fitalic_f is BL[k]delimited-[]𝑘\left[k\right][ italic_k ] then it can be expressed as a pair of functions, one of type 𝒟2k+1𝒟superscript𝒟2𝑘1𝒟\mathcal{D}^{2k+1}\rightarrow\mathcal{D}caligraphic_D start_POSTSUPERSCRIPT 2 italic_k + 1 end_POSTSUPERSCRIPT → caligraphic_D and another of type 𝒟m𝒟msuperscript𝒟𝑚superscript𝒟𝑚\mathcal{D}^{m}\rightarrow\mathcal{D}^{m}caligraphic_D start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT → caligraphic_D start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT which is required to be TC.

Proof.

By definition of BL functions, we can write f𝑓fitalic_f as a recurrence relation

[f(x)]n=g(xn,xn1,,xnk,[f(x)]n1,,[f(x)]nk)subscriptdelimited-[]𝑓𝑥𝑛𝑔subscript𝑥𝑛subscript𝑥𝑛1subscript𝑥𝑛𝑘subscriptdelimited-[]𝑓𝑥𝑛1subscriptdelimited-[]𝑓𝑥𝑛𝑘\left[f\left(x\right)\right]_{n}=g\left(x_{n},x_{n-1},\dots,x_{n-k},\left[f% \left(x\right)\right]_{n-1},\dots,\left[f\left(x\right)\right]_{n-k}\right)[ italic_f ( italic_x ) ] start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT = italic_g ( italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT , [ italic_f ( italic_x ) ] start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , … , [ italic_f ( italic_x ) ] start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT )

(where x𝑥xitalic_x is the input sequence) with initial conditions of the form [f(x)]i=subscriptdelimited-[]𝑓𝑥𝑖\left[f\left(x\right)\right]_{i}=\dots[ italic_f ( italic_x ) ] start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = … for 1ik1𝑖𝑘1\leq i\leq k1 ≤ italic_i ≤ italic_k. This g𝑔gitalic_g is of type 𝒟2k+1𝒟superscript𝒟2𝑘1𝒟\mathcal{D}^{2k+1}\rightarrow\mathcal{D}caligraphic_D start_POSTSUPERSCRIPT 2 italic_k + 1 end_POSTSUPERSCRIPT → caligraphic_D and together with the initial conditions (which specify the behavior up until the recurrence point), fully encodes f𝑓fitalic_f. ∎

Corollary 28.

Given a pair of functions, one of type 𝒟2k+1𝒟superscript𝒟2𝑘1𝒟\mathcal{D}^{2k+1}\rightarrow\mathcal{D}caligraphic_D start_POSTSUPERSCRIPT 2 italic_k + 1 end_POSTSUPERSCRIPT → caligraphic_D, and another, which is TC, of type 𝒟m𝒟msuperscript𝒟𝑚superscript𝒟𝑚\mathcal{D}^{m}\rightarrow\mathcal{D}^{m}caligraphic_D start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT → caligraphic_D start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT, we can uniquely assign to it a function of BL[k]delimited-[]𝑘\left[k\right][ italic_k ].

4.2 Bounded Lookback and Recurrence Relations

Corollary 29.

Any formula (in virtually any logic) with 2k+22𝑘22k+22 italic_k + 2 free variables defines a [possibly empty] set of BL[k]delimited-[]𝑘\left[k\right][ italic_k ] functions.

Note that in the infinitary expression obtained in the proof, quantifiers can be pushed inside. This is a property of being TC, and this ability is one cruicial point in the upcoming construction. Also note that skolemization of this expression will yield something similar to the type in .

Remark 30.

The initial conditions are not expressed in the latter corollary. But the corollary still holds. It defines a set of functions that include functions per each possible initial condtions. This is not an inherent limitation. We used this form only for simplicity at this stage.

Fix a lookback parameter k0𝑘0k\geq 0italic_k ≥ 0. Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT will denote a tuple of variables of lookback k𝑘kitalic_k, so it’s a tuple of k+1𝑘1k+1italic_k + 1 variables of the form xjk,xjk+1,,xjsubscript𝑥𝑗𝑘subscript𝑥𝑗𝑘1subscript𝑥𝑗x_{j-k},x_{j-k+1},\dots,x_{j}italic_x start_POSTSUBSCRIPT italic_j - italic_k end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_j - italic_k + 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. We assume that the first time coordinate is 00.

Definition 31.

Given formula ϕitalic-ϕ\phiitalic_ϕ (in virtually any logic) with 2k+22𝑘22k+22 italic_k + 2 free variables xnk,,xn,ynk,,ynsubscript𝑥𝑛𝑘subscript𝑥𝑛subscript𝑦𝑛𝑘subscript𝑦𝑛x_{n-k},\dots,x_{n},y_{n-k},\dots,y_{n}italic_x start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT , … , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT, define a recurrence relation ϕnsubscriptitalic-ϕ𝑛\phi_{n}italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT by ϕn+1(Xk,Yk):=ϕ(Xk,Yk)xk+1yk+1.ϕn(Xk+1,Yk+1)formulae-sequenceassignsubscriptitalic-ϕ𝑛1subscript𝑋𝑘subscript𝑌𝑘italic-ϕsubscript𝑋𝑘subscript𝑌𝑘for-allsubscript𝑥𝑘1subscript𝑦𝑘1subscriptitalic-ϕ𝑛subscript𝑋𝑘1subscript𝑌𝑘1\phi_{n+1}\left(X_{k},Y_{k}\right):=\phi\left(X_{k},Y_{k}\right)\wedge\forall x% _{k+1}\exists y_{k+1}.\phi_{n}\left(X_{k+1},Y_{k+1}\right)italic_ϕ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) := italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) ∧ ∀ italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT . italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ) with base case ϕ1:=ϕ(Xk,Yk)assignsubscriptitalic-ϕ1italic-ϕsubscript𝑋𝑘subscript𝑌𝑘\phi_{1}:=\phi\left(X_{k},Y_{k}\right)italic_ϕ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT := italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ).

Remark 32.

Observe that ϕn(Xk,Yk)subscriptitalic-ϕ𝑛subscript𝑋𝑘subscript𝑌𝑘\phi_{n}\left(X_{k},Y_{k}\right)italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) actually says that exists a BL[k]delimited-[]𝑘\left[k\right][ italic_k ] function between sequences of length n+k𝑛𝑘n+kitalic_n + italic_k, where the k𝑘kitalic_k initial positions in the sequences are left as free variables.

Note that ϕnsubscriptitalic-ϕ𝑛\phi_{n}italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT has a form of monotonicity wrt n𝑛nitalic_n: if exists a TC function between sequences of lentgh n+1𝑛1n+1italic_n + 1, and the function satisfies ϕitalic-ϕ\phiitalic_ϕ, then clearly exist such a function for sequences of length n𝑛nitalic_n.

Clearly, if x0y0xkyk.ϕn(Xk,Yk)formulae-sequencefor-allsubscript𝑥0subscript𝑦0for-allsubscript𝑥𝑘subscript𝑦𝑘subscriptitalic-ϕ𝑛subscript𝑋𝑘subscript𝑌𝑘\forall x_{0}\exists y_{0}\dots\forall x_{k}\exists y_{k}.\phi_{n}\left(X_{k},% Y_{k}\right)∀ italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT . italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) for all n𝑛nitalic_n, then ϕitalic-ϕ\phiitalic_ϕ defines a nonempty set of functions in the spirit of corollary . The crux of our construction is the observation that if the underlying logic is weakly ω𝜔\omegaitalic_ω-categorical, then there are only finitely many ϕnsubscriptitalic-ϕ𝑛\phi_{n}italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT’s up to logical equivalence, hence decidability and decision procedure are immediate.

4.3 Guarded Successor

Observe that a formula of the form ϕ(Xk,Yk)italic-ϕsubscript𝑋𝑘subscript𝑌𝑘\phi\left(X_{k},Y_{k}\right)italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) can be given a direct BL[k]delimited-[]𝑘\left[k\right][ italic_k ] semantics also by adding a sort of natural numbers with the successor relation s𝑠sitalic_s, and function symbols f:𝒟:𝑓𝒟f:\mathbb{N}\rightarrow\mathcal{D}italic_f : blackboard_N → caligraphic_D and F:(𝒟)(𝒟):𝐹𝒟𝒟F:\left(\mathbb{N}\rightarrow\mathcal{D}\right)\rightarrow\left(\mathbb{N}% \rightarrow\mathcal{D}\right)italic_F : ( blackboard_N → caligraphic_D ) → ( blackboard_N → caligraphic_D ), where F𝐹Fitalic_F is required to be prefix-preserving, and writing ϕitalic-ϕ\phiitalic_ϕ as

t0,tk.[i=0k1s(ti,ti+1)]ϕ(f(t0),,f(tk),F(f)(t0),,F(f)(tk))formulae-sequencefor-allsubscript𝑡0subscript𝑡𝑘delimited-[]superscriptsubscript𝑖0𝑘1𝑠subscript𝑡𝑖subscript𝑡𝑖1italic-ϕ𝑓subscript𝑡0𝑓subscript𝑡𝑘𝐹𝑓subscript𝑡0𝐹𝑓subscript𝑡𝑘\forall t_{0},\dots t_{k}.\left[\bigwedge_{i=0}^{k-1}s\left(t_{i},t_{i+1}% \right)\right]\rightarrow\phi\left(f\left(t_{0}\right),\dots,f\left(t_{k}% \right),F\left(f\right)\left(t_{0}\right),\dots,F\left(f\right)\left(t_{k}% \right)\right)∀ italic_t start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , … italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT . [ ⋀ start_POSTSUBSCRIPT italic_i = 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k - 1 end_POSTSUPERSCRIPT italic_s ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT ) ] → italic_ϕ ( italic_f ( italic_t start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ) , … , italic_f ( italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) , italic_F ( italic_f ) ( italic_t start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ) , … , italic_F ( italic_f ) ( italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) )
Definition 33.

Fix a logic {\cal L}caligraphic_L and let 𝒟𝒟\mathcal{D}caligraphic_D be the sort it operates over. First extend it with function symbols fi:𝒟:subscript𝑓𝑖𝒟f_{i}:\mathbb{N}\rightarrow\mathcal{D}italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT : blackboard_N → caligraphic_D and Fj:(𝒟)(𝒟):subscript𝐹𝑗𝒟𝒟F_{j}:\left(\mathbb{N}\rightarrow\mathcal{D}\right)\rightarrow\left(\mathbb{N}% \rightarrow\mathcal{D}\right)italic_F start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT : ( blackboard_N → caligraphic_D ) → ( blackboard_N → caligraphic_D ), where F𝐹Fitalic_F is required to be prefix-preserving. If ψ𝜓\psiitalic_ψ is any formula in this extended language, then

ϕ:=ψ|ϕϕ|¬ϕ|t1,,tm.[(i,j)Is(ti,tj)]ϕformulae-sequenceassignitalic-ϕconditional𝜓italic-ϕitalic-ϕitalic-ϕfor-allsubscript𝑡1subscript𝑡𝑚delimited-[]subscript𝑖𝑗𝐼𝑠subscript𝑡𝑖subscript𝑡𝑗italic-ϕ\phi:=\psi|\phi\wedge\phi|\neg\phi|\forall t_{1},\dots,t_{m}.\left[\bigwedge_{% \left(i,j\right)\in I}s\left(t_{i},t_{j}\right)\right]\rightarrow\phiitalic_ϕ := italic_ψ | italic_ϕ ∧ italic_ϕ | ¬ italic_ϕ | ∀ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT . [ ⋀ start_POSTSUBSCRIPT ( italic_i , italic_j ) ∈ italic_I end_POSTSUBSCRIPT italic_s ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ] → italic_ϕ

defines a second extension to the language which we shall refer to as the guarded successor extention of {\cal L}caligraphic_L. The sublanguage of the form

ϕ:=ψ|ϕϕ|¬ϕ|t1,,tm.[(i,j)Is(ti,tj)]ψformulae-sequenceassignitalic-ϕconditional𝜓italic-ϕitalic-ϕitalic-ϕfor-allsubscript𝑡1subscript𝑡𝑚delimited-[]subscript𝑖𝑗𝐼𝑠subscript𝑡𝑖subscript𝑡𝑗𝜓\phi:=\psi|\phi\wedge\phi|\neg\phi|\forall t_{1},\dots,t_{m}.\left[\bigwedge_{% \left(i,j\right)\in I}s\left(t_{i},t_{j}\right)\right]\rightarrow\psiitalic_ϕ := italic_ψ | italic_ϕ ∧ italic_ϕ | ¬ italic_ϕ | ∀ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT . [ ⋀ start_POSTSUBSCRIPT ( italic_i , italic_j ) ∈ italic_I end_POSTSUBSCRIPT italic_s ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ] → italic_ψ

will be called the collapsed fragment. Its sublanguage of the form

ϕ:=k(t1,,tm.[(i,j)Iks(ti,tj)]ψk1)(t1,,tm.[(i,j)Jks(ti,tj)]ψk2)\phi:=\bigvee_{k}\left(\forall t_{1},\dots,t_{m}.\left[\bigwedge_{\left(i,j% \right)\in I_{k}}s\left(t_{i},t_{j}\right)\right]\rightarrow\psi_{k}^{1}\right% )\wedge\left(\exists t_{1},\dots,t_{m}.\left[\bigwedge_{\left(i,j\right)\in J_% {k}}s\left(t_{i},t_{j}\right)\right]\wedge\psi_{k}^{2}\right)italic_ϕ := ⋁ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ( ∀ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT . [ ⋀ start_POSTSUBSCRIPT ( italic_i , italic_j ) ∈ italic_I start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ] → italic_ψ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT ) ∧ ( ∃ italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT . [ ⋀ start_POSTSUBSCRIPT ( italic_i , italic_j ) ∈ italic_J start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ] ∧ italic_ψ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT )

will be called the normalized fragment. In all cases, the guard (i,j)Is(ti,tj)subscript𝑖𝑗𝐼𝑠subscript𝑡𝑖subscript𝑡𝑗\bigwedge_{\left(i,j\right)\in I}s\left(t_{i},t_{j}\right)⋀ start_POSTSUBSCRIPT ( italic_i , italic_j ) ∈ italic_I end_POSTSUBSCRIPT italic_s ( italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) is required to uniquely determines the relative position between each ti,tjsubscript𝑡𝑖subscript𝑡𝑗t_{i},t_{j}italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, and ψ,ψk1,ψk2𝜓superscriptsubscript𝜓𝑘1superscriptsubscript𝜓𝑘2\psi,\psi_{k}^{1},\psi_{k}^{2}italic_ψ , italic_ψ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_ψ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT involve t1,,tmsubscript𝑡1subscript𝑡𝑚t_{1},\dots,t_{m}italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT only through application of f,F𝑓𝐹f,Fitalic_f , italic_F (or several such functions), while f,F𝑓𝐹f,Fitalic_f , italic_F may also be applied to constants from \mathbb{N}blackboard_N.

Remark 34.

Applying f,F𝑓𝐹f,Fitalic_f , italic_F to constants from \mathbb{N}blackboard_N corresponds to the above initial conditions.

Theorem 35.

Any formula in a guarded successor extension can be written as an equisatisfiable formula in the normalized fragment.

Remark 36.

Note that here we had to use the assumption that we are dealing with infinite-time structures, namely N=𝑁N=\inftyitalic_N = ∞. In the finite-time case we will also need the end-of-sequence predicate \sharp, resulting with a slightly more complicated quantifier collapse. We omit this simple derivation here for sake of brevity.

Corollary 37.

Any formula in a guarded successor extension without temporal existential quantifiers can be written in a free-variable BL[k]delimited-[]𝑘\left[k\right][ italic_k ] form ϕ(Xk,Yk)italic-ϕsubscript𝑋𝑘subscript𝑌𝑘\phi\left(X_{k},Y_{k}\right)italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ).

We of course bear in mind that if some language is decidable and is weakly ω𝜔\omegaitalic_ω-categorical, then its extension with recurrence relations is also decidable. Together with a method to handle the existential part as described in the next section, we’ll conclude that:

Corollary 38.

Satisfiability of a formula in a guarded successor extension is decidable if this fragment is obtained from a decidable language \mathcal{L}caligraphic_L which is weakly ω𝜔\omegaitalic_ω-categorical, enhanced with the sort \mathbb{N}blackboard_N, guarded successors, 𝒟𝒟\mathbb{N}\rightarrow\mathcal{D}blackboard_N → caligraphic_D function symbols, and BL[k]delimited-[]𝑘\left[k\right][ italic_k ] function symbols.

We refer to this extended language as GSSOTC[]delimited-[]\left[\mathcal{L}\right][ caligraphic_L ], where GSSOTC stands for Guarded-Successor Second-Order Time-Compatible. The second-order part is due to the following: given two sequences f,g:𝒟:𝑓𝑔𝒟f,g:\mathbb{N}\rightarrow\mathcal{D}italic_f , italic_g : blackboard_N → caligraphic_D, we can declare a non-standard quantifer alternation fgfor-all𝑓𝑔\forall f\exists g∀ italic_f ∃ italic_g, which would translate into Ff𝐹for-all𝑓\exists F\forall f∃ italic_F ∀ italic_f (so far just standard higher-order skolemization), where F𝐹Fitalic_F is a TC function between sequences. Those function quantifiers are eliminated when converting the formula to the free-variable form, which is then converted to function-free recurrence-relation form.

Some easy extensions of this language were described above, we reiterate them and add more: the end-of-string predicate \sharp, having multiple successor relations and by that considering trees rather sequences, having constant positions, so instead of e.g. ϕ(xn,xn1,yn)italic-ϕsubscript𝑥𝑛subscript𝑥𝑛1subscript𝑦𝑛\phi\left(x_{n},x_{n-1},y_{n}\right)italic_ϕ ( italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ), we have e.g. ϕ(x1,x2,xn,xn1,yn)italic-ϕsubscript𝑥1subscript𝑥2subscript𝑥𝑛subscript𝑥𝑛1subscript𝑦𝑛\phi\left(x_{1},x_{2},x_{n},x_{n-1},y_{n}\right)italic_ϕ ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ), having explicit second-order quantifiers that are eliminated by reduction to recurrence relations, and finally, having richer quantifier alternation, e.g. for all keyboard input at time n𝑛nitalic_n, exists a memory state at time n𝑛nitalic_n, s.t. for all network input at time n𝑛nitalic_n, and so on, resulting in quantification of the form x1y1z1x2y2z2x3y3z3for-allsubscript𝑥1subscript𝑦1for-allsubscript𝑧1for-allsubscript𝑥2subscript𝑦2for-allsubscript𝑧2for-allsubscript𝑥3subscript𝑦3for-allsubscript𝑧3\forall x_{1}\exists y_{1}\forall z_{1}\forall x_{2}\exists y_{2}\forall z_{2}% \forall x_{3}\exists y_{3}\forall z_{3}\dots∀ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∀ italic_z start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∀ italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∀ italic_z start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∀ italic_x start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ∀ italic_z start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ….

4.4 Decision Methods and Execution

In the spirit of remark 24, we shall have several input and output sequences, each referred to as a stream.

Theorem 39.

Given ϕ(Xji,Yji)italic-ϕsuperscriptsubscript𝑋𝑗𝑖superscriptsubscript𝑌𝑗𝑖\phi\left(X_{j}^{i},Y_{j}^{i}\right)italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) where X𝑋Xitalic_X are inputs and Y𝑌Yitalic_Y are outputs, and i𝑖iitalic_i denoting the stream number, define the recurrence relation

ϕ0(Xki,Yki):=ϕ(Xki,Yki)assignsubscriptitalic-ϕ0superscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖italic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖\phi_{0}\left(X_{k}^{i},Y_{k}^{i}\right):=\phi\left(X_{k}^{i},Y_{k}^{i}\right)italic_ϕ start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) := italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT )
ϕn(Xki,Yki):=ϕ(Xki,Yki)xk+1yk+1.ϕn1(Xk+1i,Yk+1i)formulae-sequenceassignsubscriptitalic-ϕ𝑛superscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖italic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖for-allsubscript𝑥𝑘1subscript𝑦𝑘1subscriptitalic-ϕ𝑛1superscriptsubscript𝑋𝑘1𝑖superscriptsubscript𝑌𝑘1𝑖\phi_{n}\left(X_{k}^{i},Y_{k}^{i}\right):=\phi\left(X_{k}^{i},Y_{k}^{i}\right)% \wedge\forall x_{k+1}\exists y_{k+1}.\phi_{n-1}\left(X_{k+1}^{i},Y_{k+1}^{i}\right)italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) := italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) ∧ ∀ italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT . italic_ϕ start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT )

so ϕnsubscriptitalic-ϕ𝑛\phi_{n}italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT means that exists a model with time points 0,,n+k0𝑛𝑘0,\dots,n+k0 , … , italic_n + italic_k starting with Xki,Ykisuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖X_{k}^{i},Y_{k}^{i}italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT. Then the reccurence relation is monotonic, namely nXkiYki.ϕn+1(Xki,Yki)ϕn(Xki,Yki)formulae-sequencefor-all𝑛for-allsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖subscriptitalic-ϕ𝑛1superscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖subscriptitalic-ϕ𝑛superscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖\forall n\forall X_{k}^{i}Y_{k}^{i}.\phi_{n+1}\left(X_{k}^{i},Y_{k}^{i}\right)% \rightarrow\phi_{n}\left(X_{k}^{i},Y_{k}^{i}\right)∀ italic_n ∀ italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT . italic_ϕ start_POSTSUBSCRIPT italic_n + 1 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) → italic_ϕ start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) and therefore has a fixed point. Denote it by ϕ(Xki,Yki)subscriptitalic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖\phi_{\infty}\left(X_{k}^{i},Y_{k}^{i}\right)italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ). Given a model of ϕitalic-ϕ\phiitalic_ϕ with m𝑚mitalic_m time points, and given each input Xisuperscript𝑋𝑖X^{i}italic_X start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT at point m+1𝑚1m+1italic_m + 1, then an output Yisuperscript𝑌𝑖Y^{i}italic_Y start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT will have an unbounded continuation satisfying ϕitalic-ϕ\phiitalic_ϕ iff ϕ(Xm+1i,Ym+1i)subscriptitalic-ϕsuperscriptsubscript𝑋𝑚1𝑖superscriptsubscript𝑌𝑚1𝑖\phi_{\infty}\left(X_{m+1}^{i},Y_{m+1}^{i}\right)italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ).

Remark 40.

The above formulation suggests that ϕsubscriptitalic-ϕ\phi_{\infty}italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT is a normal form of ϕitalic-ϕ\phiitalic_ϕ when understood as defining TC models.

Remark 41.

A TC structure is a model of ϕitalic-ϕ\phiitalic_ϕ iff any subsequence satisfies ϕsubscriptitalic-ϕ\phi_{\infty}italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT when understood as a formula in the language of BA.

Remark 42.

Given inputs at each point of time, satsifying outputs can be computed by substituting the known variables into ϕsubscriptitalic-ϕ\phi_{\infty}italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT, and solving for the missing outputs. This is an execution method for software specification in this language. Software specification in this language is therefore directly executable as-is, using an oracle to determine satisfying assignments to formulas in the language of atomless BA. Finding satisfying assignments to a formula in the language of atomless BA is a topic by its own, and is omitted here for sake of brevity.

Corollary 43.

Given two formula ϕ(Xji,Yji),ψ(Xji,Yji)italic-ϕsuperscriptsubscript𝑋𝑗𝑖superscriptsubscript𝑌𝑗𝑖𝜓superscriptsubscript𝑋𝑗𝑖superscriptsubscript𝑌𝑗𝑖\phi\left(X_{j}^{i},Y_{j}^{i}\right),\psi\left(X_{j}^{i},Y_{j}^{i}\right)italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) , italic_ψ ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ), then the set of TC models of ϕitalic-ϕ\phiitalic_ϕ is a subset of those of ψ𝜓\psiitalic_ψ, iff x0y0xkyk.ϕ(Xki,Yki)ψ(Xki,Yki)formulae-sequencefor-allsubscript𝑥0subscript𝑦0subscript𝑥𝑘subscript𝑦𝑘subscriptitalic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖subscript𝜓superscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖\forall x_{0}y_{0}\dots x_{k}y_{k}.\phi_{\infty}\left(X_{k}^{i},Y_{k}^{i}% \right)\rightarrow\psi_{\infty}\left(X_{k}^{i},Y_{k}^{i}\right)∀ italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT italic_y start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT … italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT . italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) → italic_ψ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ).

This gives us an algorithm to decide whether ϕψ=0italic-ϕsuperscript𝜓0\phi\psi^{\prime}=0italic_ϕ italic_ψ start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = 0 where ϕ,ψitalic-ϕ𝜓\phi,\psiitalic_ϕ , italic_ψ are seen as sets of TC models.

Remark 44.

Combined with 35 and its proof, this corollary gives us a decision procedure for the full language GS. Each DNF clause will have a single universal and a single existential (which is a negated universal), so deciding emptiness for each clause comes down to the last corollary.

Remark 45.

Since ϕsubscriptitalic-ϕ\phi_{\infty}italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT refers only to the universal parts, while the existential parts may of course restrict the models, therefore we should, at execution time, check at each point of time whether we can satisfy the existential parts. If so, we satisfy them indeed, just once. If the formula is satisfiable then such point in time is guaranteed to exist. If there are multiple existential parts in a DNF clause, then for execution, we have to squeeze them into one using the flags as in the proof of 35, since those existential parts may depend on each other.

Remark 46.

When ϕ(Xn,Yn)italic-ϕsubscript𝑋𝑛subscript𝑌𝑛\phi\left(X_{n},Y_{n}\right)italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) is understood as a GS formula, and ϕitalic-ϕ\phiitalic_ϕ is in the language of atomless BA intepreted in this very BA of GS formulas (possibly with more algebras as the consrtuction is closed under products), then NSO is a sublanguage of this language. That’d be a software specification language where inputs and outputs are nothing but sentences in this very language. This way we can support the software update mechanism described in the introduction as a crucial component for safe AI. Another way to look at it: a robot is programmed in a language {\cal L}caligraphic_L and accepts commands form the user in the very same language {\cal L}caligraphic_L. Now its internal program has to ask whether the command is consistent with, say, safety conditions. It couldn’t do so unless {\cal L}caligraphic_L is a temporal logic with inputs in {\cal L}caligraphic_L equipped with the theory of BA.

4.5 Complexity

Quantifier elimination in theories of BA where constants are either 0,1 were studied by Tarski by introducing his so-called invariants. Kozen [3] extended this notion of invariants and by that derived a complexity characterization for the decision problem. For infinite BAs, it is complete for csubscript𝑐\bigcup_{c}⋃ start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPTSTA(,cn,n)superscript𝑐𝑛𝑛\left(*,c^{n},n\right)( ∗ , italic_c start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT , italic_n ). Roughly, this means anything that can be done in exponential time by an alternating Turing machine with linearly many alternations. For the two-element BA, it is simply QBF which is maybe the most famous PSPACE-complete problem. For GS, we saw that the number of formulas with fixed number of free variables and constants, is triple-exponential in the number of the free variables. This gives an upper bound for GS over atomless BA.

5 Conclusion

We have presented new methods in the theory of atomless BA that extend existing results from SBF to BF in general. We also presented the concept of weakly ω𝜔\omegaitalic_ω-categorical theories and how they relate to decidable recurrence relation extensions. We used those ideas to construct a language that can speak of its own sentences by abstracting them to merely BA elements. We further extended this construction to a novel temporal logic with several distinguishing abilities.

References

  • [1] Ohad Asor. Theories and applications of boolean algebras, work-in-progress draft. Technical report, IDNI AG, https://tau.net/Theories-and-Applications-of-Boolean-Algebras.pdf, 2024.
  • [2] Sabine Koppelberg. Handbook of Boolean Algebras, volume 1. Elsevier scientific Publishing, 1989.
  • [3] Dexter Kozen. Complexity of boolean algebras. Theoretical Computer Science, 10:221–247, 1980.
  • [4] Sergiu Rudeanu. Boolean functions and equations. North-Holland Publishing Co., Amsterdam, 1974.
  • [5] Sergiu Rudeanu. Lattice functions and equations. Springer-Verlag, Berlin, Heidelberg, 2001.

Appendix: Proofs

Proof of 6.

We prove the first statement and the second is analogous. Further we prove it only for the univariate case, and the multivariate case follows immediately by induction. Any univariate BF can be written in Boole’s normal form (sometimes mistakingly called Shannon’s normal form) as f(x)=axbx𝑓𝑥𝑎𝑥𝑏superscript𝑥f\left(x\right)=ax\cup bx^{\prime}italic_f ( italic_x ) = italic_a italic_x ∪ italic_b italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT where a=f(1)𝑎𝑓1a=f\left(1\right)italic_a = italic_f ( 1 ) and b=f(0)𝑏𝑓0b=f\left(0\right)italic_b = italic_f ( 0 ). Now f(x)=0𝑓𝑥0f\left(x\right)=0italic_f ( italic_x ) = 0 iff ax=bx=0𝑎𝑥𝑏superscript𝑥0ax=bx^{\prime}=0italic_a italic_x = italic_b italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = 0, which reads bxa𝑏𝑥superscript𝑎b\leq x\leq a^{\prime}italic_b ≤ italic_x ≤ italic_a start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, so a solution exists iff ba𝑏superscript𝑎b\leq a^{\prime}italic_b ≤ italic_a start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT equivalently ab=0𝑎𝑏0ab=0italic_a italic_b = 0. ∎

Proof of 7.

The second equivalence follows immediately from the proof of the previous theorem. For the first equivalence, write f(x)=ax+b𝑓𝑥𝑎𝑥𝑏f\left(x\right)=ax+bitalic_f ( italic_x ) = italic_a italic_x + italic_b (this is the algebraic normal form). Then

f(x+f(x))=a(x+ax+b)+b=ax+ax+ab+b=ab+b=f(0)f(1)=0𝑓𝑥𝑓𝑥𝑎𝑥𝑎𝑥𝑏𝑏𝑎𝑥𝑎𝑥𝑎𝑏𝑏𝑎𝑏𝑏𝑓0𝑓10f\left(x+f\left(x\right)\right)=a\left(x+ax+b\right)+b=ax+ax+ab+b=ab+b=f\left(% 0\right)f\left(1\right)=0italic_f ( italic_x + italic_f ( italic_x ) ) = italic_a ( italic_x + italic_a italic_x + italic_b ) + italic_b = italic_a italic_x + italic_a italic_x + italic_a italic_b + italic_b = italic_a italic_b + italic_b = italic_f ( 0 ) italic_f ( 1 ) = 0

and for the other direction, if f(x)=0𝑓𝑥0f\left(x\right)=0italic_f ( italic_x ) = 0, just put t=x𝑡𝑥t=xitalic_t = italic_x. ∎

Proof of 11.

First assume that XA1,.XAmformulae-sequencesuperscript𝑋subscript𝐴1superscript𝑋subscript𝐴𝑚X^{A_{1}},\dots.X^{A_{m}}italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUPERSCRIPT , … . italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT end_POSTSUPERSCRIPT are all distinct and therefore the nonzero b𝑏bitalic_b’s are all disjoint, otherwise convert any two equations of the form XAisXAitmatrixsuperscript𝑋subscript𝐴𝑖𝑠superscript𝑋subscript𝐴𝑖𝑡\begin{matrix}X^{A_{i}}\geq s\\ X^{A_{i}}\geq t\end{matrix}start_ARG start_ROW start_CELL italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_s end_CELL end_ROW start_ROW start_CELL italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_t end_CELL end_ROW end_ARG into the equivalent form XAistsuperscript𝑋subscript𝐴𝑖𝑠𝑡X^{A_{i}}\geq s\cup titalic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_s ∪ italic_t. Necessity is now immediate recalling that two different minterms are always disjoint and that subsets of disjoint sets must also be disjoint. For sufficiency and n=1𝑛1n=1italic_n = 1 the equations take the form xb1𝑥subscript𝑏1x\geq b_{1}italic_x ≥ italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and xb2superscript𝑥subscript𝑏2x^{\prime}\geq b_{2}italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ≥ italic_b start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT which indeed has a solution iff b1b2=0subscript𝑏1subscript𝑏20b_{1}b_{2}=0italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_b start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = 0. Assume for n𝑛nitalic_n and consider a distinguished variable x𝑥xitalic_x. Then we can split the equations into p+q=m𝑝𝑞𝑚p+q=mitalic_p + italic_q = italic_m equations and rewrite them as i=1pxXAibij=1qxXBjcjmatrixsuperscriptsubscript𝑖1𝑝𝑥superscript𝑋subscript𝐴𝑖subscript𝑏𝑖superscriptsubscript𝑗1𝑞superscript𝑥superscript𝑋subscript𝐵𝑗subscript𝑐𝑗\begin{matrix}\bigwedge_{i=1}^{p}xX^{A_{i}}\geq b_{i}\\ \bigwedge_{j=1}^{q}x^{\prime}X^{B_{j}}\geq c_{j}\end{matrix}start_ARG start_ROW start_CELL ⋀ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT italic_x italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋀ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_X start_POSTSUPERSCRIPT italic_B start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_c start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW end_ARG and let X𝑋Xitalic_X be a solution of i=1pXAibij=1qXBjcjmatrixsuperscriptsubscript𝑖1𝑝superscript𝑋subscript𝐴𝑖subscript𝑏𝑖superscriptsubscript𝑗1𝑞superscript𝑋subscript𝐵𝑗subscript𝑐𝑗\begin{matrix}\bigwedge_{i=1}^{p}X^{A_{i}}\geq b_{i}\\ \bigwedge_{j=1}^{q}X^{B_{j}}\geq c_{j}\end{matrix}start_ARG start_ROW start_CELL ⋀ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_CELL end_ROW start_ROW start_CELL ⋀ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_q end_POSTSUPERSCRIPT italic_X start_POSTSUPERSCRIPT italic_B start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_c start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_CELL end_ROW end_ARG using the induction hypothesis after making sure that all Ai,Bisubscript𝐴𝑖subscript𝐵𝑖A_{i},B_{i}italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_B start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT are distinct (while if p+q=1𝑝𝑞1p+q=1italic_p + italic_q = 1 then a solution trivially exists). If p0𝑝0p\neq 0italic_p ≠ 0, set x=kbk𝑥subscript𝑘subscript𝑏𝑘x=\bigcup_{k}b_{k}italic_x = ⋃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_b start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT. Then kckxsubscript𝑘subscript𝑐𝑘superscript𝑥\bigcup_{k}c_{k}\leq x^{\prime}⋃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_c start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ≤ italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT due to the disjointness assumption. Therefore

xXAi=(kbk)XAibiXAi=bi𝑥superscript𝑋subscript𝐴𝑖subscript𝑘subscript𝑏𝑘superscript𝑋subscript𝐴𝑖subscript𝑏𝑖superscript𝑋subscript𝐴𝑖subscript𝑏𝑖xX^{A_{i}}=\left(\bigcup_{k}b_{k}\right)\wedge X^{A_{i}}\geq b_{i}X^{A_{i}}=b_% {i}italic_x italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT = ( ⋃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_b start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) ∧ italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_X start_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT = italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT
xXBj(kck)XBjcjXBj=cjsuperscript𝑥superscript𝑋subscript𝐵𝑗subscript𝑘subscript𝑐𝑘superscript𝑋subscript𝐵𝑗subscript𝑐𝑗superscript𝑋subscript𝐵𝑗subscript𝑐𝑗x^{\prime}X^{B_{j}}\geq\left(\bigcup_{k}c_{k}\right)X^{B_{j}}\geq c_{j}X^{B_{j% }}=c_{j}italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_X start_POSTSUPERSCRIPT italic_B start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ ( ⋃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_c start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) italic_X start_POSTSUPERSCRIPT italic_B start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ≥ italic_c start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT italic_X start_POSTSUPERSCRIPT italic_B start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUPERSCRIPT = italic_c start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT

Similarly set x=kck𝑥subscript𝑘superscriptsubscript𝑐𝑘x=\bigcap_{k}c_{k}^{\prime}italic_x = ⋂ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_c start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT if p=0𝑝0p=0italic_p = 0, or simply x=0𝑥0x=0italic_x = 0. ∎

Proof of 15.

If f𝑓fitalic_f has a zero, then all such zeros are precisely the range of x+f(x)𝑥𝑓𝑥x+f\left(x\right)italic_x + italic_f ( italic_x ) by 7. So we can write the system as f(x+f(x))=0igi(x+f(x))0𝑓𝑥𝑓𝑥0subscript𝑖subscript𝑔𝑖𝑥𝑓𝑥0f\left(x+f\left(x\right)\right)=0\wedge\bigwedge_{i}g_{i}\left(x+f\left(x% \right)\right)\neq 0italic_f ( italic_x + italic_f ( italic_x ) ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x + italic_f ( italic_x ) ) ≠ 0. Now f𝑓fitalic_f has a zero iff f(0)f(1)=0𝑓0𝑓10f\left(0\right)f\left(1\right)=0italic_f ( 0 ) italic_f ( 1 ) = 0 by Boole’s consistency condition, in which case f(x+f(x))𝑓𝑥𝑓𝑥f\left(x+f\left(x\right)\right)italic_f ( italic_x + italic_f ( italic_x ) ) is identically zero. ∎

Proof of 18.

First substitute the general solution x+f(x)𝑥𝑓𝑥x+f\left(x\right)italic_x + italic_f ( italic_x ) of the positive part into the negative parts and obtain:

f(x)=0igi(x+f(x))0𝑓𝑥0subscript𝑖subscript𝑔𝑖𝑥𝑓𝑥0f\left(x\right)=0\wedge\bigwedge_{i}g_{i}\left(x+f\left(x\right)\right)\neq 0italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x + italic_f ( italic_x ) ) ≠ 0

and since f(x)=0𝑓𝑥0f\left(x\right)=0italic_f ( italic_x ) = 0 there is no harm in multiplying the negative part with f(x)superscript𝑓𝑥f^{\prime}\left(x\right)italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ):

f(x)=0if(x)gi(x+f(x))0𝑓𝑥0subscript𝑖superscript𝑓𝑥subscript𝑔𝑖𝑥𝑓𝑥0f\left(x\right)=0\wedge\bigwedge_{i}f^{\prime}\left(x\right)g_{i}\left(x+f% \left(x\right)\right)\neq 0italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x + italic_f ( italic_x ) ) ≠ 0

now for any h(x)𝑥h\left(x\right)italic_h ( italic_x ) we have h(x)0𝑥0h\left(x\right)\neq 0italic_h ( italic_x ) ≠ 0 iff xh(1)0xh(0)0𝑥10superscript𝑥00xh\left(1\right)\neq 0\vee x^{\prime}h\left(0\right)\neq 0italic_x italic_h ( 1 ) ≠ 0 ∨ italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_h ( 0 ) ≠ 0 (by Boole’s normal form), so we can rewrite the negative part as:

f(x)=0ixf(1)gi(f(1))0xf(0)gi(f(0))0𝑓𝑥0subscript𝑖𝑥superscript𝑓1subscript𝑔𝑖superscript𝑓10superscript𝑥superscript𝑓0subscript𝑔𝑖𝑓00f\left(x\right)=0\wedge\bigwedge_{i}xf^{\prime}\left(1\right)g_{i}\left(f^{% \prime}\left(1\right)\right)\neq 0\vee x^{\prime}f^{\prime}\left(0\right)g_{i}% \left(f\left(0\right)\right)\neq 0italic_f ( italic_x ) = 0 ∧ ⋀ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_x italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) ) ≠ 0 ∨ italic_x start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 0 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_f ( 0 ) ) ≠ 0

and using proposition 17 for the parts f(1)gi(f(1))superscript𝑓1subscript𝑔𝑖superscript𝑓1f^{\prime}\left(1\right)g_{i}\left(f^{\prime}\left(1\right)\right)italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 1 ) ) and f(0)gi(f(0))superscript𝑓0subscript𝑔𝑖𝑓0f^{\prime}\left(0\right)g_{i}\left(f\left(0\right)\right)italic_f start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( 0 ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_f ( 0 ) ) we obtain the first result. Now simply account for the conditions of f,gi𝑓subscript𝑔𝑖f,g_{i}italic_f , italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT having zeros at all, and obtain the second result. ∎

Proof of corollary .

Assume k=1𝑘1k=1italic_k = 1 for simplicity. Consider ϕ(xn1,xn,yn1,yn)italic-ϕsubscript𝑥𝑛1subscript𝑥𝑛subscript𝑦𝑛1subscript𝑦𝑛\phi\left(x_{n-1},x_{n},y_{n-1},y_{n}\right)italic_ϕ ( italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ). We understand ϕitalic-ϕ\phiitalic_ϕ as defining a relation between inputs and outputs at current time (xn,ynsubscript𝑥𝑛subscript𝑦𝑛x_{n},y_{n}italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT respectively) and in the previous time xn1,yn1subscript𝑥𝑛1subscript𝑦𝑛1x_{n-1},y_{n-1}italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT. Intuitively, it defines at least one BL[k]delimited-[]𝑘\left[k\right][ italic_k ] function if the infinitary expression x1y1x2y2.n=2ϕ(xn1,xn,yn1,yn)formulae-sequencefor-allsubscript𝑥1subscript𝑦1for-allsubscript𝑥2subscript𝑦2superscriptsubscript𝑛2italic-ϕsubscript𝑥𝑛1subscript𝑥𝑛subscript𝑦𝑛1subscript𝑦𝑛\forall x_{1}\exists y_{1}\forall x_{2}\exists y_{2}\dots.\bigwedge_{n=2}^{% \infty}\phi\left(x_{n-1},x_{n},y_{n-1},y_{n}\right)∀ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∀ italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT … . ⋀ start_POSTSUBSCRIPT italic_n = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT italic_ϕ ( italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) is satisfiable, alternatively if it is true in a model of choice. This infinitary expression can be given a concrete meaning by considering the first order theory containing all formulas of the form x1y1xNyN.n=2Nϕ(xn1,xn,yn1,yn)formulae-sequencefor-allsubscript𝑥1subscript𝑦1for-allsubscript𝑥𝑁subscript𝑦𝑁superscriptsubscript𝑛2𝑁italic-ϕsubscript𝑥𝑛1subscript𝑥𝑛subscript𝑦𝑛1subscript𝑦𝑛\forall x_{1}\exists y_{1}\dots\forall x_{N}\exists y_{N}.\bigwedge_{n=2}^{N}% \phi\left(x_{n-1},x_{n},y_{n-1},y_{n}\right)∀ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_N end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_N end_POSTSUBSCRIPT . ⋀ start_POSTSUBSCRIPT italic_n = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_ϕ ( italic_x start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT , italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) for all N𝑁Nitalic_N. ∎

Proof of 35.

It is easy to see that we can always reduce into the collapsed fragment: this is immediate from the uniqueness of successor, for example nk.s(n,k)formulae-sequencefor-all𝑛𝑘𝑠𝑛𝑘\forall n\exists k.s\left(n,k\right)\wedge\dots∀ italic_n ∃ italic_k . italic_s ( italic_n , italic_k ) ∧ … is same as nk.s(n,k)formulae-sequencefor-all𝑛𝑘𝑠𝑛𝑘\forall nk.s\left(n,k\right)\rightarrow\dots∀ italic_n italic_k . italic_s ( italic_n , italic_k ) → …. For the normalized form, first convert the formula to DNF at its outermost level, so each literal may be a complex quantified formula, then collapse the quantifier alternation as above, so each quantified formula is either universal or existential. Moving to NNF we can consider universal and existential literals instead of positive and negative literals. In each DNF clause we can collapse the universal parts into a single one since universals distribute over conjunctions. Given an existential literal T.γ(T)ϕformulae-sequence𝑇𝛾𝑇italic-ϕ\exists T.\gamma\left(T\right)\wedge\phi∃ italic_T . italic_γ ( italic_T ) ∧ italic_ϕ while denoting T=t1,,tk𝑇subscript𝑡1subscript𝑡𝑘T=t_{1},\dots,t_{k}italic_T = italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT, we introduce a flag e𝑒eitalic_e which is an additional output variable, and write

[t.e(t)=0]T.γ(T)[e(k1)=1(e(tk)=0(ψe(tk1)=0))]\left[\exists t.e\left(t\right)=0\right]\wedge\forall T.\gamma\left(T\right)% \rightarrow\left[e\left(k-1\right)=1\wedge\left(e\left(t_{k}\right)=0% \leftrightarrow\left(\psi\vee e\left(t_{k}-1\right)=0\right)\right)\right][ ∃ italic_t . italic_e ( italic_t ) = 0 ] ∧ ∀ italic_T . italic_γ ( italic_T ) → [ italic_e ( italic_k - 1 ) = 1 ∧ ( italic_e ( italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = 0 ↔ ( italic_ψ ∨ italic_e ( italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT - 1 ) = 0 ) ) ]

where tk=max{t1,,tk}subscript𝑡𝑘subscript𝑡1subscript𝑡𝑘t_{k}=\max\left\{t_{1},\dots,t_{k}\right\}italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = roman_max { italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT } is assumed. The existential part is therefore reduced into a single atom at the expense of introducing a new output stream, and with introducing new universal literals which can then be collapsed into a single one as above. Given multiple single-atom existential parts kt.ek(t)=0formulae-sequencesubscript𝑘𝑡subscript𝑒𝑘𝑡0\bigwedge_{k}\exists t.e_{k}\left(t\right)=0⋀ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∃ italic_t . italic_e start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ( italic_t ) = 0 we can easily see that they are equivalent to t.[kek(t)]=0formulae-sequence𝑡delimited-[]subscript𝑘subscript𝑒𝑘𝑡0\exists t.\left[\bigcup_{k}e_{k}\left(t\right)\right]=0∃ italic_t . [ ⋃ start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ( italic_t ) ] = 0 because each flag remains zero once it becomes zero, so there is a point in time where all flags are eventually zero, so the existential part can be merely a single n.e(n)=0formulae-sequence𝑛𝑒𝑛0\exists n.e\left(n\right)=0∃ italic_n . italic_e ( italic_n ) = 0 by defining this additional flag in the universal part. By that we reduced both the universal and the existential parts into a single one each. ∎

Proof of 39.

A model of size n+1𝑛1n+1italic_n + 1 exists iff x0y0xnyn.m=knϕ(Xmi,Ymi)formulae-sequencefor-allsubscript𝑥0subscript𝑦0for-allsubscript𝑥𝑛subscript𝑦𝑛superscriptsubscript𝑚𝑘𝑛italic-ϕsuperscriptsubscript𝑋𝑚𝑖superscriptsubscript𝑌𝑚𝑖\forall x_{0}\exists y_{0}\dots\forall x_{n}\exists y_{n}.\bigwedge_{m=k}^{n}% \phi\left(X_{m}^{i},Y_{m}^{i}\right)∀ italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT . ⋀ start_POSTSUBSCRIPT italic_m = italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ). Leaving free the first k+1𝑘1k+1italic_k + 1 time points we can write

ϕnk(Xki,Yki):=xk+1yk+1xnyn.m=knϕ(Xmi,Ymi)formulae-sequenceassignsubscriptitalic-ϕ𝑛𝑘superscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖for-allsubscript𝑥𝑘1subscript𝑦𝑘1for-allsubscript𝑥𝑛subscript𝑦𝑛superscriptsubscript𝑚𝑘𝑛italic-ϕsuperscriptsubscript𝑋𝑚𝑖superscriptsubscript𝑌𝑚𝑖\phi_{n-k}\left(X_{k}^{i},Y_{k}^{i}\right):=\forall x_{k+1}\exists y_{k+1}% \dots\forall x_{n}\exists y_{n}.\bigwedge_{m=k}^{n}\phi\left(X_{m}^{i},Y_{m}^{% i}\right)italic_ϕ start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) := ∀ italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT . ⋀ start_POSTSUBSCRIPT italic_m = italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT )
=xk+1yk+1xnyn.ϕ(Xki,Yki)m=k+1nϕ(Xmi,Ymi)formulae-sequenceabsentfor-allsubscript𝑥𝑘1subscript𝑦𝑘1for-allsubscript𝑥𝑛subscript𝑦𝑛italic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖superscriptsubscript𝑚𝑘1𝑛italic-ϕsuperscriptsubscript𝑋𝑚𝑖superscriptsubscript𝑌𝑚𝑖=\forall x_{k+1}\exists y_{k+1}\dots\forall x_{n}\exists y_{n}.\phi\left(X_{k}% ^{i},Y_{k}^{i}\right)\wedge\bigwedge_{m=k+1}^{n}\phi\left(X_{m}^{i},Y_{m}^{i}\right)= ∀ italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT . italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) ∧ ⋀ start_POSTSUBSCRIPT italic_m = italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT )
=ϕ(Xki,Yki)xk+1yk+1xnyn.m=k+1nϕ(Xmi,Ymi)formulae-sequenceabsentitalic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖for-allsubscript𝑥𝑘1subscript𝑦𝑘1for-allsubscript𝑥𝑛subscript𝑦𝑛superscriptsubscript𝑚𝑘1𝑛italic-ϕsuperscriptsubscript𝑋𝑚𝑖superscriptsubscript𝑌𝑚𝑖=\phi\left(X_{k}^{i},Y_{k}^{i}\right)\wedge\forall x_{k+1}\exists y_{k+1}\dots% \forall x_{n}\exists y_{n}.\bigwedge_{m=k+1}^{n}\phi\left(X_{m}^{i},Y_{m}^{i}\right)= italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) ∧ ∀ italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT . ⋀ start_POSTSUBSCRIPT italic_m = italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT )
=ϕ(Xki,Yki)xk+1yk+1.ϕnk1(Xk+1i,Yk+1i)formulae-sequenceabsentitalic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖for-allsubscript𝑥𝑘1subscript𝑦𝑘1subscriptitalic-ϕ𝑛𝑘1superscriptsubscript𝑋𝑘1𝑖superscriptsubscript𝑌𝑘1𝑖=\phi\left(X_{k}^{i},Y_{k}^{i}\right)\wedge\forall x_{k+1}\exists y_{k+1}.\phi% _{n-k-1}\left(X_{k+1}^{i},Y_{k+1}^{i}\right)= italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) ∧ ∀ italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT . italic_ϕ start_POSTSUBSCRIPT italic_n - italic_k - 1 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT )

since replacing k𝑘kitalic_k with k+1𝑘1k+1italic_k + 1 in ϕnk(Xki,Yki):=xk+1yk+1xnyn.m=knϕ(Xmi,Ymi)formulae-sequenceassignsubscriptitalic-ϕ𝑛𝑘superscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖for-allsubscript𝑥𝑘1subscript𝑦𝑘1for-allsubscript𝑥𝑛subscript𝑦𝑛superscriptsubscript𝑚𝑘𝑛italic-ϕsuperscriptsubscript𝑋𝑚𝑖superscriptsubscript𝑌𝑚𝑖\phi_{n-k}\left(X_{k}^{i},Y_{k}^{i}\right):=\forall x_{k+1}\exists y_{k+1}% \dots\forall x_{n}\exists y_{n}.\bigwedge_{m=k}^{n}\phi\left(X_{m}^{i},Y_{m}^{% i}\right)italic_ϕ start_POSTSUBSCRIPT italic_n - italic_k end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) := ∀ italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT . ⋀ start_POSTSUBSCRIPT italic_m = italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) results with ϕnk1(Xk+1i,Yk+1i):=xk+2yk+2xnyn.m=k+1nϕ(Xmi,Ymi)formulae-sequenceassignsubscriptitalic-ϕ𝑛𝑘1superscriptsubscript𝑋𝑘1𝑖superscriptsubscript𝑌𝑘1𝑖for-allsubscript𝑥𝑘2subscript𝑦𝑘2for-allsubscript𝑥𝑛subscript𝑦𝑛superscriptsubscript𝑚𝑘1𝑛italic-ϕsuperscriptsubscript𝑋𝑚𝑖superscriptsubscript𝑌𝑚𝑖\phi_{n-k-1}\left(X_{k+1}^{i},Y_{k+1}^{i}\right):=\forall x_{k+2}\exists y_{k+% 2}\dots\forall x_{n}\exists y_{n}.\bigwedge_{m=k+1}^{n}\phi\left(X_{m}^{i},Y_{% m}^{i}\right)italic_ϕ start_POSTSUBSCRIPT italic_n - italic_k - 1 end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) := ∀ italic_x start_POSTSUBSCRIPT italic_k + 2 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k + 2 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT . ⋀ start_POSTSUBSCRIPT italic_m = italic_k + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT italic_ϕ ( italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ). In case that x0y0xkyk.ϕ(Xki,Yki)formulae-sequencefor-allsubscript𝑥0subscript𝑦0for-allsubscript𝑥𝑘subscript𝑦𝑘subscriptitalic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖\forall x_{0}\exists y_{0}\dots\forall x_{k}\exists y_{k}.\phi_{\infty}\left(X% _{k}^{i},Y_{k}^{i}\right)∀ italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT … ∀ italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∃ italic_y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT . italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) then due to monotonicity, every k+1𝑘1k+1italic_k + 1 subsequence of time points will have to satisfy ϕ(Xki,Yki)subscriptitalic-ϕsuperscriptsubscript𝑋𝑘𝑖superscriptsubscript𝑌𝑘𝑖\phi_{\infty}\left(X_{k}^{i},Y_{k}^{i}\right)italic_ϕ start_POSTSUBSCRIPT ∞ end_POSTSUBSCRIPT ( italic_X start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ), and any such subsequence can be extended arbitrarily due to the fact that it is a fixed point indeed. ∎