Keywords

1 Introduction

The main contributions of this article are the following: we extend some established completeness results for the Full Lambek calculus \(\mathbf{FL }_\perp \) and its fragments for syntactic concept lattices (SCL) to regular languages and finite algebras. (Throughout this article, we use completeness in the sense of strong completeness with respect to the internal consequence relation, that is, the semantics models the set of sequents which are derivable in the logical calculus.) We then present a new kind of semantics we call “automata-theoretic”, where closure operators relate strings with transitions they induce in an automaton (we call the resulting structure automatic concept lattice). We prove its completeness for \(\mathbf{FL }_\perp \) by showing that the syntactic concept lattice of a language is isomorphic to the automatic concept lattice of the universal automaton recognizing the same language (for the universal automaton, consider [14]; completeness for syntactic concept lattices has been established in [19]).

The semantics of binary relations and composition is usually associated with a “dynamic” interpretation of formulas as computations in programs (see [18]), whereas the language-semantics of stringsets and concatenation is a more “static” interpretation of formulas. Completeness (in our sense) of relational semantics has been shown by Brown & Gurr in [1], who use relational quantales and prove results for a wide variety of substructural logics (or put differently, non-commutative linear logics). An even stronger result has been obtained by Pentus in [16], who also proved completeness of language (L-)models for the Lambek calculus. Automata-theoretic semantics shows how we can link language and relation models via a Galois connection.

The article is structured as follows: Sect. 2 presents established results on the full Lambek calculus and its semantics; Sect. 3 strengthens these results to regular languages, and Sect. 4 introduces the automata-theoretic semantics and proves (among other results) its completeness.

2 The Logics \(\mathbf L \), \(\mathbf L1 \), \(\mathbf{FL }\), \(\mathbf{FL }_\perp \) and their Models

2.1 The Logics \(\mathbf L \), \(\mathbf L1 \), \(\mathbf{FL }\) and \(\mathbf{FL }_\perp \)

The Lambek calculus \(\mathbf L \) was introduced in [11]. \(\mathbf L1 \) is a proper extension of \(\mathbf L \), and \(\mathbf{FL },\mathbf{FL }_\perp \) are each conservative extensions of \(\mathbf L1 \) and the preceding one. Let Pr be a set, the set of primitive types, and C be a set of constructors, which is, depending on the logics we use, \(C_\mathbf L :=\{/,\backslash ,\bullet \}\), or \(C_\mathbf{FL }:=\{/,\backslash ,\bullet ,\vee ,\wedge \}\). By \(Tp_C(Pr)\) we denote the set of types over Pr, which is defined as the smallest set, such that: 1. \(Pr\subseteq Tp_C(Pr)\), and if \(\alpha ,\beta \in Tp_C(Pr)\), \(\star \in C\), then \(\alpha \star \beta \in Tp_C(Pr)\). As there is usually no danger of confusion regarding the primitive types and constructors, we also simply write Tp for \(Tp_C(Pr)\). We now present the inference rules corresponding to these constructors. We call an inference of the form \(\varGamma \vdash \alpha \) a sequent, for \(\varGamma \in Tp^*\), \(\alpha \in Tp\), where by \(Tp^*\) we denote the set of all (possibly empty) sequences over Tp, which are concatenated by ‘, ’.

In general, uppercase Greek letters range as variables over sequences of types, lowercase Greek letters range over single types. In the inference rules for \(\mathbf L \), premises of \('\vdash '\) (that is, left hand sides of sequents) must be non-empty; in \(\mathbf L1 \) they can be empty as well; besides this, the calculi are identical. In \(\mathbf{FL }\) and \(\mathbf FL _\perp \) we also allow for empty sequents. Below, we present the standard rules of the Lambek calculus \(\mathbf L \) (and \(\mathbf L1 \)).

figure a

These are the standard rules of \(\mathbf L \) and \(\mathbf L1 \) (roughly as in [11]). We now add the two additional connectives \(\vee \) and \(\wedge \). These are not present in \(\mathbf L /\mathbf L1 \), have however been considered as extensions as early as in [12], and have been subsequently studied by [10].

figure b

This gives us the logic \(\mathbf{FL }\). This slightly deviates from standard terminology, because usually, \(\mathbf{FL }\) has an additional constant 0. In our formulation, 0 and 1 coincide. In order to have logical counterparts for the bounded lattice elements \(\top \) and \(\perp \), we introduce two logical constants, which are denoted by the same symbol.

figure c

This gives us the calculus \(\mathbf{FL }_\perp \). From a logical point of view, all these extensions of \(\mathbf L \) are quite well-behaved: they are conservative, and also allow us to preserve the important result of [11], namely admissibility of the cut-rule:

We say that a sequent \(\varGamma \vdash \alpha \) is derivable in a calculus, if it can be derived by its rules of inference; we then write \(\Vdash _\mathbf{L } \varGamma \vdash \alpha \), \(\Vdash _\mathbf{L1 } \varGamma \vdash \alpha \), \(\Vdash _\mathbf{FL } \varGamma \vdash \alpha \) etc., depending on which calculus we use.

2.2 Interpretations of \(\mathbf L1 \), \(\mathbf{FL }\) and \(\mathbf{FL }_\perp \)

The standard model for \(\mathbf L1 \) is the class of residuated monoids, which are structures \((M,\cdot ,\backslash ,/,1,\le )\) such that \((M,\cdot ,1)\) is a monoid, \((M,\le )\) is a partial order, and \(\cdot ,/,\backslash \) satisfy the law of residuation: for \(m,n,o\in M\),

\(m\le o/n \Leftrightarrow m\cdot n\le o \Leftrightarrow n\le m\backslash o\).

This implies that \(\cdot \) respects the order \(\le \). The standard model for FL is the class of residuated lattices, and for \(\mathbf{FL }_\perp \), the class of bounded residuated lattices (for background on residuated lattices, see [9]). A residuated lattice is a structure \((M,\cdot ,\vee ,\wedge ,\backslash ,/,1)\), where in addition to the previous requirements, \((M,\vee ,\wedge )\) is a lattice; the lattice order \(\le \) need not be stated, as it can be induced by \(\vee \) or \(\wedge \): for \(a,b\in M\), \(a\le b\) is a shorthand for \(a\vee b=b\). A bounded residuated lattice is a structure \((M,\cdot ,\vee ,\wedge ,\backslash ,/,1,\top ,\perp )\), where \((M,\cdot ,\vee ,\wedge ,\backslash ,/,1)\) is a residuated lattice, \(\top \) is the maximal element of the lattice order \(\le \) and \(\perp \) is its minimal element.

We call the class of residuated monoids RM, the class of residuated lattices RL, the class of bounded residuated lattices RL\(_\perp \). We now give a semantics for the calculi above. We start with an interpretation \(\sigma :Pr\rightarrow M\) which interprets elements in Pr as elements of the algebra, and extend \(\sigma \) to \(\overline{\sigma }\) by defining it appropriately for \(1,\top ,\perp \), and extending it inductively over our type constructors \(C:=\{/,\backslash ,\bullet ,\vee ,\wedge \}\) by

  • 1. \(\overline{\sigma }(\alpha )=\sigma (\alpha )\in M\), if \(\alpha \in Pr\)

  • 2. \(\overline{\sigma }(\top )=\top \)

  • 2’ \(\overline{\sigma }(\top )\) is an arbitrary \(m\in M\) such that for all \(\alpha \in Tp_C(Pr)\), \(\overline{\sigma }(\alpha )\le m\).

  • 3. \(\overline{\sigma }(\perp )=\perp \)

  • 3’ \(\overline{\sigma }(\perp )\) is an arbitrary \(m\in M\) such that for all \(\alpha \in Tp_C(Pr)\), \(m\le \overline{\sigma }(\alpha )\).

  • 4. \(\overline{\sigma }(1)=1\)

  • 5. \(\overline{\sigma }(\alpha \bullet \beta ):=\overline{\sigma }(\alpha )\cdot \overline{\sigma }(\beta )\)

  • 6. \(\overline{\sigma }(\alpha / \beta ):=\overline{\sigma }(\alpha ) / \overline{\sigma }(\beta )\)

  • 7. \(\overline{\sigma }(\alpha \backslash \beta ):=\overline{\sigma }(\alpha )\backslash \overline{\sigma }(\beta )\)

  • 8. \(\overline{\sigma }(\alpha \vee \beta ):=\overline{\sigma }(\alpha )\vee \overline{\sigma }(\beta )\)

  • 9. \(\overline{\sigma }(\alpha \wedge \beta ):=\overline{\sigma }(\alpha )\wedge \overline{\sigma }(\beta )\)

Note that there are two alternative interpretations for \(\top ,\perp \): one which interprets them as the upper/lower bound of the lattice, which is the standard interpretation, and one which just interprets them as arbitrary elements which only have to be larger/smaller than the interpretation of any other formula. The latter will be called the non-standard interpretation and play some role in the sequel, but only for technical reasons.

What we interpret next is the sequents of the form \(\varGamma \vdash \alpha \). We say that a sequent \(\gamma _1,...,\gamma _i\vdash \alpha \) is true in a model \(\mathcal {M}\) under assignment \(\sigma \), in symbols: \(\mathcal {M},\sigma \models \gamma _1,...,\gamma _i\vdash \alpha \), if and only if \(\overline{\sigma }(\gamma _1\bullet ...\bullet \gamma _i)\le \overline{\sigma }(\alpha )\) holds in \(\mathcal {M}\). That is, we interpret the ‘, ’, which denotes concatenation in sequents, as \(\cdot \) in the model, and \(\vdash \) as \(\le \). For derivable sequents with no antecedent, we have the following convention: \(\mathcal {M},\sigma \models \ \vdash \alpha \), iff \(1\le \overline{\sigma }(\alpha )\), where 1 is the unit element of \(\mathcal {M}\) (this case does not arise in \(\mathbf L \)).

More generally, for a given class of (bounded) residuated lattices (monoids, semigroups) \(\mathfrak {C}\), we say that a sequent is valid in \(\mathfrak {C}\), in symbols, \(\mathfrak {C}\models \gamma _1, ...,\gamma _i\vdash \alpha \), if for all \(\mathcal {M}\in \mathfrak {C}\) and all interpretations \(\sigma \), \(\mathcal {M},\sigma \models \gamma _1, ...\gamma _i\vdash \alpha \) (here we have to distinguish between standard and non-standard interpretations).

2.3 Syntactic Concepts and Galois Connections

We now present a language-theoretic semantics for \(\mathbf{FL }_\perp \) which is based on closure operators, namely syntactic concepts. Syntactic concept lattices form a particular case of what is well-known as formal concept lattice (or formal concept analysis, FCA) in computer science (see [7]). In linguistics, they have been introduced by Sestier in [17]. They were brought back to attention and enriched with residuation by Clark in [4] (see also [6]), as they turn out to be useful representations for language learning (see [5, 13]).

Let \(\wp (-)\) denote the powerset. Given a language \(L\subseteq \varSigma ^*\), we define two maps: a map \(\triangleright : \wp (\varSigma ^*)\rightarrow \wp ((\varSigma ^*)^2)\), and \(\triangleleft :\wp ((\varSigma ^*)^{2})\rightarrow \wp (\varSigma ^*)\), which are defined as follows:

$$\begin{aligned} \text {for }M\subseteq \varSigma ^*\text {, }M^\triangleright :=\{(x,y):\forall w\in M,xwy\in L\} \end{aligned}$$
(1)
$$\begin{aligned} \text {for }C\subseteq (\varSigma ^*)^{2}\text {, }C^\triangleleft :=\{w:\forall (x,y)\in C,xwy\in L\} \end{aligned}$$
(2)

So a set of strings which is mapped to the set of contexts in which all of its elements can occur. The dual function maps a set of contexts to the set of strings which can occur in all of them. This results in a Galois connection between the two \(\subseteq \)-ordered structures of closed sets and contexts, see [4, 19]. For extension of these maps to larger tuples, consider [20]). Importantly, all these are special applications of the general theory of Galois connections; for background, see [9]. Obviously, \([-]^\triangleleft \) and \([-]^\triangleright \) are only defined with respect to a given language L, otherwise they are meaningless. As long as it is clear about which language (if any particular language) we are speaking, we will omit however any reference to it, to keep notation perspicuous. Regardless of the underlying objects, the two compositions of the maps, \([-]^{\triangleleft \triangleright }\) and \([-]^{\triangleright \triangleleft }\), form closure operators. Note also that for any set of strings M and contexts C, \(M^\triangleright =M^{\triangleright \triangleleft \triangleright }\) and \(C^\triangleleft =C^{\triangleleft \triangleright \triangleleft }\). A set M is closed, if \(M^{\triangleright \triangleleft }=M\) etc. The closure operator \(\triangleright \triangleleft \) gives rise to a lattice \(( \mathcal {B}_L,\le )\), where the elements of \(\mathcal {B}_L\) are the sets \(M\subseteq \varSigma ^*\) such that \(M=M^{\triangleright \triangleleft }\), and \(\le \) is interpreted as \(\subseteq \). The same can be done with the set of closed contexts. Given these two lattices, \([-]^\triangleright \) and \([-]^\triangleleft \) form a Galois connection between the two (see [7] for more background), that is:

  1. (1)

    \(M\le N \Leftrightarrow M^\triangleright \ge N^\triangleright \), and

  2. (2)

    \(C\le D \Leftrightarrow C^\triangleleft \ge D^\triangleleft \).

A syntactic concept is usually defined to be an ordered pair, consisting of a closed set of strings, and a closed set of contexts, so it has the form (SC), such that \(S^\triangleright =C\) and \(C^\triangleleft =S\); \(S^{\triangleright }\) is the set of all contexts in which all strings in S can occur; inversely for \(C^{\triangleleft }\). For our purposes, we mostly need to consider only the left component, so we suppress the contexts and only consider the stringsets of the form \(M^{\triangleright \triangleleft }\). An exception to this convention is Sect. 4, where we will make use of concepts as pairs (MC) with \(M=C^{\triangleleft }\), \(C=M^{\triangleright }\), as it will increase readability in this case. For all operations we define below, it can be easily seen that the resulting structures are isomorphic. So when we refer to a concept, we only mean a \([-]^{\triangleright \triangleleft }\) closed set of strings (with the exception of Sect. 4), the concept in the classical sense being easily reconstructible.

Definition 1

For \([-]^{{\triangleright \triangleleft }}\) defined with respect to \(L\subseteq \varSigma ^{*}\), let \(\mathcal {B}_L\) denote the set of \([-]^{\triangleright \triangleleft }\)-closed subsets of \(\varSigma ^{*}\). This set forms a bounded lattice \((\mathcal {B}_L,\wedge ,\vee ,\top ,\perp )\), where \(\top =\varSigma ^*\), \(\perp =\emptyset ^{\triangleright \triangleleft }\), and for \(M,N\in \mathcal {B}_L\), \(M\wedge N=M\cap N\), \(M\vee N=(M\cup N)^{\triangleright \triangleleft }\).

It is also easy to verify that this forms a complete lattice, as infinite joins are defined by (closure of) infinite unions, infinite meets by infinite intersections.

2.4 Monoid Structure and Residuation for Syntactic Concepts

The set of concepts of a language forms a lattice. In addition, we can also give it the structure of a monoid: for concepts MN, we define \(M\circ N:=(M\cdot N)^{\triangleright \triangleleft }\), where \(M\cdot N=\{wv:w\in M,v\in N\}\). We usually write MN for \(M\cdot N\), if MN are sets of strings. ‘\(\circ \)’ is associative on concepts: for \(M,N,O\in \mathcal {B}_L\), \(M\circ (N\circ O)=(M\circ N)\circ O\). This follows from the associativity of \(\cdot \)-concatenation and the fact that \([-]^{\triangleright \triangleleft }\) is a nucleus, that is, it is a closure operator and in addition it satisfies \(M^{\triangleright \triangleleft }N^{\triangleright \triangleleft }\subseteq (MN)^{\triangleright \triangleleft }\).

It is easy to see that the neutral element of ‘\(\circ \)’ is \(\{\epsilon \}^{\triangleright \triangleleft }\) (which need not be \(\{\epsilon \}\)). The monoid operation respects the partial order of the lattice, that is, for \(X,Y,Z,W\in \mathcal {B}_L\), if \(X\le Y\), then \(W\circ X\circ Z\le W\circ Y\circ Z\). A stronger property is the following: \(\circ \) distributes over infinite joins, that is, we have

\(\bigvee _{Z\in \mathbf Z }(X\circ Z\circ Y)= X\circ \bigvee \mathbf Z \circ Y\)

Here \(\le \) follows algebraically (\(\circ \) respects the order \(\subseteq \)), and \(\ge \) follows from the fact that 1. \(\bigcup \) distributes over \(\cdot \) (infinite unions distribute over concatenation), and 2. \([-]^{{\triangleright \triangleleft }}\) is a nucleus. We can thus also conceive of syntactic concepts with \(\bigvee ,\circ ,1\) as quantales, and in quantales we can easily define residuals as follows:

Definition 2

Let XY be concepts. We define the right residual \(X/Y:=\bigvee \{Z:Z\circ Y\le X\}\), the left residual \(Y\backslash X:=\bigvee \{Z:Y\circ Z\le X\}\).

Note that this is an entirely abstract definition which does not make reference to any underlying structure. It works because of the well-known fact that for any complete lattice with a monoid operation distributing over infinite joins, residuals defined as above, we have \(Y\le X\backslash Z\) iff \(X\circ Y \le Z\) iff \(X\le Z/Y\).

Definition 3

The syntactic concept lattice of a language L is defined as \(SCL(L):=( \mathcal {B}_L,\circ ,\wedge ,\vee ,/,\backslash ,1,\top ,\perp )\), where \(\mathcal {B}_L,\wedge ,\vee ,\top ,\perp \) are defined as in Definition 1, \(1=\{\epsilon \}^{\triangleright \triangleleft }\), and \(\circ ,/,\backslash \) are as defined above.

The syntactic concept lattice thus is a residuated lattice (see [4]). We will denote by SCL the class of all lattices of the form SCL(L) for some language L, without any further requirement regarding L. We can apply the definition of interpretations to SCL, so it is clear how \(\mathbf{FL }_\perp \) is interpreted in SCL.

The algebraic notion corresponding to the notion of a fragment in logic is the notion of a reduct. A reduct of an algebra is the same algebra with only a proper subset of connectives; the notion easily extends to classes. We let \(SCL_{FL}\) be the class of SCL reducts with operators \(\{\circ ,/,\backslash ,\vee ,\wedge \}\) without the constants \(\top \) and \(\perp \), and \(SCL_\mathbf{L1 }\) be the class of SCL reducts with \(\{\circ ,/,\backslash \}\), which all specify a unit. So it is clear how the logical fragments \(\mathbf{FL },\mathbf L1 \) are interpreted in the reducts appropriate reducts.

2.5 Completeness: Previous Results

There are a number of completeness results for the logics we have considered here. We quickly present the ones which will be important in the sequel.

Theorem 4

  1. 1.

    \(RM\models \varGamma \vdash \alpha \) if and only if \(\Vdash _\mathbf{L1 }\varGamma \vdash \alpha \)

  2. 2.

    \(RL\models \varGamma \vdash \alpha \) if and only if \(\Vdash _\mathbf{FL } \varGamma \vdash \alpha \)

  3. 3.

    \(RL_\perp \models \varGamma \vdash \alpha \) if and only if \(\Vdash _{\mathbf{FL }_\perp } \varGamma \vdash \alpha \)

For reference on Theorem 4, see [2, 3, 9]. These completeness results can actually be strengthened to the finite model property. A logic, equipped with a class of models and interpretations, is said to have finite model property if it is complete in the finite, that is, Theorem 4 remains valid if we restrict ourselves to finite models.

Theorem 5

  1. 1.

    \(\mathbf L1 \) has finite model property

  2. 2.

    \(\mathbf{FL }\) has finite model property

  3. 3.

    \(\mathbf{FL }_\perp \) has finite model property

For the first and second claim, consider [8]; the third and forth has been established in [15]. Theorem 5 is crucial to show that completeness for syntactic concept lattices and their reducts also holds if we restrict ourselves to languages over finite alphabets. The following results have been proved in [19].

Theorem 6

  1. 1.

    \(SCL\models \varGamma \vdash \alpha \) if and only if \(\Vdash _{\mathbf{FL }_\perp } \varGamma \vdash \alpha \)

  2. 2.

    \(SCL_{\mathbf{FL }}\models \varGamma \vdash \alpha \) if and only if \(\Vdash _{\mathbf{FL }} \varGamma \vdash \alpha \)

  3. 3.

    \(SCL_\mathbf{L1 }\models \varGamma \vdash \alpha \) if and only if \(\Vdash _\mathbf{L1 } \varGamma \vdash \alpha \)

\(\mathbf L \) requires some additional considerations, as \(\mathbf L1 \) is not a conservative extension of it. The soundness directions follow a fortiori from Theorem 4. We will now strengthen the completeness result to syntactic concept lattices over regular languages, for which we have to provide a sketch of the original completeness proof.

3 Regular Languages and SCL(REG)

Let \(\mathbf B =(B,\cdot ,\vee ,\wedge ,/,\backslash ,1,\top ,\perp )\) be a bounded residuated lattice. We denote the partial order of B by \(\le _B\), equality by \(=_B\). Define \(\varSigma ':=\{\underline{b}:b\in B\}\), and put \(\varSigma =B\cup \varSigma '\). Let \(SI_B^*:=\{b_1...b_i:b_1\cdot ...\cdot b_i\le _B 1\}\) be the set of sub-identity words over B. We define the language \(L_B\subseteq \varSigma ^*\) as the set of strings

$$\begin{aligned} L_B:=\{b_1b_2...b_n\underline{b}w: b_1\cdot b_2\cdot ...\cdot b_n\le _\mathbf B b,\ w\in SI_B^{*}\}. \end{aligned}$$

For a string \(w=b_1...b_n\in B^*\), by \(w^\bullet \) we denote the term \(b_1\cdot ...\cdot b_n\); we put \(\epsilon ^{\bullet }=1\). By \(w\sim _Lv\), we mean that \(xwy\in L\) iff \(xvy\in L\). It is easy to prove that \(w^{\bullet }=_Bv^{\bullet }\) iff \(w\sim _{L_B}v\) (see [19]).

Proposition 7

For every bounded residuated lattice \(\mathbf {B}\), there is an faithful embedding \(\psi :\mathbf {B}\rightarrow SCL(L_B)\), such that

  1. 1.

    \(\psi (\top )=B^{*}\), \(\psi (\perp )=\{\perp \}^{{\triangleright \triangleleft }}\).

  2. 2.

    \(\psi (1)=\{\epsilon \}^{\triangleright \triangleleft }\).

For proof of this fact, consider [19, 20]. Note that \(\psi (\perp )\) is not the \(\perp \)-element of \(SCL(L_B)\), as we can never substitute \(\underline{b}\) with \(\perp \). Note also that \(\psi (\top )\) is not maximal in \(SCL(L_B)\), as \(\psi (\top )=B^*\subsetneq \varSigma ^*\).

From here, it is easy to complete the proof of Theorem 6: just use the faithful embedding to perform the usual contraposition, where from \(\not \Vdash _{FL_\perp } \varGamma \vdash \alpha \) and algebraic completeness then follows \(SCL\not \models \varGamma \vdash \alpha \). This completes the proof of Theorem 6.1. Note however that the resulting interpretation is non-standard: we have \(\psi (\top )=B^{*}\ne \varSigma ^{*}\), and \(\perp (\perp )=\{\perp \}^{\triangleright \triangleleft }\ne \emptyset ^{{\triangleright \triangleleft }}\).

An important feature of our proof is that it works for all reducts of bounded residuated lattices (a reduct is the same algebra with a proper subset of connectives); and hence it allows to prove completeness for all logics \(\mathcal {L}\) for which \(\mathbf{FL }_\perp \) is a conservative extension (this holds for \(\mathbf L1 \) and \(\mathbf{FL }\); \(\mathbf L \) and its fragments do not satisfy this requirement). Hence we also have a proof for the other parts of Theorem 6.

By REG we denote the class of regular languages. Given an equivalence relation \(\sim \) over \(\varSigma ^{*}\), we put \([w]_\sim =\{v:w\sim v\}\), and \(\varSigma ^{*}_\sim =\{[w]_\sim :w\in \varSigma ^{*}\}\). So \(\varSigma ^{*}_{\sim _L}\) denotes the set of \(\sim _L\)-congruence classes over \(\varSigma ^{*}\). Recall that a language \(L\subseteq \varSigma ^*\) is regular if and only if \(\varSigma ^*_{\sim _L}=\{[w]_{\sim _L}:w\in \varSigma ^*\}\) is finite. The next lemma follows easily (see also [6]):

Lemma 8

SCL(L) is finite if and only if L is regular.

Let \(\mathbf B \) be an arbitrary algebra equipped with a semigroup operation and a partial order respecting it, so we can define \(L_B\) as above (this covers all algebras we consider in this paper). Then for \(w,v\in B^*\), we have \(w\sim _L v\) iff \(w^\bullet =_\mathbf B v^\bullet \). But recall that \(B\subsetneq \varSigma \) in this case!

Lemma 9

\(\mathbf B \) is a finite algebra if and only if \(L_B\) is a regular language.

Proof. \(\Leftarrow \) Contraposition: if \(\mathbf B \) is infinite, there is an infinite sequence of \(=_B\)-distinct objects \((w_1)^\bullet ,(w_2)^\bullet ,...\in B\), so there are \(w_1,w_2,...\) which are not \(\sim _L\)-equivalent.

\(\Rightarrow \) We construct \(L_B'=\bigcup _{b\in B}\{w\underline{b}:w^\bullet \le _B b\}\). Assume a language \(\{w\underline{b}:w^\bullet \le _B b\}\) is not regular. Then \(\varSigma ^*_{\sim _L}\) is infinite, and there is an infinite sequence of words \(w_1,w_2,...\), such that if \(i\ne j\), then \(w_i\not \sim _L w_j\). So there is an infinite sequence of objects \((w_1)^\bullet ,(w_2)^\bullet ,...\in B\), such that if \(i\ne j\), then \((w_i)^\bullet \ne _B(w_j)^\bullet \). Thus \(\mathbf B \) is infinite – contradiction. Hence \(\{w\underline{b}:w^\bullet \le _B b\}\) is regular, and as B is finite, \(L_B'\) is a finite union of regular languages, which is still regular. Finally, \(SI_B^*\) is regular for the same reason as above, and so \(L_B=L_B'\cdot SI_B^*\) is also regular. \(\square \)

Let C be a class of languages; then by SCL(C) we denote the class of structures \(SCL(L):L\in C\). So SCL(REG) equals the class of finite syntactic concept lattices. As we have said, a finite algebra \(\mathbf B \) entails a language \(L_B\) over a finite alphabet; the last lemma shows us that it also entails that \(L_B\) is regular. Moreover, as \(\mathbf L1 ,\mathbf{FL },\mathbf FL _\perp \) have the finite model property, for completeness it is sufficient to consider only finite algebras, and consequently we can strengthen Theorem 6 to the following:

Corollary 10

  1. 1.

    \(SCL(REG)\models \varGamma \vdash \alpha \) if and only if \(\Vdash _{\mathbf{FL }_\perp }\varGamma \vdash \alpha \).

  2. 2.

    \(SCL_{\mathbf{FL }}(REG)\models \varGamma \vdash \alpha \) if and only if \(\Vdash _{\mathbf{FL }}\varGamma \vdash \alpha \).

  3. 3.

    \(SCL_\mathbf{L1 }(REG)\models \varGamma \vdash \alpha \) if and only if \(\Vdash _\mathbf{L1 }\varGamma \vdash \alpha \).

4 Automata-Theoretic Semantics

4.1 Automata-Theoretic Preliminaries

We now introduce a new class of bounded residuated lattices, the automatic concept lattices. It is very similar to SCL in that it is based on a Galois connection which, provided the certain conditions, gives rise to a nucleus. As we will learn from the main result of this section, the isomorphism theorem, if we consider structures only up to isomorphism, then automatic concept lattices form a proper generalization of syntactic concept lattices (in fact, in general they are not even residuated latticesFootnote 1).

One can present automata in many different ways, the most standard one being probably the following: an automaton as state-transition system is a tuple \(\mathfrak {A}=(\varSigma ,Q,\delta ,F,I)\), where \(\varSigma \) is a finite input alphabet, Q a set of states, \(\delta \subseteq Q\times \varSigma \times Q\) a transition relation, \(F\subseteq Q\) a set of accepting states, \(I\subseteq Q\) the set of initial states. This notation of automata is somewhat clumsy in connection with the techniques we use later on, so we will choose a slightly different presentation which we call relational. This is a notional change we adopt for convenience. We define a semi-automaton as a tuple \(\langle \varSigma ,\phi \rangle \), where \(\phi \) is a map \(\phi :\varSigma \rightarrow \wp (Q\times Q)\), mapping letters in \(\varSigma \) onto relations over Q, where we use Q is an arbitrary (finite or infinite) carrier set. It is extended to strings by interpreting concatenation as relation composition\(\mathbf ; \)’, where \(R\mathbf ; R'=\{(x,y):(x,z)\in R,(z,y)\in R'\}\). So we have \(\phi (aw)=\phi (a)\mathbf ; \phi (w)\), and \(\phi \) is a homomorphism from the free monoid \(\varSigma ^{*}\) into a relation monoid over Q, and a word \(w\in \varSigma ^*\) then induces a relation \(\phi (w)\subseteq Q\times Q\). Defining \(\phi \) as a homomorphism, we should take care of \(\phi (\epsilon )\), which we simply define by \(\phi (\epsilon )=\mathsf {id}_Q:=\{(q,q):q\in Q\}\).Footnote 2 To get a full automaton, we still need an accepting relation. One usually specifies a set of initial and accepting states, yielding an accepting relation \(I\times F\). As for us, acceptance will only play a minor role, we will take a slightly more general convention and assume that automata specify an accepting relation \(F_R\subseteq Q\times Q\). Thus a full automaton is a tuple \(\langle \varSigma ,\phi ,F_R\rangle \). We define the language recognized by an automaton \(\mathcal {A}=\langle \varSigma ,\phi ,F_R\rangle \) by \(L(\mathcal {A}):=\{w\in \varSigma ^*:\phi (w)\cap F_R\ne \emptyset \}\).

4.2 Automatic Concepts

In what is to follow, we will take the “canonical view” on formal concepts, that is: concepts are not simply \([-]^{{\triangleright \triangleleft }}\)-closed sets, but pairs (MC) such that \(M^{\triangleright }=C\), \(C^{\triangleleft }=M\) (this entails that both are closed). Henceforth, we will use the maps \([-]^{\triangleright },[-]^{\triangleleft }\) for syntactic concepts only. Given a semi-automaton \(\langle \varSigma ,\phi \rangle \), \(M\subseteq \varSigma ^*\), \(R\subseteq Q\times Q\), we define the two polar maps

$$\begin{aligned} M^{\blacktriangleright }=\bigcap _{w\in M}\phi (w)\end{aligned}$$
(3)
$$\begin{aligned} R^{\blacktriangleleft }=\{w:\phi (w)\supseteq R\} \end{aligned}$$
(4)

It is easy to see that these maps establish a Galois connection and their compositions \([-]^{\blacktriangleright \blacktriangleleft }\), \([-]^{\blacktriangleleft \blacktriangleright }\) are closure operators. An automatic concept is then a pair (MR) with \(M^{\blacktriangleright }=R\), \(R^{\blacktriangleleft }=M\) (of course, the underlying (semi-)automaton is understood as given). We denote the set of automatic concepts, given an automaton \(\mathcal {A}\), by \(\mathfrak {A}_\mathcal {A}\). Importantly, the map \([-]^{\blacktriangleright \blacktriangleleft }\) does not form a nucleus on \(\varSigma ^{*}\), and in general, \([-]^{\blacktriangleright \blacktriangleleft }\)-closed concatenation does not distribute over infinite joins. Consequently, we cannot simply define a residuated lattice of concepts in the usual fashion. Rather, we have to restrict our attention to a certain class of automata.

Definition 11

A (semi-)automaton \(\langle \varSigma ,\phi (,F_R)\rangle \) is nuclear, if for all \(M,N\subseteq \varSigma ^{*}\), \((\bigcap _{w\in M}\phi (w))\mathbf ; (\bigcap _{v\in N}\phi (w))= \bigcap _{wv\in MN}\phi (wv)\).

Note that \(\subseteq \) always holds. The equality ensures that \([-]^{\blacktriangleright \blacktriangleleft }\) is a nucleus on \(\varSigma ^*\), because if \(w\in M^{\blacktriangleright \blacktriangleleft }\), \(v\in N^{\blacktriangleright \blacktriangleleft }\), then \(\phi (w)\supseteq M^\blacktriangleright ,\phi (v)\supseteq N^\blacktriangleright \). Hence \(\phi (wv)=\phi (w)\mathbf ; \phi (v)\supseteq M^{\blacktriangleright }\mathbf ; N^{\blacktriangleright }=(MN)^{\blacktriangleright }\), and hence \(wv\in M^{\blacktriangleright \blacktriangleleft }\). So being nuclear boils down to composition distributing over (infinite) intersections of closed sets. We will later see that for every automaton there is a nuclear automaton recognizing the same language.

We define \((M,R)\wedge (N,S)=(M\cap N,(R\cup S)^{\blacktriangleleft \blacktriangleright })\), \((M,R)\vee (N,S)=((M\cup N)^{\blacktriangleright \blacktriangleleft },R\cap S)\), and \((M,R)\circ (N,S)=((MN)^{\blacktriangleright \blacktriangleleft },(MN)^{\blacktriangleright })\). It is easy to see that \(\wedge ,\vee \) can be extended to the infinitary operators \(\bigwedge ,\bigvee \) (as they are based on sets). Moreover, in case the underlying automaton is nuclear, \(\circ \) distributes over infinite joins (because it is a nuclear operation), so the residuals are easily defined in the usual fashion by \(M/N=\bigvee \{X:X\circ N\le M\}\), \(N\backslash M=\bigvee \{X:N\circ X\le M\}\). We put \(\top =(\varSigma ^{*},(\varSigma ^{*})^{\blacktriangleright })\), \(\perp =(\emptyset ^{\blacktriangleright \blacktriangleleft },\emptyset ^{\blacktriangleright })\), where by convention we put \(\emptyset ^{\blacktriangleright }=\bigcup _{w\in \varSigma ^{*}}\phi (w)\). Finally, we put \(1=(\{\epsilon \}^{\blacktriangleright \blacktriangleleft },\phi (\epsilon ))\) (recall that \(\phi (\epsilon )=\mathsf {id}_C\) by definition). So given a nuclear automaton \(\mathcal {A}\), we have the complete bounded residuated lattice \((\mathfrak {A}_\mathcal {A},\circ ,\wedge ,\vee ,/,\backslash ,1,\top ,\perp )\), which is the automatic concept lattice of \(\mathcal {A}\), for short \(ACL(\mathcal {A})\). As is easy to see, acceptance does not play a role for the automatic concept lattice, so it is sufficient to refer to semi-automata. By ACL we denote the class of all \(ACL(\mathcal {A})\) for \(\mathcal {A}\) an arbitrary nuclear (semi-)automaton, and we define the reducts \(ACL_\mathbf{FL },ACL_\mathbf{L1 }\) in the same way we did for SCL.

We will refer to the straightforward interpretation of \(\mathbf{FL }_\perp \) and its fragments into automatic concept lattices as automata-theoretic semantics, and write \(ACL\models \varGamma \vdash \alpha \) in the usual sense that for all nuclear semi-automata \(\mathcal {A}\), interpretations \(\sigma \) into \(ACL(\mathcal {A})\), we have \(\overline{\sigma }(\varGamma )\le _{ACL(\mathcal {A})}\overline{\sigma }(\alpha )\); same for reducts \(ACL_\mathbf{FL },ACL_\mathbf{L1 }\) etc.

For \(ACL(\langle \phi ,\varSigma ,F_R\rangle )\), \(F_R\) is irrelevant. Still, \(F_R\) is useful because it links automata to languages, which in turn is necessary to establish the relation between ACL and SCL. For what is to follow, the phrase “automaton recognizing L” could be exchanged with “semi-automaton \(\langle \phi ,\varSigma \rangle \) for which there is \(F_R\) such that \(L(\langle \phi ,\varSigma ,F_R\rangle )=L\)”, which however is clumsy to repeat. As automata are related to languages, there should be thus a relation between \(ACL(\mathcal {A})\) and SCL(L), provided that \(L(\mathcal {A})=L\). In particular, one knows that in this case, if \(w\not \sim _Lv\), then \(\phi (w)\ne \phi (v)\) – otherwise, the automaton could not distinguish acceptance of words containing the two substrings. The inverse direction is obviously incorrect, that is, \(\phi (w)\ne \phi (v)\) does not imply anything for wv in L, as the automaton can make as many (unnecessary) distinctions as it desires (this is related to the issue of minimality of automata). From this, we can for example conclude the following: if \(L(\mathcal {A})=L\), then for \((M,C)\in \mathcal {B}_L\), there are \((M_i,R_i)\in \mathfrak {A}_\mathcal {A}\) for \(i\in I\), such that \(M=\bigcup _{i\in I}M_i\). However, this does not entail (as one might conjecture) that we have \(M=(\bigcup _{i\in I}M_i)^{\blacktriangleright \blacktriangleleft }\), which by completeness of the lattice would entail that there is an automatic concept \((M,R)\in \mathfrak {A}_\mathcal {A}\).Footnote 3 In general, there is no homomorphic relation between the two structures, so there is no trivial way to extend completeness for SCL to completeness for automata-theoretic semantics via embeddings; instead, we have to recur to a peculiar automata-theoretic construction.

4.3 The Universal Automaton

There are always infinitely many distinct automata recognizing a language (even modulo a labelled-graph based notion of automaton-isomorphism). We will now consider a particular automaton type which is uniquely specified for every language and which allows us to connect syntactic concepts to automatic concepts. This is the so-called universal automaton (see [14]). The observation that there is some connection between syntactic concepts and the universal automaton is due to A.Clark and has been elaborated in [6]. However, the direct correlation we establish here is new to my knowledge. The universal automaton is based on the notion of a factorization of a language. (XY) is a factorization of L, iff

  1. 1.

    \(XY\subseteq L\), and

  2. 2.

    if \(X\subseteq X',Y\subseteq Y'\) and \(X'Y'\subseteq L\), then \(X=X',Y=Y'\).

We denote the set of L-factorizations with \( fact (L)\). So a factorization is a maximal decomposition of L into two factors. We denote the (unique) universal automaton for a language L by U(L). The factorizations of L form the set of states of U(L). We define I, the set of initial factorizations and F, the set of final factorizations as follows: \(I=\{(X,Y)\in fact (L):\epsilon \in X\}\), \(F=\{(X,Y)\in fact (L):\epsilon \in Y\}\). Then for \(L\subseteq \varSigma ^{*}\), one defines the universal automaton \(U(L):=(\varSigma , fact (L),I,F,\delta )\), where for \(a\in \varSigma \), \(((X,Y),a,(X',Y'))\in \delta \) iff \(Xa\subseteq X'\) iff \(Y\supseteq aY'\). The latter bi-implication is easy to see: if \(Xa\subseteq X'\), then \(XaY'\subseteq L\), and so \(aY'\subseteq Y\) (same for the other direction). The results of this subsection can be found in [14]; we present them as they are necessary for the proof of the isomorphism theorem, but we omit the proofs. Until now, we have given the “normal” presentation of universal automata. To proceed, we quickly need to bring the universal automaton into our “relational form” for automata: we put \(U(L)=\langle \varSigma ,\phi ,I\times F\rangle \), where for all \(a\in \varSigma \), we have \(\phi (a)=\{((X,Y),(X',Y')):(X,Y),(X',Y')\in \textit{fact}(L)\) and \(Xa\subseteq X'\}\). We define the maps \([-]^{\rightarrow },[-]^{\leftarrow }\) by

$$\begin{aligned} M^\rightarrow =\{w:Mw\subseteq L\} \end{aligned}$$
(5)
$$\begin{aligned} M^\leftarrow =\{w:wM\subseteq L\} \end{aligned}$$
(6)

The compositions \([-]^{\rightarrow \leftarrow },[-]^{\leftarrow \rightarrow }\) are closure operators, and \([-]^{\rightarrow },[-]^{\leftarrow }\) establish a Galois connection between closed sets of strings (see [6] for the connection of \([-]^\rightarrow \) and \([-]^\triangleright \) etc.). A factorization is then exactly a pair of sets (MN) such that \(M^{\rightarrow }=N\), \(N^{\leftarrow }=M\) (this entails \(M=M^{\rightarrow \leftarrow },N=N^{\leftarrow \rightarrow }\)). Depending on L, there might be trivial factorizations \((\varSigma ^{*},\emptyset )\), \((\emptyset ,\varSigma ^{*})\).

Lemma 12

For \((X,Y),(X',Y')\in fact (L)\), \(W\subseteq \varSigma ^*\), the following are equivalent:

  1. 1.

    \(XW\subseteq X'\)

  2. 2.

    \(WY'\subseteq Y\)

  3. 3.

    \(XWY'\subseteq L\).

Lemma 13

For every \(L\subseteq \varSigma ^*\), \(w\in \varSigma ^*\), for U(L) we have \(((X,Y),(X',Y'))\in \phi (w)\) iff \(Xw\subseteq X'\) iff \(wY'\subseteq Y\) iff \(XwY'\subseteq L\).

Lemma 14

\(L(U(L))=L\).

That is, the universal automaton of L recognizes L. It is a straightforward consequence of the Myhill-Nerode theorem that \( fact (L)\) is finite if and only if L is regular. This entails the following:

Lemma 15

U(L) is a finite automaton if and only if L is regular.

4.4 An Isomorphism Theorem for ACL and SCL

We have said that there is no homomorphic (or in fact, any simple structural) relation between SCL(L) and \(ACL(\mathcal {A})\) for all \(\mathcal {A}\) such that \(L(\mathcal {A})=L\). This is despite the fact that \(\mathcal {A}\) must make the relevant distinctions between strings distinct modulo \(\sim _L\). Things change if we look at the universal automaton instead of automata in general. For two algebras \(\mathbf B ,\mathbf B '\), we write \(\mathbf B \cong \mathbf B '\) if there is an isomorphism from one to the other, that is a bijection which preserves all results of all operations. We can establish the following, surprisingly strong connection:

Theorem 16

(Isomorphism theorem) \(ACL(U(L))\cong SCL(L)\)

That is, the automatic concept lattice for the universal automaton over L is isomorphic to the syntactic concept lattice of L. The following generalization of Lemma 13 is quite simple, but will be very helpful in the proof of the isomorphism theorem. Let \([-]^{\blacktriangleright },[-]^{\blacktriangleleft }\) below be defined with respect to U(L).

Lemma 17

For \((X,Y),(X',Y')\in fact (L)\), \(((X,Y),(X',Y'))\in M^{\blacktriangleright }\) if and only if \(XMY'\subseteq L\).

Proof. If: Assume \(XMY'\subseteq L\). Then for every \(w\in M\), we have \(XwY'\subseteq L\), hence \(((X,Y),(X',Y'))\in \phi (w)\), hence \(((X,Y),(X',Y'))\in M^{\blacktriangleright }\).

Only if: Assume \(((X,Y),(X',Y'))\in M^{\blacktriangleright }\). Then for all \(w\in M\), we have \(((X,Y),(X',Y'))\in \phi (w)\). Hence for all \(w\in M\), \(XwY'\subseteq L\), so \(XMY'\subseteq L\). \(\square \)

We can now show that universal automata are nuclear, so they provide a sound semantics for the full Lambek calculus.

Lemma 18

Let \([-]^\blacktriangleright ,[-]^\blacktriangleleft \) we defined with respect to U(L) for some language L. Then \(M^\blacktriangleright \mathbf ; N^\blacktriangleright =(MN)^{\blacktriangleright }\). Hence for every language L, U(L) is nuclear.

Proof. \(\subseteq \) Holds in general, by set-theoretic properties.

\(\supseteq \) Assume \(((X,Y'),(X',Y))\in (MN)^\blacktriangleright \). Then \(XMNY\subseteq L\).

Firstly, we have \(((X,Y'),((NY)^{\leftarrow }, (NY)^{\leftarrow \rightarrow })\in M^{\blacktriangleright }\): we have \((X,Y')\in fact (L)\) by assumption, \(((NY)^{\leftarrow }, (NY)^{\leftarrow \rightarrow })\in fact (L)\) by definition of \([-]^{\leftarrow }\), \([-]^{\rightarrow }\), and since \(XMNY\subseteq L\), we also have \(XM(NY)^{\leftarrow \rightarrow }\subseteq L\). So the claim follows from Lemma 17.

Secondly, we have \((((NY)^{\leftarrow },(NY)^{\leftarrow \rightarrow }),(X',Y))\in N^{\blacktriangleright }\): \((X',Y)\in fact (L)\) by assumption, and we have \(((NY)^{\leftarrow }NY\subseteq L\) by definition of \([-]^{\leftarrow }\), hence the claim follows again from Lemma 17.

Consequently, by definition of ;, we have \(((X,Y'),(X',Y))\in M^{\blacktriangleright }\mathbf ; N^{\blacktriangleright }\). \(\square \)

In the sequel, \([-]^{\triangleright },[-]^{\triangleleft }\) refer to SCL-closure w.r.t. to some fixed \(L\subseteq \varSigma ^*\), \([-]^{\blacktriangleright },[-]^{\blacktriangleleft }\) to ACL-closure w.r.t. to U(L) (referring to the same language!). Now comes the crucial lemma for the isomorphism theorem:

Lemma 19

For all \(M\subseteq \varSigma ^*\), \(M^{\triangleright \triangleleft }=M^{\blacktriangleright \blacktriangleleft }\).

Proof. \(M^{\triangleright \triangleleft }\subseteq M^{\blacktriangleright \blacktriangleleft }\). Assume \(w\in M^{\triangleright \triangleleft }\). Then whenever \(xMy\subseteq L\), then \(xwy\in L\). If \(((X,Y),(X',Y'))\in M^\blacktriangleright \), then \(XMY'\subseteq L\) (by Lemma 17). However, if \(XMY'\subseteq L\), then \(XwY'\subseteq L\), hence (by the equivalence in Lemma 12) \(Xw\subseteq X',wY'\subseteq Y\). Hence we have \(((X,Y),(X',Y'))\in \phi (w)\) for all \(((X,Y),(X',Y'))\in M^\blacktriangleright \). Hence we have \(w\in M^{\blacktriangleright \blacktriangleleft }\).

\(M^{\blacktriangleright \blacktriangleleft }\subseteq M^{\triangleright \triangleleft }\). Assume \(w\in M^{\blacktriangleright \blacktriangleleft }\), and take an arbitrary \((x,y)\in M^{\triangleright }\). Put \(X=(My)^{\leftarrow }\), \(Y=(XM)^{\rightarrow }\). It is easy to see that 1. \(x\in X,y\in Y\) (obvious), and 2. \(((X,X^{\rightarrow }),(Y^{\leftarrow },Y))\in M^\blacktriangleright \) (by Lemma 17). Since \(w\in M^{\blacktriangleright \blacktriangleleft }\), we have \(M^{\blacktriangleright }\subseteq \phi (w)\), and so \(((X,X^{\rightarrow }),(Y^{\leftarrow },Y))\in \phi (w)\), which holds iff \(XwY\subseteq L\), entailing \(xwy\in L\). Hence \(w\in M^{\triangleright \triangleleft }\) \(\square \)

This already entails that the operations and constants in the respective lattices yield the same result, because they are based on the same underlying set-operations, of which we simply take the (same) closure. We denote operations in SCL(L) as usual; the operation in ACL(U(L)) corresponding to \(\star \) in SCL(L) will be denoted by \(\star '\). We distinguish the constants of different structures by subscripts \(\top _{SCL(L)}\) etc. As concepts are tuples, we write, for tuples \((X_1,X_2),(Y_1,Y_2)\), \((X_1,X_2)=_1(Y_1,Y_2)\) iff \(X_1=Y_1\), that is, if their first components are identical.

Corollary 20

  1. 1.

    For \(\star \in \{\wedge ,\vee ,\circ ,/,\backslash \}\), \(\star \) defined w.r.t. SCL(L), \(\star '\) defined w.r.t. ACL(U(L)), \((M,M^\triangleright )\star (N,N^\triangleright )=_1(M,M^\blacktriangleright )\star ' (N,N^\blacktriangleright )\).

  2. 2.

    \(\top _{SCL(L)}=_1\top _{ACL(U(L))}\)

  3. 3.

    \(\perp _{SCL(L)}=_1\perp _{ACL(U(L))}\)

  4. 4.

    \(1_{SCL(L)}=_1 1_{ACL(U(L))}\)

Now it is easy to construct an isomorphism \(i:SCL(L)\rightarrow ACL(U(L))\): for every \((M,C)\in \mathcal {B}_L\), we put \(i(M,C)=(M,M^\blacktriangleright )\). This completes the proof of Theorem 16. The isomorphism theorem thus establishes a surprisingly strong connection between the syntactic concept lattice and the universal automaton of a language.

We now consider the consequences of the isomorphism theorem for our investigations into the semantics of substructural logics. Automata-theoretic semantics is richer than simple language-theoretic semantics, because there is a many-one relationship of recognition between automata and languages. In order to ensure soundness, we already have to restrict interpretations to nuclear automata; then it follows from more general results. To obtain completeness, the isomorphism theorem can be applied in a straightforward fashion: just compose the SCL-interpretation of \(\mathbf{FL }_\perp \) (or its fragments) with the isomorphism from SCL(L) into ACL(U(L)), and we are done.

Theorem 21

(Completeness of automata-theoretic semantics)

  1. 1.

    \(ACL\models \varGamma \vdash \alpha \) iff \(\Vdash _{\mathbf{FL }_\perp } \varGamma \vdash \alpha \)

  2. 2.

    \(ACL_\mathbf{FL }\models \varGamma \vdash \alpha \) iff \(\Vdash _{\mathbf{FL }} \varGamma \vdash \alpha \)

  3. 3.

    \(ACL_\mathbf{L1 }\models \varGamma \vdash \alpha \) iff \(\Vdash _\mathbf{L1 } \varGamma \vdash \alpha \)

It is obvious how to further strengthen these results: let ACL(FIN) denote the class of automatic concept lattices over finite nuclear automata (i.e. nuclear automata with finite state set).Footnote 4 We can depart from completeness for SCL(REG): for \(\not \Vdash _{\mathbf{FL }_\perp }\varGamma \vdash \alpha \) we find a countermodel SCL(L) where \(L\in REG\). By the isomorphism theorem, we also have a countermodel ACL(U(L)) which is finite. Thus we have the following:

Theorem 22

(Completeness for finite automata)

  1. 1.

    \(ACL(FIN)\models \varGamma \vdash \alpha \) iff \(\Vdash _{\mathbf{FL }_\perp } \varGamma \vdash \alpha \)

  2. 2.

    \(ACL_\mathbf{FL }(FIN)\models \varGamma \vdash \alpha \) iff \(\Vdash _\mathbf{FL } \varGamma \vdash \alpha \)

  3. 3.

    \(ACL_\mathbf{L1 }(FIN)\models \varGamma \vdash \alpha \) iff \(\Vdash _\mathbf{L1 } \varGamma \vdash \alpha \)

5 Conclusion

We have presented a new complete semantics for the full Lambek calculus and its various fragments, the so-called automata-theoretic semantics. It is based on an automata-theoretic construction we introduced, the automatic concept lattice. What is peculiar to this semantics is that it is both language-theoretic and relational, and thus brings together two prominent types of semantics for substructural logics. Our results are based on the construction of Galois connections, closure operators and nuclei: these allow us to give rather simple proofs for completeness. This illustrates (once more) the usefulness of Galois connections in the context of substructural logics and formal language theory. Another important result concerns finiteness of models, which corresponds to regularity of languages. We showed that our completeness results can be extended to this case.

As an outlook, we hope that we can use the results established in this paper to strengthen some of the canonical completeness results regarding L-models and relational models to regular languages and/or finite relations.