Mathematical models, such as sets of equations, are used in engineering to represent and analyze the behaviour of physical systems. The conventional notations in formulating engineering models do not clearly provide all the details required in order to fully understand the equations, and, thus, artifacts such as ontologies, which are the building blocks of knowledge representation models, are used to fulfil this gap. Since ontologies are the outcome of an intersubjective agreement among a group of individuals about the same fragment of the objective world, their development and use are questions in debate with regard to their competencies and limitations to univocally conceptualize a domain of interest. This is related to the following question: “What is the criterion for delimiting the specification of the main identifiable entities in order to consistently build the conceptual framework of the domain in question?” This query motivates us to view the Yoneda philosophy as a fundamental concern of understanding the conceptualization phase of each ontology engineering methodology. In this way, we exploit the link between the notion of formal concepts of formal concept analysis and a concluding remark resulting from the Yoneda embedding lemma of category theory in order to establish a formal process.
1. Introduction
In the computer science context, the terms ontology and concept are defined in many various ways, and sometimes their use is a confused mixture of both terms. On the one hand, an ontology is defined as a common conceptualization of a general idea, or a domain of interest [1, 2], while, on the other hand, a concept is defined as a general idea, which is created by removing the uncommon characteristics from several particular ideas [3]. Thus, it is obvious that ontologies use concepts to convey their semantics and concepts are definitional structures that are explicitly encoded within ontologies.
In practice, an ontology consists of classes that are concepts of a particular domain, relations between classes, a hierarchy of classes, properties of classes that describe their attributes, instances of classes with specific values, and axioms that specify additional constraints over classes. So, the most crucial task of building an ontology is to consistently express its classes, that is, the concepts of a particular domain. An indispensable condition for formally expressing a concept that should carry a meaning, besides its name that does not carry any meaning, is to determine all its stakeholders, that is, other terms interrelated with the concept in question, properties attached to it, and specific values, directly or indirectly, affecting its noema, since, in natural language, a concept can be described by the objects belonging to it or by its determining features [4].
In order to make the ontological status of concepts apparent, independently of the language used to express them and of the techniques used for embedding them within ontologies, we have exploited the link between the notion of formal concepts of formal concept analysis (FCA) and a concluding remark resulting from the Yoneda embedding lemma of category theory. This enables the formalization of concepts by considering their semantics, since the notion of a concept in computer science is very subtle and does not rely on mathematical constructors. This step intends to eliminate any misunderstanding that occurs, due to ontological semantic heterogeneity, arising from synonymy (i.e., ontological concepts for a domain described with different terminologies) and polysemy (i.e., different meanings assigned to the same word in different contexts).
The basics and the role of formal concept analysis in defining ontology concepts are discussed in Sections 2 and 4, respectively, while the basics and a discussion of related work on category theory are presented in Sections 3 and 5, respectively. In Section 6, the main point of this work is illustrated, by means of a simple example. In Section 7, other possible meeting points of FCA and category theory, aiming at direct research into the critical path of formalizing tasks concerning ontology engineering and facilitating progress of the field, are discussed. The conclusion is drawn in the last section.
This section introduces basic terms of formal concept analysis, among which are the fundamental notions of a formal context, formal concept, and concept lattice, as well as their basic properties.
Formal concept analysis (FCA), introduced by Wille [5], is a method for analyzing data which describe relationships between a set of objects and a set of attributes. From the input data, FCA produces a concept lattice, which is a collection of formal concepts in the data. Formal concepts are clusters of data drawn together by having common attributes [6] representing natural human-like concepts and are hierarchically ordered by a subconcept-superconcept relation. FCA also produces attribute implications which describe particular dependencies valid in the data. It integrates the discovery and reasoning with concepts in data, the discovery and reasoning with dependencies in data and the visualization of data, and concepts and dependencies with folding and unfolding capabilities, which are referred to as the reconstruction of a diagram of concepts and their dependencies, in order to be more simplified, but as informative as the original one. For more details see [7, 8].
In FCA, a cross-table with logical attributes is represented by a triplet 〈X,Y,I〉 (a so-called context), where the elements of the set X are called objects and correspond to the rows of the table, the elements of the set Y are called attributes and correspond to the columns of the table, and I is a binary (incidence) relation between X and Y. 〈x,y〉∈I, or xIy indicates that object x has attribute y or that y holds for x, while 〈x,y〉∉I indicates that object x does not have attribute y. An example of such a table is shown in Table 1.
A table defining an incidence relation.
y1
y2
y3
x1
×
×
×
x2
×
×
x3
×
×
A partially ordered collection of particular clusters of objects and attributes is obtained out of a given context cross-table, and it is called a concept lattice. The clusters of a concept lattice, called formal concepts, are pairs 〈A,B〉, where A⊆X is a set of objects and B⊆Y is a set of attributes, such that A is the set of all objects which have all attributes from B and B is the set of all attributes which are common to all objects from A. For instance, 〈{x1,x2},{y1,y2}〉 is an example of a formal concept for the table of Table 1. Under suitable permutations of the rows and the columns of the cross-table, a formal concept 〈A,B〉 is represented by a maximal rectangle full of crosses.
Moreover, formulas describing dependencies which are true in the table are obtained, which are called attribute implications. An attribute implication is an expression A⇒B, with A and B being sets of attributes. A⇒B is true in the context 〈X,Y,I〉 if each object having all attributes from A has all attributes from B as well. For instance, {y3}⇒{y2} is true for the context of Table 1, while {y1,y2}⇒{y3} is not, x2 being a counterexample.
In order to produce the formal concepts of a formal context 〈X,Y,I〉, the so-called concept-forming operators are used, defined between the powersets of X and Y:
(1)↑:A∈2X⟶B∈2Y:A↑={y∈Y/foreachx∈A:〈x,y〉∈I},
where A↑ is just the set of all attributes shared by all objects of A and
(2)↓:B∈2Y⟶A∈2X:B↓={x∈X/foreachy∈B:〈x,y〉∈I},
where B↓ is just the set of all objects sharing all attributes from B.
A formal concept now in 〈X,Y,I〉 is just a pair 〈A,B〉 of A⊆X and B⊆Y, such that A↑=B and B↓=A. A is called the extent and B the intent of 〈A,B〉, respectively. The formal concepts are naturally ordered by using a subconcept-superconcept relation, based on inclusion relation on objects and attributes; that is, for formal concepts 〈A1,B1〉 and 〈A2,B2〉 of the context 〈X,Y,I〉, 〈A1,B1〉≤〈A2,B2〉 if and only if A1⊆A2 (if and only if B2⊆B1).
By using basic mathematical structures behind FCA, it can be proven that the pair 〈↑,↓〉 of concept-forming operators induced by 〈X,Y,I〉 forms a Galois connection between X and Y, and the formal concepts 〈A,B〉 are just the fixed points of this Galois connection.
More precisely, given a pair of sets X and Y, a pair 〈f,g〉 of operators, f:2X→2Y and g:2X→2Y, is a Galois connection if for A,A1,A2⊆X, B,B1,B2⊆Y it satisfies the following:
(3)A1⊆A2⟹f(A2)⊆f(A1),B1⊆B2⟹g(B2)⊆g(B1),A⊆g(f(A)),B⊆f(g(B)).
For a Galois connection 〈f,g〉 between the sets X and Y, the fixpoint set of 〈f,g〉 is defined as the set
(4)fix(〈f,g〉)={〈A,B〉∈2X×2Yf(A)=B,g(B)=A}.
Also, for a Galois connection 〈f,g〉 between the sets X and Y, we have
(5)f(A)=f(g(f(A))),g(B)=g(f(g(B))).
Now, given a set X, a mapping C:2X→2X, such that, for each A,A1,A2⊆X,
(6)A1⊆C(A),A1⊆A2⟹C(A1)⊆C(A2),C(A)⊆C(C(A)),
is called a closure operator on X and its fixpoint set is given by
(7)fix(C)={A⊆XC(A)=A}.
In addition, for a Galois connection 〈f,g〉 between the sets X and Y, the composition CX:f∘g is the closure operator on X and CY:g∘f is the closure operator on Y.
Finally, since the pair 〈↑,↓〉 of concept-forming operators induced by 〈X,Y,I〉 forms a Galois connection between X and Y, the compositions ↑↓ and ↓↑ of the concept-forming operators are closure operators on X and Y, respectively.
Another fundamental notion in FCA is that of the set of all formal concepts of 〈X,Y,I〉, denoted by ℬ(X,Y,I) the so-called concept lattice, where
(8)ℬ(X,Y,I)={〈A,B〉∈2X×2YA↑=B,B↓=A}.
Then, the fixpoints of the composition operator ↑↓ give the set of all extents of the formal concepts of 〈X,Y,I〉 that is,
(9)Ext(X,Y,I)={A∈2X〈A,B〉∈B(X,Y,I)forsomeB}=fix(↑↓),
and the fixpoints of the composition operator ↓↑ give the set of all intents of the formal concepts of 〈X,Y,I〉; that is,
(10)Int(X,Y,I)={B∈2Y〈A,B〉∈B(X,Y,I)forsomeA}=fix(↓↑).
The extents and intents are just the images under the concept-forming operators:
(11)Ext(X,Y,I)={B↓B⊆Y},Int(X,Y,I)={A↑A⊆X}.
Hence,
(12)ℬ(X,Y,I)={〈A,A↑〉A∈Ext(X,Y,I)},={〈B↓,B〉B∈Int(X,Y,I)}.
Now, a partial order ≤ can be defined on ℬ(X,Y,I), since for 〈A1,B1〉,〈A2,B2〉∈ℬ(X,Y,I), A1⊆A2 if and only if B2⊆B1. Thus, one puts 〈A1,B1〉≤〈A2,B2〉, meaning that 〈A1,B1〉 is more specific than 〈A2,B2〉 or, equivalently, that 〈A2,B2〉 is more general than 〈A1,B1〉. Then 〈ℬ(X,Y,I),≤〉 is a complete lattice, which means that, for any collection of formal concepts K⊆ℬ(X,Y,I), ℬ(X,Y,I) contains both their direct generalization (the supremum of K, noted as ∨K) and their direct specialization (the infimum of K, noted as ∧K). The main theorem of concept lattices states that the supremum and infimum of a collection of formal concepts 〈Aj,Bj〉,j∈J, J=1,2,3,…, are given by
(13)⋀j∈J〈Aj,Bj〉=〈⋂j∈JAj,(⋃j∈JBj)↓↑〉,⋁j∈J〈Aj,Bj〉=〈(⋃j∈JAj)↑↓,⋂j∈JBj〉.
3. Category Theory Background: Categories, Functors, Natural Transformations, and Yoneda Embedding Lemma
In this section, we briefly refer to the basic notions of category theory, such as categories, functors, and natural transformations that guide to the comprehension of the Yoneda embedding lemma.
Category theory [9–12], which can, in general, be considered as a mathematical theory of structures and of systems of structures, occupies a central position in contemporary mathematics and theoretical computer science, since (a) it focuses on relationships (categorical morphisms, functors, and natural transformations) and not on entities (categorical objects and categories), (b) it allows the coexistence of heterogeneous entities, since it provides the ability to define several categories, according to the kind of entities to be described, which can be related by the definition of special morphisms (categorical functors), (c) it offers a set of categorical constructors for creating new categories, by using predefined ones, (d) it provides a means for the combination of categorical objects (colimits can be used to compose them and limits to decompose them) and for the combination of categorical functors (natural transformations), and (e) it provides a multilevel study of its categorical notions, by defining three interrelated levels (the level of categories, of functors, and of natural transformations).
A category is a mathematical structure consisting of entities of some kind, together with the relationships between them that express the structure. Formally, a category consists of objects (entities) and morphisms (relationships), together with a law of composition for the morphisms, and a unique identity morphism for each object. More rigorously speaking, a category 𝒞 is anything comprising the following data.
A class 𝒞0 of objects is denoted by A,B,C,….
A class 𝒞1 of morphisms between objects is denoted by f,g,h,…. In order to denote a morphism f from object A to object B, we write f:A→B, where A is the domain of f(domf=A) and B is the codomain of f(codf=B). In general, there may exist more than one morphism from A to B. The collection of all morphisms from A to B is denoted by Hom𝒞(A,B)=𝒞(A,B).
A composition operator is denoted by ∘, assigning to each pair of composable morphisms f:A→B and g:B→C a composite arrow h:A→C, h=g∘f. The composition of morphisms is associative, that is, for any morphisms f:A→B, g:B→C, and h:C→D:h∘(g∘f)=(h∘g)∘f, as depicted in Figure 1.
For each object A in 𝒞0, a unique morphism 1A:A→A, which acts as the unit of the composition; that is, for any morphism f:A→B, 1B∘f=f=f∘1A, as depicted in Figure 2.
The composition operation is associative.
The unit of the composition.
A category 𝒞 is called small when the objects 𝒞0 and the morphisms 𝒞1 are sets and not proper classes. A less strict concept is that of a locally small category, when for all objects A and B in 𝒞0, the collection of morphisms between them, 𝒞(A,B), is a set, called a Hom-set (in this case, we may still have “too many” pairs of objects).
An important category is Set, the category having sets as objects, total functions as morphisms, and identity functions as identity morphisms. The composition of total functions, f:A→Bandg:B→C, is the total function h:A→C, mapping a∈Ato(g∘f)(a)=g(f(a))∈C.
For each category 𝒞, the dual category 𝒞op is defined as the category having the same objects as those of 𝒞 and as morphisms the opposites of the morphisms in 𝒞; that is, if f:A→B is a morphism in 𝒞1, then fop:B→A is a morphism in 𝒞1op.
Another essential feature of category theory is that of an isomorphism, which is mainly used in order to compare objects. An isomorphism is a morphism f:A→B that has an inverse, that is, a morphism f-1:B→A, such that f∘f-1=1B and f-1∘f=1A. If f:A→B is an isomorphism, then its inverse f-1:B→A is unique. By using this definition, two objects A and B are isomorphic (A≅B) if there is a pair of inverse morphisms f:A→B and f-1:B→A between them. Two isomorphic objects are said to be identical up to an isomorphism if every object satisfying a property p of an object A is isomorphic to A.
There are two special objects that are defined in a category: the initial and the terminal objects. More formally, an object of a category 𝒞 is called an initial object, denoted by 0 in Figure 3, if for every object A in 𝒞, there exists exactly a unique morphism 0→A.
An initial object.
The symbol ! is used to characterize unique morphisms. On the other hand, an object of a category 𝒞 is called a terminal object, denoted by 1 in Figure 4, if for every object A in 𝒞, there exists exactly a unique morphism A→1.
A terminal object.
In this mathematical theory, any part of a category can be pictured as a directed diagram, which is a set of objects and morphisms. A significant operation in category theory is the pushout, which is defined over a diagram. A pushout of a pair of morphisms, f:A→B and g:A→C, is an object Q, together with a pair of morphisms qf:C→Q and qg:B→Q, such that qf∘g=qg∘f, and with the universal property stating that, whenever qf′:C→Q′ and qg′:B→Q′ are such that qf′∘g=qg′∘f, there exists a unique morphism s:Q→Q′, such that s∘qf=qf′ and s∘qg=qg′. In Figure 5, the pushout is indicated by drawing a square corner ⌈ next to it.
The pushout tuple (Q,qf,qg) of f and g.
The pushout is the categorical dual of pullback, which is depicted in Figure 6, which is obtained by reversing arrows in the graph of pushout.
The pullback tuple (P,pf,pg) of f and g.
These categorical constructions are characterized as universal constructions, describing a class of objects and the accompanying morphisms that share a common property.
Another important notion of category theory is functors, which are structure-preserving mappings between categories. Given two categories 𝒞 and 𝒟, a functor F:𝒞→𝒟 maps
each object A∈𝒞 to an object FA∈𝒟,
each morphism f:A→B∈𝒞 to a morphism Ff:FA→FB∈𝒟,
identity morphisms of 𝒞 to identity morphisms of 𝒟; that is, F(1A)=1FA,
the composition of morphisms f and g in 𝒞 to the composition of their mappings in 𝒟; that is, with f and g composable in 𝒞, F(g∘f)=F(g)∘F(f).
For a given category 𝒞, the identity functor 1𝒞 maps each object and each arrow in 𝒞 to itself. Moreover, functors can be composed. Given two functors F:𝒞→𝒟 and G:𝒟→ℰ, their composition G∘F:𝒞→ℰ is a functor mapping an object A∈𝒞0 to the object G(FA)∈ℰ0 and mapping a morphism f∈𝒞1 to the morphism G(Ff)∈ℰ1.
Let us now consider two locally small categories 𝒞 and 𝒟. For every pair of objects A,B∈𝒞0, a functor F:𝒞→𝒟 defines a function FA,B:𝒞(A,B)→𝒟(FA,FB) in Set. Then, the functor F:𝒞→𝒟 is
faithful if the function FA,B is injective,
full if the function FA,B is surjective,
fully faithful if the function FA,B is bijective.
A functor F:𝒞→𝒟 is an embedding if it is full, faithful, and injective on objects. A functor from 𝒞 to 𝒟 is called a covariant functor, while a functor F:𝒞op→𝒟 is called a contravariant functor from 𝒞 to 𝒟 if it reverses arrow; that is, it is a covariant functor F:𝒞op→𝒟 from the opposite category 𝒞op to 𝒟.
In order to comprehend the Yoneda embedding, the more elaborate categorical notions of representable functors are needed. The representable functors map a locally small category 𝒞 to the category Set. They refer either to incoming morphisms to a fixed object in 𝒞 (generalized elements) or to outgoing morphisms from a fixed object in 𝒞 (generalized properties).
Given a category 𝒞, the covariant representable functor 𝒞(A,-):𝒞→Set, which is depicted in Figure 7, can be defined, for each fixed object A∈𝒞0, and it takes each object B∈𝒞0 to the set 𝒞(A,B)∈Set0 of morphisms from A to B (𝒞(A,B) is an object of Set) and each morphism f:B→C∈𝒞1 to the function
(14)𝒞(A,-)(f)=𝒞(A,f)=f∘-:𝒞(A,B)⟶𝒞(A,C)∈Set1.
The covariant representable functor 𝒞(A,-).
This last function takes a morphism g:A→B∈𝒞1 (an element of the set 𝒞(A,B) in Set0) to the morphism 𝒞(A,f)(g)=f∘g∈𝒞1 (an element of the set 𝒞(A,C) in Set0). The covariant representable functor refers to the outgoing morphisms from a fixed object A in 𝒞 and to their compositions with other morphisms in 𝒞.
Given a category 𝒞, the contravariant representable functor 𝒞(-,B):𝒞op→Set, which is depicted in Figure 8, is defined, for each fixed object B∈𝒞0, taking each object A∈𝒞0 to the set 𝒞(A,B)∈Set0 of morphisms from A to B (𝒞(A,B) is an object of Set) and each morphism f:A→C∈𝒞1 to the function
(15)𝒞(-,B)(f)=𝒞(f,B)=-∘f:𝒞(C,B)⟶𝒞(A,B)∈Set1,
which takes a morphism g:C→B∈𝒞1 (an element of the set 𝒞(C,B) in Set0) to the morphism 𝒞(f,B)(g)=g∘f∈𝒞1 (an element of the set 𝒞(A,B) in Set0). The contravariant representable functor refers to the incoming morphisms to a fixed object B in 𝒞 and their compositions with other morphisms in 𝒞.
The contravariant representable functor 𝒞(-,B).
Moreover, given a category 𝒞, the Hom-set bifunctor 𝒞(-,-):𝒞op×𝒞→Set, which is depicted in Figure 9, is defined, for each pair of fixed objects A∈𝒞0 and B∈𝒞0, and it takes each such pair of fixed objects A∈𝒞0 and B∈𝒞0 to the set 𝒞(A,B)∈Set0 of morphisms from A to B (𝒞(A,B) is an object of Set) and each pair of morphisms f:A′→A∈𝒞1 and g:B′→B∈𝒞1 to the function
(16)𝒞(-,-)(f,g)=𝒞(f,g)=g∘-∘f:𝒞(A,B′)⟶𝒞(A′,B)∈Set1
The Hom-set bifunctor 𝒞(-,-).
This last function takes a morphism h:A→B∈𝒞1 (an element of the set 𝒞(A,B) in Set0) to the morphism 𝒞(f,g)(h)=g∘h∘f∈𝒞1 (an element of the set 𝒞(A′,B′) in Set0). The contravariant representable functor refers to the incoming morphisms to a fixed object A in 𝒞 and to the outgoing morphisms from a fixed point B in 𝒞.
Another important notion of category theory is that of natural transformations, which relate two functors. Given two functors F:𝒞→𝒟 and G:𝒞→𝒟 from 𝒞 to 𝒟, a natural transformation η:F⇒G, which is depicted in Figure 10, is a map h:𝒞0→𝒟1, assigning to each object A∈𝒞0 a morphism ηA:FA→GA∈𝒟1, called the component of η at A, such that, for every morphism f:A→B∈𝒞1, it holds that ηB∘Ff=Gf∘ηA. The components ηA are morphisms in 𝒟1 and can thus be composed.
The definition of the natural transformation.
Given two categories 𝒞 and 𝒟, a functor category denoted by 𝒟𝒞 is defined, having as objects the functors from 𝒞 to 𝒟 and having as morphisms the natural transformations between them. In this functor category, Hom𝒟𝒞(F,G)=Nat(F,G) is the set of natural transformations from functor F to functor G (F and G are objects of 𝒟𝒞). The contravariant representable functor for 𝒟𝒞 is then denoted by Nat(-,G) and sends a functor F∈𝒟𝒞 to the set Nat(F,G)∈Set of natural transformations between F and G and a natural transformation η:F⇒H to the function
(17)Nat(-,G)(η)=Nat(η,G)=-∘η:Nat(H,G)⟶Nat(F,G).
The function Nat(η,G) sends a natural transformation θ:H⇒G to the natural transformation θ∘η:F⇒G (which is a morphism in 𝒟𝒞 and an element of the set Nat(F,G)∈Set).
An isomorphism can be defined in a functor category 𝒟𝒞. Given two functors F,G:𝒞→𝒟 (objects of 𝒟𝒞), if a natural transformation η:F→G (morphism in 𝒟𝒞) has an inverse natural transformation η-1:G→F such that for every object A in C it is (η∘η-1)A=(1F)A=1FA and (η-1∘η)A=(1G)A=1GA, then η is called a natural isomorphism, and F and G are said to be naturally isomorphic; that is, F≅G.
Given an object A in a category 𝒞, there is a functor y:𝒞→Set𝒞op from 𝒞 to the category Set𝒞op of functors from 𝒞op to Set (called the category of presheaves) that sends A to the functor 𝒞(-,A)∈Set𝒞op. This functor y is the Yoneda embedding. The Yoneda embedding also sends a morphism f:A→B∈𝒞1 to the natural transformation yf:𝒞(-,A)→𝒞(-,B) between functors 𝒞(-,A) and 𝒞(-,B), having a component (yf)X:𝒞(X,f)=f∘- at X∈C0, which sends a morphism g:X→A∈𝒞(X,A) to the morphism f∘g:X→B∈𝒞(X,B).
The Yoneda lemma is an abstract result on functors of the type morphisms into a fixed object, which allows the embedding of any category into a category of functors defined on that category. It states that every functor F:𝒞op→Set∈Set𝒞op is naturally isomorphic to the functor Nat(y-,F); that is, for every A∈𝒞0, Nat(yA,F)≅FA and this isomorphism is natural both in A and F. One instance of Yoneda’s lemma is the Yoneda embedding, which informally states that in order to determine an object of a category, it suffices to determine all its generated elements or all its generated properties.
4. The Interplay between FCA and Ontological Concepts
An ontology is the formal expression of relations between relevant notions in order to consistently describe a domain of interest, and in this perspective, it must clearly conceptualize these notions. At the conceptualization level, it is necessary to formally describe the relevant concepts, which are to be included in the ontology.
FCA, on the other hand, is a mathematical theory, which is based on the philosophical statement that a concept is constituted by two parts: its extension consisting of all objects belonging to the concept and its intension comprising all attributes shared by those objects [13]. In FCA, a formal concept is produced from a formal context such as 〈X,Y,I〉 of Section 2 by applying the concept-forming operators to its intension or to its extension; that is, a formal concept is a pair 〈A,B〉, where A⊆X is a set of objects and B⊆Y is a set of attributes, such that A is the set of all objects which have all attributes from B and B is the set of all attributes which are common to all objects from A.
Based on the assumption that an isolated concept has no meaning, since meaning is a product of the relationships among concepts in a specific context, an extension of FCA has been designed, the so-called relational concept analysis (RCA) [14], in order to deal with multirelational data [15]. RCA provides a generalization of FCA in the case of many-valued contexts. A many-valued context is defined as a context (G,M,W,I) consisting of three sets, namely, G, whose elements are called formal objects, M with many-valued attributes, and W, whose elements are values, and a ternary relation I between them, with the conditions (g,m,w)∈I and (g,m,v)∈I⇒w=v, with (g,m,w) being read as “the attribute m has the value w for the object g.” Thus, relational context schemas are useful for attributes that have not just only one but several values for an object.
Moreover, a triadic approach to FCA has been designed, the so-called triadic concept analysis (TCA) [16], as another FCA extension, which is based on a formalization of the triadic relation connecting objects, attributes, and conditions, where a concept is described by its extension, intention, and modus, respectively [17]. In this framework, instead of the dyadic relation between objects and attributes used in FCA, the triadic approach is based on a triadic relation saying that the object g has the attribute m under the condition b. Similar to the dyadic form of FCA, a triadic concept is produced from a triadic context, which is defined as a quadruple 〈X,Y,Z,I〉, where X, Y, and Z are sets of objects, attributes, and conditions, respectively, and I is a ternary relation between them, by applying derivation operators to its intension, extension, or modus. Thus, triadic concepts can be considered, for example, as those formal concepts that have the same extent but differ according to their intent and modus.
The interplay between FCA and ontologies has been studied to a considerable extent [18]. It turns out that there are basically two ways concerning how FCA and ontological concepts can be combined. The most obvious way is to identify the ontology concepts with the formal concepts of FCA. However, in many applications, the ontology concepts correspond to the FCA attributes [19, 20]. Since the ontological status of concepts has an internal structure, within the framework of FCA, this is sometimes generated by tertiary relations within multivalued contexts [21] or by using distributional formal contexts [22].
The crucial point in specifically describing a concept within an ontology is to find out all the attributes that are shared by this concept. Thus, from an FCA-based point of view, for formally describing a concept, its intentional description is required. In the case where a concept is described by a set of attributes under specific conditions, the notion of triadic contexts is used for its representation [23]. Moreover, each concept within an ontology denotes a specific role emerging from adding specific values to its intentional structure, that is, its attributes. In this perspective, ontology concepts are considered as the relational structures that the RCA process provides [24, 25].
5. The Interplay between Category Theory and Ontological Concepts
Since ontology can be regarded as a categorization of that which exists, issues involving the ontological status of concepts and the notion of a category are important. According to Aristotle, a class or collection of things all of one type, where typicality is determined by a concept, is a category. Later on, a category, as a purely mathematical notion, was defined as having an internal structure given by relationships among members. Thus, the exact match between the terms category and concept has emerged because a concept can be defined as having internal structure, due to their explanatory capabilities [26].
Category theory has been established as an appropriate mathematical basis for the formalization and study of ontologies [27, 28], since it focuses on relationships (categorical morphisms) between entities (categorical objects) in such a way that an entity can be defined according to its interaction with other entities [29]. There have been various category theoretic approaches to ontology engineering, which involves tasks, such as development, mapping, and merging of ontologies. In particular, in the case of ontology mapping and merging, the category Ont of ontologies is defined and the categorical constructions of pullback and pushout are used, respectively [30–32].
Formally speaking, ontology is a theory over logic. But many ontologies are described in different languages, each one with its own logic. Thus, in order to integrate ontologies, many approaches using the theory of institutions [33] have emerged, such as in [34, 35] for mapping between different logics to deal with heterogeneous formalization. Moreover, the constructions of category theory have been combined with information flow theory [36], which describes how information about one thing can convey information about something else, for integrating distributed ontologies [37, 38]. Finally, in [39] a rigorous foundation for integrating heterogeneous information is provided, by unifying information flow theory, institutions, formal concept analysis, and category theory.
By using a category theoretic language, ontologies can be represented as categories with finite limits and finite coproducts, where classes (concepts) are represented by nodes and functional relationships by arrows of a directed graph [40], and if an ontology has a representation by a category, then one may apply homological and homotopical algebra constructions to study the ontology [41]. Another view of the category theoretic perspective of ontologies and their underlying classes (concepts) is given in [42], where an ontology is regarded as a mathematical category of theories and a concept is represented by the ideas of theories and models that are borrowed from FCA. Moreover, in [43] an ontology can be described by formal concepts and thus it can be viewed as a category.
6. From the Yoneda Embedding to Formal Concepts
Our main point is the fact that, from an ontological point of view, the formal determination of a concept is guided by the interconnection existing between a concluding remark of the Yoneda embedding lemma of category theory and the intents of the formal concepts of FCA. In order to illustrate this point, an example is used in this section, relying on the assumption that attributes can also be considered as concepts, according to the German standard DIN 2330, stating that attributes “are units of thought which are gained by abstraction, and hence they are also concepts” [19, 44].
Following this statement, we can represent binary relations between entities within an ontology, by using a suitable formal context. For this purpose, we consider the entities of the ontology, both as objects and as attributes of the context. A binary relation present in the context signifies that the respective entities are related. As an example, the ontology of Figure 11, where the concepts Ai, i=1,2,…,6, are hierarchically structured, is represented by the formal context of Figure 12, by using Lattice Miner [45], which is a formal concept analysis software tool for the construction of concept lattices.
A simple example of an ontology.
The formal context for the ontology of Figure 11.
In Figure 12, the concept lattice and the formal concepts associated with the formal context of Figure 11 are depicted. It is a representation of a formal context called cross-table. The context has six attributes, ai, i=1,2,…,6. An “x” in a particular location or cell in the cross-table indicates that an object has an attribute, so, for example, the object “A2” has the attribute “a1.” Conversely a blank location indicates that the object does not have that attribute.
The concept lattice of Figure 13 contains five concepts, the most general being 〈{A1,…,A6}〉. The bottom concept is 〈{},{a1,…,a6}〉 because it is the concept of objects that have all attributes. The remaining concepts are marked with their intent and their extent.
The formal concepts and the concept lattice for the ontology of Figure 11.
The diagram shows that there is an ordering over the concepts, which is a specialization ordering, denoted by ≤ [46].
It is interesting to notice here that the formal concepts represent the incoming relations to an ontology entity; that is, the intents of each formal concept correspond to the incoming arrows to each respective ontological concept. For example, the formal concept 〈{a1},{A2,A3}〉 represents the incoming relations (arrows) to ontological entity (concept) A1. Now, if we consider a categorical perspective of the ontology, where the ontology entities are the objects of a category and the relations between the entities are the morphisms (arrows), then the intent of a formal concept represents the incoming arrows to an entity (object). But, from a category theoretic point of view, this remark is equivalent to the remark concluded from the Yoneda embedding lemma, which states that an object is completely determined by the incoming arrows to this object.
This statement yields from the Yoneda lemma, which is interpreted as follows: an object X of a category C is determined by the network of relationships that the object X has with all the other objects in C [47]. Thus, a concept can be clearly specified only by identifying the set of all its attributes and a set of attributes that are common for a concept determines completely a concept. This reciprocal condition can guide the building of the ontological status of concepts completely and consistently, since it eliminates polysemy and synonymy.
In a more illustrative example, such as that of the ontology of Figure 14, following the same process and taking into account its category theoretical representation, where concepts are objects of a category and their attributes/relations are morphisms, we observe the alignment between the intent of the formal concept 〈{belongs_To},{Greece,France}〉 and the incoming arrows to the ontological entity “Europe,” that is, the Yoneda philosophy in unequivocally determining concepts in ontology engineering.
A segment of an ontology conceptualizing European places.
7. Equivalent Points of FCA and Category Theory
In this section, we refer to the possible meeting points of FCA and category theory aiming at direct research into the critical path of formalizing tasks concerning ontology engineering and facilitating progress of the field.
Due to the fact that we focus on the abstract notion of concepts, as well as their formal representation, and not on strict mathematical objects, it is incongruous to talk about equality between different points of mathematical theories, rather than equivalence, or isomorphism between them. Thus, the main question to be answered is not if two concepts are equivalent, but if they are isomorphic, that is, if they are interchangeable in the sense that they have the same relationships with all concepts within a context. In that sense, it will be interesting to investigate the correspondence between the basic notions and constructions of FCA and category theory, such as between (a) the supremum of any collection of formal concepts of a complete lattice and the initial object of a category, (b) the infimum of any collection of formal concepts of a complete lattice and the terminal object of a category, and (c) the application of the concept-forming operators to the intention or to the extension of a formal context and the fact that from an object of a category, one can define a specific functor that encodes the essence of these objects, as well as between other notions.
8. Conclusion
A formal view on ontologies or on ontological concepts can contribute a lot to the direction of achieving effective interoperability, since the coexistence of multiple heterogeneous ontologies within or among ontology-based applications is an objective reality. Thus, by carefully studying FCA and category theory, as the mathematical theories that provide frameworks for structuring, analyzing, and visualizing data to make them more understandable and for combining and maintaining heterogeneous collections of data to enable them to interoperate, respectively, we investigate some equivalent notions of both theories. This can lead, despite the abstract but quite accurate techniques of these theories, to create a unified framework for the ontological representation as well as their management.
Acknowledgments
The authors are indebted to the editor and the anonymous reviewers for their valuable suggestions and comments that greatly contributed to improving the paper.
GruberT. R.Toward principles for the design of ontologies used for knowledge sharingBorstW. N.GoguenJ.DanF.MungierM.What is a concept?3596Proceedings of the 13th Conference on Conceptual Structures2005Springer5277Lecture Notes in Artificial IntelligenceLambrechtsL.WilleR.RivalI.Restructuring lattice theory: an approach based on hierarchies of conceptsBělohlávekR.SklenářV.Formal concept analysis over attributes with levels of granularityProceedings of the International Conference on Communicational Intelligence for Modelling, Control and Automation & Inter. Conf. on Intelligent Agents, Web Technologies and Internet CommerceNovember 2005Vienna, AustriaBělohlávekR.GanterB.WillR.AwodeyS.PierceB.LawvereW.SchanuelS.FiadeiroJ.ObitkoM.SnaselV.SmidJ.SnaselV.BelohlavekR.Ontology design with formal concept analysisProceedings of the International Conference on Concept Lattices and Their Applications (CLA '04)2004111119PrissU. E.HuchardM.HaceneM. R.RoumeC.ValtchevP.Relational concept discovery in structured datasetsLehmannF.WillR.A triadic approach to formal concept analysisKonecnyJ.OsickaP.kryszkiewiczM.ObiedkovS. A.General approach to triadic concept analysisProceedings of the 7th International Conference on Concept Lattices and Their Applications (CLA '10)2010Sevilla, Spain116126HitzlerP.ValtchevP.JäschkeR.What's happening in semantic web—and what FCA could have to do with it?CimianoP.HothoA.StummeG.TaneJ.Conceptual knowledge processing with formal concept analysis and ontologiesProceedings of the 2nd International Conference on Formal Concept Analysis (ICFCA '04)February 20041892072-s2.0-9444245010BendaoudR.NapoliA.ToussaintY.GangemiA.EuzenatJ.Formal concept analysis: a unified framework for building and refining ontologiesNandaJ.SimpsonT. W.KumaraS. R. T.ShooterS. B.A methodology for product family ontology development using formal concept analysis and web ontology languageJurkeviciusD.VasilecasO.Formal concept analysis for concept collecting and their analysisJäschkeR.HothoA.SchmitzC.GanterB.StummeG.Discovering shared conceptualizations in folksonomiesRouane-HaceneM.HuchardM.NapoliA.ValtchevP.Using formal concept analysis for discovering knowledge patternsProceedings of the 7th International Conference on Concept Lattices and Their Applications (CLA '10)October 2010Sevilla, SpainDolquesX.HuchardM.NebutC.SaadaH.Formal and relational concept analysis approaches in software engineering: an overview and an application to learn model transformation patterns in examplesProceedings of the 1st ICESE Virtual Workshop on Software Engineering and Artificial Intelligence2011Doha, QatarHealyM. J.PoliR.HealyM.KameasA.Category Theory as a Mathematics for formalizing ontologiesKrötzschM.HitzlerP.EhrigM.SureY.Category theory in ontology research: concrete gain from an abstract approach2005AIFB, University of KarlsruheBrownR.GlazebrookJ. F.BaianuI. C.A conceptual construction of complexity levels theory in spacetime categorical ontology: non-abelian algebraic topology, many-valued logics and dynamic systemsCafezeiroI.HaueuslerE. H.GrundyJ.HartmanS.LaenderA. H. F.MaciaszekL.RoddickJ. F.Semantic interoperability via Category Theory83Proceedings of the 26th International Conference on Conceptual Modeling2007197202ZimmermannA.KrötzschM.EuzenatJ.HitzlerP.BennettB.FellbaumC.Formalizing ontology alignment and its operations with category theoryProceedings of the International Conference on Formal Ontology in Information Systems (FOIS '06)2006Baltimore, Md, USAIOS Press277288HitzlerP.KrötzschM.EhrigM.SureY.What is ontology merging? A category-theoretical perspective using pushoutsProceedings of the 1st International Workshop on Contexts and Ontologies: Theory, Practice and ApplicationsJuly 2005AAAI Press1041072-s2.0-33646049021HuL.WangJ.Geo-ontology integration based on category theoryProceedings of the International Conference on Computer Design and Applications (ICCDA '10)June 2010Qinhuangdao, ChinaV15V182-s2.0-7795588733310.1109/ICCDA.2010.5540941GoguenJ. A.BurstallR. M.Institutions: abstract model theory for specification and programmingMossakowskiT.MaederC.LüttichK.GrumbergO.HuthM.The heterogeneous tool setKutzO.LückeD.MossakowskiT.Heterogeneously structured ontologies: integration, connection and refinement90Proceedings of the Knowledge Representation Ontology Workshop (KR '08)2008Sydney, AustraliaConferences in Research and Practice in Information TechnologyBarwiseJ.SeligmanJ.KentR.The IFF foundation for ontological knowledge organizationKalfoglouY.SchorlemmerM.The information flow approach to ontology-based semantic alignmentGoguenJ.JohnsonM.RosebrughR.PoliR.HealyM.KameasA.Ontology engineering, universal algebra, and category theoryGlazunovN.Semantic web and category theory modelsProceedings of the International Seminar “iscrete Mathematics and its Applications”2007Moscow, RussiaMGU309311HealyM. J.CaudellT. P.Ontologies and worlds in category theory: implications for neural systemsWendorffP.GruhnV.A formal approach to the assessment and improvement of terminological models used in information systems engineeringProceedings of the 8th Eiropean Engineering Conference and 9th ACM SIGSOFT Symposium on the Foundations of Software Engineering (ESEC '01 and FSE '01)September 2001Vienna, Australia83872-s2.0-0035783673Deutsches Institut für NormungBegriffe und Benennungen—Allgemeine Grundsätze2012, http://lattice-miner.softpedia.com/TilleyT.MazurB.GoldB.SimonsR.When is one thing equal to other thing?