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

11institutetext: Ontologos

FOLE Equivalence

Robert E. Kent
Abstract

The first-order logical environment FOLE provides a rigorous and principled approach to distributed interoperable first-order information systems. FOLE has been developed in two forms: a classification form and an interpretation form. Two papers represent FOLE in a classification form corresponding to ideas of the Information Flow Framework ([14],[15],[16]): the first paper [9] provides a foundation that connects elements of the ERA data model [2] with components of the first-order logical environment FOLE; the second paper [10] provides a superstructure that extends FOLE to the formalisms of first-order logic. The formalisms in the classification form of FOLE provide an appropriate framework for developing the relational calculus. Two other papers represent FOLE in an interpretation form: the first paper [11] develops the notion of the FOLE table following the relational model [3]; the second paper [12] discusses the notion of a FOLE relational database. All the operations of the relational algebra have been rigorously developed [13] using the interpretation form of FOLE. The present study demonstrates that the classification form of FOLE is informationally equivalent to the interpretation form of FOLE. In general, the FOLE representation uses a conceptual structures approach, that is completely compatible with the theory of institutions, formal concept analysis and information flow.

Keywords:
structures, specifications, sound logics, databases.

1 Preface.

The architecture for the first-order logical environment FOLE is displayed in Fig. 1. 111 FOLE is described in the following papers: “The ERA of FOLE: Foundation” [9], “The ERA of FOLE: Superstructure” [10], “The FOLE Table” [11], “The FOLE Database” [12], “FOLE Equivalence” [this paper], and “Relational Operations in FOLE[13] . The left side of Fig. 1 represents FOLE in classification form. The right side of Fig. 1 represents FOLE in interpretation form.

Sound LogicStructure classification form\underset{\text{\footnotesize\it{classification form}}}{\underbrace{\text{\hskip 60.0pt}}} interpretation form\underset{\text{\footnotesize\it{interpretation form}}}{\underbrace{\text{\hskip 60.0pt}}}DatabaseTableRelationalCalculusRelationalOperations\equiv
Figure 1: FOLE Architecture

Classification form.

An ontology defines the primitives with which to model the knowledge resources for a community of discourse (Gruber [6]). These primitives, which consist of classes, relationships and properties, are represented by the entity-relationship-attribute ERA model (Chen [2]). An ontology uses formal axioms to constrain the interpretation of these primitives. In short, an ontology specifies a logical theory.

Two papers provide a rigorous mathematical representation for the ERA data model in particular, and ontologies in general, within the first-order logical environment FOLE. These papers represent the formalism and semantics of (many-sorted) first-order logic in a classification form corresponding to ideas discussed in the Information Flow Framework (IFF [16]). The paper (Kent [9]) develops the notion of a FOLE structure; this provides a foundation that connects elements of the ERA data model with components of the first-order logical environment FOLE. The paper (Kent [10]) develops the notion of a FOLE sound logic; this provides a superstructure that extends FOLE to the formalisms of first-order logic.

Interpretation form.

The relational model (Codd [3]) is an approach for the information management of a “community of discourse” 222Examples include: an academic discipline; a commercial enterprise; the genetics research community, library science; the legal profession; etc. using the semantics and formalism of (many-sorted) first-order predicate logic. The first-order logical environment FOLE (Kent [8]) is a category-theoretic representation for this logic. 333Following the original discussion of FOLE (Kent [8]), we use the term mathematical context for the concept of a category, the term passage for the concept of a functor, and the term bridge for the concept of a natural transformation. A context represents some “species of mathematical structure”. A passage is a “natural construction on structures of one species, yielding structures of another species” (Goguen [5]). Hence, the relational model can naturally be represented in FOLE. A series of papers is being developed to provide a rigorous mathematical basis for FOLE by defining an architectural semantics for the relational data model.

Two papers provide a precise mathematical basis for FOLE interpretation. Both of these papers expand on material found in the paper (Kent [7]). The paper (Kent [11]) develops the notion of a FOLE table following the relational model (Codd [3]). The paper (Kent [12]) develops the notion of a FOLE relational database, thus providing the foundation for the semantics of first-order logical/relational database systems.

Equivalence.

The current paper “FOLE Equivalence” defines an interpretation of FOLE in terms of the transformational passage, first described in (Kent [8]), from the classification form of first-order logic to an equivalent interpretation form, thereby defining the formalism and semantics of first-order logical/relational database systems. Although the classification form follows the entity-relationship-attribute data model of Chen [2], the interpretation form incorporates the relational data model of Codd [3]. Relational operations are described in the paper (Kent [13]). The relational calculus will be discussed in a future paper.

2 Introduction.

This paper defines the equivalence between two forms of the first-order logical environment FOLE, the classification form and the interpretation form. Equivalence sits between the top of both forms, pictured briefly on the right, and more completely in Fig.1 in the preface §1. The classification form hierarchy (left hand side) consists of “The FOLE Foundation” at the bottom and “The FOLE Superstructure” at the top. The interpretation form hierarchy (right hand side) consists of “The FOLE Table” at the bottom and “The FOLE Database” at the top.
\equiv\bulletRelationalCalculusRelationalAlgebra\circ\circ\circ\circFOLEarchitecture

2.1 First Order Logical Environment

This paper relates two forms of the first order logic environment FOLE: the classification form and the interpretation form. These two forms are shown to be “informationally equivalent” 444See Prop. 12 in § A.1 of the paper [11] “The FOLE Table”. to each other. Both forms have their own advantages: the classification form allows formalism 555See the paper [10] “The ERA of FOLE: Superstructure”. to be easily defined, whereas the interpretation form allows relational operations 666See the paper [13] “Relational Operations in FOLE”. to be easily defined. The classification form of FOLE is realized in the notion of a (lax) sound logic, whereas the interpretation form of FOLE is realized in the notion of a relational database. To demonstrate the equivalence of the classification form with the interpretation form, (lax) sound logics and relational databases are shown to be in a reflective relationship (Fig. 2). Although a FOLE relational database can be taken as a whole, a FOLE sound logic resolves into the two parts of structure and specification, plus the relationship of satisfaction. 777The satisfaction relation corresponds to the “truth classification” in Barwise and Seligman [1], where the conceptual intent 𝒮\mathcal{M}^{\mathcal{S}} corresponds to the “theory of \mathcal{M}”.

In more detail (Tbl. 1), the classification form of FOLE is represented by a (lax) sound logic consisting of two components, a (lax) structure and an abstract specification, which are connected by a satisfaction relation. The (lax) structure consists of a (lax) entity classification, an attribute classification (typed domain), a schema, and one of the two equivalent descriptions: either a tabular map from predicates to tables; or a bridge consisting of an indexed collection of table tuple functions. The abstract specification is the same as a the database schema. Satisfaction is defined by table interpretation using constraints. The interpretation form of FOLE is represented by a relational database with constant type domain, a tabular interpretation diagram, whose projective components consist of a database schema, a key diagram, and a tuple bridge. The tabular interpretation diagram is equivalent to the satisfaction relation between the (lax) structure and the abstract specification. 888See (Key) Prop. 3 in § 5.3.

𝐒𝐧𝐝\mathrmbf{Snd}𝐒𝐧𝐝̊\mathring{\mathrmbf{Snd}}𝐃𝐛\mathrmbf{Db}𝒍𝒂𝒙\mathrmbfit{lax}𝒊𝒎\mathrmbfit{im}\dashv𝒊𝒏𝒄\mathrmbfit{inc}
Figure 2: FOLE Equivalence

2.2 Overview.

𝐒𝐧𝐝̊𝒊𝒎𝐃𝐛\mathring{\mathrmbf{Snd}}\xleftarrow{\mathrmbfit{im}}\mathrmbf{Db}: A database resolves into a sound logic: the specification is the database schema projection; the (lax) structure is the constraint-free aspect of a database; and tabular interpretation defines satisfaction. 𝐒𝐧𝐝̊𝒊𝒏𝒄𝐃𝐛\mathring{\mathrmbf{Snd}}\xrightarrow{\mathrmbfit{inc}}\mathrmbf{Db}: A sound logic assembles a database: the specification provides (is the same as) the database schema; the (lax) structure provides a constraint-free interpretation consisting of a collection of tables indexed by predicates; and satisfaction defines the tabular interpretation.
Table 1: FOLE Equivalence in Brief

Briefly, § 3 defines some basic concepts of FOLE (formula, interpretation and satisfaction); § 4 defines structures and converts them to a lax variety; § 5 defines formal and abstract specifications, and satisfaction of specifications by structures; § 6 defines (lax) sound logics and converts these to relational databases; and § 7 defines relational databases and converts these to (lax) sound logics. In overview, Table 2 lists the figures and tables used in this paper.

Basic Concepts.

§ 3 reviews some basic concepts (Tbl. 3) of the FOLE logical environment from § 2 of the paper [10] “Superstructure”. This covers the concepts of formalism, tabular interpretation, and satisfaction. § 3.1 recapitulates the definition of formalism in [10]. Formalism is defined in terms of the logical Boolean operations and quantifiers using syntactic flow (Tbl. 4). § 3.2 extends to tables the definition of logical interpretation in [10] using Boolean operations within fibers and quantifier flow between fibers (Tbl. 5). It represents the syntactic flow operators of Tbl. 4 by their associated semantic flow operators (Tbl. 6). § 3.3 reviews the notion of satisfaction in [10], which links formalism and semantics via satisfaction. Satisfaction is defined for both sequents and constraints. Satisfaction is reflective (Fig. 3) between relations and tables.

Structures.

§ 4 reviews and extends the basic concepts of FOLE structure and structure morphism from § 4.3 of the paper [9]“Foundation”. In § 4.1, Def. 1 defines a FOLE structure with both a classification and interpretation form. Fig. 4 illustrates this idea. Note the global key sets used in the entity classification of this definition. In § 4.2, Def. 2 defines an extended notion of FOLE structure morphism by adding internal bridges. Fig. 5 illustrates this idea. Note the global key function in the entity infomorphism of this definition. § 4.3 defines a transition from strict to lax structures and structure morphisms. This is accomplished by changing the entity classification and entity infomorphism to lax versions, thus changing the global key sets and key function to local versions. Note 1, Prop. 1 (Key) and Cor. 1 define a step-by-step process for this transition. Fig. 6 illustrates the steps of this transition. § 4.4 and § 4.5 introduce the idea of lax structures and lax structure morphisms. We generalize to lax structures and lax structure morphisms by eliminating the global key sets and key functions. Def. 3 defines a lax FOLE structure in terms of either a tabular interpretation function or a tuple bridge. Prop. 2 shows that a lax structure is the same as the constraint-free aspect of a database. Def. 4 defines a (lax) structure morphism. Cor. 2 shows that a (lax) structure morphism defines a tabular interpretation bridge function. Fig. 7 illustrates a (lax) structure morphism.

Specifications.

§ 5 reviews and extends the notion of a FOLE specification. Formal FOLE specifications are covered in § 3.1 of the paper [10] “Superstructure”. Here we extend to abstract FOLE specifications. § 5.1 defines a formal specification in Def. 5 and an abstract specification in Def. 6. Every abstract specification is closely linked to a companion formal specification. § 5.2 defines a abstract specification morphism in Def. 7 and illustrates this in Fig. 8. Abstract specifications and morphisms are the same as database schemas and morphisms. § 5.3 defines specification satisfaction. Def. 8 defines satisfaction for formal specifications, whereas Def. 9 defines satisfaction for abstract specifications in terms of satisfaction for rheir formal companion. Assuming satisfaction holds, Def. 10 defines the abstract table passage as the composition of the object-identical companion passage, the inclusion into the structure conceptual intent, and the relation interpretation passage of Lem. 2 in § 3.3. Prop. 3 is key: it proves that satisfaction is equivalent to tabular interpretation, This is central, since it binds together the two parts of a sound logic, its structure and its specification. It underpins the core idea that sound logics are equivalent to relational databases. Fig. 9 illustrates and compares specification passages, both in general and with satisfaction. Tbl. 7 illustrates and compares specifications with the sound logics defined in § 6.

Sound Logics.

§ 6 reviews the notion of a FOLE sound logic. § 6.1 discusses sound logics. Def. 11 defines (lax) sound logics in terms of satisfaction between its two components: structure and abstract specification. Prop. 4 proves that any (lax) sound logic defines a relational database. Tbl. 8 lists and illustrates the various components of a (lax) sound logic. § 6.2 discusses sound logic morphisms. Def. 12 defines the notion of a (lax) sound logic morphism. Prop. 5 shows how (lax) sound logic morphisms preserve and link satisfaction between their source and target logics. The large figure Fig. 10 expands in detail the naturality used in this proposition. Prop. 6 proves that a (lax) sound logic morphism defines a database morphism. Thm. 6.1 proves existence of a passage from the context of (lax) FOLE sound logics to the context of FOLE relational databases. Tbl. 9 illustrates the components of a (lax) sound logic morphism.

Relational Databases.

§ 7 reviews the notion of a FOLE relational database. § 7.1 discusses FOLE relational databases. Def. 13 defines a relational database as an interpretation diagram from predicates to tables for a fixed type domain. Fig. 11 illustrates this definition. Def. 14 defines relational databases using table projection passages. Tbl. 10 lists the components of a FOLE relational database. Prop. 7 shows that the constraint-free aspect of a database is the same as a (lax) structure. Prop. 8 proves that a FOLE database defines a (lax) FOLE sound logic. § 7.2 discusses FOLE relational database morphisms. Def. 15 defines a database morphism to consist of a tabular passage between source/target predicate contexts, an infomorphism between source/target type domains, and a bridge connecting the source/target tabular interpretations. Fig. 12 illustrates this definition. Def. 16 defines relational database morphisms using table projection passages. Tbl. 11 lists and Fig. 14 illustrates the components of a FOLE relational database. Prop. 9 shows that the constraint-free aspect of a FOLE database morphism is the same as a (lax) FOLE structure morphism. Prop. 10 proves that a FOLE database morphism defines a (lax) FOLE sound logic morphism. Thm. 7.1 proves existence of a passage from the context of FOLE relational databases to the context of (lax) FOLE sound logics. Thm. 7.2 proves that the contexts of FOLE relational databases and FOLE (lax) sound logics are “informationally equivelent” by way of a reflection.

Appendix.

§ 0.A.1 lists the FOLE components used in this paper. Tbl. 12 in § 0.A.1 lists the equivalent and adjoint versions of FOLE bridges. Tbl. 13 in § 0.A.1 lists the FOLE Morphisms. § 0.A.2 reviews the concepts of classifications and infomorphisms. Both are extended to lax versions.

§1 Fig. 1  : FOLE Architecture
§2 Fig. 2  : FOLE Equivalence
§3 Fig. 3  : Table-Relation Reflection
§4 Fig. 4  : FOLE Structure
Fig. 5  : Structure Morphism
Fig. 6  : Transition
Fig. 7  : Lax Structure Morphism
§5 Fig. 8  : Specification Morphisms
Fig. 9  : Specification Passages
§6 Fig. 10  : Naturality Combined
§7 Fig. 11  : Database: Type Domain
Fig. 12  : Database Morphism
Fig. 13  : Inclusion Bridge: Tables
Fig. 14  : Database Morphism: Type Domain
§0.A Fig. 15  : Infomorphism
Fig. 16  : Lax Infomorphism
§ 2 Tbl. 1  : FOLE Equivalence in Brief
Tbl. 2  : Figures and Tables
§ 3 Tbl. 3  : Basic Concepts
Tbl. 4  : Syntactic Flow
Tbl. 5  : Formula Interpretation
Tbl. 6  : Formal/Semantics Reflection
§ 5 Tbl. 7  : Comparisons
§ 6 Tbl. 8  : Sound Logic
Tbl. 9  : Sound Logic Morphism
§ 7 Tbl. 10  : Relational Database
Tbl. 11  : Database Morphism
§ 0.A Tbl. 12  : FOLE Adjoint Bridges

Tbl. 13  : FOLE Morphisms

Tbl. 14  : Lax Infomorphisms
Table 2: Figures and Tables

3 Basic Concepts

The basic concepts of FOLE are listed in Tbl. 3. 999Satisfaction for (abstract) specifications is define in Def. 9 of § 5.3. Except for the formula interpretation in Tbl.5, we can refer all the formal material to the paper “The ERA of FOLE: Superstructure” [10].

§ 2.1 Formalism (formulas, sequents, constraints)
Axioms (Tbl. 3)
§ 2.2 Semantics (formula interpretation)
Formal/Semantics Reflection (Tbl. 6)
§ 2.3 Satisfaction (sequents, constraints)
Table 3: Basic Concepts

3.1 Formalism

Formulas.

Let 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} be a fixed schema with a set of entity types RR, a set of sorts (attribute types) XX and a signature function R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\sigma}\mathrmbf{List}(X). The set of entity types RR is partitioned R=I,s𝐋𝐢𝐬𝐭(𝐗)R(I,s)R=\bigcup_{{\langle{I,s}\rangle}\in\mathrmbf{List}(X)}R(I,s) into fibers, where R(I,s)RR(I,s){\;\subseteq\;}R is the fiber (subset) of all entity types with signature I,s{\langle{I,s}\rangle}. These are called I,s{\langle{I,s}\rangle}-ary entity types. 101010This is a slight misnomer, since the signature of rr is σ(R)=I,s\sigma(R)={\langle{I,s}\rangle}, whereas the arity of rr is α(R)=I\alpha(R)=I. Here, we follow the tuple, domain, and relation calculi from database theory, using logical operations to extend the set of basic entity types RR to a set of defined entity types R^\widehat{R} called formulas or queries.

Formulas, which are defined entity types corresponding to queries, are constructed by using logical connectives within a fiber and logical flow along signature morphisms between fibers (Tbl. 4). 111111An 𝒮\mathcal{S}-signature morphism I,sI,s{\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle} in 𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{List}(X) is an arity function III^{\prime}\xrightarrow{\,h\,}I that preserves signature s=hss^{\prime}=h{\,\cdot\,}s. 121212The full version of FOLE (Kent [8]) defines syntactic flow along term vectors. Logical connectives on formulas express intuitive notions of natural language operations on the interpretation (extent, view) of formulas. These connectives include: conjunction, disjunction, negation, implication, etc. For any signature I,s{\langle{I,s}\rangle}, let R^(I,s)R^\widehat{R}(I,s)\subseteq\widehat{R} denote the set of all formulas with this signature. There are called I,s{\langle{I,s}\rangle}-ary formulas. The set of 𝒮\mathcal{S}-formulas is partitioned as R^=I,s𝐋𝐢𝐬𝐭(𝐗)R^(I,s)\widehat{R}=\bigcup_{{\langle{I,s}\rangle}\in\mathrmbf{List}(X)}\widehat{R}(I,s).

  • fiber:

    Let I,s{\langle{I,s}\rangle} be any signature. Any I,s{\langle{I,s}\rangle}-ary entity type (relation symbol) is an I,s{\langle{I,s}\rangle}-ary formula; that is, R(I,s)R^(I,s)R(I,s)\subseteq\widehat{R}(I,s). For a pair of I,s{\langle{I,s}\rangle}-ary formulas φ\varphi and ψ\psi, there are the following I,s{\langle{I,s}\rangle}-ary formulas: meet (φψ)(\varphi{\,\wedge\,}\psi), join (φψ)(\varphi{\,\vee\,}\psi), implication (φψ)(\varphi{\,\rightarrowtriangle\,}\psi) and difference (φψ)(\varphi{\,\setminus\,}\psi). For I,s{\langle{I,s}\rangle}-ary formula φ\varphi, there is an I,s{\langle{I,s}\rangle}-ary negation formula ¬φ\neg\varphi. There are top/bottom I,s{\langle{I,s}\rangle}-ary formulas I,s\top_{{\langle{I,s}\rangle}} and I,s\bot_{{\langle{I,s}\rangle}}.

  • flow:

    Let I,sI,s{\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle} be any signature morphism. For I,s{\langle{I,s}\rangle}-ary formula φ\varphi, there are I,s{\langle{I^{\prime},s^{\prime}}\rangle}-ary existentially/universally quantified formulas h(φ){\scriptstyle\sum}_{h}(\varphi) and h(φ){\scriptstyle\prod}_{h}(\varphi). 131313For any index iIi\in I, quantification for the complement inclusion signature function I{i},sinciI,s{\langle{I\setminus\{i\},s^{\prime}}\rangle}\xrightarrow{\text{inc}_{i}}{\langle{I,s}\rangle} gives the traditional syntactic quantifiers iφ,iφ\forall_{i}\varphi,\exists_{i}{\varphi}. For an I,s{\langle{I^{\prime},s^{\prime}}\rangle}-ary formula φ\varphi^{\prime}, there is an I,s{\langle{I,s}\rangle}-ary substitution formula h(φ)=φ(t){h}^{\ast}(\varphi^{\prime})=\varphi^{\prime}(t).

I,sI,s^R(I,s)^R(I,s)hhh\begin{array}[]{c}{\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle}\\ {\begin{picture}(120.0,60.0)(0.0,-25.0)\put(0.0,0.0){\makebox(0.0,0.0)[]{\footnotesize{$\widehat{R}(I^{\prime},s^{\prime})$}}} \put(120.0,0.0){\makebox(0.0,0.0)[]{\footnotesize{$\widehat{R}(I,s)$}}} \put(60.0,20.0){\makebox(0.0,0.0)[]{\scriptsize{${\scriptstyle\sum}_{{h}}$}}} \put(62.0,2.0){\makebox(0.0,0.0)[]{\scriptsize{${h}^{\ast}$}}} \put(60.0,-22.0){\makebox(0.0,0.0)[]{\scriptsize{${\scriptstyle\prod}_{{h}}$}}} \put(85.0,12.0){\vector(-1,0){50.0}} \qbezier(35.0,0.0)(43.0,0.0)(51.0,0.0)\qbezier(69.0,0.0)(77.0,0.0)(85.0,0.0)\put(85.0,0.0){\vector(1,0){0.0}} \put(85.0,-12.0){\vector(-1,0){50.0}} \end{picture}}\end{array}


Table 4: Syntactic Flow

In general, we regard formulas to be constructed entities or queries (defining views and interpretations; i.e., relations/tables), not assertions. Contrast this with the use of “asserted formulas” below. For example, in a corporation data model the conjunction (𝚂𝚊𝚕𝚊𝚛𝚒𝚎𝚍𝙼𝚊𝚛𝚛𝚒𝚎𝚍)(\mathtt{Salaried}{\,\wedge\,}\mathtt{Married}) is not an assertion, but a constructed entity type or query that defines the view “salaried employees that are married”. Formulas form a schema 𝒮^=R^,σ^,X\widehat{\mathcal{S}}={\langle{\widehat{R},\widehat{\sigma},X}\rangle} that extends 𝒮\mathcal{S} with 𝒮\mathcal{S}-formulas as entity types: with the inductive definitions above, the set of entity types is extended to a set of logical formulas R𝑖𝑛𝑐𝒮R^R\xhookrightarrow{\mathrmit{inc}_{\mathcal{S}}}\widehat{R}, and the entity type signature function is extended to a formula signature function R^σ^𝐋𝐢𝐬𝐭(𝐗)\widehat{R}\xrightarrow{\;\widehat{\sigma}\;}\mathrmbf{List}(X) with σ=𝑖𝑛𝑐𝒮σ^\sigma=\mathrmit{inc}_{\mathcal{S}}{\;\cdot\;}\widehat{\sigma}.

Sequents.

To make an assertion about things, we use a sequent. Let 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} be a schema. A (binary) 𝒮\mathcal{S}-sequent 141414Since FOLE formulas are not just types, but are constructed using, inter alia, conjunction and disjunction operations, we can restrict attention to binary sequents. is a pair of formulas (φ,ψ)R^×R^(\varphi,\psi){\,\in\,}\widehat{R}{\,\times}\widehat{R} with the same signature σ^(φ)=I,s=σ^(ψ)\widehat{\sigma}(\varphi)={\langle{I,s}\rangle}=\widehat{\sigma}(\psi). To be explicit that we are making an assertion, we use the turnstile notation φψ\varphi{\;\vdash\;}\psi for a sequent. Then, we are claiming that a specialization-generalization relationship exists between the formulas φ\varphi and ψ\psi. A asserted sequent φψ\varphi{\;\vdash\;}\psi expresses interpretation widening, with the interpretation (view) of φ\varphi required to be within the interpretation (view) of ψ\psi. An asserted formula φR^\varphi\in\widehat{R} can be identified with the sequent φ\top{\;\vdash\;}\varphi in R^×R^\widehat{R}{\,\times}\widehat{R}, which asserts the universal view “all entities” of signature σ(φ)=I,s\sigma(\varphi)={\langle{I,s}\rangle}. Hence, from an entailment viewpoint we can say that “formulas are sequents”. In the opposite direction, there is an enfolding map R^×R^R^\widehat{R}{\,\times}\widehat{R}\rightarrow\widehat{R} that maps 𝒮\mathcal{S}-sequents to 𝒮\mathcal{S}-formulas (φψ)(φψ)({\varphi}{\;\vdash\;}{\psi})\mapsto(\varphi{\,\rightarrowtriangle\,}\psi). The axioms in Tbl. 3 of the paper [10] make sequents into an order. Let 𝐂𝐨𝐧𝒮(𝐈,𝐬)=𝐑^(𝐈,𝐬),\mathrmbf{Con}_{\mathcal{S}}(I,s)={\langle{\widehat{R}(I,s),\vdash}\rangle} denote the fiber preorder of 𝒮\mathcal{S}-formulas.

Constraints.

Sequents only connect formulas within a particular fiber: an 𝒮\mathcal{S}-sequent φψ\varphi{\;\vdash\;}\psi is between two formulas with the same signature σ^(φ)=I,s=σ^(ψ)\widehat{\sigma}(\varphi)={\langle{I,s}\rangle}=\widehat{\sigma}(\psi), and hence between elements in the same fiber φ,ψR^(I,s)\varphi,\psi{\;\in\;}\widehat{R}(I,s). We now define a useful notion that connects formulas across fibers. An 𝒮\mathcal{S}-constraint φφ\varphi^{\prime}{\,\xrightarrow{h\,}\,}\varphi consists of a signature morphism σ^(φ)=I,sI,s=σ^(φ)\widehat{\sigma}(\varphi^{\prime})={\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle}=\widehat{\sigma}(\varphi) and a binary sequent h(φ)φ{\scriptstyle\sum}_{h}(\varphi){\;\vdash\;}\varphi^{\prime} in 𝐂𝐨𝐧𝒮(𝐈,𝐬)\mathrmbf{Con}_{\mathcal{S}}(I^{\prime},s^{\prime}), or equivalently by the axioms in Tbl. 3 of the paper [10], a binary sequent φh(φ)\varphi{\;\vdash\;}{h}^{\ast}(\varphi^{\prime}) in 𝐂𝐨𝐧𝒮(𝐈,𝐬)\mathrmbf{Con}_{\mathcal{S}}(I,s). Hence, a constraint requires that the interpretation of the hthh^{\mathrm{th}}-projection of φ\varphi be within the interpretation of φ\varphi^{\prime}, or equivalently, that the interpretation of φ\varphi be within the interpretation of the hthh^{\mathrm{th}}-substitution of φ\varphi^{\prime}. 151515In some sense, this formula/constraint approach to formalism turns the tuple calculus upside down, with atoms in the tuple calculus becoming constraints here.

Given any schema 𝒮\mathcal{S}, an 𝒮\mathcal{S}-constraint φφ{\varphi^{\prime}}\xrightarrow{h}{\varphi} has source formula φ{\varphi^{\prime}} and target formula φ{\varphi}. Constraints are closed under composition: φ′′hφφ=φ′′hhφ{\varphi^{\prime\prime}}\xrightarrow{h^{\prime}}{\varphi^{\prime}}\xrightarrow{h}{\varphi}={\varphi^{\prime\prime}}\xrightarrow{h^{\prime}{\,\cdot\,}h}{\varphi}. Let 𝐂𝐨𝐧𝐬(𝒮)\mathrmbf{Cons}(\mathcal{S}) 161616𝐂𝐨𝐧𝐬(𝒮)\mathrmbf{Cons}(\mathcal{S}), which stands for “𝒮\mathcal{S}-constraints”, was defined in the paper [10]. denote the mathematical context, whose set of objects are 𝒮\mathcal{S}-formulas and whose set of morphisms are 𝒮\mathcal{S}-constraints. This context is fibered over the projection passage 𝐂𝐨𝐧𝐬(𝒮)𝐋𝐢𝐬𝐭(𝐗):(φ𝐡φ)(𝐈,𝐬𝐡𝐈,𝐬)\mathrmbf{Cons}(\mathcal{S})\rightarrow\mathrmbf{List}(X):\bigl{(}\varphi^{\prime}{\,\xrightarrow{h\,}\,}\varphi\bigr{)}\mapsto\bigl{(}{\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle}\bigr{)}. Formula formation is idempotent: R^^=R^\widehat{{\widehat{R}}}=\widehat{R} and 𝐂𝐨𝐧𝐬(𝒮^)=𝐂𝐨𝐧𝐬(𝒮)\mathrmbf{Cons}(\widehat{\mathcal{S}})=\mathrmbf{Cons}(\mathcal{S}). 171717Formulas form a schema 𝒮^=R^,σ^,X\widehat{\mathcal{S}}={\langle{\widehat{R},\widehat{\sigma},X}\rangle} that extends 𝒮\mathcal{S} with 𝒮\mathcal{S}-formulas as entity types (relation names): by induction, the set of entity types is extended to a set of logical formulas R𝑖𝑛𝑐𝒮R^R\xhookrightarrow{\mathrmit{inc}_{\mathcal{S}}}\widehat{R}, and the entity type signature function is extended to a formula signature function R^σ^𝐋𝐢𝐬𝐭(𝐗)\widehat{R}\xrightarrow{\;\widehat{\sigma}\;}\mathrmbf{List}(X) with σ=𝑖𝑛𝑐𝒮σ^\sigma=\mathrmit{inc}_{\mathcal{S}}{\;\cdot\;}\widehat{\sigma}.

Sequents are special cases of constraints: a sequent φφ\varphi^{\prime}{\;\vdash\;}\varphi asserts a constraint φ1φ{\varphi}\xrightarrow{1}{\varphi^{\prime}} that uses an identity signature morphism. 181818A constraint in the fiber 𝐂𝐨𝐧𝒮(𝐈,𝐬)\mathrmbf{Con}_{\mathcal{S}}(I,s) uses an identity signature morphism φ1φ{\varphi}\xrightarrow{1}{\varphi^{\prime}}, and hence is a sequent φφ\varphi^{\prime}{\;\vdash\;}\varphi. Since an asserted formula φ\varphi can be identified with the sequent φ\top{\;\vdash\;}\varphi, it can also be identified with the constraint φ1{\varphi}\xrightarrow{1}{\top}. Thus, from an entailment viewpoint we can say that “formulas are sequents are constraints”. In the opposite direction, there are enfolding maps that map 𝒮\mathcal{S}-constraints to 𝒮\mathcal{S}-formulas: either (φφ)(h(φ)φ)\bigl{(}{\varphi^{\prime}}\xrightarrow{h}{\varphi}\bigr{)}\mapsto\bigl{(}{\scriptstyle\sum}_{h}(\varphi){\,\rightarrowtriangle\,}\varphi^{\prime}\bigr{)} with signature I,s{\langle{I^{\prime},s^{\prime}}\rangle}, or (φφ)(φh(φ))\bigl{(}{\varphi^{\prime}}\xrightarrow{h}{\varphi}\bigr{)}\mapsto\bigl{(}\varphi{\,\rightarrowtriangle\,}{h}^{\ast}(\varphi^{\prime})\bigr{)} with signature I,s{\langle{I,s}\rangle}.

3.2 Interpretation

The logical semantics of a structure \mathcal{M} resides in its core, which is defined by its formula interpretation function

𝑻:𝑹^𝐓𝐛𝐥(𝒜).\mathrmbfit{T}_{\mathcal{M}}:\widehat{R}\rightarrow\mathrmbf{Tbl}(\mathcal{A}). (1)

The formula interpretation function, which extends the traditional interpretation function T:R𝐓𝐛𝐥(𝒜)T_{\mathcal{M}}:R\rightarrow\mathrmbf{Tbl}(\mathcal{A}) of a structure \mathcal{M} (Def. 1 in § 4), is defined in Tbl. 5 by induction within fibers and flow between fibers. To respect the logical semantics, the formal flow operators (h{\scriptstyle\sum}_{h},h{\scriptstyle\prod}_{h},h{h}^{\ast}) for existential/universal quantification and substitution reflect the semantic flow operators (h{\scriptstyle\sum}_{h},h{\scriptstyle\prod}_{h},h{h}^{\ast}) via interpretation (Tbl. 6). 191919The morphic aspect of Tbl. 6 anticipates the definition of satisfaction in §.3.3: for sequents within the fibers 𝑻𝒜(𝑰,𝒔)\mathrmbfit{T}_{\mathcal{A}}(I,s) and for constraints using flow between fibers; hhh:𝐓𝐛𝐥𝒜(𝐈,𝐬)𝐓𝐛𝐥𝒜(𝐈,𝐬){\bigl{\langle}{{\scriptscriptstyle\sum}_{h}{\;\dashv\;}{h}^{\ast}{\;\dashv\;}{\scriptstyle\prod}_{{h}}\bigr{\rangle}}}:\mathrmbf{Tbl}_{\mathcal{A}}(I^{\prime},s^{\prime}){\;\leftrightarrows\;}\mathrmbf{Tbl}_{\mathcal{A}}(I,s).

fiber:

For each signature I,s𝐋𝐢𝐬𝐭(𝐗){\langle{I,s}\rangle}{\,\in\,}\mathrmbf{List}(X), the fiber function R^(I,s)𝑻𝑰,𝒔𝐓𝐛𝐥𝒜(𝐈,𝐬)\widehat{R}(I,s)\xrightarrow{\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I\!,s}\rangle}}}\mathrmbf{Tbl}_{\mathcal{A}}(I,s) is defined in the top part of Tbl. 5 by induction on formulas. At the base step (first line in the top of Tbl. 5), it defines the formula interpretation of an entity type rR^r\in\widehat{R} as the traditional interpretation of that type: the 𝒜\mathcal{A}-table T(r)=σ(r),𝑲(𝒓),τ𝒓𝐓𝐛𝐥(𝒜)T_{\mathcal{M}}(r)={\langle{\sigma(r),\mathrmbfit{K}(r),\tau_{r}}\rangle}\in\mathrmbf{Tbl}(\mathcal{A}) (Fig. 4 of §4). At the induction step (remaining lines in the top of Tbl. 5), it represents the logical operations by their associated boolean operations: meet of interpretations for conjunction, join of interpretations for disjunction, etc.; see the boolean operations defined in § 3.2 of the paper “Relational Operations in FOLE[13].

flow:

(bottom Tbl. 5), It represents the syntactic flow operators in Tbl. 4 by their associated semantic flow operators; see the adjoint flow for fixed type domain 𝒜\mathcal{A} defined in § 3.3.1 of the paper “Relational Operations in FOLE[13]. 202020The paper [13] used only two of the three operators in the fiber adjunction of tables (2) defined by composition/pullback: the left adjoint existential operation (called projection) and the right adjoint substitution or inverse image operation (called inflation). The function R^𝑻𝐓𝐛𝐥(𝒜)\widehat{R}\xrightarrow{\mathrmbfit{T}_{\mathcal{M}}}\mathrmbf{Tbl}(\mathcal{A}) is the parallel combination of its fiber functions {R^(I,s)𝑻𝑰,𝒔𝐓𝐛𝐥𝒜(𝐈,𝐬)𝐈,𝐬𝐋𝐢𝐬𝐭(𝐗)}\biggl{\{}\widehat{R}(I,s)\xrightarrow{\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I\!,s}\rangle}}}\mathrmbf{Tbl}_{\mathcal{A}}(I,s)\mid{\langle{I,s}\rangle}{\,\in\,}\mathrmbf{List}(X)\biggr{\}} defined above. The function 𝑻\mathrmbfit{T}_{\mathcal{M}} is defined in terms of these fiber functions and the flow operators.

fiber: signature I,s{\langle{I,s}\rangle} with extent (tuple set) 𝒕𝒖𝒑𝒜(𝑰,𝒔)=𝒊𝑰𝒜𝒔𝒊\mathrmbfit{tup}_{\mathcal{A}}(I,s){\,=\,}\prod_{i\in{I}}\,\mathcal{A}_{s_{\!i}}
operator definition 𝑻(φ)𝐓𝐛𝐥𝒜(𝐈,𝐬)=(𝐒𝐞𝐭𝒕𝒖𝒑𝒜(𝑰,𝒔))\mathrmbfit{T}_{\mathcal{M}}(\varphi)\in\mathrmbf{Tbl}_{\mathcal{A}}(I,s)=\bigl{(}\mathrmbf{Set}{\,\downarrow\,}\mathrmbfit{tup}_{\mathcal{A}}(I,s)\bigr{)}
entity type 𝑻(𝒓)=𝑻(𝒓)=σ(𝒓),𝑲(𝒓),τ𝒓\mathrmbfit{T}_{\mathcal{M}}(r)=T_{\mathcal{M}}(r)={\langle{\sigma(r),\mathrmbfit{K}(r),\tau_{r}}\rangle} rR(I,s)R^(I,s)r{\,\in\,}R(I,s)\subseteq\widehat{R}(I,s)
meet 𝑻(φψ)=𝑻(φ)𝑻(ψ)\mathrmbfit{T}_{\mathcal{M}}(\varphi{\,\wedge\,}\psi)=\mathrmbfit{T}_{\mathcal{M}}(\varphi){\,\wedge\,}\mathrmbfit{T}_{\mathcal{M}}(\psi) φ,ψR^(I,s)\varphi,\psi{\,\in\,}\widehat{R}(I,s)
join 𝑻(φψ)=𝑻(φ)𝑻(ψ)\mathrmbfit{T}_{\mathcal{M}}(\varphi{\,\vee\,}\psi)=\mathrmbfit{T}_{\mathcal{M}}(\varphi){\,\vee\,}\mathrmbfit{T}_{\mathcal{M}}(\psi)
top 𝑻(𝑰,𝒔)=𝒕𝒖𝒑𝒜(𝑰,𝒔),1\mathrmbfit{T}_{\mathcal{M}}({\scriptstyle\top_{{\langle{I,s}\rangle}}})={\langle{\mathrmbfit{tup}_{\mathcal{A}}(I,s),1}\rangle} terminal table
bottom 𝑻(𝑰,𝒔)=,0\mathrmbfit{T}_{\mathcal{M}}({\scriptstyle\bot_{{\langle{I,s}\rangle}}})={\langle{\emptyset,0}\rangle} initial table
negation 𝑻(¬φ)=𝑻(𝑰,𝒔φ)=𝑻(𝑰,𝒔)𝑻(φ)\mathrmbfit{T}_{\mathcal{M}}(\neg\varphi)=\mathrmbfit{T}_{\mathcal{M}}(\top_{{\langle{I,s}\rangle}}{\,\setminus\,}\varphi)=\mathrmbfit{T}_{\mathcal{M}}(\top_{{\langle{I,s}\rangle}}){-}\mathrmbfit{T}_{\mathcal{M}}(\varphi)
implication 𝑻(φψ)=𝑻(φ)𝑻(ψ)=(¬𝑻(φ))𝑻(ψ)\mathrmbfit{T}_{\mathcal{M}}(\varphi{\,\rightarrowtriangle\,}\psi)=\mathrmbfit{T}_{\mathcal{M}}(\varphi){\,\rightarrowtriangle\,}\mathrmbfit{T}_{\mathcal{M}}(\psi)=(\neg\mathrmbfit{T}_{\mathcal{M}}(\varphi)){\,\vee\,}\mathrmbfit{T}_{\mathcal{M}}(\psi)
difference 𝑻(φψ)=𝑻(φ)𝑻(ψ)=𝑻(φ)(¬𝑻(ψ))\mathrmbfit{T}_{\mathcal{M}}(\varphi{\,\setminus\,}\psi)=\mathrmbfit{T}_{\mathcal{M}}(\varphi){-}\mathrmbfit{T}_{\mathcal{M}}(\psi)=\mathrmbfit{T}_{\mathcal{M}}(\varphi){\,\wedge\,}(\neg\mathrmbfit{T}_{\mathcal{M}}(\psi))
flow: signature morphism I,sI,s{\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle}
with tuple map 𝒕𝒖𝒑𝒜(𝑰,𝒔)𝒕𝒖𝒑𝒜(𝒉)𝒕𝒖𝒑𝒜(𝑰,𝒔)\mathrmbfit{tup}_{\mathcal{A}}(I^{\prime},s^{\prime})\xleftarrow{\mathrmbfit{tup}_{\mathcal{A}}(h)}\mathrmbfit{tup}_{\mathcal{A}}(I,s)
operator definition
existential 𝑻(𝒉(φ))=𝒉(𝑻(φ))\mathrmbfit{T}_{\mathcal{M}}({\scriptstyle\sum}_{h}(\varphi))={\scriptstyle\sum}_{h}(\mathrmbfit{T}_{\mathcal{M}}(\varphi)) φR^(I,s)\varphi{\,\in\,}\widehat{R}(I,s)
universal 𝑻(𝒉(φ))=𝒉(𝑻(φ))\mathrmbfit{T}_{\mathcal{M}}({\scriptstyle\prod}_{h}(\varphi))={\scriptstyle\prod}_{h}(\mathrmbfit{T}_{\mathcal{M}}(\varphi))
substitution 𝑻(𝒉(φ))=𝒉(𝑰(φ))\mathrmbfit{T}_{\mathcal{M}}({h}^{\ast}(\varphi^{\prime}))={h}^{\ast}(\mathrmbfit{I}_{\mathcal{M}}(\varphi^{\prime})) φR^(I,s)\varphi^{\prime}{\,\in\,}\widehat{R}(I^{\prime},s^{\prime})
Table 5: Formula Interpretation
               
R^(I,s),{\bigl{\langle}{\widehat{R}(I^{\prime},s^{\prime}),\vdash^{\prime}}\bigr{\rangle}}R^(I,s),{\bigl{\langle}{\widehat{R}(I,s),\vdash}\bigr{\rangle}}𝐓𝐛𝐥𝒜(𝐈,𝐬)\mathrmbf{Tbl}_{\mathcal{A}}(I^{\prime},s^{\prime})𝐓𝐛𝐥𝒜(𝐈,𝐬)\mathrmbf{Tbl}_{\mathcal{A}}(I,s)h{\scriptstyle\sum}_{{h}}h{h}^{\ast}h{\scriptstyle\prod}_{{h}}h{\scriptstyle\sum}_{{h}}h{h}^{\ast}h{\scriptstyle\prod}_{{h}}𝑻𝑰,𝒔\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I^{\prime}\!,s^{\prime}}\rangle}}𝑻𝑰,𝒔\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I\!,s}\rangle}}
I,sI,s𝒕𝒖𝒑𝒜(𝑰,𝒔)𝒕𝒖𝒑(𝒉)𝒕𝒖𝒑𝒜(𝑰,𝒔)\begin{array}[b]{l}{\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle}\\ \mathrmbfit{tup}_{\mathcal{A}}(I^{\prime},s^{\prime})\xleftarrow{\mathrmbfit{tup}(h)}\mathrmbfit{tup}_{\mathcal{A}}(I,s)\end{array}
hhhh𝑻𝑰,𝒔=𝑻𝑰,𝒔𝒉h𝑻𝑰,𝒔=𝑻𝑰,𝒔𝒉h𝑻𝑰,𝒔=𝑻𝑰,𝒔𝒉\begin{array}[b]{|@{\hspace{5pt}}l@{\hspace{2pt}}|}\hline\cr\hskip 5.0pt\lx@intercol{\scriptstyle\sum}_{{h}}\dashv{h}^{\ast}\dashv{\scriptstyle\prod}_{{h}}\hfil\hskip 2.0\\ \hline\cr\hskip 5.0pt\lx@intercol{\scriptstyle\sum}_{{h}}\circ\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I^{\prime}\!,s^{\prime}}\rangle}}=\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I\!,s}\rangle}}\circ{\scriptstyle\sum}_{{h}}\hfil\hskip 2.0\\ \hskip 5.0pt\lx@intercol{h}^{\ast}\circ\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I\!,s}\rangle}}=\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I^{\prime}\!,s^{\prime}}\rangle}}\circ{h}^{\ast}\hfil\hskip 2.0\\ \hskip 5.0pt\lx@intercol{\scriptstyle\prod}_{{h}}\circ\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I^{\prime}\!,s^{\prime}}\rangle}}=\mathrmbfit{T}^{\mathcal{M}}_{{\langle{I\!,s}\rangle}}\circ{\scriptstyle\prod}_{{h}}\hfil\hskip 2.0\\ \hline\cr\end{array}
Table 6: Formal/Semantics Reflection

3.3 Satisfaction.

Satisfaction is a fundamental classification between formalism and semantics. The atom of formalism used in satisfaction is the FOLE constraint, whereas the atom of semantics used in satisfaction is the FOLE structure. Satisfaction is defined in terms of the table formula interpretation function 𝑻:𝑹^𝐓𝐛𝐥(𝒜)\mathrmbfit{T}_{\mathcal{M}}:\widehat{R}\rightarrow\mathrmbf{Tbl}(\mathcal{A}) of § 3.2 and the associated the relation formula interpretation function 𝑹:𝑹^𝐑𝐞𝐥(𝒜)\mathrmbfit{R}_{\mathcal{M}}:\widehat{R}\rightarrow\mathrmbf{Rel}(\mathcal{A}). 212121Denoted by 𝑰:𝑹^𝐑𝐞𝐥(𝒜)\mathrmbfit{I}_{\mathcal{M}}:\widehat{R}\rightarrow\mathrmbf{Rel}(\mathcal{A}) in § 2,2,1 of the paper “The ERA of FOLE: Superstructure” [10] Assume that we are given a structure schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} with a set of predicate symbols RR and a signature (header) map R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\sigma}\mathrmbf{List}(X).

Sequent Satisfaction.

A (lax) 𝒮\mathcal{S}-structure =,σ,τ,𝒜𝐒𝐭𝐫𝐮𝐜(𝒮)\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle}\in\mathrmbf{Struc}(\mathcal{S}) satisfies a formal 𝒮\mathcal{S}-sequent φφ\varphi{\;\vdash\;}\varphi^{\prime}, for a pair of formulas (φ,φ)R^×R^(\varphi,\varphi^{\prime}){\,\in\,}\widehat{R}{\,\times}\widehat{R} with the same signature σ^(φ)=I,s=σ^(φ)\widehat{\sigma}(\varphi)={\langle{I,s}\rangle}=\widehat{\sigma}(\varphi^{\prime}), when the interpretation widening of views asserted by the sequent actually holds in \mathcal{M}:

𝑹(φ)𝑹(φ)in𝐑𝐞𝐥𝒜(𝐈,𝐬)reflectively𝑻(φ)𝒌𝑻(φ)in𝐓𝐛𝐥𝒜(𝐈,𝐬)\underset{\text{in}\;\mathrmbf{Rel}_{\mathcal{A}}(I,s)}{\mathrmbfit{R}_{\mathcal{M}}(\varphi){\;\subseteq\;}\mathrmbfit{R}_{\mathcal{M}}(\varphi^{\prime})}\;\;\;\text{\text@underline{reflectively}}\;\;\;\underset{\text{in}\;\mathrmbf{Tbl}_{\mathcal{A}}(I,s)}{\mathrmbfit{T}_{\mathcal{M}}(\varphi){\;\xrightarrow{\;k\;}\;}\mathrmbfit{T}_{\mathcal{M}}(\varphi^{\prime})}222222See the formal/semantics reflection defined in § A.1 of the paper “The FOLE Table” [11] and in § 3.1 of the paper “Relational Operations in FOLE[13]..

Satisfaction is symbolized either by 𝒮(φφ)\mathcal{M}{\;\models_{\mathcal{S}}\;}(\varphi{\;\vdash\;}\varphi^{\prime}) or by φφ\varphi{\;\vdash_{\mathcal{M}}\;}\varphi^{\prime}. For each signature I,s𝐋𝐢𝐬𝐭(𝐗){\langle{I,s}\rangle}\in\mathrmbf{List}(X), satisfaction defines the fiber order R^(I,s),{\langle{\widehat{R}(I,s),\leq_{\mathcal{M}}}\rangle}, where φφ\varphi{\;\leq_{\mathcal{M}}\;}\varphi^{\prime} when φφ\varphi{\;\vdash_{\mathcal{M}}\;}\varphi^{\prime} for any two formulas φ,φR^(I,s)\varphi,\varphi^{\prime}\in{\widehat{R}}(I,s).

𝑲(φ)\mathrmbfit{K}(\varphi^{\prime})𝑲(φ)\mathrmbfit{K}(\varphi)tφ(𝑲(φ)){\wp}t^{\prime}_{\varphi^{\prime}}(\mathrmbfit{K}(\varphi^{\prime}))tφ(𝑲(φ)){\wp}t_{\varphi}(\mathrmbfit{K}(\varphi))𝒕𝒖𝒑𝒜(σ(φ))\mathrmbfit{tup}_{\mathcal{A}}(\sigma(\varphi^{\prime}))𝒕𝒖𝒑𝒜(σ(φ))\mathrmbfit{tup}_{\mathcal{A}}(\sigma(\varphi))kk𝑹(𝒉)\mathrmbfit{R}_{\mathcal{M}}(h)rr𝒕𝒖𝒑𝒜(𝒉)\mathrmbfit{tup}_{\mathcal{A}}(h)tφt_{\varphi^{\prime}}tφt_{\varphi}iφi_{\varphi^{\prime}}iφi_{\varphi}eφe_{\varphi^{\prime}}eφe_{\varphi}𝑹(φ){\mathrmbfit{R}_{\mathcal{M}}(\varphi^{\prime})\left\{\rule{0.0pt}{28.0pt}\right.}𝑹(φ)\left.\rule{0.0pt}{28.0pt}\right\}\mathrmbfit{R}_{\mathcal{M}}(\varphi) 𝑻(φ)\underset{\textstyle{\mathrmbfit{T}_{\mathcal{M}}(\varphi^{\prime})}}{\underbrace{\rule{40.0pt}{0.0pt}}} 𝑻(φ)\underset{\textstyle{\mathrmbfit{T}_{\mathcal{M}}(\varphi)}}{\underbrace{\rule{40.0pt}{0.0pt}}}𝑻(𝒉)\mathrmbfit{T}_{\mathcal{M}}(h)h,k{\langle{h,k}\rangle}
Figure 3: Table-Relation Reflection

Constraint Satisfaction.

A (lax) 𝒮\mathcal{S}-structure 𝐒𝐭𝐫𝐮𝐜(𝒮)\mathcal{M}\in\mathrmbf{Struc}(\mathcal{S}) satisfies a formal 𝒮\mathcal{S}-constraint φφ\varphi^{\prime}{\;\xrightarrow{h}\;}\varphi, for a pair of formulas (φ,φ)R^×R^(\varphi^{\prime},\varphi){\,\in\,}\widehat{R}{\,\times}\widehat{R} connected by a signature morphism σ^(φ)=I,sI,s=σ^(φ)\widehat{\sigma}(\varphi^{\prime})={\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{h}{\langle{I,s}\rangle}=\widehat{\sigma}(\varphi), when the following equivalence holds

(3)

reflectively22{}^{\ref{reflection}} (visualized in Fig. 3)

(4)

Satisfaction is symbolized by 𝒮(φφ)\mathcal{M}{\;\models_{\mathcal{S}}\;}(\varphi^{\prime}{\;\xrightarrow{h}\;}\varphi).

Lemma 1

A (lax) 𝒮\mathcal{S}-structure \mathcal{M} determines a mathematical context 𝒮𝐂𝐨𝐧𝐬(𝒮)\mathcal{M}^{\mathcal{S}}{\;\sqsubseteq\;}\mathrmbf{Cons}(\mathcal{S}), called the conceptual intent of \mathcal{M}, whose objects are 𝒮\mathcal{S}-formulas and whose morphisms are 𝒮\mathcal{S}-constraints satisfied by \mathcal{M}. The I,sth{\langle{I,s}\rangle}^{\text{th}} fiber is the order 𝒮(I,s)=R^(I,s),{\mathcal{M}^{\mathcal{S}}(I,s)}={\langle{\widehat{R}(I,s),\geq_{\mathcal{M}}}\rangle}. 232323The satisfaction relation corresponds to the “truth classification” in Barwise and Seligman [1], where the conceptual intent 𝒮\mathcal{M}^{\mathcal{S}} corresponds to the “theory of \mathcal{M}”.

Proof

𝒮\mathcal{M}^{\mathcal{S}} is closed under constraint identities and constraint composition.
1: 𝒮(φ1φ)\mathcal{M}{\;\models_{\mathcal{S}}\;}(\varphi{\;\xrightarrow{1}\;}\varphi), and 2: if 𝒮(φ′′hφ)\mathcal{M}{\;\models_{\mathcal{S}}\;}(\varphi^{\prime\prime}{\;\xrightarrow{h^{\prime}}\;}\varphi^{\prime}) and 𝒮(φφ)\mathcal{M}{\;\models_{\mathcal{S}}\;}(\varphi^{\prime}{\;\xrightarrow{h}\;}\varphi), then 𝒮(φ′′hhφ)\mathcal{M}{\;\models_{\mathcal{S}}\;}(\varphi^{\prime\prime}{\;\xrightarrow{h^{\prime}{\,\cdot\,}h}\;}\varphi), since φ′′h(φ)\varphi^{\prime\prime}{\;\geq_{\mathcal{M}}\;}{\scriptstyle\sum}_{h^{\prime}}(\varphi^{\prime}) and φh(φ)\varphi^{\prime}{\;\geq_{\mathcal{M}}\;}{\scriptstyle\sum}_{h}(\varphi) implies φ′′h(h(φ))=hh(φ)\varphi^{\prime\prime}{\;\geq_{\mathcal{M}}\;}{\scriptstyle\sum}_{h^{\prime}}({\scriptstyle\sum}_{h}(\varphi))={\scriptstyle\sum}_{h^{\prime}{\,\cdot\,}h}(\varphi).  

Lemma 2

For any structure \mathcal{M}, there is a relation interpretation passage and a table interpretation graph morphism, 242424Relational interpretation is closed under composition; tabular interpretation is closed under composition only up to key equivalence.

(5)

which extend the formula interpretation function 𝐓:𝐑^𝐓𝐛𝐥(𝒜)\mathrmbfit{T}_{\mathcal{M}}:\widehat{R}\rightarrow\mathrmbf{Tbl}(\mathcal{A}) of § 3.2, and hence the structure interpretation function T:R𝐓𝐛𝐥(𝒜)T_{\mathcal{M}}:R\rightarrow\mathrmbf{Tbl}(\mathcal{A}) of § 4.

Proof

objects:

An 𝒮\mathcal{S}-formula φ𝒮(I,s)=R^(I,s),\varphi\in\mathcal{M}^{\mathcal{S}}(I,s)={\langle{\widehat{R}(I,s),\leq_{\mathcal{M}}}\rangle} with 𝒮\mathcal{S}-signature I,s{\langle{I,s}\rangle} is mapped to an 𝒜\mathcal{A}-table 𝑻(φ)=𝑰,𝒔,𝑲,𝒕\mathrmbfit{T}_{\mathcal{M}}(\varphi)={\langle{I,s,K,t}\rangle} defined by induction in the top part of Tbl. 5 in in § 3.2. Reflectively, the formula φ\varphi is mapped to an 𝒜\mathcal{A}-relation 𝑹(φ)=𝑰,𝒔,𝒕(𝑲)\mathrmbfit{R}_{\mathcal{M}}(\varphi)={\langle{I,s,{\wp}t(K)}\rangle}.

morphisms:

An 𝒮\mathcal{S}-constraint φφ\varphi^{\prime}{\;\xrightarrow{h}\;}\varphi satisfied by the 𝒮\mathcal{S}-structure 𝐒𝐭𝐫𝐮𝐜(𝒮)\mathcal{M}\in\mathrmbf{Struc}(\mathcal{S}), 𝒮(φφ)\mathcal{M}{\;\models_{\mathcal{S}}\;}(\varphi^{\prime}{\;\xrightarrow{h}\;}\varphi), is mapped by constraint satisfaction to the 𝐓𝐛𝐥(𝒜)\mathrmbf{Tbl}(\mathcal{A})-morphism 𝑻(φ)=𝒯=𝑰,𝒔,𝑲(φ),𝒕φ𝒉,𝒌𝑰,𝒔,𝑲(φ),𝒕φ=𝒯=𝑻(φ)\mathrmbfit{T}_{\mathcal{M}}(\varphi^{\prime})=\mathcal{T}^{\prime}={\langle{I^{\prime},s^{\prime},\mathrmbfit{K}(\varphi^{\prime}),t_{\varphi^{\prime}}}\rangle}\xleftarrow{\langle{h,k}\rangle}{\langle{I,s,\mathrmbfit{K}(\varphi),t_{\varphi}}\rangle}=\mathcal{T}=\mathrmbfit{T}_{\mathcal{M}}(\varphi) with indexing XX-sorted signature morphism I,sI,s{\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow{\;h\;}{\langle{I,s}\rangle} and a key function 𝑲(φ)𝒌𝑲(φ)\mathrmbfit{K}(\varphi^{\prime})\xleftarrow{\,k\,}\mathrmbfit{K}(\varphi) 252525Defined by choice. However, the choice for a composite signature morphism is not identical to the composition of the component choices; only equivalent. satisfying either of the adjoint fiber morphisms in Disp.4 leading to the naturality condition ktφ=tφ𝒕𝒖𝒑𝒜(𝒉)k{\;\cdot\;}t_{\varphi^{\prime}}=t_{\varphi}{\;\cdot\;}\mathrmbfit{tup}_{\mathcal{A}}(h) and visualized in Fig. 3. Reflectively, the constraint φφ\varphi^{\prime}{\;\xrightarrow{h}\;}\varphi is mapped to an 𝒜\mathcal{A}-relation morphism 𝑹(φ)==𝑰,𝒔,𝒕φ(𝑲(φ))𝒉,𝒓𝑰,𝒔,𝒕φ(𝑲(φ))==𝑹(φ)\mathrmbfit{R}_{\mathcal{M}}(\varphi^{\prime})=\mathcal{R}^{\prime}={\langle{I^{\prime},s^{\prime},{\wp}t^{\prime}_{\varphi^{\prime}}(\mathrmbfit{K}(\varphi^{\prime}))}\rangle}\xleftarrow{\langle{h,r}\rangle}{\langle{I,s,{\wp}t_{\varphi}(\mathrmbfit{K}(\varphi))}\rangle}=\mathcal{R}=\mathrmbfit{R}_{\mathcal{M}}(\varphi) satisfying either of the adjoint fiber orderings in Disp.3 leading to the naturality condition riφ=iφ𝒕𝒖𝒑𝒜(𝒉)r{\;\cdot\;}i_{\varphi^{\prime}}=i_{\varphi}{\;\cdot\;}\mathrmbfit{tup}_{\mathcal{A}}(h) and visualized in Fig. 3.  

4 FOLE Structures.

We define two forms of structures and structure morphisms: a classification (strict) form and an interpretation (lax) form.

4.1 Structures.

Assume that we are given a schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} with a set of predicate symbols RR and a signature (header) map R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\sigma}\mathrmbf{List}(X).

Definition 1

An 𝒮\mathcal{S}-structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} (LHS Fig. 4) consists of an entity classification =R,K,\mathcal{E}={\langle{R,K,\models_{\mathcal{E}}}\rangle} of predicate symbols RR and keys KK, an attribute classification (typed domain) 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle} of sorts XX and data values YY, and a list designation σ,τ:𝐋𝐢𝐬𝐭(𝒜){\langle{\sigma,\tau}\rangle}:\mathcal{E}\rightrightarrows\mathrmbf{List}(\mathcal{A}) with signature map R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\sigma}\mathrmbf{List}(X), tuple map K𝜏𝐋𝐢𝐬𝐭(𝐘)K\xrightarrow{\tau}\mathrmbf{List}(Y) and defining condition krk{\;\models_{\mathcal{E}}\;}r implies τ(k)𝐋𝐢𝐬𝐭(𝒜)σ(r)\tau(k){\;\models_{\mathrmbf{List}(\mathcal{A})}\;}\sigma(r). 262626In more detail, if entity kKk{\,\in\,}K is of type rRr{\,\in\,}R, then the description tuple τ(k)=J,t\tau(k)={\langle{J,t}\rangle} is the same “size” (J=IJ=I) as the signature σ(r)=I,s\sigma(r)={\langle{I,s}\rangle} and for each index nIn\in I the data value tnt_{n} is of sort sns_{n}.

Projections define the type hypergraph (schema) 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle}, and an instance hypergraph (universe) 𝒰=K,τ,Y\mathcal{U}={\langle{K,\tau,Y}\rangle}.

RRKK𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{List}(X)𝐋𝐢𝐬𝐭(𝐘)\mathrmbf{List}(Y)\models_{\mathcal{E}}𝐋𝐢𝐬𝐭(𝒜)\models_{\mathrmbf{List}(\mathcal{A})}σ\sigmaτ\tau
R\mathrmit{R}𝐓𝐛𝐥(𝒜)\mathrmbf{Tbl}(\mathcal{A})TT_{\mathcal{M}}
RR𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{List}(X)K{\wp}K𝐋𝐢𝐬𝐭(𝐘){\wp}\mathrmbf{List}(Y)𝐒𝐞𝐭\mathrmbf{Set}𝒆𝒙𝒕{{\mathrmbfit{ext}_{\mathcal{E}}}}𝒆𝒙𝒕𝐋𝐢𝐬𝐭(𝒜){{\mathrmbfit{ext}_{\mathrmbf{List}(\mathcal{A})}}}𝑲\mathrmbfit{K}𝒕𝒖𝒑𝒜\mathrmbfit{tup}_{\mathcal{A}}σ\sigmaτ{\wp}\tau\subseteqτ\xRightarrow{\tau_{{\scriptscriptstyle{\llcorner}}}\;}𝒊𝒏𝒄\mathrmbfit{inc}𝒊𝒏𝒄\mathrmbfit{inc}
classification form interpretation form (passage) interpretation form (bridge)
Figure 4: FOLE Structure


By dropping the global key set KK, the entity classification =R,K,\mathcal{E}={\langle{R,K,\models_{\mathcal{E}}}\rangle} can be regarded (RHS Fig. 4) as a set-valued function 𝑲=𝑹𝑲𝒆𝒙𝒕𝑲𝐒𝐞𝐭\mathrmbfit{K}=R\xrightarrow[\mathrmbfit{K}]{\mathrmbfit{ext}_{\mathcal{E}}}{\wp}K\subseteq\mathrmbf{Set}; that is, as an indexed collection =R,𝑲\mathcal{E}={\langle{R,\mathrmbfit{K}}\rangle} of subsets of keys {𝒆𝒙𝒕(𝒓)=𝑲(𝒓)𝐒𝐞𝐭𝐫𝐑}\bigl{\{}\mathrmbfit{ext}_{\mathcal{E}}(r)=\mathrmbfit{K}(r)\subseteq\mathrmbf{Set}\mid r\in R\bigr{\}}. The defining condition of the list designation demonstrates that a structure can be regarded (MID Fig. 4) as a table-valued function RT𝐓𝐛𝐥(𝒜)R\xrightarrow{T_{\mathcal{M}}}\mathrmbf{Tbl}(\mathcal{A}); that is, as an RR-indexed collection of 𝒜\mathcal{A}-tables T(r)=σ(r),𝑲(𝒓),τ𝒓T_{\mathcal{M}}(r)={\langle{\sigma(r),\mathrmbfit{K}(r),\tau_{r}}\rangle}, whose tuple maps {𝑲(𝒓)τ𝒓𝒕𝒖𝒑𝒜(σ(𝒓))𝒓𝑹}\bigl{\{}\mathrmbfit{K}(r)\xrightarrow{\tau_{r}}\mathrmbfit{tup}_{\mathcal{A}}(\sigma(r))\mid r\in R\bigr{\}} are restrictions of the tuple map K𝜏𝐋𝐢𝐬𝐭(𝐘)K\xrightarrow{\tau}\mathrmbf{List}(Y). Here, an entity type (predicate symbol) rRr\in R is interpreted as the 𝒜\mathcal{A}-table T(r)=σ(r),𝑲(𝒓),τ𝒓𝐓𝐛𝐥(𝒜)T_{\mathcal{M}}(r)={\langle{\sigma(r),\mathrmbfit{K}(r),\tau_{r}}\rangle}\in\mathrmbf{Tbl}(\mathcal{A}), consisting of the XX-signature σ(r)𝐋𝐢𝐬𝐭(𝐗)\sigma(r)\in\mathrmbf{List}(X), the key set 𝑲(𝒓)=𝒆𝒙𝒕(𝒓)𝑲\mathrmbfit{K}(r)=\mathrmbfit{ext}_{\mathcal{E}}(r)\subseteq K, and the tuple function 𝑲(𝒓)τ𝒓𝒕𝒖𝒑𝒜(σ(𝒓))\mathrmbfit{K}(r)\xrightarrow{\tau_{r}}\mathrmbfit{tup}_{\mathcal{A}}(\sigma(r)), which is a restriction of the tuple function K𝜏𝐋𝐢𝐬𝐭(𝐘)K\xrightarrow{\tau}\mathrmbf{List}(Y). The list classification 𝐋𝐢𝐬𝐭(𝒜)=𝐋𝐢𝐬𝐭(𝐗),𝐋𝐢𝐬𝐭(𝐘),𝐋𝐢𝐬𝐭(𝒜)\mathrmbf{List}(\mathcal{A})={\langle{\mathrmbf{List}(X),\mathrmbf{List}(Y),\models_{\mathrmbf{List}(\mathcal{A})}}\rangle} can alternatively be regarded (RHS Fig. 4) (Fig. 4 of the paper [9]) as a set-valued function 𝐋𝐢𝐬𝐭(𝐗)𝒕𝒖𝒑𝒜𝒆𝒙𝒕𝐋𝐢𝐬𝐭(𝒜)𝐋𝐢𝐬𝐭(𝐘)\mathrmbf{List}(X)\xrightarrow[\mathrmbfit{tup}_{\mathcal{A}}]{\mathrmbfit{ext}_{\mathrmbf{List}(\mathcal{A})}}{\wp}\mathrmbf{List}(Y); that is, as an indexed collection 𝐋𝐢𝐬𝐭(𝒜)=𝐋𝐢𝐬𝐭(𝐗),𝒕𝒖𝒑𝒜,𝐋𝐢𝐬𝐭(𝐘)\mathrmbf{List}(\mathcal{A})={\langle{\mathrmbf{List}(X),\mathrmbfit{tup}_{\mathcal{A}},\mathrmbf{List}(Y)}\rangle} of subsets of tuples {𝒆𝒙𝒕𝐋𝐢𝐬𝐭(𝒜)(𝑰,𝒔)=𝒕𝒖𝒑𝒜(𝑰,𝒔)𝐋𝐢𝐬𝐭(𝐘)(𝐈,𝐬)𝐋𝐢𝐬𝐭(𝐗)}\bigl{\{}\mathrmbfit{ext}_{\mathrmbf{List}(\mathcal{A})}(I,s)=\mathrmbfit{tup}_{\mathcal{A}}(I,s)\subseteq\mathrmbf{List}(Y)\mid(I,s)\in\mathrmbf{List}(X)\bigr{\}}. The bridge Kττ𝒊𝒏𝒄K\xRightarrow{\tau_{{\scriptscriptstyle{\llcorner}}}\;}{\wp}\tau{\;\circ\;}\mathrmbfit{inc} provides “restrictions” of the bridge K𝜏𝐋𝐢𝐬𝐭(𝐘)K\xRightarrow{\;\tau\;}\mathrmbf{List}(Y) to subsets of KK.

4.2 Structure Morphisms.

Assume that we are given a schema morphism (Tbl. 13 in § 0.A.1)

𝒮2=R2,σ2,X2r,φ`,fR1,σ1,X1=𝒮1\mathcal{S}_{2}={\langle{R_{2},\sigma_{2},X_{2}}\rangle}\xRightarrow{\;{\langle{r,\grave{\varphi},f}\rangle}\;}{\langle{R_{1},\sigma_{1},X_{1}}\rangle}=\mathcal{S}_{1} (6)

consisting of a function on relation symbols R2𝑟R1R_{2}\xrightarrow{\,\mathrmit{r}\;}R_{1}, a sort function X2𝑓𝒳1X_{2}\xrightarrow{f}\mathcal{X}_{1}, and a schema bridge σ2fφ`rσ1\sigma_{2}{\;\cdot\;}{\scriptstyle\sum}_{f}{\;\xRightarrow{\,\grave{\varphi}\;\,}\;}r{\;\cdot\;}\sigma_{1}, whose r2thr_{2}^{\text{th}}-component is the morphism f(σ2(r2))φ`r2σ1(r(r2)){{\scriptstyle\sum}_{f}(\sigma_{2}(r_{2}))}\xrightarrow[h]{\grave{\varphi}_{r_{2}}}{\sigma_{1}(r(r_{2}))} in 𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{1}).

Definition 2

A structure morphism 2r,k,φ`,β,f,g1\mathcal{M}_{2}\xrightleftharpoons{{\langle{r,k,\grave{\varphi},\beta,f,g}\rangle}}\mathcal{M}_{1} from source structure 2=2,σ2,τ2,𝒜2\mathcal{M}_{2}={\langle{\mathcal{E}_{2},{\langle{\sigma_{2},\tau_{2}}\rangle},\mathcal{A}_{2}}\rangle} to target structure 1=1,σ1,τ1,𝒜1\mathcal{M}_{1}={\langle{\mathcal{E}_{1},{\langle{\sigma_{1},\tau_{1}}\rangle},\mathcal{A}_{1}}\rangle} along (top Fig. 5) a schema morphism (Disp.6) is a list designation morphism consisting of (back Fig. 5) an entity infomorphism 2r,k1\mathcal{E}_{2}\xrightleftharpoons{{\langle{r,k}\rangle}}\mathcal{E}_{1}, and (front Fig. 5) an attribute infomorphism 𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1}. These are bridged by the above schema morphism and (bottom Fig. 5) a universe morphism 𝒰2k,β,g𝒰1\mathcal{U}_{2}\xLeftarrow{\;{\langle{k,\beta,g}\rangle}\;}\mathcal{U}_{1} with tuple bridge kτ2𝛽τ1g{k{\;\cdot\;}\tau_{2}{\;\xRightarrow{\,\beta\,\;}\;}\tau_{1}{\;\cdot\;}{\scriptstyle\sum}_{g}}, whose k1thk_{1}^{\text{th}}-component is the morphism τ2(k(k1))βk1g(τ1(k1)){\tau_{2}(k(k_{1}))}\xrightarrow[h]{\beta_{k_{1}}}{{\scriptstyle\sum}_{g}(\tau_{1}(k_{1}))} in 𝐋𝐢𝐬𝐭(𝐘𝟐)\mathrmbf{List}(Y_{2}), with equal arity

φ`r2𝒂𝒓𝒊𝒕𝒚𝑿1=β𝒌1𝒂𝒓𝒊𝒕𝒚𝒀2(I2φ`r2I1)=(J2βk1J1){\footnotesize{{\underset{{(I_{2}\xrightarrow[h]{\grave{\varphi}_{r_{2}}}I_{1})\;=\;(J_{2}\xrightarrow[h]{\beta_{k_{1}}}J_{1})}}{\underbrace{\grave{\varphi}_{r_{2}}{\;\circ\;}\mathrmbfit{arity}_{X_{1}}=\beta_{k_{1}}{\;\circ\;}\mathrmbfit{arity}_{Y_{2}}}}}}}whenk(k1)2r2 iff k11r(r2)k1r,kr2{\footnotesize{{\underset{{k_{1}{\;\models_{{\langle{r,k}\rangle}}\;}r_{2}}}{\underbrace{k(k_{1}){\;\models_{\mathcal{E}_{2}}\;}r_{2}\text{ \text@underline{iff} }k_{1}{\;\models_{\mathcal{E}_{1}}\;}r(r_{2})}}}}}.

R2R_{2}R1R_{1}K2K_{2}K1K_{1}rrkk2\scriptscriptstyle\models_{\mathcal{E}_{2}}1\scriptscriptstyle\models_{\mathcal{E}_{1}}𝐋𝐢𝐬𝐭(𝐗𝟐)\mathrmbf{List}(X_{2})𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{1})𝐋𝐢𝐬𝐭(𝐘𝟐)\mathrmbf{List}(Y_{2})𝐋𝐢𝐬𝐭(𝐘𝟏)\mathrmbf{List}(Y_{1})f{\scriptstyle\sum}_{f}g{\scriptstyle\sum}_{g}φ`\xRightarrow{\;\;\grave{\varphi}\;\;}𝐋𝐢𝐬𝐭(𝒜𝟐)\models_{\mathrmbf{List}(\mathcal{A}_{2})}𝐋𝐢𝐬𝐭(𝒜𝟏)\models_{\mathrmbf{List}(\mathcal{A}_{1})}σ2\sigma_{2}σ1\sigma_{1}τ2\tau_{2}τ1\tau_{1}𝛽\xRightarrow{\;\;\beta\;\;} 𝒔𝒄𝒉(2)𝒓,φ`,𝒇𝒔𝒄𝒉(1)lax schema morphism\overset{\textstyle{\stackrel{{\scriptstyle\text{\emph{lax schema morphism}}}}{{\mathrmbfit{sch}(\mathcal{M}_{2})\xRightarrow{\;{\langle{r,\grave{\varphi},f}\rangle}\;}\mathrmbfit{sch}(\mathcal{M}_{1})}}}}{\overbrace{\rule{90.0pt}{0.0pt}}}2r,k1entity infomorphism{\underset{\scriptstyle{\text{\emph{entity infomorphism}}}}{\mathcal{E}_{2}\xrightleftharpoons{{\langle{r,k}\rangle}}\mathcal{E}_{1}}\left\{\rule{0.0pt}{30.0pt}\right.𝐋𝐢𝐬𝐭(𝒜𝟐𝐟,𝐠𝒜𝟏)typed domain morphism{\underset{\scriptstyle{\text{\emph{typed domain morphism}}}}{\mathrmbf{List}\bigl{(}\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1}\bigr{)}}\left\{\rule{0.0pt}{30.0pt}\right. lax universe morphism𝒖𝒏𝒊𝒗(2)𝒌,β,𝒈𝒖𝒏𝒊𝒗(1)\underset{\textstyle{\stackrel{{\scriptstyle\textstyle{\mathrmbfit{univ}(\mathcal{M}_{2})\xLeftarrow{\;{\langle{k,\beta,g}\rangle}\;}\mathrmbfit{univ}(\mathcal{M}_{1})}}}{{\scriptstyle{\text{\emph{lax universe morphism}}}}}}}{\underbrace{\rule{90.0pt}{0.0pt}}}
2\mathcal{E}_{2}𝐋𝐢𝐬𝐭(𝒜𝟐)\mathrmbf{List}(\mathcal{A}_{2})1\mathcal{E}_{1}𝐋𝐢𝐬𝐭(𝒜𝟏)\mathrmbf{List}(\mathcal{A}_{1})σ2,τ2{\langle{\sigma_{2},\tau_{2}}\rangle}σ1,τ1{\langle{\sigma_{1},\tau_{1}}\rangle}r,k{\langle{r,k}\rangle}𝐋𝐢𝐬𝐭(𝐟,𝐠){\mathrmbf{List}({\langle{f,g}\rangle})}f,g{\langle{{\scriptscriptstyle\sum}_{f},{\scriptscriptstyle\sum}_{g}}\rangle}φ`,β\xRightarrow{{\langle{\grave{\varphi},\beta}\rangle}}
Figure 5: Structure Morphism

Let 𝐒𝐭𝐫𝐮𝐜\mathrmbf{Struc} denote the mathematical context of structures and their morphisms.

4.3 Transition.

In this section (§ 4), we define two forms of structures and structure morphisms: a classification (strict) form and an interpretation (lax) form. Fig. 5 illustrates the classification (strict) form; whereas Fig. 7 illustrates the interpretation (lax) form. Here we define a transition from the strict form to the lax form.

Note 1

By forgetting the full key sets and the full key function, the entity infomorphism becomes a (lax) entity infomorphism 𝒆𝒙𝒕2𝑲2𝜅𝒓𝒆𝒙𝒕1𝑲1\overset{\mathrmbfit{K}_{2}}{\mathrmbfit{ext}_{\mathcal{E}_{2}}}\xLeftarrow{\;\,\kappa\;}{r}{\;\circ\;}\overset{\mathrmbfit{K}_{1}}{\mathrmbfit{ext}_{\mathcal{E}_{1}}} consisting of an R2R_{2}-indexed collection of key functions
{𝒆𝒙𝒕2𝑲2(𝒓2)𝒌κ𝒓2𝒆𝒙𝒕1𝑲1(𝒓(𝒓2))𝒓2𝑹2}\bigl{\{}\overset{{\mathrmbfit{K}_{2}}}{\mathrmbfit{ext}_{\mathcal{E}_{2}}}(r_{2})\xleftarrow[k]{\kappa_{r_{2}}}\overset{{\mathrmbfit{K}_{1}}}{\mathrmbfit{ext}_{\mathcal{E}_{1}}}(r(r_{2}))\mid r_{2}\in R_{2}\bigr{\}}.
Map k1𝒆𝒙𝒕1𝑲1(𝒓(𝒓2))k_{1}{\,\in\,}\overset{{\mathrmbfit{K}_{1}}}{\mathrmbfit{ext}_{\mathcal{E}_{1}}}(r(r_{2})) with k11r(r2)k_{1}{\;\models_{\mathcal{E}_{1}}\;}r(r_{2}) to κr2(k1)=k(k1)𝒆𝒙𝒕2𝑲2(𝒓2)\kappa_{r_{2}}(k_{1})=k(k_{1}){\,\in\,}\overset{{\mathrmbfit{K}_{2}}}{\mathrmbfit{ext}_{\mathcal{E}_{2}}}(r_{2}) with k(k1)2r2k(k_{1}){\;\models_{\mathcal{E}_{2}}\;}r_{2}. The collection of 𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{1})-signature morphisms {f(σ2𝑺2(𝒓2))𝒉φ`𝒓2σ1𝑺1(𝒓(𝒓2))𝒓2𝑹2}\bigl{\{}{\scriptstyle\sum}_{f}(\overset{\mathrmbfit{S}_{2}}{\sigma_{2}}(r_{2}))\xrightarrow[h]{\;\grave{\varphi}_{r_{2}}\;}\overset{\mathrmbfit{S}_{1}}{\sigma_{1}}(r(r_{2}))\mid r_{2}\in R_{2}\bigr{\}} defines the 𝐋𝐢𝐬𝐭(𝐘𝟏)\mathrmbf{List}(Y_{1})-tuple functions
{𝒕𝒖𝒑𝒜1(𝒇(σ2(𝒓2)))𝒕𝒖𝒑𝒜1(𝒉)𝒕𝒖𝒑𝒜1(φ`𝒓2)𝒕𝒖𝒑𝒜1(σ1(𝒓(𝒓2)))𝒓2𝑹2}\bigl{\{}\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r_{2})))\xleftarrow[\mathrmbfit{tup}_{\mathcal{A}_{1}}(h)]{\;\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r(r_{2})))\mid r_{2}\in R_{2}\bigr{\}}.

K2K_{2}𝐋𝐢𝐬𝐭(𝐘𝟐)\mathrmbf{List}(Y_{2})K1K_{1}𝐋𝐢𝐬𝐭(𝐘𝟏)\mathrmbf{List}(Y_{1})𝑲2(𝒓2)\mathrmbfit{K}_{2}(r_{2})𝑲1(𝒓(𝒓2))\mathrmbfit{K}_{1}(r(r_{2}))𝒕𝒖𝒑𝒜2(σ2(𝒓2))\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r_{2}))𝒕𝒖𝒑𝒜1(σ1(𝒓(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r(r_{2})))𝒕𝒖𝒑𝒜1(𝒇(σ2(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r_{2})))κr2\kappa_{r_{2}}𝒕𝒖𝒑(φ`𝒓2,𝒇,𝒈)\mathrmbfit{tup}(\grave{\varphi}_{r_{2}},f,g)τ2,r2\tau_{2,r_{2}}τ1,r(r2)\tau_{1,r(r_{2})}𝒕𝒖𝒑𝒜1(φ`𝒓2)=𝒉(-)\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})=h{\,\cdot\,}{(\mbox{-})}(-)g=τ`f,g(σ2(r2)){(\mbox{-})}{\,\cdot\,}g=\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))kkg{\scriptstyle\sum}_{g}τ2\tau_{2}τ1\tau_{1}========τφ`r2\xRightarrow{\tau_{\grave{\varphi}_{r_{2}}}}𝛽\xRightarrow{\;\;\beta\;\;}\dottedline3(-60,29)(180,29) βr2\xRightarrow{\,\beta_{r_{2}}\,}\dottedline3(0,50)(120,50) \dottedline3(-10,95)(-40,125)\dottedline3(140,95)(170,125)\dottedline3(-16,-15)(-39,-61)\dottedline3(136,-15)(159,-61)\dottedline3(75,-50)(145,-73)
Figure 6: Transition

For any source predicate r2R2r_{2}\in R_{2}, there is a bridge κr2τ¯2,r2βr2τ¯1,r(r2)g\kappa_{r_{2}}{\,\cdot\,}\bar{\tau}_{2,r_{2}}\xRightarrow{\;\beta_{r_{2}}\;}\bar{\tau}_{1,r(r_{2})}{\,\cdot\,}{\scriptstyle\sum}_{g} that is a restriction of the bridge kτ2𝛽τ1gk{\;\cdot\;}\tau_{2}{\;\xRightarrow{\,\beta\,\;}\;}\tau_{1}{\;\cdot\;}{\scriptstyle\sum}_{g} to the subset 𝑲1(𝒓(𝒓2))𝑲1\mathrmbfit{K}_{1}(r(r_{2})){\;\subseteq\;}K_{1}, where τ¯2,r2=τ2,r2𝒊𝒏𝒄\bar{\tau}_{2,r_{2}}=\tau_{2,r_{2}}{\;\cdot\;}\mathrmbfit{inc} and τ¯1,r(r2)=τ1,r(r2)𝒊𝒏𝒄\bar{\tau}_{1,r(r_{2})}=\tau_{1,r(r_{2})}{\;\cdot\;}\mathrmbfit{inc}. For each key k1𝑲1(𝒓(𝒓2))k_{1}{\in}\mathrmbfit{K}_{1}(r(r_{2})), the k1thk_{1}^{\text{th}}-component of the bridge βr2\beta_{r_{2}} is the 𝐋𝐢𝐬𝐭(𝐘𝟐)\mathrmbf{List}(Y_{2})-morphism
τ¯2,r2(κr2(k1))τ2(k(k1))βk1g(τ¯1,r(r2)(k1))g(τ1(k1))\underset{\tau_{2}(k(k_{1}))}{\bar{\tau}_{2,r_{2}}(\kappa_{r_{2}}(k_{1}))}\xrightarrow[h]{\beta_{k_{1}}}\underset{{\scriptstyle\sum}_{g}(\tau_{1}(k_{1}))}{{\scriptstyle\sum}_{g}(\bar{\tau}_{1,r(r_{2})}(k_{1}))}. 272727Note that we have used the equal arity condition for a structure morphism (Def 2): φ`r2𝒂𝒓𝒊𝒕𝒚𝑿1=β𝒌1𝒂𝒓𝒊𝒕𝒚𝒀2\grave{\varphi}_{r_{2}}{\;\circ\;}\mathrmbfit{arity}_{X_{1}}=\beta_{k_{1}}{\;\circ\;}\mathrmbfit{arity}_{Y_{2}} when k(k1)2r2 iff k11r(r2){\footnotesize{k(k_{1}){\;\models_{\mathcal{E}_{2}}\;}r_{2}\text{ \text@underline{iff} }k_{1}{\;\models_{\mathcal{E}_{1}}\;}r(r_{2})}}.

Proposition 1 (Key)

Any structure morphism 2r,k,φ`,β,f,g1\mathcal{M}_{2}\xrightleftharpoons{{\langle{r,k,\grave{\varphi},\beta,f,g}\rangle}}\mathcal{M}_{1} (Def 2) satisfies the following condition: for any source predicate r2R2r_{2}\in R_{2},
κr2τ2,r2=τ1,r(r2)𝐭𝐮𝐩𝒜𝟏(φ`𝐫𝟐)τ`f,g(σ2(r2))\kappa_{r_{2}}{\;\cdot\;}\tau_{2,r_{2}}=\tau_{1,r(r_{2})}{\;\cdot\;}{\mathrmbfit{tup}_{\mathcal{A}_{1}}({\grave{\varphi}_{r_{2}}})}{\;\cdot\;}{\grave{\tau}_{{\langle{f,g}\rangle}}({\sigma_{2}}(r_{2}))}. 282828 The tuple bridge 𝐭𝐮𝐩𝒜𝟐τ`𝐟,𝐠(𝐟)op𝐭𝐮𝐩𝒜𝟏\mathrmbfit{tup}_{\mathcal{A}_{2}}\xLeftarrow{\;\grave{\tau}_{{\langle{f,g}\rangle}}\;}({\scriptstyle\sum}_{f})^{\mathrm{op}}\!{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}} is defined and used in the paper “The FOLE Table”[11].

Proof

For suppose that k1𝒆𝒙𝒕1(𝒓(𝒓2))k_{1}{\,\in\,}\mathrmbfit{ext}_{\mathcal{E}_{1}}(r(r_{2})) with k2=κr2(k1)=k(k1)𝒆𝒙𝒕2(𝒓2)k_{2}=\kappa_{r_{2}}(k_{1})=k(k_{1}){\,\in\,}\mathrmbfit{ext}_{\mathcal{E}_{2}}(r_{2}). Define (I1,t1)=τ1,r(r2)(k1)=τ1(k1)𝒕𝒖𝒑𝒜1(σ1(𝒓(𝒓2)))(I_{1},t_{1})=\tau_{1,r(r_{2})}(k_{1})=\tau_{1}(k_{1}){\,\in\,}\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r(r_{2}))) and (I2,t2)=τ2,r2(κr2(k1))=τ2(k2)𝒕𝒖𝒑𝒜2(σ2(𝒓2))(I_{2},t_{2})=\tau_{2,r_{2}}(\kappa_{r_{2}}(k_{1}))=\tau_{2}(k_{2}){\,\in\,}\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r_{2})). We have the 𝐋𝐢𝐬𝐭(𝐘𝟐)\mathrmbf{List}(Y_{2}) morphism (I2,t2)=τ2(k(k1))βk1g(τ1(k1))=g(I1,t1)(I_{2},t_{2})=\tau_{2}(k(k_{1}))\xrightarrow[h]{\beta_{k_{1}}}{\scriptstyle\sum}_{g}(\tau_{1}(k_{1}))={\scriptstyle\sum}_{g}(I_{1},t_{1}). Thus, t2=ht1gt_{2}=h{\,\cdot\,}t_{1}{\,\cdot\,}g. This means that (I2,t2)=𝒕𝒖𝒑(𝒉,𝒇,𝒈)(𝑰1,𝒕1)=τ`𝒇,𝒈(σ2(𝒓2))(𝒕𝒖𝒑𝒜1(𝒉)(𝑰1,𝒕1))=τ`𝒇,𝒈(σ2(𝒓2))(𝒕𝒖𝒑𝒜1(φ`𝒓2)(𝑰1,𝒕1))(I_{2},t_{2})=\mathrmbfit{tup}(h,f,g)(I_{1},t_{1})=\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))(\mathrmbfit{tup}_{\mathcal{A}_{1}}(h)(I_{1},t_{1}))=\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))(\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})(I_{1},t_{1})). Hence, τ2,r2(κr2(k1))=τ`f,g(σ2(r2))(𝒕𝒖𝒑𝒜1(φ`𝒓2)(τ1,𝒓(𝒓2)(𝒌1)))=𝒕𝒖𝒑(φ`𝒓2,𝒇,𝒈)(τ1,𝒓(𝒓2)(𝒌1))\tau_{2,r_{2}}(\kappa_{r_{2}}(k_{1}))=\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))(\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})(\tau_{1,r(r_{2})}(k_{1})))=\mathrmbfit{tup}(\grave{\varphi}_{r_{2}},f,g)(\tau_{1,r(r_{2})}(k_{1})), for all k1𝒆𝒙𝒕1(𝒓(𝒓2))k_{1}{\,\in\,}\mathrmbfit{ext}_{\mathcal{E}_{1}}(r(r_{2})).  

Corollary 1

For r2R2r_{2}\in R_{2}, each bridge κr2τ¯2,r2βr2τ¯1,r(r2)g\kappa_{r_{2}}{\,\cdot\,}\bar{\tau}_{2,r_{2}}\xRightarrow{\;\beta_{r_{2}}\;}\bar{\tau}_{1,r(r_{2})}{\,\cdot\,}{\scriptstyle\sum}_{g} reduces to the composite βr2=τ1,r(r2)τφ`r2g\beta_{r_{2}}=\tau_{1,r(r_{2})}{\;\cdot\;}\tau_{\grave{\varphi}_{r_{2}}}{\;\circ\;}{\scriptstyle\sum}_{g} for the bridge 𝐭𝐮𝐩𝒜𝟏(φ`𝐫𝟐)𝐢𝐧𝐜τφ`𝐫𝟐𝐢𝐧𝐜\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}}){\,\circ\,}\mathrmbfit{inc}\xRightarrow{\tau_{\grave{\varphi}_{r_{2}}}}\mathrmbfit{inc} associated with the function 𝐭𝐮𝐩𝒜𝟏(𝐟(σ𝟐(𝐫𝟐)))𝐡(-)𝐭𝐮𝐩𝒜𝟏(φ`𝐫𝟐)𝐭𝐮𝐩𝒜𝟏(σ𝟏(𝐫(𝐫𝟐)))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r_{2})))\xleftarrow[h{\,\cdot\,}{(\mbox{-})}]{\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})}\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r(r_{2}))). 292929For tuple (I1,t1)𝐭𝐮𝐩𝒜𝟏(σ𝟏(𝐫(𝐫𝟐)))(I_{1},t_{1}){\,\in\,}\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r(r_{2}))), the (I1,t1)th(I_{1},t_{1})^{\text{th}} component of τφ`r2\tau_{\grave{\varphi}_{r_{2}}} is the 𝐋𝐢𝐬𝐭(𝐘𝟏)\mathrmbf{List}(Y_{1})-morphism 𝐭𝐮𝐩𝒜𝟏(φ`𝐫𝟐)(𝐈𝟏,𝐭𝟏)=(𝐈𝟏,𝐡𝐭𝟏)𝐡τφ`𝐫𝟐(𝐈𝟏,𝐭𝟏)(𝐈𝟏,𝐭𝟏)\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})(I_{1},t_{1})=(I_{1},h{\,\cdot\,}t_{1})\xrightarrow[h]{\tau_{\grave{\varphi}_{r_{2}}}(I_{1},t_{1})}(I_{1},t_{1}).

Proof

Straightforward.  

4.4 Lax Structures.

To show equivalence between sound logics and databases, we need to use lax structures. 303030A structure becomes lax when we forget the global set of keys KK and use only a lax entity classification =R,𝑲\mathcal{E}={\langle{R,\mathrmbfit{K}}\rangle}. We can retrieve a “crisp” entity classification by defining the disjoint union of key subsets rR𝑲(𝒓)\coprod_{r\in R}\mathrmbfit{K}(r). But, using the extent form of a structure (laxness), we have lost a certain coordination of tuple functions {𝒆𝒙𝒕(𝒓)τ𝒓𝒕𝒖𝒑𝒜(σ(𝒓))𝒓𝑹}\{\mathrmbfit{ext}_{\mathcal{E}}(r)\xrightarrow{\tau_{r}}\mathrmbfit{tup}_{\mathcal{A}}(\sigma(r))\mid r\in R\bigr{\}} here, which may or may not be important. Again, assume that we are given a schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} with a set of predicate symbols RR and a signature (header) map R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\sigma}\mathrmbf{List}(X).

Definition 3

A (lax) 𝒮\mathcal{S}-structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} consists of a lax entity classification =R,𝑲\mathcal{E}={\langle{R,\mathrmbfit{K}}\rangle}, an attribute classification (typed domain) 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle}, the schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle}, and one of the two equivalent descriptions:

  • \bullet

    either (MID Fig. 4) a function RT𝐓𝐛𝐥(𝒜)R\xrightarrow{T_{\mathcal{M}}}\mathrmbf{Tbl}(\mathcal{A}) consisting of an RR-indexed collection of 𝒜\mathcal{A}-tables T(r)=σ(r),𝑲(𝒓),τ𝒓T_{\mathcal{M}}(r)={\langle{\sigma(r),\mathrmbfit{K}(r),\tau_{r}}\rangle};

  • \bullet

    or (RHS Fig. 4) a tuple bridge 𝑲𝜏σ𝒕𝒖𝒑𝒜\mathrmbfit{K}\xRightarrow{\;\tau\;}\sigma{\;\circ\;}\mathrmbfit{tup}_{\mathcal{A}} consisting of an indexed collection of tuple functions {𝑲(𝒓)τ𝒓𝒕𝒖𝒑𝒜(σ(𝒓))𝒓𝑹}\{\mathrmbfit{K}(r)\xrightarrow{\tau_{r}}\mathrmbfit{tup}_{\mathcal{A}}(\sigma(r))\mid r\in R\}.

Hence, we can think of a lax structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} as extending the FOLE schema R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\,\sigma}\mathrmbf{List}(X) to the tabular interpretation function RT𝐓𝐛𝐥(𝒜)R\xrightarrow{\;T_{\mathcal{M}}\;}\mathrmbf{Tbl}(\mathcal{A}).

Proposition 2

A (lax) 𝒮\mathcal{S}-structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} defines, is the same as, the constraint-free aspect of a database =R,σ,𝒜,𝐊,τ\mathcal{R}={\langle{R,\sigma,\mathcal{A},\mathrmbfit{K},\tau}\rangle} consisting of a set of predicate types RR, a key function R𝐊𝐒𝐞𝐭R\xrightarrow{\;\mathrmbfit{K}\;}\mathrmbf{Set}, a schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} with a signature function R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\;\sigma\;}\mathrmbf{List}(X), and a (constraint-free) tuple bridge 𝐊𝜏𝐒𝐭𝐮𝐩𝒜\mathrmbfit{K}\xRightarrow{\;\tau\;}{S}\,{\,\circ\,}\mathrmbfit{tup}_{\mathcal{A}} consisting of an RR-indexed collection of tuple maps {𝐊(𝐫)τ𝐫𝐭𝐮𝐩𝒜(σ(𝐫))𝐫𝐑}\bigl{\{}\mathrmbfit{K}(r)\xrightarrow{\;\tau_{r}\;}\mathrmbfit{tup}_{\mathcal{A}}(\sigma(r))\mid r\in R\bigr{\}}.

Proof

See the previous discussion.

4.5 Lax Structure Morphisms.

In order to make sound logic morphisms equivalent to database morphisms, we need to eliminate the global key function K2𝑘K1K_{2}\xleftarrow{\;k\,}K_{1}. To do this we define a lax version of Def. 2. Note 1 eliminated the need for the global key function in the entity infomorphism¿ Prop. 1 and Cor. 1 eliminated the need for the universe morphism with its global key function. However, we do need to include the condition of Prop. 1.

Definition 4

For any two (lax) structures 2=2,σ2,τ2,𝒜2\mathcal{M}_{2}={\langle{\mathcal{E}_{2},\sigma_{2},\tau_{2},\mathcal{A}_{2}}\rangle} and 1=1,σ1,τ1,𝒜1\mathcal{M}_{1}={\langle{\mathcal{E}_{1},\sigma_{1},\tau_{1},\mathcal{A}_{1}}\rangle}, a (lax) structure morphism (Tbl. 13 in § 0.A.1) (Fig. 7)

2=2,σ2,τ2,𝒜2r,κ,φ`,f,g1,σ1,τ1,𝒜1=1\mathcal{M}_{2}={\langle{\mathcal{E}_{2},\sigma_{2},\tau_{2},\mathcal{A}_{2}}\rangle}\xrightleftharpoons{{\langle{r,\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{E}_{1},\sigma_{1},\tau_{1},\mathcal{A}_{1}}\rangle}=\mathcal{M}_{1}

consists of (RHS Fig. 7) a schemed domain morphism

𝒟2=R2,σ2,𝒜2r,φ`,f,gR1,σ1,𝒜1=𝒟1\mathcal{D}_{2}={\langle{R_{2},\sigma_{2},\mathcal{A}_{2}}\rangle}\xrightarrow{\;{\langle{\mathrmit{r},\grave{\varphi},f,g}\rangle}\;}{\langle{R_{1},\sigma_{1},\mathcal{A}_{1}}\rangle}=\mathcal{D}_{1}

consisting of a typed domain morphism 𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1} and a schema morphism 𝒮2=R2,σ2,X2r,φ`,fR1,σ1,X1=𝒮1\mathcal{S}_{2}={\langle{R_{2},\sigma_{2},X_{2}}\rangle}\xRightarrow{\;{\langle{\mathrmit{r},\grave{\varphi},f}\rangle}\;}{\langle{R_{1},\sigma_{1},X_{1}}\rangle}=\mathcal{S}_{1} (Disp.6 in § 4.2) with common type function X2𝑓X1X_{2}\xrightarrow{\;\mathrmit{f}\;\,}X_{1}, and (LHS Fig. 7) a lax entity infomorphism

2=R2,𝑲2r,κR1,𝑲1=1\mathcal{E}_{2}={\langle{R_{2},\mathrmbfit{K}_{2}}\rangle}\xleftharpoondown{{\langle{r,\kappa}\rangle}}{\langle{R_{1},\mathrmbfit{K}_{1}}\rangle}=\mathcal{E}_{1}

with a predicate function R2𝑟R1R_{2}\xrightarrow{\;r\,}R_{1} and a key bridge 𝑲2𝜅𝒓𝑲1\mathrmbfit{K}_{2}\xLeftarrow{\;\,\kappa\;}r{\,\circ\,}\mathrmbfit{K}_{1} consisting of the key functions {𝑲2(r2)κr2𝑲1(r(r2))r2R2}\bigl{\{}{\mathrmbfit{K}_{2}}(r_{2})\xleftarrow{\kappa_{r_{2}}}{\mathrmbfit{K}_{1}}(r(r_{2}))\mid r_{2}\in R_{2}\bigr{\}}, which satisfy the condition

{κr2τ2,r2=τ1,r(r2)𝒕𝒖𝒑𝒜1(φ`𝒓2)τ`f,g(σ2(r2))r2R2}.{{\Big{\{}\kappa_{r_{2}}{\;\cdot\;}\tau_{2,r_{2}}=\tau_{1,r(r_{2})}{\;\cdot\;}{\mathrmbfit{tup}_{\mathcal{A}_{1}}({\grave{\varphi}_{r_{2}}})}{\;\cdot\;}{\grave{\tau}_{{\langle{f,g}\rangle}}({\sigma_{2}}(r_{2}))}\mid r_{2}\in R_{2}\Bigr{\}}.}} (7)

See the (Key) Prop. 1.

Corollary 2

A (lax) structure morphism 2r,κ,φ`,f,g1\mathcal{M}_{2}\xrightleftharpoons{{\langle{r,\kappa,\grave{\varphi},f,g}\rangle}}\mathcal{M}_{1} defines a tabular interpretation bridge function R2𝜉𝐦𝐨𝐫(𝐓𝐛𝐥)\mathrmit{R}_{2}\xrightarrow{\;\xi\;}\mathrmbf{mor}(\mathrmbf{Tbl}), which maps a predicate symbol r2R2r_{2}\in{\mathrmit{R}_{2}} with image r(r2)R1r(r_{2})\in{\mathrmit{R}_{1}} to the table morphism

σ2(r2),𝒜2,𝑲2(𝒓2),τ2,𝒓2𝑻2(𝒓2)φ`r2,f,g,κr2ξr2σ1(r(r2)),𝒜1,𝑲1(𝒓(𝒓2)),τ1,𝒓(𝒓2)𝑻1(𝒓(𝒓2)).{\scriptstyle{\overset{\textstyle{\mathrmbfit{T}_{2}(r_{2})}}{\overbrace{\langle{\sigma_{2}(r_{2}),\mathcal{A}_{2},\mathrmbfit{K}_{2}(r_{2}),\tau_{2,r_{2}}}\rangle}}\;\xleftarrow[\langle{\grave{\varphi}_{r_{2}},f,g,\kappa_{r_{2}}}\rangle]{\xi_{r_{2}}}\;\overset{\textstyle{\mathrmbfit{T}_{1}(r(r_{2}))}}{\overbrace{\langle{\sigma_{1}(r(r_{2})),\mathcal{A}_{1},\mathrmbfit{K}_{1}(r(r_{2})),\tau_{1,r(r_{2})}}\rangle}}.}} (8)

visualized by the diagram

𝑲2(𝒓2)\mathrmbfit{K}_{2}(r_{2})𝑲1(𝒓(𝒓2))\mathrmbfit{K}_{1}(r(r_{2}))𝒕𝒖𝒑𝒜2(σ2(𝒓2))\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r_{2}))𝒕𝒖𝒑𝒜1(𝒇(σ2(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r_{2})))𝒕𝒖𝒑𝒜1(σ1(𝒓(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r(r_{2})))κr2\kappa_{r_{2}}τ`f,g(σ2(r2))\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))𝒕𝒖𝒑𝒜1(φ`𝒓2)\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})𝒕𝒖𝒑(φ`𝒓2,𝒇,𝒈)\mathrmbfit{tup}(\grave{\varphi}_{r_{2}},f,g)τr2\tau_{r_{2}}τr1\tau_{r_{1}}^{\prime}𝒕𝒂𝒃𝒍𝒆𝒔𝒐𝒖𝒓𝒄𝒆{\stackrel{{\scriptstyle\textstyle{\mathrmbfit{source}}}}{{\mathrmbfit{table}}}\left\{\rule{0.0pt}{33.0pt}\right.}𝒕𝒂𝒃𝒍𝒆𝒕𝒂𝒓𝒈𝒆𝒕\left.\rule{0.0pt}{33.0pt}\right\}\stackrel{{\scriptstyle\textstyle{\mathrmbfit{target}}}}{{\mathrmbfit{table}}}

where

  • \bullet

    T2(r2)=σ2(r2),𝒜2,𝑲2(𝒓2),τ2,𝒓2T_{2}(r_{2})={\langle{\sigma_{2}(r_{2}),\mathcal{A}_{2},\mathrmbfit{K}_{2}(r_{2}),\tau_{2,r_{2}}}\rangle} is a table defined by the tabular interpretation function R2T2𝐓𝐛𝐥(𝒜𝟐)R_{2}\xrightarrow{\;T_{2}\;}\mathrmbf{Tbl}(\mathcal{A}_{2}) of structure 2\mathcal{M}_{2}, and

  • \bullet

    T1(r(r2))=σ1(r(r2)),𝒜1,𝑲1(𝒓(𝒓2)),τ1,𝒓(𝒓2)T_{1}(r(r_{2}))={\langle{\sigma_{1}(r(r_{2})),\mathcal{A}_{1},\mathrmbfit{K}_{1}(r(r_{2})),\tau_{1,r(r_{2})}}\rangle} is the table defined by the tabular interpretation function R1T1𝐓𝐛𝐥(𝒜𝟏)R_{1}\xrightarrow{\;T_{1}\;}\mathrmbf{Tbl}(\mathcal{A}_{1}) of structure1\mathcal{M}_{1}.

Proof

See Disp. 7 above.  

Let 𝐒𝐭𝐫𝐮𝐜̊\mathring{\mathrmbf{Struc}} denote the mathematical context of (lax) structures and their morphisms. Since any structure is a lax structure and any structure morphism is a lax structure morphism, there is an passage 𝐒𝐭𝐫𝐮𝐜𝒍𝒂𝒙𝐒𝐭𝐫𝐮𝐜̊\mathrmbf{Struc}\xrightarrow{\;\mathrmbfit{lax}\;}\mathring{\mathrmbf{Struc}}.

r𝑲1r{\,\circ\;}\mathrmbfit{K}_{1}𝑲2\mathrmbfit{K}_{2}rσ1𝒕𝒖𝒑𝒜1r{\,\circ\;}\sigma_{1}{\,\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}σ2𝒕𝒖𝒑𝒜2\sigma_{2}{\,\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{2}}(φ`𝒕𝒖𝒑𝒜1)(σ2τ`𝒇,𝒈)({\grave{\varphi}}{\;\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}){\;\bullet\;}(\sigma_{2}{\,\circ\;}\grave{\tau}_{{\langle{f,g}\rangle}})rτ1r{\;\circ\;}\tau_{1}τ2\tau_{2}κ\kappa\xRightarrow{\;\;\;\;\;\;\;\;\;\;\;\;\;}\xRightarrow{\;\;\;\;\;\;\;\;\;\;\;\;\;}\bigg{\Downarrow}\bigg{\Downarrow}f𝒕𝒖𝒑𝒜1{\scriptstyle\sum}_{f}{\,\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}𝒕𝒖𝒑𝒜2\mathrmbfit{tup}_{\mathcal{A}_{2}}τ`f,g\grave{\tau}_{{\langle{f,g}\rangle}}\bigg{\Downarrow}lax entityinfomorphismtuple attributeinfomorphism
Figure 7: Lax Structure Morphism

5 FOLE Specifications.

A FOLE specification =𝐑,𝑺\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{S}}\rangle} consists of a context 𝐑\mathrmbf{R} of predicates linked by constraints and a diagram 𝑺:𝐑𝐒𝐞𝐭\mathrmbfit{S}:\mathrmbf{R}\rightarrow\mathrmbf{Set} of lists. A specification morphism is a diagram morphism 𝑹,ζ:𝐑𝟐,𝑺2𝐑𝟏,𝑺1{\langle{\mathrmbfit{R},\zeta}\rangle}:{\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2}}\rangle}\Rightarrow{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1}}\rangle} consisting of a shape-changing passage 𝐑𝟐𝑹𝐑𝟏\mathrmbf{R}_{2}\xrightarrow{\>\mathrmbfit{R}\>}\mathrmbf{R}_{1} and a bridge ζ:𝑺2𝑹𝑺1\zeta:\mathrmbfit{S}_{2}\Rightarrow\mathrmbfit{R}\circ\mathrmbfit{S}_{1}. Composition is component-wise. The mathematical context of FOLE specifications is denoted by 𝐒𝐏𝐄𝐂=𝐋𝐢𝐬𝐭=((-)𝐋𝐢𝐬𝐭)\mathrmbf{SPEC}=\mathrmbf{List}^{\scriptscriptstyle{\Downarrow}}=\bigl{(}{(\mbox{-})}{\,\Downarrow\,}\mathrmbf{List}\bigr{)}. The subcontext of FOLE specifications (with fixed sort sets and fixed sort functions) is denoted by 𝐒𝐩𝐞𝐜𝐒𝐏𝐄𝐂\mathrmbf{Spec}\subseteq\mathrmbf{SPEC}.

5.1 Specifications.

Assume that we are given a schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} with a set of predicate symbols RR and a signature (header) map R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\sigma}\mathrmbf{List}(X).

Definition 5

A (formal) 𝒮\mathcal{S}-specification is a subgraph 𝐑𝐂𝐨𝐧𝐬(𝒮)\mathrmbf{R}{\;\sqsubseteq\;}\mathrmbf{Cons}(\mathcal{S}), whose nodes are 𝒮\mathcal{S}-formulas and whose edges are 𝒮\mathcal{S}-constraints. 323232We can place axiomatic restrictions on specifications in various manners. A FOLE specification requires entailment to be a preorder, satisfying reflexivity and transitivity. It could also require satisfaction of sufficient axioms (Tbl. 3 of the paper [10]) to described the various logical operations (connectives, quantifiers, etc.) used to build formulas in first-order logic.

Let 𝐒𝐩𝐞𝐜(𝒮)=𝐂𝐨𝐧𝐬(𝒮)\mathrmbf{Spec}(\mathcal{S})={\wp}\mathrmbf{Cons}(\mathcal{S}) denote the set of all 𝒮\mathcal{S}-specifications. 333333For any graph 𝒢\mathcal{G}, 𝒢=𝒢,{\wp}\mathcal{G}={\langle{{\wp}\mathcal{G},\sqsubseteq}\rangle} denotes the power preorder of all subgraphs of 𝒢\mathcal{G}.

Definition 6

An (abstract) 𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle} 343434An abstract specification is also known as a database schema (Def. 13 in § 7.1). consists of: a context 𝐑\mathrmbf{R}, whose objects rRr\in R are predicate symbols and whose arrows r𝑝rr^{\prime}\xrightarrow{\,p\,}r are called abstract 𝒮\mathcal{S}-constraints, and a passage 𝐑𝑺𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{R}\xrightarrow{\;\mathrmbfit{S}\;}\mathrmbf{List}(X), which extends the signature map R𝜎𝐋𝐢𝐬𝐭(𝐗){R}\xrightarrow{\;\sigma\;}\mathrmbf{List}(X) by mapping an abstract constraint r𝑝rr^{\prime}\xrightarrow{\,p\,}r to an XX-signature morphism 𝑺(𝒓)=σ(𝒓)=𝑰,𝒔𝒉𝑺(𝒑)=σ(𝒑)𝑰,𝒔=σ(𝒓)=𝑺(𝒓)\mathrmbfit{S}(r^{\prime})=\sigma(r^{\prime})={\langle{I^{\prime},s^{\prime}}\rangle}\xrightarrow[h]{\mathrmbfit{S}(p)=\sigma(p)}{\langle{I,s}\rangle}=\sigma(r)=\mathrmbfit{S}(r).

An abstract 𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle} has a companion formal 𝒮\mathcal{S}-specification 𝒯^=𝐑^,𝑺^,X\widehat{\mathcal{T}}={\langle{\widehat{\mathrmbf{R}},\widehat{\mathrmbfit{S}},X}\rangle}, whose graph 𝐑^𝐂𝐨𝐧𝐬(𝒮)\widehat{\mathrmbf{R}}\sqsubseteq\mathrmbf{Cons}(\mathcal{S}) is the set of all formal constraints {rσ(p)rr𝑝r𝐑}\big{\{}r^{\prime}\xrightarrow[h]{\,\sigma(p)\,}r\mid r^{\prime}\xrightarrow{\,p\,}r\in\mathrmbf{R}\big{\}}. 353535These are formal constraints, since any predicate symbol is a formula. Since 𝐑^\widehat{\mathrmbf{R}} is closed under composition and contains all identities, 𝒯^\widehat{\mathcal{T}} is an abstract 𝒮\mathcal{S}-specification with signature passage 𝐑^𝑺^𝐋𝐢𝐬𝐭(𝐗)\widehat{\mathrmbf{R}}\xrightarrow{\widehat{\mathrmbfit{S}}}\mathrmbf{List}(X).

5.2 Specification Morphisms.

A FOLE (abstract) specification morphism in 𝐒𝐩𝐞𝐜\mathrmbf{Spec}, with constant sort function f:X2X1f:X_{2}\rightarrow X_{1}, is a diagram morphism 𝑹,ζ:𝐑𝟐,𝑺2𝐑𝟏,𝑺1{\langle{\mathrmbfit{R},\zeta}\rangle}:{\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2}}\rangle}\rightarrow{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1}}\rangle} in 𝐋𝐢𝐬𝐭\mathrmbf{List} consisting of a relation passage 𝑹:𝐑𝟐𝐑𝟏\mathrmbfit{R}:\mathrmbf{R}_{2}\rightarrow\mathrmbf{R}_{1} and a list interpretation bridge 𝑺2𝜁𝑹𝑺1{\mathrmbfit{S}_{2}{\,\xRightarrow{\,\zeta\;\,}\,}\mathrmbfit{R}{\,\circ\,}\mathrmbfit{S}_{1}} that factors (Fig. 8)

ζ=(φ`𝒊𝒏𝒄𝑿1)(𝑺2ι`𝒇)\zeta=(\grave{\varphi}\circ\mathrmbfit{inc}_{X_{1}})\bullet(\mathrmbfit{S}_{2}\circ\grave{\iota}_{f}) (9)

through the fiber adjunction 𝐋𝐢𝐬𝐭(𝐗𝟐)𝒍𝒊𝒔𝒕´𝐟𝒍𝒊𝒔𝒕`𝐟𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{2})\xleftarrow{\acute{\mathrmbfit{list}}_{f}\;\dashv\;\grave{\mathrmbfit{list}}_{f}}\mathrmbf{List}(X_{1}) 363636Fibered by signature over the adjunction 𝐋𝐢𝐬𝐭(𝐗𝟐)𝐟𝐟𝒍𝒊𝒔𝒕´𝐟𝒍𝒊𝒔𝒕`𝐟𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{2})\xleftarrow[\langle{{\scriptscriptstyle\sum}_{f}{\;\dashv\;}f^{\ast}}\rangle]{{\langle{\acute{\mathrmbfit{list}}_{f}{\!\dashv\,}\grave{\mathrmbfit{list}}_{f}}\rangle}}\mathrmbf{List}(X_{1}) (Kent [11]) representing list flow along a sort function f:X2X1f:X_{2}\rightarrow X_{1}. in terms of

  • \bullet

    some bridge φ`:𝑺2𝒇𝑹op𝑺1\grave{\varphi}:\mathrmbfit{S}_{2}\circ{\scriptstyle\sum}_{f}\Rightarrow\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{S}_{1} and

  • \bullet

    the inclusion bridge ι`f:𝒊𝒏𝒄𝑿2𝒇𝒊𝒏𝒄𝑿1\grave{\iota}_{f}:\mathrmbfit{inc}_{X_{2}}\Rightarrow{\scriptstyle\sum}_{f}\circ\mathrmbfit{inc}_{X_{1}}.

We normally just use the bridge restriction φ`\grave{\varphi} for the specification morphism. The original definition can be computed with the factorization in Disp. 9.

Definition 7

An (abstract) specification morphism (Tbl. 13 in § 0.A.1) 373737Visualized on the right side Fig. 8. 383838This is the same as a database schema morphism of § 7.2.
𝒯2=𝐑𝟐,𝑺2,𝑿2𝑹,φ`,𝒇𝐑𝟏,𝑺1,𝑿1=𝒯1\mathcal{T}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},X_{2}}\rangle}\xrightarrow{{\langle{\mathrmbfit{R},\grave{\varphi},f}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},X_{1}}\rangle}=\mathcal{T}_{1},
along a schema morphism (Disp.6 in § 4.2) consists of a relation passage 𝐑𝟐𝑹𝐑𝟏\mathrmbf{R}_{2}\xrightarrow{\;\mathrmbfit{R}\;}\mathrmbf{R}_{1} extending the predicate function R2𝑟R1R_{2}\xrightarrow{\;r\;}R_{1} of the schema morphism to constraints, the sort function X2𝑓X1X_{2}\xrightarrow{\;f\;}X_{1} of the schema morphism, and a bridge 𝑺2𝒇φ`𝑹𝑺1\mathrmbfit{S}_{2}{\;\circ\;}{\scriptstyle\sum}_{f}\xRightarrow{\;\grave{\varphi}\;\,}\mathrmbfit{R}{\;\circ\;}\mathrmbfit{S}_{1} extending the schema bridge to naturality. 393939Naturality means that for any source constraint r2p2r2r^{\prime}_{2}\xrightarrow{\,p_{2}\,}r_{2} with target constraint 𝑹(𝒓2)=𝒓(𝒓2)𝑹(𝒑2)𝒑1𝒓(𝒓2)=𝑹(𝒓2)\mathrmbfit{R}(r^{\prime}_{2})=r(r^{\prime}_{2})\xrightarrow[\mathrmbfit{R}(p_{2})]{\,p_{1}\,}r(r_{2})=\mathrmbfit{R}(r_{2}), if their signature morphisms are I2,s2h2I2,s2{\langle{I^{\prime}_{2},s^{\prime}_{2}}\rangle}\xrightarrow{\,h_{2}\,}{\langle{I_{2},s_{2}}\rangle} and I1,s1h1I1,s1{\langle{I^{\prime}_{1},s^{\prime}_{1}}\rangle}\xrightarrow{\,h_{1}\,}{\langle{I_{1},s_{1}}\rangle}, we have the naturality diagram f(h2)φ`r2=φ`r2h1{\scriptstyle\sum}_{f}(h_{2}){\,\circ\,}\grave{\varphi}_{r_{2}}=\grave{\varphi}_{r^{\prime}_{2}}{\,\circ\,}h_{1}. 404040An example of a non-trivial bridge is projection: assume that the arity functions I2φ`r2I1I^{\prime}_{2}{\,\xhookrightarrow{\grave{\varphi}_{r^{\prime}_{2}}}\,}I^{\prime}_{1} and I2φ`r2I1I_{2}{\,\xhookrightarrow{\grave{\varphi}_{r_{2}}}\,}I_{1} are inclusion, thus defining signature projection, and assume that I2h2I2I^{\prime}_{2}\xrightarrow{\,h_{2}\,}I_{2} is a restriction of I1h1I1I^{\prime}_{1}\xrightarrow{\,h_{1}\,}I_{1}.

As noted before, 𝐒𝐩𝐞𝐜𝐒𝐏𝐄𝐂\mathrmbf{Spec}\subseteq\mathrmbf{SPEC} denotes the mathematical context of abstract FOLE specifications (with fixed sort sets). This context is the same as the context of database schemas and their morphisms.

𝐑𝟐\mathrmbf{R}_{2}𝐑𝟏\mathrmbf{R}_{1}𝐋𝐢𝐬𝐭\mathrmbf{List}𝑹\mathrmbfit{R}𝑺2\mathrmbfit{S}_{2}𝑺1\mathrmbfit{S}_{1} 𝜁\xRightarrow{\,\,\zeta\;\;}
==
𝐑𝟐\mathrmbf{R}_{2}𝐑𝟏\mathrmbf{R}_{1}𝐋𝐢𝐬𝐭(𝐗𝟐)\mathrmbf{List}(X_{2})𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{1})𝐋𝐢𝐬𝐭\mathrmbf{List}𝑹\mathrmbfit{R}𝑺2\mathrmbfit{S}_{2}𝑺1\mathrmbfit{S}_{1}f{\scriptscriptstyle\sum}_{f}𝒊𝒏𝒄𝑿2\mathrmbfit{inc}_{X_{2}}𝒊𝒏𝒄𝑿1\mathrmbfit{inc}_{X_{1}} φ`\grave{\varphi} \Longrightarrow ι`f\xRightarrow{\grave{\iota}_{f}}
Figure 8: Specification Morphism


There is an (abstract) 𝒮\mathcal{S}-specification morphism (LHS Fig. 9 in § 5.3)
𝒯=𝐑,𝑺,𝑿𝑹𝐑^,𝑺^,𝑿=𝒯^\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle}\xrightarrow{\;\mathrmbfit{R}\;}{\langle{\widehat{\mathrmbf{R}},\widehat{\mathrmbfit{S}},X}\rangle}=\widehat{\mathcal{T}}
with a object-identical passage 𝐑𝑹𝐑^\mathrmbf{R}\xrightarrow{\;\mathrmbfit{R}\;}\widehat{\mathrmbf{R}} that preserves signature
𝐑𝑹𝐑^𝑺^𝐋𝐢𝐬𝐭(𝐗)=𝐑𝑺𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{R}\!\xrightarrow{\;\mathrmbfit{R}\;}\widehat{\mathrmbf{R}}\xrightarrow{\widehat{\mathrmbfit{S}}}\mathrmbf{List}(X)=\mathrmbf{R}\xrightarrow{\mathrmbfit{S}}\mathrmbf{List}(X).

5.3 Specification Satisfaction.

Assume that we are given a schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} with a set of predicate symbols RR and a signature (header) map R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\sigma}\mathrmbf{List}(X).

Definition 8

(formal satisfaction) An 𝒮\mathcal{S}-structure 𝐒𝐭𝐫𝐮𝐜(𝒮)\mathcal{M}\in\mathrmbf{Struc}(\mathcal{S}) satisfies a (formal) 𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle}, symbolized 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T}, when it satisfies every constraint in the specification: 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T} iff 𝒮𝐑\mathcal{M}^{\mathcal{S}}\sqsupseteq\mathrmbf{R}. Hence, 𝒮\mathcal{M}^{\mathcal{S}} is the largest and most specialized (formal) 𝒮\mathcal{S}-specification satisfied by \mathcal{M}. 414141So, 𝒮\mathcal{M}^{\mathcal{S}} is not just a mathematical context, but also an 𝒮\mathcal{S}-specification.

Definition 9

(abstract satisfaction) An 𝒮\mathcal{S}-structure 𝐒𝐭𝐫𝐮𝐜(𝒮)\mathcal{M}\in\mathrmbf{Struc}(\mathcal{S}) satisfies an abstract 𝒮\mathcal{S}-constraint r𝑝rr^{\prime}{\;\xrightarrow{p}\;}r in 𝐑\mathrmbf{R}, symbolized by 𝒮(r𝑝r)\mathcal{M}{\;\models_{\mathcal{S}}\;}(r^{\prime}{\;\xrightarrow{p}\;}r), when it satisfies the associated formal constraint rσ(p)rr^{\prime}\xrightarrow{\,\sigma(p)\,}r in 𝐑^\widehat{\mathrmbf{R}}. An 𝒮\mathcal{S}-structure 𝐒𝐭𝐫𝐮𝐜(𝒮)\mathcal{M}\in\mathrmbf{Struc}(\mathcal{S}) satisfies (is a model of) an abstract 𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle}, symbolized 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T}, when it satisfies every abstract constraint in the specification. Equivalently, an 𝒮\mathcal{S}-structure 𝐒𝐭𝐫𝐮𝐜(𝒮)\mathcal{M}\in\mathrmbf{Struc}(\mathcal{S}) satisfies an abstract 𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle} when it satisfies the companion formal specification 𝒯^=𝐑^,𝑺^,X\widehat{\mathcal{T}}={\langle{\widehat{\mathrmbf{R}},\widehat{\mathrmbfit{S}},X}\rangle}: 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T} iff 𝒮𝐑^\mathcal{M}^{\mathcal{S}}\sqsupseteq\widehat{\mathrmbf{R}}.

Definition 10

When 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T} holds, the abstract table passage 𝐑op𝑻𝐑𝐞𝐥(𝒜){\mathrmbf{R}}^{\mathrm{op}}\!\!\xrightarrow{\;\mathrmbfit{T}\;}\mathrmbf{Rel}(\mathcal{A}) is defined to be the composition (RHS Fig. 9) of the object-identical passage 𝐑𝑹𝐑^\mathrmbf{R}\!\xrightarrow{\;\mathrmbfit{R}\;}\widehat{\mathrmbf{R}} with the “inclusion” 𝐑^𝒮\widehat{\mathrmbf{R}}\sqsubseteq\mathcal{M}^{\mathcal{S}} and the relation interpretation passage 𝒮op𝑹𝐑𝐞𝐥(𝒜){\mathcal{M}^{\mathcal{S}}}^{\mathrm{op}}\!\xrightarrow{\;\mathrmbfit{R}_{\mathcal{M}}\;}\mathrmbf{Rel}(\mathcal{A}) of Lem. 2 in § 3.3. 424242The passage 𝒮op𝑹𝐑𝐞𝐥(𝒜){\mathcal{M}^{\mathcal{S}}}^{\mathrm{op}}\!\xrightarrow{\;\mathrmbfit{R}_{\mathcal{M}}\;}\mathrmbf{Rel}(\mathcal{A}) was defined in Lemma. 2 of § 3.3 on satisfaction.

Note that the the abstract table passage 𝐑op𝑻𝐑𝐞𝐥(𝒜){\mathrmbf{R}}^{\mathrm{op}}\!\!\xrightarrow{\;\mathrmbfit{T}\;}\mathrmbf{Rel}(\mathcal{A}) extends the table-valued function RT𝐓𝐛𝐥(𝒜)𝐢𝐦𝒜𝐑𝐞𝐥(𝒜)R\xrightarrow{T_{\mathcal{M}}}\mathrmbf{Tbl}(\mathcal{A})\xhookrightarrow{im_{\mathcal{A}}}\mathrmbf{Rel}(\mathcal{A}) of the structure \mathcal{M} to constraints.

Proposition 3 (Key)

Satisfaction is equivalent to tabular interpretation.

Proof

On the one hand, if 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T}, then the tabular interpretation passage 𝐑op𝑻𝐑𝐞𝐥(𝒜)𝒊𝒏𝒄𝒜𝐓𝐛𝐥(𝒜){\mathrmbf{R}}^{\mathrm{op}}\!\!\xrightarrow{\;\mathrmbfit{T}\;}\mathrmbf{Rel}(\mathcal{A})\xhookrightarrow{\mathrmbfit{inc}_{\mathcal{A}}}\mathrmbf{Tbl}(\mathcal{A}) maps a constraint r𝑝rr^{\prime}\xrightarrow{\,p\,}r in 𝐑\mathrmbf{R} to the 𝒜\mathcal{A}-relation morphism
𝑻(𝒓)=𝑺(𝒓),𝒕𝒓(𝑲(𝒓))𝒉𝒑,𝒓𝒑𝑻(𝒑)𝑺(𝒓),𝒕𝒓(𝑲(𝒓))=𝑻(𝒓)\mathrmbfit{T}(r^{\prime})={\langle{\mathrmbfit{S}(r^{\prime}),{\wp}t^{\prime}_{r^{\prime}}(\mathrmbfit{K}(r^{\prime}))}\rangle}\xleftarrow[\langle{h_{p},r_{p}}\rangle]{\mathrmbfit{T}(p)}{\langle{\mathrmbfit{S}(r),{\wp}t_{r}(\mathrmbfit{K}(r))}\rangle}=\mathrmbfit{T}(r)
as pictured in Fig. 3 of §3.3. 434343 We use relations here rather than tables, since (Lem. 2 of § 3.3): relational interpretation is closed under composition; but tabular interpretation is closed under composition only up to key equivalence.

On the other hand, if there is a tabular interpretation passage 𝐑op𝑻𝐓𝐛𝐥(𝒜){\mathrmbf{R}}^{\mathrm{op}}\!\!\xrightarrow{\;\mathrmbfit{T}\;}\mathrmbf{Tbl}(\mathcal{A}), then the adjoint flow of 𝒜\mathcal{A}-tables 444444See the discussion about type domain indexing in § 3.4.1 of the paper [11]. demonstrates that the 𝒮\mathcal{S}-structure \mathcal{M} satisfies each abstract 𝒮\mathcal{S}-constraint r𝑝rr^{\prime}{\;\xrightarrow{p}\;}r in 𝐑\mathrmbf{R} (see Disp.4 in § 3.3).  

𝐑{\mathrmbf{R}}𝐑^\widehat{\mathrmbf{R}}𝐂𝐨𝐧𝐬(𝒮)\mathrmbf{Cons}(\mathcal{S})𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{List}(X)𝑹\mathrmbfit{R}𝒊𝒏𝒄\mathrmbfit{inc}𝑺\mathrmbfit{S}𝑺^\widehat{\mathrmbfit{S}}𝑺𝒮\mathrmbfit{S}_{\mathcal{S}}
𝐑op{\mathrmbf{R}}^{\mathrm{op}}𝐑^op\widehat{\mathrmbf{R}}^{\mathrm{op}}𝒮op{\mathcal{M}^{\mathcal{S}}}^{\mathrm{op}}𝐑𝐞𝐥(𝒜)𝒊𝒏𝒄𝒜𝐓𝐛𝐥(𝒜)\mathrmbf{Rel}(\mathcal{A})\xhookrightarrow{\mathrmbfit{inc}_{\mathcal{A}}}\mathrmbf{Tbl}(\mathcal{A})𝑹op\mathrmbfit{R}^{\mathrm{op}}𝒊𝒏𝒄\mathrmbfit{inc}𝑻\mathrmbfit{T}𝑻^\widehat{\mathrmbfit{T}}𝑹\mathrmbfit{R}_{\mathcal{M}}
in general with satisfaction
Figure 9: Specification Passages
Specification
(formal) 𝒮\mathcal{S}-specification – subgraph      : 𝐑𝐂𝐨𝐧𝐬(𝒮)\mathrmbf{R}{\;\sqsubseteq\;}\mathrmbf{Cons}(\mathcal{S})
signature passage      : 𝐂𝐨𝐧𝐬(𝒮)𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{Cons}(\mathcal{S})\rightarrow\mathrmbf{List}(X)
(abstract) 𝒮\mathcal{S}-specification – passage      : 𝐑𝑺𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{R}\xrightarrow{\;\mathrmbfit{S}\;}\mathrmbf{List}(X)
Sound Logic
(formal) 𝒮\mathcal{S}-specification – subgraph      : 𝐑𝒮\mathrmbf{R}{\;\sqsubseteq\;}\mathcal{M}^{\mathcal{S}}
table passage      : 𝒮op𝑹𝐑𝐞𝐥(𝒜)𝒊𝒏𝒄𝒜𝐓𝐛𝐥(𝒜){\mathcal{M}^{\mathcal{S}}}^{\mathrm{op}}\!\!\xrightarrow{\;\mathrmbfit{R}_{\mathcal{M}}\;}\mathrmbf{Rel}(\mathcal{A})\xhookrightarrow{\mathrmbfit{inc}_{\mathcal{A}}}\mathrmbf{Tbl}(\mathcal{A})
(abstract) 𝒮\mathcal{S}-specification – table passage      : 𝐑op𝑻𝐑𝐞𝐥(𝒜)𝒊𝒏𝒄𝒜𝐓𝐛𝐥(𝒜){\mathrmbf{R}}^{\mathrm{op}}\!\xrightarrow{\;\mathrmbfit{T}\;}\mathrmbf{Rel}(\mathcal{A})\xhookrightarrow{\mathrmbfit{inc}_{\mathcal{A}}}\mathrmbf{Tbl}(\mathcal{A})
Table 7: Comparisons

6 FOLE Sound Logics.

6.1 Sound Logics.

Definition 11

A (lax) sound logic =𝒮,,𝒯\mathcal{L}={\langle{\mathcal{S},\mathcal{M},\mathcal{T}}\rangle} with a schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle}, consists of a (lax) 𝒮\mathcal{S}-structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} and an (abstract) 𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle}, where the structure \mathcal{M} satisfies the specification 𝒯\mathcal{T}:  𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T}.

Proposition 4

Any (lax) FOLE sound logic =𝒮,,𝒯\mathcal{L}={\langle{\mathcal{S},\mathcal{M},\mathcal{T}}\rangle} defines a FOLE relational database with constant type domain =𝐑,𝐓,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{T},\mathcal{A}}\rangle}. 454545A (lax) FOLE sound logic is described in terms of its components in Tbl. 8. In § 7.1, a FOLE relational database is defined in Def. 13 and is described in terms of its components in Tbl. 10.

Proof

By the definition of satisfaction (Def. 9 and Def. 10 in § 5.3), the tabular interpretation R𝑇𝐓𝐛𝐥(𝒜)R\xrightarrow{T}\mathrmbf{Tbl}(\mathcal{A}) (Def. 3 of § 4.4) extends to a table passage 𝐑op𝑻𝐑𝐞𝐥(𝒜)𝐓𝐛𝐥(𝒜)\mathrmbf{R}^{\text{op}}\!\xrightarrow{\mathrmbfit{T}}\mathrmbf{Rel}(\mathcal{A})\subseteq\mathrmbf{Tbl}(\mathcal{A}), which forms a relational database =𝐑,𝑻,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{T},\mathcal{A}}\rangle}.  

=𝒮,,𝒯\mathcal{L}={\langle{\mathcal{S},\mathcal{M},\mathcal{T}}\rangle} sound logic
schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle}
signature function R𝜎𝐋𝐢𝐬𝐭(𝐗)R\xrightarrow{\;\sigma\;}\mathrmbf{List}(X)
(lax) 𝒮\mathcal{S}-structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle}
(lax) entity classification =R,𝑲\mathcal{E}={\langle{R,\mathrmbfit{K}}\rangle}
attribute classification 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle}
tuple bridge 𝑲𝜏σ𝒕𝒖𝒑𝒜\mathrmbfit{K}\xRightarrow{\;\tau\;}\sigma{\,\circ\;}\mathrmbfit{tup}_{\mathcal{A}}
table function RT𝐓𝐛𝐥(𝒜)R\xrightarrow{\;T_{\mathcal{M}}\;}\mathrmbf{Tbl}(\mathcal{A})
𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle}
signature passage 𝐑𝑺𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{R}\xrightarrow{\;\mathrmbfit{S}\;}\mathrmbf{List}(X)
satisfaction 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T}
table passage 𝐑op𝑻𝐑𝐞𝐥(𝒜)𝒊𝒏𝒄𝒜𝐓𝐛𝐥(𝒜)\mathrmbf{R}^{\mathrm{op}}\!\xrightarrow{\;\mathrmbfit{T}\;}\mathrmbf{Rel}(\mathcal{A})\xhookrightarrow{\mathrmbfit{inc}_{\mathcal{A}}}\mathrmbf{Tbl}(\mathcal{A})
Table 8: Sound Logic

6.2 Sound Logic Morphisms.

Definition 12

For any two sound logics 2=𝒮2,2,𝒯2\mathcal{L}_{2}={\langle{\mathcal{S}_{2},\mathcal{M}_{2},\mathcal{T}_{2}}\rangle} and 1=𝒮1,1,𝒯1\mathcal{L}_{1}={\langle{\mathcal{S}_{1},\mathcal{M}_{1},\mathcal{T}_{1}}\rangle}, a (lax) sound logic morphism (Tbl. 13 in § 0.A.1)
2=𝒮2,2,𝒯2𝑹,κ,φ`,𝒇,𝒈𝒮1,1,𝒯1=1\mathcal{L}_{2}={\langle{\mathcal{S}_{2},\mathcal{M}_{2},\mathcal{T}_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{S}_{1},\mathcal{M}_{1},\mathcal{T}_{1}}\rangle}=\mathcal{L}_{1}
consists of a (lax) structure morphism
2=2,σ2,τ2,𝒜2r,κ,φ`,f,g1,σ1,τ1,𝒜1=1\mathcal{M}_{2}={\langle{\mathcal{E}_{2},{\langle{\sigma_{2},\tau_{2}}\rangle},\mathcal{A}_{2}}\rangle}\xrightleftharpoons{{\langle{r,\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{E}_{1},{\langle{\sigma_{1},\tau_{1}}\rangle},\mathcal{A}_{1}}\rangle}=\mathcal{M}_{1} and
an (abstract) specification morphism
𝒯2=𝐑𝟐,𝑺2,𝑿2𝑹,φ`,𝒇𝐑𝟏,𝑺1,𝑿1=𝒯1\mathcal{T}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},X_{2}}\rangle}\xrightarrow{{\langle{\mathrmbfit{R},\grave{\varphi},f}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},X_{1}}\rangle}=\mathcal{T}_{1}
along a common schema morphism
𝒮2=R2,σ2,X2r,φ`,fR1,σ1,X1=𝒮1\mathcal{S}_{2}={\langle{R_{2},\sigma_{2},X_{2}}\rangle}\xRightarrow{{\langle{r,\grave{\varphi},f}\rangle}}{\langle{R_{1},\sigma_{1},X_{1}}\rangle}=\mathcal{S}_{1}.

Let 𝐒𝐧𝐝̊\mathring{\mathrmbf{Snd}} denote the context of (lax) sound logics and their morphisms.

Note 2

At this point we know that a (lax) sound logic morphism
2=𝒮2,2,𝒯2𝑹,κ,φ`,𝒇,𝒈𝒮1,1,𝒯1=1\mathcal{L}_{2}={\langle{\mathcal{S}_{2},\mathcal{M}_{2},\mathcal{T}_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{S}_{1},\mathcal{M}_{1},\mathcal{T}_{1}}\rangle}=\mathcal{L}_{1}
has tabular interpretation passages 𝐑𝟐𝑻2𝐑𝐞𝐥(𝒜𝟐)𝐓𝐛𝐥(𝒜𝟐)\mathrmbf{R}_{2}\xrightarrow{\;\mathrmbfit{T}_{2}\;}\mathrmbf{Rel}(\mathcal{A}_{2})\subseteq\mathrmbf{Tbl}(\mathcal{A}_{2}) and 𝐑𝟏𝑻1𝐑𝐞𝐥(𝒜𝟏)𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{R}_{1}\xrightarrow{\;\mathrmbfit{T}_{1}\;}\mathrmbf{Rel}(\mathcal{A}_{1})\subseteq\mathrmbf{Tbl}(\mathcal{A}_{1}) at the source and target sound logics and a predicate passage 𝐑𝟐𝑹𝐑𝟏\mathrmbf{R}_{2}\xrightarrow{\;\mathrmbfit{R}\;}\mathrmbf{R}_{1}. We complete the picture in Prop. 5 by proving that sound logic morphisms preserve satisfaction in some way.

Proposition 5

There is a (tabular interpretation) bridge

ξ=(ψ`𝒊𝒏𝒄𝒜1)(𝑻2χ`𝒇,𝒈):𝑻2𝑹op𝑻1\xi=(\grave{\psi}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}})\bullet(\mathrmbfit{T}_{2}\circ\grave{\chi}_{{\langle{f,g}\rangle}}):\mathrmbfit{T}_{2}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}\!{\,\circ\,}\mathrmbfit{T}_{1}

that extends the collection of tabular interpretation bridge functions

{𝑻2(𝒓2)φ`𝒓2,𝒇,𝒈,κ𝒓2ξ𝒓2𝑻1(𝒓(𝒓2))r2R2}\bigl{\{}{\footnotesize{\mathrmbfit{T}_{2}(r_{2})\;\xleftarrow[\langle{\grave{\varphi}_{r_{2}},f,g,\kappa_{r_{2}}}\rangle]{\xi_{r_{2}}}\;\mathrmbfit{T}_{1}(r(r_{2}))}}\mid r_{2}\in R_{2}\bigr{\}}

(see Cor. 2 of § 4.5) to constraints: for any source constraint r2p2r2r^{\prime}_{2}\xrightarrow{p_{2}}r_{2} in 𝐑𝟐\mathrmbf{R}_{2} with 𝐑\mathrmbfit{R}-image target constraint r1p1r1r^{\prime}_{1}\xrightarrow{p_{1}}r_{1} in 𝐑𝟏\mathrmbf{R}_{1}, we have the following naturality diagram, which represents “preservation or linkage of satisfaction”. 464646The sound logic morphism 2𝐑,κ,φ`,𝐟,𝐠1\mathcal{L}_{2}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}\mathcal{L}_{1} maps the table morphism 𝐓𝟏(𝐫𝟏)𝐓𝟏(𝐩𝟏)𝐓𝟏(𝐫𝟏)\mathrmbfit{T}_{1}(r^{\prime}_{1})\xleftarrow{\mathrmbfit{T}_{1}(p_{1})}\mathrmbfit{T}_{1}(r_{1}) representing the satisfaction 1𝒮1(r1p1r1)\mathcal{M}_{1}{\;\models_{\mathcal{S}_{1}}\;}(r^{\prime}_{1}{\;\xrightarrow{p_{1}}\;}r_{1}) to the table morphism 𝐓𝟐(𝐫𝟐)𝐓𝟐(𝐩𝟐)𝐓𝟐(𝐫𝟐)\mathrmbfit{T}_{2}(r^{\prime}_{2})\xleftarrow{\mathrmbfit{T}_{2}(p_{2})}\mathrmbfit{T}_{2}(r_{2}) representing the satisfaction 2𝒮2(r2p2r2)\mathcal{M}_{2}{\;\models_{\mathcal{S}_{2}}\;}(r^{\prime}_{2}{\;\xrightarrow{p_{2}}\;}r_{2}).

𝑻2(𝒓2){\mathrmbfit{T}_{2}(r^{\prime}_{2})}𝑻1(𝒓1){\mathrmbfit{T}_{1}(r^{\prime}_{1})}𝑻2(𝒓2){\mathrmbfit{T}_{2}(r_{2})}𝑻1(𝒓1){\mathrmbfit{T}_{1}(r_{1})}ξr2\xi_{r^{\prime}_{2}}φ`r2,f,g,κr2{\langle{\grave{\varphi}_{r^{\prime}_{2}},f,g,\kappa_{r^{\prime}_{2}}}\rangle}ξr2\xi_{r_{2}}φ`r2,f,g,κr2{\langle{\grave{\varphi}_{r_{2}},f,g,\kappa_{r_{2}}}\rangle}𝑻2(𝒑2){\mathrmbfit{T}_{2}(p_{2})}𝑻1(𝒑1){\mathrmbfit{T}_{1}(p_{1})}naturality𝑻2𝜉𝑹𝑻1\overset{\textstyle{{\mathrmbfit{T}_{2}{\,\xLeftarrow{\;\,\xi\,}\,}\mathrmbfit{R}{\,\circ\,}\mathrmbfit{T}_{1}}}}{\text{naturality}}𝒊𝒏𝒕𝒆𝒓𝒑𝒓𝒆𝒕𝒂𝒕𝒊𝒐𝒏𝒔𝒐𝒖𝒓𝒄𝒆{\stackrel{{\scriptstyle\textstyle{\mathrmbfit{source}}}}{{\mathrmbfit{interpretation}}}\left\{\rule{0.0pt}{30.0pt}\right.}𝒊𝒏𝒕𝒆𝒓𝒑𝒓𝒆𝒕𝒂𝒕𝒊𝒐𝒏𝒕𝒂𝒓𝒈𝒆𝒕\left.\rule{0.0pt}{30.0pt}\right\}\stackrel{{\scriptstyle\textstyle{\mathrmbfit{target}}}}{{\mathrmbfit{interpretation}}}
Proof

The above diagram is expanded into more detail in Fig. 10.

𝒆𝒙𝒕2(𝒓2)\mathrmbfit{ext}_{\mathcal{E}_{2}}(r^{\prime}_{2})𝒆𝒙𝒕1(𝒓1)\mathrmbfit{ext}_{\mathcal{E}_{1}}(r^{\prime}_{1})𝒕𝒖𝒑𝒜2(σ2(𝒓2))\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r^{\prime}_{2}))𝒕𝒖𝒑𝒜1(𝒇(σ2(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r^{\prime}_{2})))𝒕𝒖𝒑𝒜1(σ1(𝒓1))\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r^{\prime}_{1}))κr2\kappa_{r^{\prime}_{2}}τ`f,g(σ2(r2))\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r^{\prime}_{2}))𝒕𝒖𝒑𝒜1(φ`𝒓2)\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r^{\prime}_{2}})𝒕𝒖𝒑(φ`𝒓2,𝒇,𝒈)\mathrmbfit{tup}(\grave{\varphi}_{r^{\prime}_{2}},f,g)τr2\tau_{r^{\prime}_{2}}τr1\tau_{r^{\prime}_{1}}kp2k_{p_{2}}kp1k_{p_{1}}𝒕𝒖𝒑𝒜2(𝒉𝒑2)\mathrmbfit{tup}_{\mathcal{A}_{2}}(h_{p_{2}})𝒕𝒖𝒑𝒜1(𝒇(𝒉𝒑2))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(h_{p_{2}}))𝒕𝒖𝒑𝒜1(𝒉𝒑1)\mathrmbfit{tup}_{\mathcal{A}_{1}}(h_{p_{1}})𝒆𝒙𝒕2(𝒓2)\mathrmbfit{ext}_{\mathcal{E}_{2}}(r_{2})𝒆𝒙𝒕1(𝒓1)\mathrmbfit{ext}_{\mathcal{E}_{1}}(r_{1})𝒕𝒖𝒑𝒜2(σ2(𝒓2))\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r_{2}))𝒕𝒖𝒑𝒜1(𝒇(σ2(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r_{2})))𝒕𝒖𝒑𝒜1(σ1(𝒓1))\mathrmbfit{tup}_{\mathcal{A}_{1}}(\sigma_{1}(r_{1}))κr2\kappa_{r_{2}}τ`f,g(σ2(r2))\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))𝒕𝒖𝒑𝒜1(φ`𝒓2)\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}})𝒕𝒖𝒑(φ`𝒓2,𝒇,𝒈)\mathrmbfit{tup}(\grave{\varphi}_{r_{2}},f,g)τr2\tau_{r_{2}}τr1\tau_{r_{1}}^{\prime}
Figure 10: Naturality Combined

To understand this, we discuss each part (facet) separately. In short: the front/back is due to Cor. 2 in § 4.5 for (lax) structure morphisms; the left/right hold by satisfaction of source/target sound logics; the bottom-right is due to the (abstract) specification morphism; the bottom-left is due to naturality of 𝒕𝒖𝒑𝒜2τ`𝒇,𝒈𝒇op𝒕𝒖𝒑𝒜1\mathrmbfit{tup}_{\mathcal{A}_{2}}\xLeftarrow{\;\grave{\tau}_{{\langle{f,g}\rangle}}\;}{\scriptstyle\sum}_{f}^{\mathrm{op}}{\;\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}; and the top holds for relations. We now discuss each facet in more detail.

  • front/back:

    For each source predicate r2𝐑𝟐r_{2}\in\mathrmbf{R}_{2}, the (lax) structure morphism 2r,κ,φ`,f,g1\mathcal{M}_{2}\xrightleftharpoons{{\langle{r,\kappa,\grave{\varphi},f,g}\rangle}}\mathcal{M}_{1} defines (Cor. 2 of § 4.5) the table morphism
    σ𝑺(𝒓2),𝒜2,𝒆𝒙𝒕𝑲2(𝒓2),τ𝒓2𝑻2(𝒓2)ξ𝒓2φ`𝒓2,𝒇,𝒈,κ𝒓2σ𝑺(𝒓1),𝒜1,𝒆𝒙𝒕𝑲1(𝒓1),τ𝒓1𝑻1(𝑹(𝒓2))\underset{\mathrmbfit{T}_{2}(r_{2})}{\langle{\overset{\mathrmbfit{S}}{\sigma}(r_{2}),\mathcal{A}_{2},\overset{\mathrmbfit{K}}{\mathrmbfit{ext}}_{\mathcal{E}_{2}}(r_{2}),\tau_{r_{2}}}\rangle}\xleftarrow[\xi_{r_{2}}]{\;{\langle{\grave{\varphi}_{r_{2}},f,g,\kappa_{r_{2}}}\rangle}\;}\underset{\mathrmbfit{T}_{1}(\mathrmbfit{R}(r_{2}))}{\langle{\overset{\mathrmbfit{S}}{\sigma}(r_{1}),\mathcal{A}_{1},\overset{\mathrmbfit{K}}{\mathrmbfit{ext}}_{\mathcal{E}_{1}}(r_{1}),\tau_{r_{1}}}\rangle}
    (same for r2𝐑𝟐r^{\prime}_{2}\in\mathrmbf{R}_{2}).

  • left/right (sat):

    Satisfaction for source/target sound logics (§ 5.3) define table morphisms
    σ(ri),𝒆𝒙𝒕(𝒓𝒊),τ𝒓𝒊𝑻𝒊(𝒑𝒊)𝒉𝒑𝒊,𝒌𝒑𝒊σ(𝒓𝒊),𝒆𝒙𝒕(𝒓𝒊),τ𝒓𝒊{\langle{\sigma(r^{\prime}_{i}),\mathrmbfit{ext}_{\mathcal{E}}(r^{\prime}_{i}),\tau_{r^{\prime}_{i}}}\rangle}\xleftarrow[\mathrmbfit{T}_{i}(p_{i})]{\;{\langle{h_{p_{i}},k_{p_{i}}}\rangle}\;}{\langle{\sigma(r_{i}),\mathrmbfit{ext}_{\mathcal{E}}(r_{i}),\tau_{r_{i}}}\rangle},
    which are equivalent to naturality of the bridges 𝑲𝒊𝑻𝒊τ𝒜𝒊τ𝒊𝑺𝒊op𝒕𝒖𝒑𝒜𝒊\mathrmbfit{K}_{i}\xRightarrow[\mathrmbfit{T}_{i}{\,\circ\,}\tau_{\mathcal{A}_{i}}]{\,\tau_{i}\;}\mathrmbfit{S}_{i}^{\mathrm{op}}\!{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{i}}.

  • bottom right:

    The structure and specification morphisms have the same underlying schema morphism 𝒮2=R2,σ2,X2r,φ`,fR1,σ1,X1=𝒮1\mathcal{S}_{2}={\langle{R_{2},\sigma_{2},X_{2}}\rangle}\xRightarrow{{\langle{r,\grave{\varphi},f}\rangle}}{\langle{R_{1},\sigma_{1},X_{1}}\rangle}=\mathcal{S}_{1}. Apply the tuple function 𝒕𝒖𝒑𝒜1\mathrmbfit{tup}_{\mathcal{A}_{1}} to the naturality of the bridge 𝑺2𝒇φ`𝑹𝑺1\mathrmbfit{S}_{2}{\;\circ\;}{\scriptstyle\sum}_{f}\xRightarrow{\;\grave{\varphi}\;\,}\mathrmbfit{R}{\;\circ\;}\mathrmbfit{S}_{1} for any abstract 𝒮\mathcal{S}-constraint r2p2r2r^{\prime}_{2}\xrightarrow{\,p_{2}\,}r_{2} in 𝐑𝟐\mathrmbf{R}_{2}: for any constraint r2p2r2r^{\prime}_{2}\xrightarrow{p_{2}}r_{2} in 𝐑𝟐\mathrmbf{R}_{2}, the following diagram commutes.

    f(σ2(r2)){\scriptstyle\sum}_{f}(\sigma_{2}(r^{\prime}_{2}))σ1(r1)\sigma_{1}(r^{\prime}_{1})f(σ2(r2)){\scriptstyle\sum}_{f}(\sigma_{2}(r_{2}))σ1(r1)\sigma_{1}(r^{\prime}_{1})φ`r2\grave{\varphi}_{r^{\prime}_{2}}φ`r2\grave{\varphi}_{r^{\prime}_{2}}φ`r2\grave{\varphi}_{r_{2}}φ`r2\grave{\varphi}_{r_{2}}f(hp2)=hp2{\scriptstyle\sum}_{f}(h_{p_{2}})=h_{p_{2}}hp1h_{p_{1}}φ`\grave{\varphi}naturality
  • bottom left:

    The tuple bridge 𝒕𝒖𝒑𝒜2τ`𝒇,𝒈𝒇op𝒕𝒖𝒑𝒜1\mathrmbfit{tup}_{\mathcal{A}_{2}}\xLeftarrow{\;\grave{\tau}_{{\langle{f,g}\rangle}}\;}{\scriptstyle\sum}_{f}^{\mathrm{op}}{\;\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}} of the type domain morphism 𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1} (see footnote 28 in § 4.2) satisfies naturality: for any constraint r2p2r2r^{\prime}_{2}\xrightarrow{p_{2}}r_{2} in 𝐑𝟐\mathrmbf{R}_{2}, the following diagram commutes.

    𝒕𝒖𝒑𝒜2(σ2(𝒓2))\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r_{2}))𝒕𝒖𝒑𝒜1(𝒇(σ2(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r_{2})))𝒕𝒖𝒑𝒜2(σ2(𝒓2))\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r_{2}))𝒕𝒖𝒑𝒜1(𝒇(σ2(𝒓2)))\mathrmbfit{tup}_{\mathcal{A}_{1}}({\scriptstyle\sum}_{f}(\sigma_{2}(r_{2})))τ`f,g(σ2(r2))\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))(-)g{(\mbox{-})}{\,\cdot\,}g(-)g{(\mbox{-})}{\,\cdot\,}gτ`f,g(σ2(r2))\grave{\tau}_{{\langle{f,g}\rangle}}(\sigma_{2}(r_{2}))kp2k_{p_{2}}kp1k_{p_{1}}τ`f,g\grave{\tau}_{{\langle{f,g}\rangle}}naturality
  • top:

    By the other naturality conditions just proven, for any constraint r2p2r2r^{\prime}_{2}\xrightarrow{p_{2}}r_{2} in 𝐑𝟐\mathrmbf{R}_{2} with 𝑹\mathrmbfit{R}-image r1p1r1r^{\prime}_{1}\xrightarrow{p_{1}}r_{1} in 𝐑𝟏\mathrmbf{R}_{1}, we know that kp1κr2τr2=κr2kp2τr2k_{p_{1}}{\,\cdot\,}\kappa_{r^{\prime}_{2}}{\,\cdot\,}\tau_{r^{\prime}_{2}}=\kappa_{r_{2}}{\,\cdot\,}k_{p_{2}}{\,\cdot\,}\tau_{r^{\prime}_{2}}. If the tuple map 𝒆𝒙𝒕2(𝒓2)τ𝒓2𝒕𝒖𝒑𝒜2(σ2(𝒓2))\mathrmbfit{ext}_{\mathcal{E}_{2}}(r^{\prime}_{2})\xrightarrow{\tau_{r^{\prime}_{2}}}\mathrmbfit{tup}_{\mathcal{A}_{2}}(\sigma_{2}(r^{\prime}_{2})) were injective, the bridge 𝒆𝒙𝒕2𝑲2𝜅𝒓𝑹𝒆𝒙𝒕1𝑲1\overset{\mathrmbfit{K}_{2}}{\mathrmbfit{ext}_{\mathcal{E}_{2}}}\xLeftarrow{\;\kappa\;}\overset{\mathrmbfit{R}}{r}{\;\circ\;}\overset{\mathrmbfit{K}_{1}}{\mathrmbfit{ext}_{\mathcal{E}_{1}}} would satisfy “extent naturality”:

    𝒆𝒙𝒕2(𝒓2)\mathrmbfit{ext}_{\mathcal{E}_{2}}(r^{\prime}_{2})𝒆𝒙𝒕1(𝒓1)\mathrmbfit{ext}_{\mathcal{E}_{1}}(r^{\prime}_{1})𝒆𝒙𝒕2(𝒓2)\mathrmbfit{ext}_{\mathcal{E}_{2}}(r_{2})𝒆𝒙𝒕1(𝒓1)\mathrmbfit{ext}_{\mathcal{E}_{1}}(r_{1})κr2\kappa_{r^{\prime}_{2}}kkkkκr2\kappa_{r_{2}}kp2k_{p_{2}}kp1k_{p_{1}}κ\kappanaturality

    Here, we use the image part of the table-relation reflection 𝒊𝒎𝒊𝒏𝒄:𝐓𝐛𝐥𝐑𝐞𝐥{\langle{\mathrmbfit{im}{\;\dashv\;}\mathrmbfit{inc}}\rangle}:\mathrmbf{Tbl}{\;\rightleftarrows\;}\mathrmbf{Rel}. 474747The reflection 𝒊𝒎𝒊𝒏𝒄:𝐓𝐛𝐥𝐑𝐞𝐥{\langle{\mathrmbfit{im}{\;\dashv\;}\mathrmbfit{inc}}\rangle}:\mathrmbf{Tbl}{\;\rightleftarrows\;}\mathrmbf{Rel} (“The FOLE Table”[11]) of the context of relations into the context of tables embodies the notion of “informational equivalence”. Then, we use diagonal fill-in Fig. 10. Hence, extent naturality holds for the relational interpretation into 𝐑𝐞𝐥\mathrmbf{Rel}.  

Proposition 6

A (lax) sound logic morphism
2=𝒮2,2,2𝐑,κ,φ`,𝐟,𝐠𝒮1,1,1=1\mathcal{L}_{2}={\langle{\mathcal{S}_{2},\mathcal{M}_{2},\mathcal{R}_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{S}_{1},\mathcal{M}_{1},\mathcal{R}_{1}}\rangle}=\mathcal{L}_{1}
defines a database morphism

2=𝐑𝟐,𝐒𝟐,𝒜𝟐,𝐊𝟐,τ𝟐𝐑,ξ𝐑,κ,φ`,𝐟,𝐠𝐑𝟏,𝐒𝟏,𝒜𝟏,𝐊𝟏,τ𝟏=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},\mathcal{A}_{2},\mathrmbfit{K}_{2},\tau_{2}}\rangle}\xrightarrow[\langle{\mathrmbfit{R},\xi}\rangle]{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},\mathcal{A}_{1},\mathrmbfit{K}_{1},\tau_{1}}\rangle}=\mathcal{R}_{1}

whose tabular interpretation bridge 𝐓𝟐𝜉𝐑𝐓𝟏{\mathrmbfit{T}_{2}{\,\xLeftarrow{\;\,\xi\,}\,}\mathrmbfit{R}{\,\circ\,}\mathrmbfit{T}_{1}} factors
ξ=(ψ`𝐢𝐧𝐜𝒜𝟏)(𝐓𝟐χ`𝐟,𝐠)\xi=(\grave{\psi}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}})\bullet(\mathrmbfit{T}_{2}\circ\grave{\chi}_{{\langle{f,g}\rangle}})
through the fiber adjunction 𝐓𝐛𝐥(𝒜𝟐)𝐭𝐛𝐥´𝐟,𝐠𝐭𝐛𝐥`𝐟,𝐠𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{2})\xleftarrow{\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\;\dashv\;\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}}\mathrmbf{Tbl}(\mathcal{A}_{1}).

Proof

By Prop. 4 the sound logics 2\mathcal{L}_{2} and 1\mathcal{L}_{1} define two databases 2\mathcal{R}_{2} and 1\mathcal{R}_{1}. By Prop. 5 the (lax) sound logic morphism 2𝑹,κ,φ`,𝒇,𝒈1\mathcal{L}_{2}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}\mathcal{L}_{1} defines a database morphism 𝐑𝟐,𝑻2𝑹,ξ𝐑𝟏,𝑻1{\langle{\mathrmbf{R}_{2},\mathrmbfit{T}_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\xi}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{T}_{1}}\rangle}, whose tabular interpretation bridge 𝑻2𝜉𝑹𝑻1{\mathrmbfit{T}_{2}{\,\xLeftarrow{\;\,\xi\,}\,}\mathrmbfit{R}{\,\circ\,}\mathrmbfit{T}_{1}} factors as above.  

Theorem 6.1

There is a passage 𝐒𝐧𝐝̊op𝐝𝐛̊𝐃𝐛\mathring{\mathrmbf{Snd}}^{\mathrm{op}}\!\xrightarrow{\;\mathring{\mathrmbfit{db}}\;}\mathrmbf{Db}.

Proof

A sound logic =𝒮,,𝒯\mathcal{L}={\langle{\mathcal{S},\mathcal{M},\mathcal{T}}\rangle} is mapped to its associated database =𝐑,𝑲,𝑺,τ,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{K},\mathrmbfit{S},\tau,\mathcal{A}}\rangle} by Prop. 4. A sound logic morphism 2𝑹,𝒌,φ`,𝒇,𝒈1\mathcal{L}_{2}\xrightleftharpoons{{\langle{\mathrmbfit{R},k,\grave{\varphi},f,g}\rangle}}\mathcal{L}_{1} is mapped to its associated database morphism 2𝑹,κ,φ`,𝒇,𝒈1\mathcal{R}_{2}\xrightarrow{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}\mathcal{R}_{1} by Prop. 6.  

sound logic morphism 2=𝒮2,2,𝒯2𝑹,κ,φ`,𝒇,𝒈𝒮1,1,𝒯1=1\mathcal{L}_{2}={\langle{\mathcal{S}_{2},\mathcal{M}_{2},\mathcal{T}_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{S}_{1},\mathcal{M}_{1},\mathcal{T}_{1}}\rangle}=\mathcal{L}_{1} \bullet schema morphism 𝒮2=R2,σ2,X2r,φ`,fR1,σ1,X1=𝒮1\mathcal{S}_{2}={\langle{R_{2},\sigma_{2},X_{2}}\rangle}\xRightarrow{\;{\langle{r,\grave{\varphi},f}\rangle}\;}{\langle{R_{1},\sigma_{1},X_{1}}\rangle}=\mathcal{S}_{1} \bullet (lax) struc morph 2=R2,𝑲22,σ2,τ2,𝒜2r,κ,φ`,f,gR1,𝑲11,σ1,τ1,𝒜1=1\mathcal{M}_{2}={\langle{\overset{\textstyle{\mathcal{E}_{2}}}{\langle{R_{2},\mathrmbfit{K}_{2}}\rangle},\sigma_{2},\tau_{2},\mathcal{A}_{2}}\rangle}\xrightleftharpoons{{\langle{r,\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\overset{\textstyle{\mathcal{E}_{1}}}{\langle{R_{1},\mathrmbfit{K}_{1}}\rangle},\sigma_{1},\tau_{1},\mathcal{A}_{1}}\rangle}=\mathcal{M}_{1} \circ type domain morphism 𝒜2=X2,Y2,𝒜2f,gX1,Y1,𝒜1=𝒜1\mathcal{A}_{2}={\langle{X_{2},Y_{2},\models_{\mathcal{A}_{2}}}\rangle}\xrightleftharpoons{{\langle{f,g}\rangle}}{\langle{X_{1},Y_{1},\models_{\mathcal{A}_{1}}}\rangle}=\mathcal{A}_{1} \circ (lax) entity infomorphism 𝒦2=𝐑𝟐,𝑲2𝑹,κ𝐑𝟏,𝑲1=𝒦1\mathcal{K}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{K}_{2}}\rangle}\xrightarrow{\;{\langle{\mathrmbfit{R},\kappa}\rangle}\;}{\langle{\mathrmbf{R}_{1},\mathrmbfit{K}_{1}}\rangle}=\mathcal{K}_{1} which satisfy the constraint
         κτ2=(𝑹opτ1)(φ`op𝒕𝒖𝒑𝒜1)(𝑺2opτ`𝒇,𝒈)\kappa\bullet\tau_{2}=(\mathrmbfit{R}^{\mathrm{op}}\!{\circ\;}\tau_{1}){\;\bullet\;}(\grave{\varphi}^{\mathrm{op}}\!{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}){\;\bullet\;}(\mathrmbfit{S}_{2}^{\mathrm{op}}{\;\circ\;}\grave{\tau}_{{\langle{f,g}\rangle}})
\bullet specification morphism 𝒯2=𝐑𝟐,𝑺2,𝑿2𝑹,φ`,𝒇𝐑𝟏,𝑺1,𝑿1=𝒯1\mathcal{T}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},X_{2}}\rangle}\xrightarrow{{\langle{\mathrmbfit{R},\grave{\varphi},f}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},X_{1}}\rangle}=\mathcal{T}_{1}

Table 9: Sound Logic Morphism

7 FOLE Databases.

A FOLE relational database =𝐑,𝑻\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{T}}\rangle} consists of a context 𝐑\mathrmbf{R} of predicates linked by constraints and an interpretation diagram 𝑻:𝐑op𝐓𝐛𝐥\mathrmbfit{T}:\mathrmbf{R}^{\mathrm{op}}\rightarrow\mathrmbf{Tbl} of tables. A relational database morphism 𝑹,ξ:𝐑𝟐,𝑻2𝐑𝟏,𝑻1{\langle{\mathrmbfit{R},\xi}\rangle}:{\langle{\mathrmbf{R}_{2},\mathrmbfit{T}_{2}}\rangle}\leftarrow{\langle{\mathrmbf{R}_{1},\mathrmbfit{T}_{1}}\rangle} (Tbl. 13 in § 0.A.1) is a diagram morphism (LHS Fig. 12 in § 7.2) consisting of a shape-changing passage 𝐑𝟐𝑹𝐑𝟏\mathrmbf{R}_{2}\xrightarrow{\>\mathrmbfit{R}\>}\mathrmbf{R}_{1} and a bridge ξ:𝑻2𝑹op𝑻1\xi:\mathrmbfit{T}_{2}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{T}_{1}. Composition is component-wise. The mathematical context of FOLE relational databases is denoted by 𝐃𝐁=𝐓𝐛𝐥=((-)op𝐓𝐛𝐥)\mathrmbf{DB}=\mathrmbf{Tbl}^{\scriptscriptstyle{\Downarrow}}=\bigl{(}{(\mbox{-})}^{\mathrm{op}}{\Downarrow\,}\mathrmbf{Tbl}\bigr{)}. 494949See § 4.2.1 in the paper “The FOLE Database” [12].

7.1 Databases.

Definition 13

A FOLE database =𝐑,𝑻,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{T},\mathcal{A}}\rangle}, with constant type domain 𝒜\mathcal{A}, is a database with an interpretation diagram 𝑻:𝐑op𝐓𝐛𝐥(𝒜)𝐓𝐛𝐥\mathrmbfit{T}:\mathrmbf{R}^{\mathrm{op}}\rightarrow\mathrmbf{Tbl}(\mathcal{A})\hookrightarrow\mathrmbf{Tbl} that factors through the context of 𝒜\mathcal{A}-tables.

𝐑op\mathrmbf{R}^{\mathrm{op}}𝐓𝐛𝐥(𝒜)\mathrmbf{Tbl}(\mathcal{A})𝐋𝐢𝐬𝐭(𝐗)op\mathrmbf{List}(X)^{\mathrm{op}}𝐒𝐞𝐭\mathrmbf{Set}𝑻\mathrmbfit{T}𝑲\mathrmbfit{K}𝒌𝒆𝒚𝒜\mathrmbfit{key}_{\mathcal{A}}𝒔𝒊𝒈𝒏𝒜op\mathrmbfit{sign}_{\mathcal{A}}^{\mathrm{op}}𝑺op\mathrmbfit{S}^{\mathrm{op}}𝒕𝒖𝒑𝒜\mathrmbfit{tup}_{\mathcal{A}} τ𝒜\;\tau_{\mathcal{A}} \Longrightarrow
Figure 11: Database: Type Domain
Definition 14

Using 𝒜\mathcal{A}-table projection passages 505050See § 3.4.1 of the paper “The FOLE Table” [11]. (Fig. 11), a database =𝐑,𝑲,𝑺,τ,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{K},\mathrmbfit{S},\tau,\mathcal{A}}\rangle}, with constant type domain 𝒜\mathcal{A}, consists of

  • \bullet

    a context 𝐑\mathrmbf{R} of predicates,

  • \bullet

    a relational database schema 𝒮=𝐑,𝑺,𝑿\mathcal{S}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle} with signature diagram 𝑺=𝑻op𝒔𝒊𝒈𝒏𝒜:𝐑𝐋𝐢𝐬𝐭(𝐗)\mathrmbfit{S}=\mathrmbfit{T}^{\mathrm{op}}{\circ\;}\mathrmbfit{sign}_{\mathcal{A}}:\mathrmbf{R}\rightarrow\mathrmbf{List}(X),

  • \bullet

    a key diagram 𝑲=𝑻𝒌𝒆𝒚𝒜:𝐑op𝐒𝐞𝐭\mathrmbfit{K}=\mathrmbfit{T}{\;\circ\;}\mathrmbfit{key}_{\mathcal{A}}:\mathrmbf{R}^{\mathrm{op}}\rightarrow\mathrmbf{Set}, and

  • \bullet

    a tuple bridge τ=𝑻τ𝒜:𝑲𝑺op𝒕𝒖𝒑𝒜\tau=\mathrmbfit{T}{\,\circ\,}\tau_{\mathcal{A}}:\mathrmbfit{K}\Rightarrow\mathrmbfit{S}^{\mathrm{op}}\!{\,\circ\,}\mathrmbfit{tup}_{\mathcal{A}}.

=𝐑,𝑻,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{T},\mathcal{A}}\rangle} relational database
predicate context 𝐑\mathrmbf{R}
type domain (attribute classification) 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle}
table passage 𝐑op𝑻𝐓𝐛𝐥(𝒜)\mathrmbf{R}^{\text{op}}\xrightarrow{\;\mathrmbfit{T}\;}\mathrmbf{Tbl}(\mathcal{A})
=𝐑,𝑺,𝑲,τ,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{S},\mathrmbfit{K},\tau,\mathcal{A}}\rangle}
database schema (specification) 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle}
signature passage 𝐑𝑻op𝒔𝒊𝒈𝒏𝒜𝑺𝐋𝐢𝐬𝐭(𝐗)\mathrmbf{R}\xrightarrow[\mathrmbfit{T}^{\mathrm{op}}{\circ\;}\mathrmbfit{sign}_{\mathcal{A}}]{\mathrmbfit{S}}\mathrmbf{List}(X)
key passage 𝐑op𝑻𝒌𝒆𝒚𝒜𝑲𝐒𝐞𝐭\mathrmbf{R}^{\mathrm{op}}\xrightarrow[\mathrmbfit{T}{\;\circ\;}\mathrmbfit{key}_{\mathcal{A}}]{\mathrmbfit{K}}\mathrmbf{Set}
tuple bridge 𝑲𝑻τ𝒜𝜏𝑺op𝒕𝒖𝒑𝒜\mathrmbfit{K}\xRightarrow[\mathrmbfit{T}{\,\circ\,}\tau_{\mathcal{A}}]{\tau}\mathrmbfit{S}^{\mathrm{op}}\!{\,\circ\,}\mathrmbfit{tup}_{\mathcal{A}}
Table 10: Relational Database
Proposition 7

The constraint-free aspect of a FOLE database =𝐑,𝐊,𝐒,τ,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{K},\mathrmbfit{S},\tau,\mathcal{A}}\rangle}, with constant type domain 𝒜\mathcal{A}, is the same as a (lax) FOLE structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} in 𝐒𝐭𝐫𝐮𝐜̊\mathring{\mathrmbf{Struc}}.

Proof

We define the various components of the (lax) structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} listed in Def. 3 of § 4.4 and pictured in Fig. 4 of § 4.1.

  • 𝒜\mathcal{A}:

    The attribute classification (typed domain) 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle} is given.

  • σ\sigma:

    The schema (type hypergraph) 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} consists of the set RR of relation symbols (predicates) and the signature map σ:R𝐋𝐢𝐬𝐭(𝐗):𝐫σ(𝐫)=𝑺(𝒓)\sigma:R\rightarrow\mathrmbf{List}(X):r\mapsto\sigma(r)=\mathrmbfit{S}(r). This is the constraint-free aspect of the database schema 𝒮=𝐑,𝑺,𝑿\mathcal{S}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle} with signature diagram 𝑺:𝐑𝐋𝐢𝐬𝐭(𝐗)\mathrmbfit{S}:\mathrmbf{R}\rightarrow\mathrmbf{List}(X).

  • \mathcal{E}:

    The (lax) entity classification =R,𝑲\mathcal{E}={\langle{R,\mathrmbfit{K}}\rangle} consists of the set RR of relation symbols (predicates) and the key function R𝑲𝐒𝐞𝐭R\xrightarrow{\mathrmbfit{K}}\mathrmbf{Set}. This is the constraint-free aspect of the key diagram 𝐑op𝑲𝐒𝐞𝐭\mathrmbf{R}^{\mathrm{op}}\xrightarrow{\mathrmbfit{K}}\mathrmbf{Set}.

  • τ\tau:

    The tuple bridge τ:𝑲σ𝒕𝒖𝒑𝒜\tau:\mathrmbfit{K}\Rightarrow\sigma{\;\circ\;}\mathrmbfit{tup}_{\mathcal{A}} is the constraint-free aspect of the tuple bridge τ:𝑲𝜏𝑺op𝒕𝒖𝒑𝒜\tau:\mathrmbfit{K}\xRightarrow{\,\tau}\mathrmbfit{S}^{\mathrm{op}}\!{\,\circ\,}\mathrmbfit{tup}_{\mathcal{A}}.  

Proposition 8

Any FOLE database =𝐑,𝐓,𝒜=𝐑,𝐊,𝐒,τ,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{T},\mathcal{A}}\rangle}={\langle{\mathrmbf{R},\mathrmbfit{K},\mathrmbfit{S},\tau,\mathcal{A}}\rangle} in 𝐃𝐛(𝒜)\mathrmbf{Db}(\mathcal{A}) defines a (lax) FOLE sound logic =𝒮,,𝒯\mathcal{L}={\langle{\mathcal{S},\mathcal{M},\mathcal{T}}\rangle} in 𝐒𝐧𝐝̊\mathring{\mathrmbf{Snd}}.

Proof

The schema 𝒮=R,σ,X\mathcal{S}={\langle{R,\sigma,X}\rangle} is the structure schema (mentioned above), the constraint-free aspect of the database schema 𝐑,𝑺,𝑿{\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle}. The 𝒮\mathcal{S}-structure =,σ,τ,𝒜\mathcal{M}={\langle{\mathcal{E},\sigma,\tau,\mathcal{A}}\rangle} is defined in Prop. 7 above. The (abstract) 𝒮\mathcal{S}-specification 𝒯=𝐑,𝑺,𝑿\mathcal{T}={\langle{\mathrmbf{R},\mathrmbfit{S},X}\rangle} is the same as the database schema, as discussed in § 5.1. By Prop 3 in § 5.3, the tabular interpretation passage 𝐑op𝑻𝐓𝐛𝐥(𝒜)\mathrmbf{R}^{\mathrm{op}}\!\xrightarrow{\mathrmbfit{T}\;}\mathrmbf{Tbl}(\mathcal{A}) demonstrates satisfaction 𝒮𝒯\mathcal{M}{\;\models_{\mathcal{S}}\;}\mathcal{T}.  

7.2 Database Morphisms.

A FOLE database morphism, with constant type domain morphism f,g:𝒜2𝒜1{\langle{f,g}\rangle}:\mathcal{A}_{2}\rightleftarrows\mathcal{A}_{1}, is a FOLE database morphism 𝑹,ξ:𝐑𝟐,𝑻2𝐑𝟏,𝑻1{\langle{\mathrmbfit{R},\xi}\rangle}:{\langle{\mathrmbf{R}_{2},\mathrmbfit{T}_{2}}\rangle}\leftarrow{\langle{\mathrmbf{R}_{1},\mathrmbfit{T}_{1}}\rangle}, whose tabular interpretation bridge 𝑻2𝜉𝑹𝑻1{\mathrmbfit{T}_{2}{\,\xLeftarrow{\;\,\xi\,}\,}\mathrmbfit{R}{\,\circ\,}\mathrmbfit{T}_{1}} factors (Fig. 12)

ξ=(ψ`𝒊𝒏𝒄𝒜1)(𝑻2χ`𝒇,𝒈)\xi=(\grave{\psi}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}})\bullet(\mathrmbfit{T}_{2}\circ\grave{\chi}_{{\langle{f,g}\rangle}}) (10)

through the fiber adjunction 𝐓𝐛𝐥(𝒜𝟐)𝒕𝒃𝒍´𝐟,𝐠𝒕𝒃𝒍`𝐟,𝐠𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{2})\xleftarrow{\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\;\dashv\;\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}}\mathrmbf{Tbl}(\mathcal{A}_{1}) 515151 There is a table fiber adjunction 𝐓𝐛𝐥(𝒜𝟐)𝒕𝒃𝒍´𝐟,𝐠𝒕𝒃𝒍`𝐟,𝐠𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{2})\xleftarrow{{\langle{\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}{\!\dashv\,}\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}}\rangle}}\mathrmbf{Tbl}(\mathcal{A}_{1}) representing tabular flow along a type domain morphism 𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1}. See § 3.4.2 of Kent [11]. The fiber passage 𝐓𝐛𝐥(𝒜𝟐)𝒕𝒃𝒍´𝐟,𝐠𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{2})\xleftarrow{\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}}\mathrmbf{Tbl}(\mathcal{A}_{1}) is define in terms of the tuple bridge fop𝒕𝒖𝒑𝒜2τ´𝒇,𝒈𝒕𝒖𝒑𝒜1{f^{\ast}}^{\mathrm{op}}{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{2}}\xLeftarrow{\;\acute{\tau}_{{\langle{f,g}\rangle}}\;}\mathrmbfit{tup}_{\mathcal{A}_{1}} and the substitution function 𝐋𝐢𝐬𝐭(𝐗𝟐)𝐟𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{2})\xleftarrow{f^{\ast}}\mathrmbf{List}(X_{1}). The adjoint fiber passage 𝐓𝐛𝐥(𝒜𝟐)𝒕𝒃𝒍`𝐟,𝐠𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{2})\xrightarrow{\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}}\mathrmbf{Tbl}(\mathcal{A}_{1}) is define in terms the adjoints, the tuple bridge 𝒕𝒖𝒑𝒜2τ`𝒇,𝒈𝒇op𝒕𝒖𝒑𝒜1\mathrmbfit{tup}_{\mathcal{A}_{2}}\xLeftarrow{\;\grave{\tau}_{{\langle{f,g}\rangle}}\;}{\scriptstyle\sum}_{f}^{\mathrm{op}}{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}} and the existential quantifier function 𝐋𝐢𝐬𝐭(𝐗𝟐)𝐟𝐋𝐢𝐬𝐭(𝐗𝟏)\mathrmbf{List}(X_{2})\xrightarrow{{\scriptscriptstyle\sum}_{f}}\mathrmbf{List}(X_{1}). in terms of

  • \bullet

    some bridge ψ`:𝑻2𝒕𝒃𝒍`𝒇,𝒈𝑹op𝑻1\grave{\psi}:\mathrmbfit{T}_{2}\circ\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{T}_{1} and

  • \bullet

    the inclusion bridge χ`f,g:𝒊𝒏𝒄𝒜2𝒕𝒃𝒍`𝒇,𝒈𝒊𝒏𝒄𝒜1\grave{\chi}_{{\langle{f,g}\rangle}}:\mathrmbfit{inc}_{\mathcal{A}_{2}}\Leftarrow\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}} 525252Equivalently, in terms of their levo bridge adjoints in Tbl. 12 of § 0.A.1. .

We normally just use the bridge restriction ψ`\grave{\psi} for the database morphism. The original definition can be computed with the factorization in Disp. 10.

𝐑𝟐op\mathrmbf{R}_{2}^{\mathrm{op}}𝐑𝟏op\mathrmbf{R}_{1}^{\mathrm{op}}𝐓𝐛𝐥\mathrmbf{Tbl}𝑹op\mathrmbfit{R}^{\mathrm{op}}𝑻2\mathrmbfit{T}_{2}𝑻1\mathrmbfit{T}_{1} 𝜉\xLeftarrow{\;\;\;\xi\;\;}
==
𝐑𝟐op\mathrmbf{R}_{2}^{\mathrm{op}}𝐑𝟏op\mathrmbf{R}_{1}^{\mathrm{op}}𝐓𝐛𝐥(𝒜𝟐)\mathrmbf{Tbl}(\mathcal{A}_{2})𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{1})𝐓𝐛𝐥\mathrmbf{Tbl}𝑹op\mathrmbfit{R}^{\mathrm{op}}𝑻2\mathrmbfit{T}_{2}𝑻1\mathrmbfit{T}_{1}𝒕𝒃𝒍`f,g\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}𝒊𝒏𝒄𝒜2\mathrmbfit{inc}_{\mathcal{A}_{2}}𝒊𝒏𝒄𝒜1\mathrmbfit{inc}_{\mathcal{A}_{1}} ψ`\grave{\psi} \Longleftarrow χ`f,g\xLeftarrow{\grave{\chi}_{{\langle{f,g}\rangle}}}
Figure 12: Database Morphism
levo dextro
𝐓𝐛𝐥(𝒜𝟐)\mathrmbf{Tbl}(\mathcal{A}_{2})𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{1})𝐓𝐛𝐥\mathrmbf{Tbl}𝒕𝒃𝒍´f,g\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}𝒊𝒏𝒄𝒜2\mathrmbfit{inc}_{\mathcal{A}_{2}}𝒊𝒏𝒄𝒜1\mathrmbfit{inc}_{\mathcal{A}_{1}} χ´f,g\acute{\chi}_{{\langle{f,g}\rangle}} \Longleftarrow
𝐓𝐛𝐥(𝒜𝟐)\mathrmbf{Tbl}(\mathcal{A}_{2})𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{1})𝐓𝐛𝐥\mathrmbf{Tbl}𝒕𝒃𝒍`f,g\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}𝒊𝒏𝒄𝒜2\mathrmbfit{inc}_{\mathcal{A}_{2}}𝒊𝒏𝒄𝒜1\mathrmbfit{inc}_{\mathcal{A}_{1}} χ`f,g\grave{\chi}_{{\langle{f,g}\rangle}} \Longleftarrow
𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{\;{\langle{f,g}\rangle}\;}\mathcal{A}_{1}
levodextroχ´f,g:𝒕𝒃𝒍´f,g𝒊𝒏𝒄𝒜2𝒊𝒏𝒄𝒜1χ`f,g:𝒊𝒏𝒄𝒜2𝒕𝒃𝒍`𝒇,𝒈𝒊𝒏𝒄𝒜1χ´f,g=(ηf,g𝒊𝒏𝒄𝒜1)(𝒕𝒃𝒍´𝒇,𝒈χ`𝒇,𝒈)χ`f,g=(𝒕𝒃𝒍`f,gχ´f,g)(εf,g𝒊𝒏𝒄𝒜2)\begin{array}[]{|@{\hspace{5pt}}l@{\hspace{15pt}}l@{\hspace{5pt}}|}\lx@intercol\text{levo}\hfil\lx@intercol&\lx@intercol\text{dextro}\hfil\lx@intercol\\ \hline\cr\hskip 5.0pt\lx@intercol\acute{\chi}_{{\langle{f,g}\rangle}}:\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{2}}\Leftarrow\mathrmbfit{inc}_{\mathcal{A}_{1}}\hfil\hskip 15.0&\grave{\chi}_{{\langle{f,g}\rangle}}:\mathrmbfit{inc}_{\mathcal{A}_{2}}\Leftarrow\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}}\hfil\hskip 5.0\\ \hskip 5.0pt\lx@intercol\acute{\chi}_{{\langle{f,g}\rangle}}=(\eta_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}})\bullet(\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\grave{\chi}_{{\langle{f,g}\rangle}})\hfil\hskip 15.0&\grave{\chi}_{{\langle{f,g}\rangle}}=(\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\acute{\chi}_{{\langle{f,g}\rangle}})\bullet(\varepsilon_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{2}})\rule[-7.0pt]{0.0pt}{10.0pt}\hfil\hskip 5.0\\ \hline\cr\end{array}
Figure 13: Inclusion Bridge: Tables

The inclusion bridges for the table fiber adjunction 535353Notation from § 3.4.2.

𝐓𝐛𝐥(𝒜𝟐)\mathrmbf{Tbl}(\mathcal{A}_{2})𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{1})𝒕𝒃𝒍´f,g\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}𝒕𝒃𝒍`f,g\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}ηf,g\eta_{{\langle{f,g}\rangle}}{\;\dashv\;}εf,g\varepsilon_{{\langle{f,g}\rangle}}

are defined by

f(I1,s1),τ´f,g(I1,s1)(K1,t1)𝒕𝒃𝒍´f,g(𝒯1)εf(I1,s1),f,g,1K1χ´f,g(𝒯1)I1,s1,K1,t1𝒯1\overset{\textstyle{\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}(\mathcal{T}_{1})}}{\overbrace{\langle{f^{\ast}(I_{1},s_{1}),{\scriptscriptstyle\sum}_{\acute{\tau}_{{\langle{f,g}\rangle}}(I_{1},s_{1})}(K_{1},t_{1})}\rangle}}\xleftarrow[{\langle{\varepsilon_{f}(I_{1},s_{1}),f,g,1_{K_{1}}}\rangle}]{\acute{\chi}_{{\langle{f,g}\rangle}}(\mathcal{T}_{1})}\overset{\textstyle{\mathcal{T}_{1}}}{\overbrace{\langle{I_{1},s_{1},K_{1},t_{1}}\rangle}},
I2,s2,K2,t2𝒯21I2,f,g,k^χ`f,g(𝒯2)f(I2,s2),(τ`f,g(I2,s2))(K2,t2)𝒕𝒃𝒍`f,g(𝒯2)\overset{\textstyle{\mathcal{T}_{2}}}{\overbrace{\langle{I_{2},s_{2},K_{2},t_{2}}\rangle}}\xrightarrow[{\langle{1_{I_{2}},f,g,\hat{k}}\rangle}]{\grave{\chi}_{{\langle{f,g}\rangle}}(\mathcal{T}_{2})}\overset{\textstyle{\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}(\mathcal{T}_{2})}}{\overbrace{\langle{{\scriptstyle\sum}_{f}(I_{2},s_{2}),(\grave{\tau}_{{\langle{f,g}\rangle}}(I_{2},s_{2}))^{\ast}(K_{2},t_{2})}\rangle}}.
Definition 15

For any two databases 2=𝐑𝟐,𝑻2,𝒜2\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{T}_{2},\mathcal{A}_{2}}\rangle} and 1=𝐑𝟏,𝑻1,𝒜1\mathcal{R}_{1}={\langle{\mathrmbf{R}_{1},\mathrmbfit{T}_{1},\mathcal{A}_{1}}\rangle}, a database morphism, with constant type domain morphism 𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1}, (Fig. 12)

2=𝐑𝟐,𝑻2,𝒜2𝑹,ψ`,𝒇,𝒈𝐑𝟏,𝑻1,𝒜1=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{T}_{2},\mathcal{A}_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\grave{\psi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{T}_{1},\mathcal{A}_{1}}\rangle}=\mathcal{R}_{1}

(Tbl. 13 in § 0.A.1) consists of a shape-changing relation passage 𝑹:𝐑𝟐𝐑𝟏\mathrmbfit{R}:\mathrmbf{R}_{2}\rightarrow\mathrmbf{R}_{1} and a bridge ψ`:𝑻2𝒕𝒃𝒍`𝒇,𝒈𝑹op𝑻1\grave{\psi}:\mathrmbfit{T}_{2}\circ\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{T}_{1}.

The subcontext of FOLE relational databases (with constant type domains and constant type domain morphisms) is denoted by 𝐃𝐛𝐃𝐁\mathrmbf{Db}\subseteq\mathrmbf{DB}. 545454See § 4.2.2 in the paper “The FOLE Database” [12].

Definition 16

Using projections (Fig. 14), a FOLE database morphism, with constant type domain morphism 𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1},

2=𝐑𝟐,𝑺2,𝒜2,𝑲2,τ2𝑹,κ,φ`,𝒇,𝒈𝐑𝟏,𝑺1,𝒜1,𝑲1,τ1=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},\mathcal{A}_{2},\mathrmbfit{K}_{2},\tau_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},\mathcal{A}_{1},\mathrmbfit{K}_{1},\tau_{1}}\rangle}=\mathcal{R}_{1}

(Tbl. 13 in § 0.A.1) consists of a relation passage 𝐑𝟐𝑹𝐑𝟏\mathrmbf{R}_{2}\xrightarrow{\,\mathrmbfit{R}\;}\mathrmbf{R}_{1} as above, and

  • \bullet

    a schema bridge φ`=ψ`op𝒔𝒊𝒈𝒏:𝑺2𝒇𝑹𝑺1\grave{\varphi}=\grave{\psi}^{\mathrm{op}}{\circ\;}\mathrmbfit{sign}:\mathrmbfit{S}_{2}{\;\circ\;}{\scriptstyle\sum}_{f}\Rightarrow\mathrmbfit{R}{\;\circ\;}\mathrmbfit{S}_{1} 555555This defines a database schema morphism
    𝒯2=𝐑𝟐,𝑺2,𝑿2𝑹,φ`,𝒇𝐑𝟏,𝑺1,𝑿1=𝒯1\mathcal{T}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},X_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\grave{\varphi},f}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},X_{1}}\rangle}=\mathcal{T}_{1},
    which is the same as the (abstract) specification morphism in Def. 7 of § 5.2.
    , and

  • \bullet

    a key bridge κ=ψ`𝒌𝒆𝒚:𝑲2𝑹op𝑲1\kappa=\grave{\psi}{\;\circ\;}\mathrmbfit{key}:\mathrmbfit{K}_{2}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}{\circ\;}\mathrmbfit{K}_{1} consisting of an R2R_{2}-indexed collection {𝑲2(𝒓2)κ𝒓2𝑲1(𝒓(𝒓2))𝒓2𝑹2}\{\mathrmbfit{K}_{2}(r_{2})\xleftarrow{\kappa_{r_{2}}}\mathrmbfit{K}_{1}(r(r_{2}))\mid r_{2}\in R_{2}\} of key functions. 565656This defines a lax entity infomorphism 𝑲2𝜅𝒓𝑲1\mathrmbfit{K}_{2}\xLeftarrow{\;\,\kappa\;}{r}{\;\circ\;}\mathrmbfit{K}_{1} consisting of an R2R_{2}-indexed collection of key functions {𝑲2(𝒓2)κ𝒓2𝑲1(𝒓(𝒓2))𝒓2𝑹2}\bigl{\{}\mathrmbfit{K}_{2}(r_{2})\xleftarrow{\kappa_{r_{2}}}\mathrmbfit{K}_{1}(r(r_{2}))\mid r_{2}\in R_{2}\bigr{\}}

These components satisfy the condition

κτ2=(𝑹opτ1)(φ`op𝒕𝒖𝒑𝒜1)(𝑺2opτ`𝒇,𝒈),\kappa{\;\bullet\;}\tau_{2}=(\mathrmbfit{R}^{\mathrm{op}}\!{\circ\;}\tau_{1}){\;\bullet\;}(\grave{\varphi}^{\mathrm{op}}\!{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}){\;\bullet\;}(\mathrmbfit{S}_{2}^{\mathrm{op}}{\;\circ\;}\grave{\tau}_{{\langle{f,g}\rangle}}), (11)

as pictured in the following bridge diagram.

𝑹op𝑲1\mathrmbfit{R}^{\mathrm{op}}{\circ\;}\mathrmbfit{K}_{1}𝑲2\mathrmbfit{K}_{2}𝑹op𝑺1op𝒕𝒖𝒑𝒜1\mathrmbfit{R}^{\mathrm{op}}{\circ\;}\mathrmbfit{S}_{1}^{\mathrm{op}}{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}𝑺2op𝒕𝒖𝒑𝒜2\mathrmbfit{S}_{2}^{\mathrm{op}}{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{2}}(φ`op𝒕𝒖𝒑𝒜1)(𝑺2opτ`𝒇,𝒈)({\grave{\varphi}}^{\mathrm{op}}{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}){\;\bullet\;}(\mathrmbfit{S}_{2}^{\mathrm{op}}{\circ\;}\grave{\tau}_{{\langle{f,g}\rangle}})𝑹opτ1\mathrmbfit{R}^{\mathrm{op}}{\circ\;}\tau_{1}τ2\tau_{2}κ\kappa\xRightarrow{\;\;\;\;\;\;\;\;\;\;\;\;\;}\xRightarrow{\;\;\;\;\;\;\;\;\;\;\;\;\;}\bigg{\Downarrow}\bigg{\Downarrow}fop𝒕𝒖𝒑𝒜1{\scriptstyle\sum}_{f}^{\,\mathrm{op}}{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}𝒕𝒖𝒑𝒜2\mathrmbfit{tup}_{\mathcal{A}_{2}}τ`f,g\grave{\tau}_{{\langle{f,g}\rangle}}\bigg{\Downarrow}lax entityinfomorphismtuple attributeinfomorphism

2=𝐑𝟐,𝑲2,𝑺2,τ2,𝒜2𝑹,κ,φ`,𝒇,𝒈𝐑𝟏,𝑲1,𝑺1,τ1,𝒜1=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{K}_{2},\mathrmbfit{S}_{2},\tau_{2},\mathcal{A}_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{K}_{1},\mathrmbfit{S}_{1},\tau_{1},\mathcal{A}_{1}}\rangle}=\mathcal{R}_{1} \bullet schema bridge φ`:𝑺2𝒇𝑹𝑺1\grave{\varphi}:\mathrmbfit{S}_{2}{\;\circ\;}{\scriptstyle\sum}_{f}\Rightarrow\mathrmbfit{R}{\;\circ\;}\mathrmbfit{S}_{1} \bullet a key bridge κ:𝑲2𝑹op𝑲1\kappa:\mathrmbfit{K}_{2}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}{\circ\;}\mathrmbfit{K}_{1} \bullet constraint κτ2=(𝑹opτ1)(φ`op𝒕𝒖𝒑𝒜1)(𝑺2opτ`𝒇,𝒈)\kappa\bullet\tau_{2}=(\mathrmbfit{R}^{\mathrm{op}}\!{\circ\;}\tau_{1}){\;\bullet\;}(\grave{\varphi}^{\mathrm{op}}\!{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}){\;\bullet\;}(\mathrmbfit{S}_{2}^{\mathrm{op}}{\;\circ\;}\grave{\tau}_{{\langle{f,g}\rangle}})

Table 11: Database Morphism
                                   𝑹op\mathrmbfit{R}^{\mathrm{op}}fop{\scriptstyle\sum}_{f}^{\mathrm{op}}𝒊𝒅\mathrmbfit{id} φ`op\;\grave{\varphi}^{\mathrm{op}} \Longleftarrow κ\overset{\rule[-2.0pt]{0.0pt}{5.0pt}\kappa}{\Longleftarrow}τ`f,g\overset{\grave{\tau}_{{\langle{f,g}\rangle}}}{\Longleftarrow}𝐑𝟐op\mathrmbf{R}_{2}^{\mathrm{op}}𝐓𝐛𝐥(𝒜𝟐)\mathrmbf{Tbl}(\mathcal{A}_{2})𝐋𝐢𝐬𝐭(𝐗𝟐)op\mathrmbf{List}(X_{2})^{\mathrm{op}}𝐒𝐞𝐭\mathrmbf{Set}𝑻2\mathrmbfit{T}_{2}𝑲2\mathrmbfit{K}_{2}𝑺2op\mathrmbfit{S}_{2}^{\mathrm{op}}𝒌𝒆𝒚𝒜2\mathrmbfit{key}_{\mathcal{A}_{2}}𝒔𝒊𝒈𝒏𝒜2op\mathrmbfit{sign}_{\mathcal{A}_{2}}^{\mathrm{op}}𝒕𝒖𝒑𝒜2\mathrmbfit{tup}_{\mathcal{A}_{2}} τ𝒜2\;\tau_{\mathcal{A}_{2}} \Longrightarrow 𝐑𝟏op\mathrmbf{R}_{1}^{\mathrm{op}}𝐓𝐛𝐥(𝒜𝟏)\mathrmbf{Tbl}(\mathcal{A}_{1})𝐋𝐢𝐬𝐭(𝐗𝟏)op\mathrmbf{List}(X_{1})^{\mathrm{op}}𝐒𝐞𝐭\mathrmbf{Set}𝑻1\mathrmbfit{T}_{1}𝑲1\mathrmbfit{K}_{1}𝑺1op\mathrmbfit{S}_{1}^{\mathrm{op}}𝒌𝒆𝒚𝒜1\mathrmbfit{key}_{\mathcal{A}_{1}}𝒔𝒊𝒈𝒏𝒜1op\mathrmbfit{sign}_{\mathcal{A}_{1}}^{\mathrm{op}}𝒕𝒖𝒑𝒜1\mathrmbfit{tup}_{\mathcal{A}_{1}} τ𝒜1\;\tau_{\mathcal{A}_{1}} \Longleftarrow
Figure 14: Database Morphism: Type Domain
Proposition 9

The constraint-free aspect of a FOLE database morphism
2=𝐑𝟐,𝐒𝟐,𝒜𝟐,𝐊𝟐,τ𝟐𝐑,κ,φ`,𝐟,𝐠𝐑𝟏,𝐒𝟏,𝒜𝟏,𝐊𝟏,τ𝟏=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},\mathcal{A}_{2},\mathrmbfit{K}_{2},\tau_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},\mathcal{A}_{1},\mathrmbfit{K}_{1},\tau_{1}}\rangle}=\mathcal{R}_{1},
in 𝐃𝐛\mathrmbf{Db} defines, is the same as, a (lax) FOLE structure morphism
2=2,σ2,τ2,𝒜2r,κ,φ`,f,g1,σ1,τ1,𝒜1=1\mathcal{M}_{2}={\langle{\mathcal{E}_{2},\sigma_{2},\tau_{2},\mathcal{A}_{2}}\rangle}\xrightleftharpoons{{\langle{r,\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{E}_{1},\sigma_{1},\tau_{1},\mathcal{A}_{1}}\rangle}=\mathcal{M}_{1}
in 𝐒𝐭𝐫𝐮𝐜̊\mathring{\mathrmbf{Struc}}.

Proof

We define the various components of the (lax) structure morphism above, as defined in Def.4 and pictured in Fig. 7 of § 4.5.

  • rr:

    The predicate function R2𝑟R1R_{2}\xrightarrow{\;r\,}R_{1} is the constraint-free aspect of the relation passage 𝐑𝟐𝑹𝐑𝟏\mathrmbf{R}_{2}\xrightarrow{\mathrmbfit{R}}\mathrmbf{R}_{1}.

  • f,g{\langle{f,g}\rangle}:

    The type domain morphism 𝒜2f,g𝒜1\mathcal{A}_{2}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A}_{1} is given.

  • r,φ`,f{\langle{r,\grave{\varphi},f}\rangle}:

    The schema morphism 𝒮2=R2,σ2,X2r,φ`,fR1,σ1,X1=𝒮1\mathcal{S}_{2}={\langle{R_{2},{\sigma_{2}},X_{2}}\rangle}\xRightarrow{{\langle{r,\grave{\varphi},f}\rangle}}{\langle{R_{1},{\sigma_{1}},X_{1}}\rangle}=\mathcal{S}_{1}, consisting of the R2R_{2}-indexed collection of signature morphisms {f(σ2(r2))φ`r2σ1(r(r2))r2R2}\{{\scriptstyle\sum}_{f}({\sigma_{2}}(r_{2}))\xrightarrow[h]{\;\grave{\varphi}_{r_{2}}\;}{\sigma_{1}}(r(r_{2}))\mid r_{2}\in R_{2}\}, is the constraint-free aspect of the database schema morphism in Def. 16.

  • r,κ{\langle{r,\kappa}\rangle}:

    The lax entity infomorphism 2=R2,𝑲2r,κR1,𝑲1=1\mathcal{E}_{2}={\langle{R_{2},\mathrmbfit{K}_{2}}\rangle}\xleftharpoondown{{\langle{r,\kappa}\rangle}}{\langle{R_{1},\mathrmbfit{K}_{1}}\rangle}=\mathcal{E}_{1}, consisting of the R2R_{2}-indexed collection of key functions {𝑲2(r2)κr2𝑲1(r(r2))r2R2}\bigl{\{}{\mathrmbfit{K}_{2}}(r_{2})\xleftarrow{\kappa_{r_{2}}}{\mathrmbfit{K}_{1}}(r(r_{2}))\mid r_{2}\in R_{2}\bigr{\}}, is the constraint-free aspect of the key bridge κ:𝑲2𝑹op𝑲1\kappa:\mathrmbfit{K}_{2}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}{\circ\;}\mathrmbfit{K}_{1}. These components satisfy the condition 575757This is the constraint-free aspect of the database morphism condition
    κτ2=(𝑹opτ1)(φ`op𝒕𝒖𝒑𝒜1)(𝑺2opτ`𝒇,𝒈)\kappa{\;\bullet\;}\tau_{2}=(\mathrmbfit{R}^{\mathrm{op}}\!{\circ\;}\tau_{1}){\;\bullet\;}(\grave{\varphi}^{\mathrm{op}}\!{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{1}}){\;\bullet\;}(\mathrmbfit{S}_{2}^{\mathrm{op}}{\;\circ\;}\grave{\tau}_{{\langle{f,g}\rangle}}).
    See Def. 16 above.
    585858See Disp.7 in Def.4 of § 4.5.

    {κr2τ2,r2=τ1,r(r2)𝒕𝒖𝒑𝒜1(φ`𝒓2)τ`𝒇,𝒈(σ2(𝒓2))𝒕𝒖𝒑(φ`𝒓2,𝒇,𝒈)𝒓2𝑹2}.{{\Big{\{}\kappa_{r_{2}}{\;\cdot\;}\tau_{2,r_{2}}=\tau_{1,r(r_{2})}{\;\cdot\;}\underset{\mathrmbfit{tup}(\grave{\varphi}_{r_{2}},f,g)}{\underbrace{\mathrmbfit{tup}_{\mathcal{A}_{1}}(\grave{\varphi}_{r_{2}}){\;\cdot\;}\grave{\tau}_{{\langle{f,g}\rangle}}({\sigma_{2}}(r_{2}))}}\mid r_{2}\in R_{2}\Bigr{\}}.}}.

 

Proposition 10

Any FOLE database morphism
2=𝐑𝟐,𝐒𝟐,𝒜𝟐,𝐊𝟐,τ𝟐𝐑,κ,φ`,𝐟,𝐠𝐑𝟏,𝐒𝟏,𝒜𝟏,𝐊𝟏,τ𝟏=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},\mathcal{A}_{2},\mathrmbfit{K}_{2},\tau_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},\mathcal{A}_{1},\mathrmbfit{K}_{1},\tau_{1}}\rangle}=\mathcal{R}_{1}
in 𝐃𝐛\mathrmbf{Db} defines a (lax) FOLE sound logic morphism
2=𝒮2,2,𝒯2𝐑,κ,φ`,𝐟,𝐠𝒮1,1,𝒯1=1\mathcal{L}_{2}={\langle{\mathcal{S}_{2},\mathcal{M}_{2},\mathcal{T}_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{S}_{1},\mathcal{M}_{1},\mathcal{T}_{1}}\rangle}=\mathcal{L}_{1}
in 𝐒𝐧𝐝̊\mathring{\mathrmbf{Snd}}.

Proof

The source and target sound logics are defined by Prop. 8 above. The structure morphism is given by Prop. 9 above. The (abstract) specification morphism is the same as the database schema morphism
𝒯2=𝐑𝟐,𝑺2,𝑿2𝑹,φ`,𝒇𝐑𝟏,𝑺1,𝑿1=𝒯1\mathcal{T}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},X_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\grave{\varphi},f}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},X_{1}}\rangle}=\mathcal{T}_{1},
as discussed in § 5.1.  

Theorem 7.1

There is a passage 𝐃𝐛op𝐬𝐧𝐝̊𝐒𝐧𝐝̊\mathrmbf{Db}^{\mathrm{op}}\xrightarrow{\;\mathring{\mathrmbfit{snd}}\;}\mathring{\mathrmbf{Snd}}.

Proof

A database =𝐑,𝑻,𝒜\mathcal{R}={\langle{\mathrmbf{R},\mathrmbfit{T},\mathcal{A}}\rangle} in 𝐃𝐛¯\underline{\mathrmbf{Db}} is mapped to its associated sound logic =𝒮,,𝐓\mathcal{L}={\langle{\mathcal{S},\mathcal{M},\mathrmbf{T}}\rangle} by Prop. 8. A database morphism 2𝑹,ψ,𝒇,𝒈1\mathcal{R}_{2}\xleftarrow{{\langle{\mathrmbfit{R},\psi,f,g}\rangle}}\mathcal{R}_{1} in 𝐃𝐛¯\underline{\mathrmbf{Db}} is mapped to its associated sound logic morphism 2𝑹,κ,α,𝒇,𝒈1\mathcal{L}_{2}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\alpha,f,g}\rangle}}\mathcal{L}_{1} by Prop. 10.  

Theorem 7.2

The contexts of databases and (lax) sound logics form a reflection

Dbop̊Sndiminc\begin{array}[]{c}{\begin{picture}(120.0,30.0)(0.0,-12.0)\put(10.0,0.0){\makebox(0.0,0.0)[]{\footnotesize{$\mathrmbf{Db}^{\mathrm{op}}$}}} \put(110.0,2.0){\makebox(0.0,0.0)[]{\footnotesize{$\mathring{\mathrmbf{Snd}}$}}} \put(60.0,22.0){\makebox(0.0,0.0)[]{\scriptsize{$\mathrmbfit{im}$}}} \put(62.0,0.0){\makebox(0.0,0.0)[]{\scriptsize{$\dashv$}}} \put(66.0,-20.0){\makebox(0.0,0.0)[]{\scriptsize{$\mathrmbfit{inc}$}}} \put(35.0,10.0){\vector(1,0){50.0}} \put(85.0,-10.0){\vector(-1,0){50.0}} \put(85.0,-6.0){\oval(8.0,8.0)[r]} \end{picture}}\end{array},

so that these two representation of FOLE are “informationally equivalent”. 595959The database-logic reflection
𝐃𝐛(𝒜)𝐢𝐦𝒜𝐢𝐧𝐜𝒜𝐋𝐨𝐠(𝒜)\mathrmbf{Db}(\mathcal{A})\;\xrightarrow{{\langle{\mathrmbfit{im}_{\mathcal{A}}{\;\dashv\;}\mathrmbfit{inc}_{\mathcal{A}}}\rangle}}\;\mathrmbf{Log}(\mathcal{A})
generalizes the table-relation reflection 𝐓𝐛𝐥(𝒜)𝐢𝐦𝒜𝐢𝐧𝐜𝒜𝐑𝐞𝐥(𝒜)\mathrmbf{Tbl}(\mathcal{A})\;\xrightarrow{{\langle{\mathrmbfit{im}_{\mathcal{A}}{\;\dashv\;}\mathrmbfit{inc}_{\mathcal{A}}}\rangle}}\;\mathrmbf{Rel}(\mathcal{A}). These reflections embody the notion of informational equivalence.
606060See Prop. 12 in § A.1 of the paper [11] “The FOLE Table”.

Proof

The passages in Thm. 6.1 and Thm. 7.1 form a reflection. Here, we use the image part 𝐓𝐛𝐥𝒊𝒎𝐑𝐞𝐥\mathrmbf{Tbl}{\;\xhookrightarrow{\;\mathrmbfit{im}\;}\;}\mathrmbf{Rel} of the table-relation reflection. 616161The reflection 𝒊𝒎𝒊𝒏𝒄:𝐓𝐛𝐥𝐑𝐞𝐥{\langle{\mathrmbfit{im}{\;\dashv\;}\mathrmbfit{inc}}\rangle}:\mathrmbf{Tbl}{\;\rightleftarrows\;}\mathrmbf{Rel} (“The FOLE Table”[11]) of the context of relations into the context of tables embodies the notion of “informational equivalence”. For an alternate proof, first compose with image part of the table-relation reflection 61{}^{\mathrm{\ref{tbl:rel:refl}}}, and then restrict to fixed type domains.  

Appendix 0.A Appendix

0.A.1 FOLE Components

Bridges.

Although adjointly equivalent, no levo bridges are used throughout this paper, except for the levo tuple bridge fop𝒕𝒖𝒑𝒜2τ´𝒇,𝒈𝒕𝒖𝒑𝒜1{f^{\ast}}^{\mathrm{op}}{\circ\;}\mathrmbfit{tup}_{\mathcal{A}_{2}}\xLeftarrow{\;\acute{\tau}_{{\langle{f,g}\rangle}}\;}\mathrmbfit{tup}_{\mathcal{A}_{1}} discussed in footnote 51 in § 7.2.

levodextroφ´:𝑺2𝑹𝑺1𝒇φ`:𝑺2𝜮𝒇𝑹𝑺1φ´=(𝑺2η𝒇)(φ`𝒇)φ`=(φ´Σf)(𝑹𝑺1ε𝒇)φ´=(ψ´𝒔𝒊𝒈𝒏𝒜2op)opφ`=(ψ`𝒔𝒊𝒈𝒏𝒜1op)opψ´:𝑻2𝑹op𝑻1𝒕𝒃𝒍´𝒇,𝒈ψ`:𝑻2𝒕𝒃𝒍`𝒇,𝒈𝑹op𝑻1ψ´=(ψ`𝒕𝒃𝒍´f,g)(𝑻2ε𝒇,𝒈)ψ`=(𝑹op𝑻1)η𝒇,𝒈(ψ´𝒕𝒃𝒍`𝒇,𝒈)χ´f,g:𝒕𝒃𝒍´f,g𝒊𝒏𝒄𝒜2𝒊𝒏𝒄𝒜1χ`f,g:𝒊𝒏𝒄𝒜2𝒕𝒃𝒍`𝒇,𝒈𝒊𝒏𝒄𝒜1χ´f,g=(ηf,g𝒊𝒏𝒄𝒜1)(𝒕𝒃𝒍´𝒇,𝒈χ`𝒇,𝒈)χ`f,g=(𝒕𝒃𝒍`f,gχf,g)(εf,g𝒊𝒏𝒄𝒜2)τ´f,g:(f)op𝒕𝒖𝒑𝒜2𝒕𝒖𝒑𝒜1τ`f,g:𝒕𝒖𝒑𝒜2𝒇op𝒕𝒖𝒑𝒜1τ´f,g=(εfop𝒕𝒖𝒑𝒜1)((𝒇)opτ`𝒇,𝒈)τ`f,g=(fopτ´f,g)(ηfop𝒕𝒖𝒑𝒜2)ξ:𝑻2𝒊𝒏𝒄𝒜2𝑹op𝑻1𝒊𝒏𝒄𝒜1(𝑹op𝑻1χ´𝒇,𝒈)(ψ´𝒊𝒏𝒄𝒜2)=ξ=(ψ`𝒊𝒏𝒄𝒜1)(𝑻2χ`𝒇,𝒈)\begin{array}[]{|@{\hspace{5pt}}l@{\hspace{15pt}}l@{\hspace{5pt}}|}\lx@intercol\text{levo}\hfil\lx@intercol&\lx@intercol\text{dextro}\hfil\lx@intercol\\ \hline\cr\hskip 5.0pt\lx@intercol\acute{\varphi}:\mathrmbfit{S}_{2}\Rightarrow\mathrmbfit{R}\circ\mathrmbfit{S}_{1}\circ{f^{\ast}}\hfil\hskip 15.0&\grave{\varphi}:\mathrmbfit{S}_{2}\circ{{\Sigma}_{f}}\Rightarrow\mathrmbfit{R}\circ\mathrmbfit{S}_{1}\hfil\hskip 5.0\\ \hskip 5.0pt\lx@intercol\acute{\varphi}=(\mathrmbfit{S}_{2}\circ\eta_{f})\bullet(\grave{\varphi}\circ{f^{\ast}})\hfil\hskip 15.0&\grave{\varphi}=(\acute{\varphi}\circ{{\Sigma}_{f}})\bullet(\mathrmbfit{R}\circ\mathrmbfit{S}_{1}\circ\varepsilon_{f})\hfil\hskip 5.0\\ \hskip 5.0pt\lx@intercol\acute{\varphi}=(\acute{\psi}\circ\mathrmbfit{sign}_{\mathcal{A}_{2}}^{\mathrm{op}})^{\mathrm{op}}\hfil\hskip 15.0&\grave{\varphi}=(\grave{\psi}\circ\mathrmbfit{sign}_{\mathcal{A}_{1}}^{\mathrm{op}})^{\mathrm{op}}\hfil\hskip 5.0\\ \hline\cr\hskip 5.0pt\lx@intercol\acute{\psi}:\mathrmbfit{T}_{2}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{T}_{1}\circ\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\hfil\hskip 15.0&\grave{\psi}:\mathrmbfit{T}_{2}\circ\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{T}_{1}\hfil\hskip 5.0\\ \hskip 5.0pt\lx@intercol\acute{\psi}=(\grave{\psi}\circ\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}})\bullet(\mathrmbfit{T}_{2}\circ\varepsilon_{{\langle{f,g}\rangle}})\hfil\hskip 15.0&\grave{\psi}=(\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{T}_{1})\eta_{{\langle{f,g}\rangle}}\bullet(\acute{\psi}\circ\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}})\hfil\hskip 5.0\\ \hline\cr\hskip 5.0pt\lx@intercol\acute{\chi}_{{\langle{f,g}\rangle}}:\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{2}}\Leftarrow\mathrmbfit{inc}_{\mathcal{A}_{1}}\hfil\hskip 15.0&\grave{\chi}_{{\langle{f,g}\rangle}}:\mathrmbfit{inc}_{\mathcal{A}_{2}}\Leftarrow\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}}\hfil\hskip 5.0\\ \hskip 5.0pt\lx@intercol\acute{\chi}_{{\langle{f,g}\rangle}}=(\eta_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}})\bullet(\acute{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ\grave{\chi}_{{\langle{f,g}\rangle}})\hfil\hskip 15.0&\grave{\chi}_{{\langle{f,g}\rangle}}=(\grave{\mathrmbfit{tbl}}_{{\langle{f,g}\rangle}}\circ{\chi}_{{\langle{f,g}\rangle}})\bullet(\varepsilon_{{\langle{f,g}\rangle}}\circ\mathrmbfit{inc}_{\mathcal{A}_{2}})\hfil\hskip 5.0\\ \hline\cr\hskip 5.0pt\lx@intercol\acute{\tau}_{{\langle{f,g}\rangle}}:(f^{\ast})^{\mathrm{op}}\circ\mathrmbfit{tup}_{\mathcal{A}_{2}}\Leftarrow\mathrmbfit{tup}_{\mathcal{A}_{1}}\hfil\hskip 15.0&\grave{\tau}_{{\langle{f,g}\rangle}}:\mathrmbfit{tup}_{\mathcal{A}_{2}}\Leftarrow{\scriptstyle\sum}_{f}^{\mathrm{op}}\circ\mathrmbfit{tup}_{\mathcal{A}_{1}}\hfil\hskip 5.0\\ \hskip 5.0pt\lx@intercol\acute{\tau}_{{\langle{f,g}\rangle}}=(\varepsilon_{f}^{\mathrm{op}}\circ\mathrmbfit{tup}_{\mathcal{A}_{1}})\bullet((f^{\ast})^{\mathrm{op}}\circ\grave{\tau}_{{\langle{f,g}\rangle}})\hfil\hskip 15.0&\grave{\tau}_{{\langle{f,g}\rangle}}=({\scriptstyle\sum}_{f}^{\mathrm{op}}\circ\acute{\tau}_{{\langle{f,g}\rangle}})\bullet(\eta_{f}^{\mathrm{op}}\circ\mathrmbfit{tup}_{\mathcal{A}_{2}})\hfil\hskip 5.0\\ \hline\cr\vrule\lx@intercol\hfil\xi:\mathrmbfit{T}_{2}\circ\mathrmbfit{inc}_{\mathcal{A}_{2}}\Leftarrow\mathrmbfit{R}^{\mathrm{op}}\circ\mathrmbfit{T}_{1}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}}\hfil\lx@intercol\vrule\lx@intercol\\ \vrule\lx@intercol\hfil(\mathrmbfit{R}^{\mathrm{op}}{\!\circ}\mathrmbfit{T}_{1}\circ\acute{\chi}_{{\langle{f,g}\rangle}})\bullet(\acute{\psi}\circ\mathrmbfit{inc}_{\mathcal{A}_{2}})\;=\;\xi\;=\;(\grave{\psi}\circ\mathrmbfit{inc}_{\mathcal{A}_{1}})\bullet(\mathrmbfit{T}_{2}{\;\circ\;}\grave{\chi}_{{\langle{f,g}\rangle}})\hfil\lx@intercol\vrule\lx@intercol\\ \hline\cr\end{array}

Table 12: FOLE Adjoint Bridges

Morphisms.

The FOLE equivalence is explained and understood principally in terms of its various morphisms (Tbl. 13).

schema morphism 𝒮2=R2,σ2,X2r,φ`,fR1,σ1,X1=𝒮1\mathcal{S}_{2}={\langle{R_{2},\sigma_{2},X_{2}}\rangle}\xRightarrow{\;{\langle{r,\grave{\varphi},f}\rangle}\;}{\langle{R_{1},\sigma_{1},X_{1}}\rangle}=\mathcal{S}_{1}
schemed domain morphism 𝒟2=R2,σ2,𝒜2r,φ`,f,gR1,σ1,𝒜1=𝒟1\mathcal{D}_{2}={\langle{R_{2},\sigma_{2},\mathcal{A}_{2}}\rangle}\xrightarrow{\;{\langle{r,\grave{\varphi},f,g}\rangle}\;}{\langle{R_{1},\sigma_{1},\mathcal{A}_{1}}\rangle}=\mathcal{D}_{1}
(lax) structure morphism 2=2,σ2,τ2,𝒜2r,κ,φ`,f,g1,σ1,τ1,𝒜1=1\mathcal{M}_{2}={\langle{\mathcal{E}_{2},\sigma_{2},\tau_{2},\mathcal{A}_{2}}\rangle}\xrightleftharpoons{{\langle{r,\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{E}_{1},\sigma_{1},\tau_{1},\mathcal{A}_{1}}\rangle}=\mathcal{M}_{1}
specification morphism 𝒯2=𝐑𝟐,𝑺2,𝑿2𝑹,φ`,𝒇𝐑𝟏,𝑺1,𝑿1=𝒯1\mathcal{T}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},X_{2}}\rangle}\xrightarrow{{\langle{\mathrmbfit{R},\grave{\varphi},f}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},X_{1}}\rangle}=\mathcal{T}_{1}
sound logic morphism 2=𝒮2,2,𝒯2𝑹,κ,φ`,𝒇,𝒈𝒮1,1,𝒯1=1\mathcal{L}_{2}={\langle{\mathcal{S}_{2},\mathcal{M}_{2},\mathcal{T}_{2}}\rangle}\xrightleftharpoons{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathcal{S}_{1},\mathcal{M}_{1},\mathcal{T}_{1}}\rangle}=\mathcal{L}_{1}
database morphism1\text{database morphism}_{1} 2=𝐑𝟐,𝑻2𝑹,ξ𝐑𝟏,𝑻1=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{T}_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\xi}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{T}_{1}}\rangle}=\mathcal{R}_{1}
database morphism2\text{database morphism}_{2} 2=𝐑𝟐,𝑻2,𝒜2𝑹,ψ`,𝒇,𝒈𝐑𝟏,𝑻1,𝒜1=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{T}_{2},\mathcal{A}_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\grave{\psi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{T}_{1},\mathcal{A}_{1}}\rangle}=\mathcal{R}_{1}
database morphism3\text{database morphism}_{3} 2=𝐑𝟐,𝑺2,𝒜2,𝑲2,τ2𝑹,κ,φ`,𝒇,𝒈𝐑𝟏,𝑺1,𝒜1,𝑲1,τ1=1\mathcal{R}_{2}={\langle{\mathrmbf{R}_{2},\mathrmbfit{S}_{2},\mathcal{A}_{2},\mathrmbfit{K}_{2},\tau_{2}}\rangle}\xleftarrow{{\langle{\mathrmbfit{R},\kappa,\grave{\varphi},f,g}\rangle}}{\langle{\mathrmbf{R}_{1},\mathrmbfit{S}_{1},\mathcal{A}_{1},\mathrmbfit{K}_{1},\tau_{1}}\rangle}=\mathcal{R}_{1}
               1 full, 2 fixed type domain, 3 with projections
Table 13: FOLE Morphisms

0.A.2 Classifications and Infomorphisms

The concept of a “classification” comes from the theory of Information Flow: see the book Information Flow: The Logic of Distributed Systems by Barwise and Seligman [1]. A classification is also important in the theory of Formal Concept Analysis, where it is called a “formal context”: see the book Formal Concept Analysis: Mathematical Foundations by Ganter and Wille [4].

Classification.

A classification 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle} consists of: a set Y=𝒊𝒏𝒔𝒕(𝒜)Y=\mathrmbfit{inst}(\mathcal{A}) of objects to be classified, called tokens or instances; a set X=𝒕𝒚𝒑(𝒜)X=\mathrmbfit{typ}(\mathcal{A}) of objects that classify the instances, called types; and a binary relation 𝒜Y×X\models_{\mathcal{A}}{\;\subseteq\;}Y{\times}X between instances and types. The extent of any type xXx{\,\in\,}X is the subset of instances classified by xx: 𝒆𝒙𝒕𝒜(𝒙)={𝒚𝒀𝒚𝒜𝒙}\mathrmbfit{ext}_{\mathcal{A}}(x)=\{y\in Y\mid y\;\models_{\mathcal{A}}x\}. Dually, the intent of any instance yYy{\,\in\,}Y is the subset of types that classify yy: 𝒊𝒏𝒕𝒜(𝒚)={𝒙𝑿𝒚𝒜𝒙}\mathrmbfit{int}_{\mathcal{A}}(y)=\{x\in X\mid y\;\models_{\mathcal{A}}x\}. Two types x,xXx,x^{\prime}\in X are coextensive in 𝒜\mathcal{A} when 𝒆𝒙𝒕𝒜(𝒙)=𝒆𝒙𝒕𝒜(𝒙)\mathrmbfit{ext}_{\mathcal{A}}(x)=\mathrmbfit{ext}_{\mathcal{A}}(x^{\prime}). Two instances y,yYy,y^{\prime}\in Y are cointensive or indistinguishable in 𝒜\mathcal{A} when 𝒊𝒏𝒕𝒜(𝒚)=𝒊𝒏𝒕𝒜(𝒚)\mathrmbfit{int}_{\mathcal{A}}(y)=\mathrmbfit{int}_{\mathcal{A}}(y^{\prime}). A classification 𝒜\mathcal{A} is separated or intensional when there are no two indistinguishable instances: yyy\neq y^{\prime} implies 𝒊𝒏𝒕𝒜(𝒚)𝒊𝒏𝒕𝒜(𝒚)\mathrmbfit{int}_{\mathcal{A}}(y)\neq\mathrmbfit{int}_{\mathcal{A}}(y^{\prime}). A classification 𝒜\mathcal{A} is extensional when all coextensive types are identical: 𝒆𝒙𝒕𝒜(𝒙)=𝒆𝒙𝒕𝒜(𝒙)\mathrmbfit{ext}_{\mathcal{A}}(x)=\mathrmbfit{ext}_{\mathcal{A}}(x^{\prime}) implies x=xx=x^{\prime}; equivalently, xxx\neq x^{\prime} implies 𝒆𝒙𝒕𝒜(𝒙)𝒆𝒙𝒕𝒜(𝒙)\mathrmbfit{ext}_{\mathcal{A}}(x)\neq\mathrmbfit{ext}_{\mathcal{A}}(x^{\prime}). More strongly, a classification 𝒜\mathcal{A} is disjoint when distinct types have disjoint extents: xxx\neq x^{\prime} implies 𝒆𝒙𝒕𝒜(𝒙)𝒆𝒙𝒕𝒜(𝒙)=\mathrmbfit{ext}_{\mathcal{A}}(x)\cap\mathrmbfit{ext}_{\mathcal{A}}(x^{\prime})=\emptyset. Even more strongly, a classification 𝒜\mathcal{A} is partitioned when it is disjoint and all instances are classified: 𝒊𝒏𝒕𝒜(𝒚)\mathrmbfit{int}_{\mathcal{A}}(y)\neq\emptyset equivalently y𝒆𝒙𝒕𝒜(𝒙)y\in\mathrmbfit{ext}_{\mathcal{A}}(x) some xXx\in X for all yYy\in Y. A classification 𝒜\mathcal{A} is pseudo-partitioned when it is disjoint and all instances are classified except for one special instance Y{\cdot}\in Y: 𝒊𝒏𝒕𝒜()=\mathrmbfit{int}_{\mathcal{A}}({\cdot})=\emptyset.

Infomorphism.

An infomorphism 𝒜2=X2,Y2,𝒜2f,gX1,Y1,𝒜1=𝒜1\mathcal{A}_{2}={\langle{X_{2},Y_{2},\models_{\mathcal{A}_{2}}}\rangle}\xrightleftharpoons{{\langle{f,g}\rangle}}{\langle{X_{1},Y_{1},\models_{\mathcal{A}_{1}}}\rangle}=\mathcal{A}_{1} consists of a type map X2𝑓X1X_{2}\xrightarrow{\;f\;}X_{1} and an instance map Y2𝑔Y1Y_{2}\xleftarrow{\;g\;}Y_{1}, which satisfy the following:

g(y1)𝒜2x2iffy1𝒜1x1=f(x2)g(y1)𝒆𝒙𝒕𝒜2(𝒙2)𝒀2(𝒙2)iff𝒚1𝒆𝒙𝒕𝒜1(𝒇(𝒙2))𝒀1(𝒇(𝒙2))g1(𝒆𝒙𝒕𝒜2(𝒙2))=𝒆𝒙𝒕𝒜1(𝒇(𝒙2)){\begin{array}[]{c}g(y_{1}){\;\models_{\mathcal{A}_{2}}\;}x_{2}{\;\;\;\text{\text@underline{iff}}\;\;\;}y_{1}{\;\models_{\mathcal{A}_{1}}\;}x_{1}=f(x_{2})\\ g(y_{1}){\,\in\,}\underset{\mathrmbfit{Y}_{2}(x_{2})}{\mathrmbfit{ext}_{\mathcal{A}_{2}}(x_{2})}{\;\;\;\text{\text@underline{iff}}\;\;\;}y_{1}{\,\in\,}\underset{\mathrmbfit{Y}_{1}(f(x_{2}))}{\mathrmbfit{ext}_{\mathcal{A}_{1}}(f(x_{2}))}\\ g^{-1}(\mathrmbfit{ext}_{\mathcal{A}_{2}}(x_{2}))=\mathrmbfit{ext}_{\mathcal{A}_{1}}(f(x_{2}))\end{array}}

X2X_{2}X1X_{1}Y2Y_{2}Y1Y_{1}𝒜2\models_{\mathcal{A}_{2}}𝒜1\models_{\mathcal{A}_{1}}ffgg
          or
X2X_{2}X1X_{1}Y2{\wp}Y_{2}Y1{\wp}Y_{1}𝒆𝒙𝒕𝒜2\mathrmbfit{ext}_{\mathcal{A}_{2}}𝒆𝒙𝒕𝒜1\mathrmbfit{ext}_{\mathcal{A}_{1}}ffg1g^{-1}
Figure 15: Infomorphism

If two distinct source types x2,x2X2x_{2},x^{\prime}_{2}\in X_{2}, x2x2x_{2}\not=x^{\prime}_{2}, are mapped by the type map to the same target type 626262Are you producting the two types by doing this? Remember how the sum and product of classifications is defined. f(x2)=f(x2)=x1X1f(x_{2})=f(x^{\prime}_{2})=x_{1}\in X_{1}, then any target instance in the extent y1𝒆𝒙𝒕𝒜1(𝒙1)y_{1}\in\mathrmbfit{ext}_{\mathcal{A}_{1}}(x_{1}) is mapped by the instance map to the extent intersection g(y1)𝒆𝒙𝒕𝒜2(𝒙2)𝒆𝒙𝒕𝒜2(𝒙2)g(y_{1})\in\mathrmbfit{ext}_{\mathcal{A}_{2}}(x_{2}){\;\cap\;}\mathrmbfit{ext}_{\mathcal{A}_{2}}(x^{\prime}_{2}). Hence, if extent sets are disjoint in the source classification, then the type map must be injective. Note however that there is restricted map 𝒆𝒙𝒕𝒜2(𝒙2)×𝒆𝒙𝒕𝒜2(𝒙2)𝒈𝒆𝒙𝒕𝒜1(𝒙1)\mathrmbfit{ext}_{\mathcal{A}_{2}}(x_{2}){\;\times\;}\mathrmbfit{ext}_{\mathcal{A}_{2}}(x^{\prime}_{2})\xleftarrow{\;g\;}\mathrmbfit{ext}_{\mathcal{A}_{1}}(x_{1}). Let 𝐂𝐥𝐬\mathrmbf{Cls} denote the context of classifications and infomorphisms.

Type Domains.

In the FOLE theory of data-types [9], a classification 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle} is known as a type domain. A type domain [11] is an sort-indexed collection of data types from which a table’s tuples are chosen. It consists of a set of sorts (data types) XX, a set of data values (instances) YY, and a binary (classification) relation 𝒜\models_{\mathcal{A}} between data values and sorts. The extent of any sort (data type) xXx\in X is the subset 𝒆𝒙𝒕𝒜(𝒙)=𝑨𝒙={𝒚𝒀𝒚𝒜𝒙}\mathrmbfit{ext}_{\mathcal{A}}(x)=A_{x}=\{y\in Y\mid y{\;\models_{\mathcal{A}}\;}x\}. Hence, a type domain is equivalent to be a sort-indexed collection of subsets of data values X𝒜Y:x𝒆𝒙𝒕𝒜(𝒙)=𝑨𝒙X\xrightarrow{\;\mathcal{A}\;}{\wp}Y:x\mapsto\mathrmbfit{ext}_{\mathcal{A}}(x)=A_{x}. 636363Some examples of data-types useful in databases are as follows. The real numbers might use sort symbol \Re with extent {,,0,,}\{-\infty,\cdots,0,\cdots,\infty\}. The alphabet might use sort symbol \aleph with extent {a,b,c,,x,y,z}\{a,b,c,\cdots,x,y,z\}. Words, as a data-type, would be lists of alphabetic symbols with sort symbol \aleph^{\ast} with extent {a,b,c,,x,y,z}\{a,b,c,\cdots,x,y,z\}^{\ast} being all strings of alphabetic symbols. The periodic table of elements might use sort symbol E with extent {H, He, Li, He,, Hs,Mt}\{\text{H, He, Li, He,}\cdots\text{, Hs,Mt}\}. Of course, chemical elements can also be regarded as entity types in a database with various properties such as name, symbol, atomic number, atomic mass, density, melting point, boiling point, etc. The list classification 𝐋𝐢𝐬𝐭(𝒜)=𝐋𝐢𝐬𝐭(𝐗),𝐋𝐢𝐬𝐭(𝐘),𝐋𝐢𝐬𝐭(𝒜)\mathrmbf{List}(\mathcal{A})={\langle{\mathrmbf{List}(X),\mathrmbf{List}(Y),\models_{\mathrmbf{List}(\mathcal{A})}}\rangle} has XX-signatures as types and YY-tuples as instances, with classification by common arity and universal 𝒜\mathcal{A}-classification: a YY-tuple J,t{\langle{J,t}\rangle} is classified by an XX-signature I,s{\langle{I,s}\rangle} when J=IJ=I and tk𝒜skt_{k}\models_{\mathcal{A}}s_{k} for all kJ=Ik\in J=I. 646464In particular, when I=1I=1 is a singleton, an XX-signature 1,s{\langle{1,s}\rangle} is the same as a sort s()=xXs({\cdot)}=x\in X, a YY-tuple 1,t{\langle{1,t}\rangle} is the same as a data value t()=yYt({\cdot})=y\in Y, and 𝒕𝒖𝒑(1,𝒔,𝒜)=𝒕𝒖𝒑𝒜(1,𝒔)=𝒆𝒙𝒕𝐋𝐢𝐬𝐭(𝒜)(1,𝒔)=𝒜𝒙\mathrmbfit{tup}(1,s,\mathcal{A})=\mathrmbfit{tup}_{\mathcal{A}}(1,s)=\mathrmbfit{ext}_{\mathrmbf{List}(\mathcal{A})}(1,s)=\mathcal{A}_{x}. In the FOLE theory of data-types, an infomorphism 𝒜f,g𝒜\mathcal{A}^{\prime}\xrightleftharpoons{{\langle{f,g}\rangle}}\mathcal{A} is known as a type domain morphism, and consists of a sort function X𝑓XX^{\prime}\xrightarrow{\;f\;}X and a data value function Y𝑔YY^{\prime}\xleftarrow{\;g\;}Y that satisfy the condition g(y)𝒜xg(y){\;\models_{\mathcal{A}^{\prime}}\;}x^{\prime} iff y𝒜f(x)y{\;\models_{\mathcal{A}}\;}f(x^{\prime}) for any source sort xXx^{\prime}{\,\in\,}X^{\prime} and target data value yYy{\,\in\,}Y.

Lax Classification.

From an extensional point-of-view, a classification 𝒜=X,Y,𝒜\mathcal{A}={\langle{X,Y,\models_{\mathcal{A}}}\rangle} is a set-valued function X𝒀𝒆𝒙𝒕𝒜𝒀X\xrightarrow[\mathrmbfit{Y}]{\mathrmbfit{ext}_{\mathcal{A}}}{\wp}Y; that is, an indexed collection of (sub)sets {𝒆𝒙𝒕𝒜(𝒙)=𝒀(𝒙)𝒙𝑿}\bigl{\{}\mathrmbfit{ext}_{\mathcal{A}}(x)=\mathrmbfit{Y}(x)\mid x\in X\bigr{\}}. In a lax classification we omit the global set of data values YY. 656565We can always define a global set of instances; for example, Y=xX𝒀(𝒙)Y=\bigcup_{x\in X}\mathrmbfit{Y}(x), Y=xX𝒀(𝒙)Y=\coprod_{x\in X}\mathrmbfit{Y}(x), etc. Hence, a (lax) classification is just the pair 𝒜=X,𝒀\mathcal{A}={\langle{X,\mathrmbfit{Y}}\rangle} consisting of a set X=𝒕𝒚𝒑(𝒜)X=\mathrmbfit{typ}(\mathcal{A}) of objects called types that classify the instances, and a collection of indexed subsets {𝒀(𝒙)𝒙𝑿}\bigl{\{}\mathrmbfit{Y}(x)\mid x\in X\bigr{\}}, where 𝒀(𝒙)=𝒆𝒙𝒕𝒜(𝒙)\mathrmbfit{Y}(x)=\mathrmbfit{ext}_{\mathcal{A}}(x) is the set of instances (tokens) classified by the type xXx\in X. More briefly, a (lax) classification is a 𝐒𝐞𝐭\mathrmbf{Set}-valued diagram X𝒀𝐒𝐞𝐭X\xrightarrow{\,\mathrmbfit{Y}\;}\mathrmbf{Set}.

Lax Infomorphism.

Tbl. 14 motivates the definition of a lax infomorphism. In a lax infomorphism 𝒜2=X2,𝒀2f,γX1,𝒀1=𝒜1\mathcal{A}_{2}={\langle{X_{2},\mathrmbfit{Y}_{2}}\rangle}\xleftharpoondown{{\langle{f,\gamma}\rangle}}{\langle{X_{1},\mathrmbfit{Y}_{1}}\rangle}=\mathcal{A}_{1} the instance function Y2𝑔Y1Y_{2}\xleftarrow{\;g\,}Y_{1} is replaced by the collection of instance functions {𝒀2(𝒙2)γ𝒓2𝒀1(𝒇(𝒙2))𝒙2𝑿2}\bigl{\{}\mathrmbfit{Y}_{2}(x_{2})\xleftarrow{\gamma_{r_{2}}}\mathrmbfit{Y}_{1}(f(x_{2}))\mid x_{2}\in X_{2}\bigr{\}}. Hence, an infomorphism is a 𝐒𝐞𝐭\mathrmbf{Set}-valued instance bridge 𝒀2𝛾𝒇𝒀1\mathrmbfit{Y}_{2}\xLeftarrow{\;\,\gamma\;}f{\,\circ\,}\mathrmbfit{Y}_{1}. Let 𝐂𝐥𝐬̊\mathring{\mathrmbf{Cls}} denote the context of lax classifications and lax infomorphisms. There is a passage 𝐂𝐥𝐬𝒍𝒂𝒙𝐂𝐥𝐬˙\mathrmbf{Cls}\xrightarrow{\mathrmbfit{lax}}\dot{\mathrmbf{Cls}}.

infomorphism¯𝒜2=X2,Y2,𝒜2f,gX1,Y1,𝒜1=𝒜1g(y1)𝒜2x2y1𝒜1f(x2)g(y1)𝒆𝒙𝒕𝒜2(𝒙2)y1𝒆𝒙𝒕𝒜1(𝒇(𝒙2))g1(𝒆𝒙𝒕𝒜2(𝒙2))=𝒆𝒙𝒕𝒜1(𝒇(𝒙2))..implies..g1(𝒆𝒙𝒕𝒜2𝒀2(𝒙2))𝒆𝒙𝒕𝒜1𝒀1(𝒇(𝒙2))g(x1)𝒆𝒙𝒕𝒜2𝒀2(𝒙2)x1𝒆𝒙𝒕𝒜1𝒀1(𝒇(𝒙2))g(y1)𝒜2x2y1𝒜1f(x2)𝒜2=X2,𝒀2f,γX1,𝒀1=𝒜1lax infomorphism\begin{array}[]{r@{\hspace{5pt}}c@{\hspace{5pt}}l}\lx@intercol\hfil\underline{\text{infomorphism}}\hfil\lx@intercol\rule[-10.0pt]{0.0pt}{10.0pt}\\ \mathcal{A}_{2}={\langle{X_{2},Y_{2},\models_{\mathcal{A}_{2}}}\rangle}\hskip 5.0&\xrightleftharpoons{{\langle{f,g}\rangle}}\hfil\hskip 5.0&{\langle{X_{1},Y_{1},\models_{\mathcal{A}_{1}}}\rangle}=\mathcal{A}_{1}\\ g(y_{1}){\;\models_{\mathcal{A}_{2}}\;}x_{2}\hskip 5.0&\;\Longleftrightarrow\hfil\hskip 5.0&y_{1}{\;\models_{\mathcal{A}_{1}}\;}f(x_{2})\\ g(y_{1}){\;\in\;}\mathrmbfit{ext}_{\mathcal{A}_{2}}(x_{2})\hskip 5.0&\;\Longleftrightarrow\hfil\hskip 5.0&y_{1}{\;\in\;}\mathrmbfit{ext}_{\mathcal{A}_{1}}(f(x_{2}))\\ g^{-1}(\mathrmbfit{ext}_{\mathcal{A}_{2}}(x_{2}))\hskip 5.0&\;=\hfil\hskip 5.0&\mathrmbfit{ext}_{\mathcal{A}_{1}}(f(x_{2}))\\ ...............................................\hskip 5.0&\text{\text@underline{implies}}\hfil\hskip 5.0&...............................................\\ g^{-1}(\overset{\mathrmbfit{Y}_{2}}{\mathrmbfit{ext}_{\mathcal{A}_{2}}}(x_{2}))\hskip 5.0&\;\supseteq\hfil\hskip 5.0&\overset{\mathrmbfit{Y}_{1}}{\mathrmbfit{ext}_{\mathcal{A}_{1}}}(f(x_{2}))\\ g(x_{1}){\;\in\;}\overset{\mathrmbfit{Y}_{2}}{\mathrmbfit{ext}_{\mathcal{A}_{2}}}(x_{2})\hskip 5.0&\;\Longleftarrow\hfil\hskip 5.0&x_{1}{\;\in\;}\overset{\mathrmbfit{Y}_{1}}{\mathrmbfit{ext}_{\mathcal{A}_{1}}}(f(x_{2}))\\ g(y_{1}){\;\models_{\mathcal{A}_{2}}\;}x_{2}\hskip 5.0&\;\Longleftarrow\hfil\hskip 5.0&y_{1}{\;\models_{\mathcal{A}_{1}}\;}f(x_{2})\\ \mathcal{A}_{2}={\langle{X_{2},\mathrmbfit{Y}_{2}}\rangle}\hskip 5.0&\xleftharpoondown{{\langle{f,\gamma}\rangle}}\hfil\hskip 5.0&{\langle{X_{1},\mathrmbfit{Y}_{1}}\rangle}=\mathcal{A}_{1}\\ \lx@intercol\hfil\text{\text@underline{lax infomorphism}}\hfil\lx@intercol\rule[6.0pt]{0.0pt}{10.0pt}\\ \hskip 5.0&\hfil\hskip 5.0&\end{array}

Table 14: Lax Infomorphisms
XX^{\prime}XXY{\wp}Y^{\prime}Y{\wp}Y𝒀\mathrmbfit{Y}^{\prime}𝒀\mathrmbfit{Y}ffg1g^{-1}
XX^{\prime}XX𝐒𝐞𝐭\mathrmbf{Set}𝒀\mathrmbfit{Y}^{\prime}𝒀\mathrmbfit{Y}ff𝜓\xLeftarrow{\;\;\psi\;\;}
strict lax
Figure 16: Lax Infomorphism

References

  • [1] Barwise, J., and Seligman, J.: Information Flow: The Logic of Distributed Systems. Cambridge University Press, Cambridge (1997).
  • [2] Chen, P.: “The Entity-Relationship Model - Toward a Unified View of Data”. ACM Trans. on Database Sys., 1 (1): pp. 9-36. doi:10.1145/320434.320440.
  • [3] Codd, E.F.: The relational model for database management : version 2. Addison Wesley, Boston (1990).
  • [4] Ganter, B., and Wille, R.: Formal Concept Analysis: Mathematical Foundations. Springer, New York (1999).
  • [5] Goguen, J.: A categorical manifesto. Mathematical Structures in Computer Science 1, 49–67 (1991).
  • [6] Gruber, T. “Ontology”. In: Ling Liu and M. Tamer Özsu (eds.) The Encyclopedia of Database Systems, Springer-Verlag (2009). Available online: tomgruber.org/writing/ontology-definition-2007.htm.
  • [7] Kent, R.E.: “Database Semantics”. (2011). Available online:
    https://arxiv.org/abs/1209.3054.
  • [8] Kent, R.E.: “The First-order Logical Environment”. In: Pfeiffer, H.D., Ignatov, D.I., Poelmans, J., and Nagarjuna G. (eds.) Conceptual Structures in Research and Education, LNCS vol. 7735, pp. 210–230. Springer, Heidelberg (2013). Available online: https://arxiv.org/abs/1305.5240.
  • [9] Kent, R.E.: “The ERA of FOLE: Foundation” (2015). Submitted for publication. Available online: https://arxiv.org/abs/1512.07430.
  • [10] Kent, R.E.: “The ERA of FOLE: Superstructure” (2016). Available online:
    https://arxiv.org/abs/1602.04268.
  • [11] Kent, R.E.: “The FOLE Table”. Submitted for publication. Available online:
    https://arxiv.org/abs/1810.12100.
  • [12] Kent, R.E.: “The FOLE Database”. Available online:
    https://arxiv.org/abs/2302.05997.
  • [13] Kent, R.E.: “Relational Operations in FOLE”. Submitted for publication. Available online: https://arxiv.org/abs/2103.11027.
  • [14] Kent, R.E.: “Semantic Integration in the IFF”. Presented at the Semantic Integration Workshop of the 2nd International Semantic Web Conference (ISWC2003), Sanibel Island, Florida, October 20, 2003. Available online:
    https://arxiv.org/abs/1109.0032.
  • [15] Kent, R.E.: “Semantic Integration in the Information Flow Framework”. Dagstuhl Seminar Proceedings 04391, Semantic Interoperability and Integration, Schloss Dagstuhl, Leibniz-Zentrum fur Informatik GmbH, 2005. Available online:
    https://arxiv.org/abs/1810.08236.
  • [16] The Information Flow Framework (IFF). Start document available from the IEEE P1600.1 Standard Upper Ontology Working Group (SUO WG) Home Page.
    http://ontolog.cim3.net/file/resource/historic-archives/IEEE-SUO-WG/.