for managing cooperative problem solving), Electronic Commerce and the Seman- ... graphics tablet dedicated to the capture of sketches) and an interface .... Moreover, a signature is associated with each label of a relation type Er which.
Annals of Mathematics and Artificial Intelligence 38: 65–89, 2003. 2003 Kluwer Academic Publishers. Printed in the Netherlands.
Ontological engineering and mathematical knowledge management: A formalization of projective geometry F. Fürst, M. Leclère and F. Trichet IRIN, Computer Science Research Institute (University of Nantes), 2, rue de la Houssinière, BP 92208, 44322 Nantes, France E-mail: {furst,leclere,trichet}@irin.univ-nantes.fr
The work presented in this paper deals with the formalization of the ontology underlying projective geometry. This formalization is done by using the conceptual graph model which has been defined in the Artificial Intelligence community. Through this experiment, we endeavour to show that applying knowledge representation techniques to mathematical fields is a relevant way to improve the reliability and efficiency of tools dedicated to mathematical knowledge management. Our proposal is based on the construction of knowledge bases (defined according to ontologies) which must be considered as the core of any mathematical knowledge management tool such as mathematical search engines on the web, mathematical intelligent tutoring systems, mathematical theorem provers, etc. This paper also aims at highlighting the contributions provided by ontological engineering when dealing with mathematical knowledge management. Keywords: ontology, operationalization, conceptual graphs, projective geometry
1.
Introduction
Mathematics is a very structured field of knowledge but also an extremely vast one. Gathering information from documents related to this area (for instance, documents available on the Web) can be very difficult as the current search engines are based on the use of keywords. One solution to this problem consists in automating information retrieval by integrating mathematical knowledge in Information Systems. Originating in the field of Artificial Intelligence and more precisely Knowledge Engineering [38], these systems are called Knowledge-Based Systems (KBSs). Heirs to Expert Systems, KBSs are currently used for a variety of purposes such as Enterprise Knowledge Management (capitalization, sharing and appropriation of knowledge and know-how), Education (exploitation of intelligent tutoring systems for managing cooperative problem solving), Electronic Commerce and the Semantic Web1 (indexation and annotation of web resources by making their semantics explicit). 1 The Semantic Web is an extension of the current web in which information is given a well-defined mean-
ing, enabling computers and people to cooperate more effectively [4].
66
F. Fürst et al. / Ontological engineering and mathematical knowledge management
The main problematics underlying the construction of a KBS is knowledge representation which consists in formalizing, from informal descriptions usually expressed in natural language, the knowledge characterizing a specific domain (i.e. the concepts, the relationships and the axiomatics which define, in an unambiguous way, the semantics of the considered domain). This activity is based on recent work on ontological engineering [9,14,31]. This type of engineering is concerned with the development of methodologies, models, tools and languages dedicated to the construction of ontologies. The Artificial Intelligence literature contains many definitions of the term ontology. One definition, which is generally agreed on and which is based on an initial proposal of T. Gruber [15], can be expressed as follows: an ontology is a formal, explicit specification of a shared conceptualization. As mentioned in [38], a conceptualization refers to an abstract model of some phenomenon in the world which identifies the relevant concepts of that phenomenon. Explicit means that the type of concepts used and the constraints on their use are explicitly defined. Formal refers to the fact that the ontology should be machine-readable. Shared reflects the notion that an ontology captures consensual knowledge (it is not restricted to some individual, but accepted by a group). An ontology can be developed for different goals, for instance for sharing common understanding of the structure of information among people or software agents, for enabling reuse of domain knowledge or for making domain assumptions explicit. The work presented in this paper is concerned with the formalization of the ontology underlying projective geometry. This work, which has been done in the context of the G INA project (Interactive and Natural Geometry) dedicated to Computer-Aided Design (CAD), is based on the use of the conceptual graph model [37]. Within this experiment, we first want to present our findings concerning the design and the use of ontologies for managing mathematical knowledge, in this case projective geometry.2 Secondly, we want to fuel thinking in ontological engineering, a research topic which is currently in full development in the context of the Semantic Web. For this last point, our goal is to show that the operationalization3 of knowledge is a relevant way to identify and validate the ontology underlying the domain under consideration. The rest of this paper is structured as follows. In section 2, we present the general principles (illustrated with examples) of the operationalization of projective geometry that we have done with the conceptual graph model. We also emphasize how the formal representation we propose allows us to manage theorem proving and query answering. In section 3, we put this work into the context of ontological engineering in order to discuss the methodological aspects of our work. 2 It is attractive to consider that a domain so logically and rigorously organised, as geometry, is easy to
formalize. But the desire for precision and universality of mathematicians comes up against the inaccuracy and the subjectivity of natural language. 3 Operationalizing knowledge consists in representing it with an operational language. An operational language is a formal language (i.e. a language having a syntax and formal semantics) which provides inference mechanisms allowing one to reason from its representations.
F. Fürst et al. / Ontological engineering and mathematical knowledge management
2.
67
Formalization of projective geometry
2.1. Context of the work The aim of the G INA project (Interactive and Natural Geometry)4 is to develop a system dedicated to Computer-Aided Design (CAD). The idea consists in allowing the end user to make drawings in 3 dimensions, by using both a graphic interface (i.e. a graphics tablet dedicated to the capture of sketches) and an interface allowing the user to integrate indications and explanations expressed in natural language, via a keyboard and/or a microphone. The expected scenario is as follows. The end user starts by tracing, in the form of drafts, the geometric scene he wants to design. Then, he completes his free-hand drawing by stating constraints such as “the two straight lines D1 and D2 are parallel”. Finally, the system automatically modifies the layouts according to the constraints. This type of interface developed in G INA corresponds precisely to the resources which are generally available when an architect models a building by using a computer: drafts and written notes specifying the details of the construction. The architecture of the expected system (cf. figure 1) is based on: 1. A module used to manage the layouts of the free-hand drawings. This module is dedicated to the generation of the constraints stated by the layouts which correspond to a sight in perspective (i.e. a 2D projection) of the geometric scene to model. 2. A module dedicated to the interpretation and to the translation (in terms of constraints) of the indications expressed in natural language. 3. A module used to merge and to solve the different types of constraints. 4. A module used to raise the considered scene to dimension 3. Currently, G INA has a solver of constraints (called Desargues [25]) and a first analyzer allowing the system to translate the specifications expressed in natural language into the specific formalism of Desargues. The work presented in this paper tackles the improvement of this analyzer, in particular the definition and the development of a subsystem able to control the relevance of the indications, to supplement them if necessary and to remove redundancies. These activities are important because the end user does not necessarily verbalize implicit information and/or information considered as obvious. In the end, this subsystem will be used to manage a real dialogue with the end user, in particular by revealing possible inconsistencies between the constraints resulting from the specifications expressed in natural language and the free-hand drawings, and by proposing new formulations. Implementing such functionalities first requires the identification and the formal representation of the knowledge manipulated during a design process and, secondly, the use of operational mechanisms dedicated to the management of this knowledge. Thus, the objective is to construct a domain ontology. 4 This project is performed in collaboration with researchers from the French engineering school known as
“Ecole des Mines”.
68
F. Fürst et al. / Ontological engineering and mathematical knowledge management
Figure 1. Architecture of the G INA modeler.
The cognitive universe of a system dedicated to CAD is the geometry domain. In the context of the G INA project, this universe is limited to projective geometry which is based on the properties of membership, incidence, alignment and relative positions of points. This geometry is a mathematical theory. It can thus formally be summarized by a set of axioms relating to predefined objects, a set of properties and theorems based on these axioms, and a set of complex objects built from the preceding objects and properties. Several languages of representation allow us to formalize the knowledge of a particular domain and then to implement reasoning processes on these representations (cf. [23] for a comparison of such languages of representation). Among these languages, we are particularly interested in the “semantic networks”. This family of languages provides graphic structures of representation which are easily readable for an expert. The visualization of semantic proximity by spatial proximity is used to facilitate the modeling of knowledge for a long time [7,34]. Besides, the multitude of graphic languages dedicated to data modeling shows that this principle is widely used in software engineering (cf. Unified Modeling Language [26]). Although the semantic networks are based on graphic visualization of knowledge, they do not generally use this aspect for performing reasoning processes. We think that a graphic visualization of the inferences carried out is a significant factor which, on the one hand, facilitates the appropriation of a formal system and, on the other hand, allows the expert to validate the adopted model on its own (without reinterpretation of the implemented reasoning processes by a logician).5 In order to validate this approach, we will study the potential of the conceptual graph model [37] which, in our opinion, has this asset. 5 The validation can then be considered as a simple study of graphic explanations of the reasoning processes
that have been performed by the system.
F. Fürst et al. / Ontological engineering and mathematical knowledge management
69
2.2. The conceptual graphs The conceptual graphs (like the description logics) constitute a family of languages of representation. Among works which aim at using the conceptual graphs model as an operational language, there are two distinct trends: – The first trend consists in considering the language as a simple graphic notation of the logical theory expressed in first-order predicate calculus [37,40]. The reasoning processes are then performed, after translation of the graphs into logical formulae, by using logical resolution algorithms. The system Prolog+CG [22] is prototypical of such an approach. – The second trend consists in considering the language as a formal model which has internal reasoning operations (based on the morphism of graphs) and preserves the properties of correctness and completeness with respect to the first-order logic; this gives semantics to the model. The system CoGITant [13] is based on this approach. Our work corresponds to the second trend which, thanks to its graphics aspect both from the point of view of representation as from that of reasoning, seems to be an ideal solution to our problems. Following Mugnier [27], we think that the fundamental operation of the model, projection, is easily comprehensible by the expert of the considered domain. Indeed, this operation allows him to follow, step by step, the reasoning process which is performed by the system. Thus, he is able to validate the adopted representation on his own. The model of representation we use is based mainly on the following elements [2,3,24,28,36]: – the support composed of hierarchies of concept types and relation types; – simple conceptual graphs dedicated to the representation of assertions or requests; – conceptual graph rules used to express automatic rewritings (rules of production) or possible derivations (rules of evolution); – conceptual graph constraints used to control the semantics of relations between concepts; – type definitions used to represent the conditions that are necessary and sufficient (or simply necessary) to be a member of a type. All these elements of representation have been defined as extensions of the simple conceptual graph model formalized by Chein and Mugnier [28]. Thus, these elements preserve the properties previously mentioned: the projection remains the main operation of the formalism and the resulting model is logically founded (with a few minor restrictions). In particular, the projection corresponds to the logical deduction. Note that it is possible to give an interpretation of the conceptual graphs in the context of the set theory. This provides the model with a second semantics (similar to the one given to the description logics [29]) which corresponds to the model-theoretic
70
F. Fürst et al. / Ontological engineering and mathematical knowledge management
semantics classically associated to the formal model of the logical theory expressed in first-order predicate calculus. 2.3. The reference domain The domain considered in this paper is limited to a corpus corresponding to the book written by Hilbert6 [21]. In this book, the author defines the basis of geometry by stating a set of axioms from which he deduces the main theorems of the domain. Five groups of axioms are distinguished: membership axioms, order axioms, congruence axioms, parallelism axioms and continuity axioms. By abandoning some groups of axioms (or modifying them) it becomes possible to build the familiar geometries. For example, abandoning congruence axioms leads to the affine geometry; modifying parallelism axioms allows the definition of non-Euclidean geometries. Projective geometry is based on membership axioms, order axioms and continuity axioms. In the context of this paper, we have limited our study to the first two groups of axioms (i.e. membership axioms and order axioms). The first group of axioms describes the notions of point, straight line and plane and the relationships which exist between these notions. Examples of axioms (as stated by Hilbert) are given below: Axiom I-2. There is not more than one straight line to which two points A and B belong. Axiom I-4. There is a plane α related to three non-aligned points A, B and C to which these three points belong. At least one point belongs to any plane. Axiom I-5. There is not more than one plane to which three non-aligned points belong. Axiom I-6. If two points A and B of a straight line D belong to a plane α, all the points of the straight line D belong to this plane α. The second group of axioms introduces additional concepts that the author presents as definitions. Based on these definitions, he states other axioms: Definition 1. Between the points of a straight line, there is a relation whose description contains the word “between”. Axiom II-3. Take three points of a straight line; there is not more than one of them which is between the two others. 6 The ontology of projective geometry we consider in this paper is based on the axiomatics of Hilbert
because this axiomatics is the one which has been adopted in the G INA project.
F. Fürst et al. / Ontological engineering and mathematical knowledge management
71
Definition 2. On a straight line D, take two points A and B; we call “segment” the system of these points A and B and we indicate it by AB or BA. The points located between A and B are the points of the segment AB. Last of all, the author determines some theorems which result from the stated axioms. Part of theorem 1 is given below: Theorem 1. A plane and a straight line which are not incident have at most one point in common. 2.4. Representation of the domain In this section, we present how we have used the elements of the conceptual graph model to represent the ontology underlying projective geometry. The choice of the conceptual graph model has been influenced by the fact that its graphic representation capabilities are more prone to facilitating communication between the end user (which is generally not a logician) and the system. In the context of a system dedicated to CAD, this aspect is essential because the end user (for instance an architect) needs to know what the system understands about the properties of the scene which is being designed. 2.4.1. Support The support is mainly composed of two separate hierarchies of types representing the primitives of the considered domain. Each hierarchy is a set of labels used to reference the concepts or the relations between concepts. A partially ordered relation, called kind-of, structures these hierarchies. The logical interpretation of this relation, let E1 be a kind-of E2 , is as follows: ∀x1 . . . xn E1 (x1 , . . . , xn ) → E2 (x1 , . . . , xn ) where E1 and E2 become symbols of n-ary predicates with n = 1 for the labels representing the concept types, and n representing the arity of the relation for the labels of the relation types. The hierarchy of concept types possesses a supremum indicating the set of individuals of the domain. Figure 2 presents an extract of the hierarchy of concept types defined in the context of the G INA project (graphically represented by the Hasse’s graph of its relation kind-of ); the supremum, indicated by , is called GeometricObject. Each label of a relation type Er has a fixed arity n which is logically interpreted as follows: ∀x1 . . . xn Er(x1 , . . . , xn ) → (x1 ) ∧ · · · ∧ (xn ) . Moreover, a signature is associated with each label of a relation type Er which distinguishes the concept types to which such a relation can be applied. This signa-
72
F. Fürst et al. / Ontological engineering and mathematical knowledge management
Figure 2. The hierarchy of concept types.
Figure 3. The hierarchy of relation types.
ture, which is a tuple (Ec1 , . . . , Ecn ) composed of labels of concept types, is logically interpreted as follows: ∀x1 . . . xn Er(x1 , . . . , xn ) → Ec1 (x1 ) ∧ · · · ∧ Ecn (xn ) . Figure 3 presents an extract of the hierarchy of relation types. In the formalism we use, the relation kind-of cannot be attested between two relation types of different arities. Note that because negative expressions do not exist in the conceptual graph model, it has been necessary to consider the negative form of some relations (e.g., BelongsPS(Point,SetOfPoints) versus NotBelongsPS(Point,SetOfPoints)). Some types have been introduced in order to represent the basic notions of the domain; this is the case for the concept types Point, StraightLine or Plane and for the relation types BelongsPS or Between. Other types have been introduced in order to factorize properties shared by several primitive types; this is the case for the types SetOf-
F. Fürst et al. / Ontological engineering and mathematical knowledge management
73
Figure 4. Definition of the relation type called Aligned (three points are aligned if and only if they belong to a same straight line).
Points, Surface or Belongs. Last of all, in order to facilitate the designation of complex notions, some types have been introduced by composition of basic types; this is the case for the types Segment, Triangle or Aligned. These types are formalized by using type definitions. 2.4.2. Type definitions Defining a type T consists in establishing a description which makes clear the conditions that are necessary and sufficient (or simply necessary) in order to be member of T . This description is represented by a simple conceptual graph. Some concept vertices of this graph play the role of formal parameters (cf. [37] for a detailed presentation of this notion). The possibility of translating the graphs containing type definitions into an atomic form enables us to preserve the projection as an operator of deduction [24]. Figure 4 presents the definition of the relation type called Aligned. The logical interpretation of a type t defined by a description D is as follows:7 ∀x1 . . . xn t (x1 , . . . , xn ) ↔ φ D(x1 , . . . , xn ) where φ (D) corresponds to the logical interpretation of the graph D without the existential closure of the variables x1 , . . . , xn . The logical interpretation φ of a simple conceptual graph is the existential closure of the conjunction of all the predicates associated with the vertices of the graph. Thus, the description of the relation type Aligned is logically interpreted by the following formula: ∃t StraightLine(t) ∧ Point(x) ∧ Point(y) ∧ Point(z)
∧ BelongsPS(x, t) ∧ BelongsPS(y, t) ∧ BelongsPS(z, t) .
Type definitions enable the representation of tacit knowledge. Rules and constraints are complementary ways of representing tacit knowledge. These primitives make the properties between concept types and relation types explicit. In addition, they can be used to represent the axioms and theorems of the considered domain. 7 When a type t is partially defined by a description D, the logical interpretation is as follows: ∀x1 . . . xn (t (x1 , . . . , xn ) → φ (D(x1 , . . . , xn )).
74
F. Fürst et al. / Ontological engineering and mathematical knowledge management
Figure 5. Representation of the following implicit knowledge: take two points, if one of these points belongs to a straight line and not the other, then these two points are different.
Figure 6. Representation of the transitivity of the membership relation.
2.4.3. Rules A conceptual graph rule is a pair of simple conceptual graphs (H, C) representing respectively the hypothesis and the conclusion of the rule. According to a graph G, a rule (H, C) is applicable if there is a projection8 from the hypothesis H into G; in this case, the conclusion C can be added to G by merging the concept vertices of C (which are the formal parameters) with those of G corresponding to the images of the parameters of H . The logical interpretation of a rule (H, C) is as follows: ∀x1 . . . xn φ H (x1 , . . . , xn ) → φ C(x1 , . . . , xn ) where φ (H ) and φ (C) are interpreted in the same way as the descriptions of type definitions (cf. section 2.4.2). The following figures9 present examples of rules used to represent: – one of the four properties identified between the relations of membership, notmembership and difference (cf. figure 5); these properties allow us to manage a very limited form of negation; – the transitivity of the membership relation (cf. figure 6); – axiom I-6: if two points both belong to a same straight line D and to a same plane α then this straight line D belongs to the plane α (cf. figure 7). 2.4.4. Constraints In its general form, a constraint is a quadruplet of simple conceptual graphs (A, B, C, D). The intuitive semantics of such a quadruplet is as follows: “if infor8 There exists a projection from a graph H into a graph G if and only if the logical formula associated to H
can be deduced from the logical formula associated to G. 9 The graphic notation which is adopted is as follows: the graph hypothesis of a rule is indicated in white,
the graph conclusion is indicated in black.
F. Fürst et al. / Ontological engineering and mathematical knowledge management
75
Figure 7. Representation of axiom I-6.
Figure 8. Representation of the incompatibility between two relations.
Figure 9. Representation of axiom II-3.
mation A is present and information B is missing, then information C must be present and information D must be missing”. In our study, we have only used simple negative constraints (without hypothesis). The logical interpretation of a negative constraint D is: ¬(φ(D)) where φ corresponds to the logical interpretation of a simple conceptual graph. The following figures present examples of constraints used to represent: – the incompatibility that exists between the relations of membership and nonmembership (cf. figure 8); – one of the properties characterizing the relation Between (cf. figure 9); – a property of univocity10 characterizing the membership relation defined between a point and a straight line (cf. figure 10 dedicated to the representation of axiom I-2). 10 Intuitively, this property specifies that two instances of the first argument are in relation R with at most
one instance of the second argument, and reciprocally. The logical interpretation of this property is: ¬(∃x∃y∃z∃t (R(x, z) ∧ R(x, t) ∧ R(y, z) ∧ R(y, t) ∧ x = y ∧ z = t).
76
F. Fürst et al. / Ontological engineering and mathematical knowledge management
Figure 10. Representation of axiom I-2.
Figure 11. Reasoning cycle of a KBS designed with conceptual graphs.
2.5. Integration of the ontology into a Knowledge-Based System The considered domain is currently represented by twenty two rules, six constraints and eight type definitions. Among the twenty two rules, twelve are dedicated to the representation of the axioms and ten are used to exhibit tacit knowledge.11 Among the six constraints, three are dedicated to tacit knowledge and three to the representation of the axioms. The number of type definitions should increase when complex objects such as Polygons or Broken lines are taken into account. This formalization has been implemented within the C OGITANT framework [13]. Thanks to the inference mechanisms provided by the conceptual graph model, this formalization can effectively be exploited in the context of an operational KnowledgeBased System (KBS) dedicated to cooperative and automatic problem solving. The inference engine of such a KBS is based on a particular reasoning cycle (cf. figure 11) which corresponds to a three step process: 1. Application of productive knowledge (i.e. the rules dedicated to axioms) and/or manual input of a fact (by the end user). 2. Saturation of the fact base according to tacit knowledge. The fact base is composed of assertions which are described by simple conceptual graphs. An assertion can be related to the hypothesis of a theorem, a query from the end user, a description of a geometric scene, etc. 3. Verification of the constraints. 11 Tacit knowledge is knowledge which is not clearly expressed in the corpus but which is used implicitly
by Hilbert in his reasoning process (for instance, the fact that if a point A belongs to a straight line D and D belongs to a plane α then A belongs to α).
F. Fürst et al. / Ontological engineering and mathematical knowledge management
77
Figure 12. A graph representing a geometric scene.
Figure 13. A graph representing a query.
In the case of a cooperative activity, this cycle is partially controlled by the end user who can decide when to check the constraints and when to state new knowledge. This cycle has been used to manage different contexts in which the current formalization of projective geometry is used. In this section, we present two different uses: query answering and theorem proving. 2.5.1. Query answering Query answering consists in verifying whether an assertion (represented by a conceptual graph) is true in a particular situation. Within the conceptual graph model, such an activity is performed by using the projection from a graph representing a query into a graph representing a particular geometric scene. Figure 12 presents the representation of the following scene: a point A is between two points B and C which belong to a straight line D. Figure 13 presents the representation of the following query: do three points which are aligned exist? Figure 14 shows an example of a projection from this query (translated in its atomic form Q according to the type definition presented in figure 4) into the graph S representing the scene of the figure 12 enhanced by applying implicit knowledge. In this context, the query answer is positive because there exists at least one projection: A, B and C belong to the straight line D. Thus, A, B and C are aligned. 2.5.2. Theorem proving The theorem we consider in this section is theorem 1 (cf. section 2.3). This theorem is represented by a negative constraint (cf. figure 15). The proof of theorem 1 expressed in natural language is as follows: “Suppose that two different points A and B belong to a plane α and to a straight line D which does not belong to α. As assumed by the axiom I-6, all the points of D belong to α. So D belongs to α. This leads to an absurdity.”
78
F. Fürst et al. / Ontological engineering and mathematical knowledge management
Figure 14. Query answering by using the projection.
Figure 15. Representation of theorem 1.
Figure 16. Representation of the hypothesis.
By using the conceptual graph formalization, this proof is performed as follows. The hypothesis of the proof (“Suppose that two different points A and B belong to a plane α and to a straight line D which does not belong to α”) is represented by the graph of figure 16. The first step of the proof (“As assumed by the axiom I-6, all the points of D belong to α. So D belongs to α.”) is done by applying the rule used to represent the axiom I-6
F. Fürst et al. / Ontological engineering and mathematical knowledge management
79
Figure 17. Application of axiom I-6.
(cf. figure 7). This operation generates a graph G (cf. figure 17) which is not logically valid because it does not respect the constraint of incompatibility that exists between the relations of membership and non-membership (i.e. there exists a projection from the graph presented in figure 8 into the part of G indicated by the dotted line). Thus, the graph which represents the hypothesis of the proof is a negative constraint. The current KBS (implemented with the C OGITANT framework) is able to automatically demonstrate the first three theorems of H ILBERT’s axiomatics. This KBS also allows the end user to check whether a proof, expressed in terms of a sequence of axioms to apply, is correct or not. When the proof is false, the KBS can retrieve the axiom of the sequence which cannot be applied and then can interact with the end user in order to find the rest of the sequence of axioms which is necessary to prove the considered theorem. In that way, such a KBS can be considered as a relevant component for managing the interactions with the end user in the context of a learning environment (in particular an Intelligent Tutoring System). 3.
Ontological engineering and mathematical knowledge management
Ontological engineering can be defined as a discipline which aims at providing concepts, methods, tools and languages dedicated to the definition, the development and the deployment of operational ontologies used within one (or several) artifact(s) [9,14,31]. The elements of reflection we outline in this section mainly relate to the instrumentation of ontological engineering (i.e. the definition and the development of tools and languages). We do not claim to contribute to theoretical discussions of a philosophical or epistemological nature [1,18,19]. 3.1. Ontology development process The analysis of current work on ontologies allows us to identify a consensus on the process of construction of an operational ontology [12,16,23,32]. This consensus (cf. figure 18) is based on a sequence of three stages which, from rough data, lead to the elaboration of an operational ontology while passing via ontologies whose status need to be clarified.
80
F. Fürst et al. / Ontological engineering and mathematical knowledge management
Figure 18. The process of construction of an ontology.
Although these stages are carried out in sequence, it is obvious that all the returns are possible. In other words, the achievement of a stage can modify the relevance of the choices adopted at the preceding stages and, consequently, can lead to updating and upgrading the ontologies previously defined. It seems important here to clarify the various operations achieved at each stage as well as the status of the ontology obtained during each of these stages. Collecting rough data consists in identifying the resources from which the ontology will be elaborated. These resources can be obtained by elaborating electronic documentbases (i.e. selection of text corpora, identification of datawarehouses, etc.), by observing and annotating problem-solving processes related to the domain under consideration, by analysing interviews of experts, etc. These techniques are inherited from work carried out in knowledge acquisition. It is also important to note that our own vision of the world (and thus of the domain being studied) is itself a significant resource since it allows the expression of tacit knowledge inherent in natural language. 3.1.1. Conceptualization The first stage, called conceptualization, leads to an informal model which is therefore semantically ambiguous. This model, generally expressed in natural language (with a possibly limited syntax), aims at selecting the terms which will be retained as description primitives of the domain (i.e. the conceptual vocabulary) and at associating relevant information to each one of these terms in order to limit semantic ambiguity. It is important to understand that the informal nature of the language used during this stage (natural language or informal models such as UML) does not ensure that a consensus exists on the adopted model: two different actors can have two different, even divergent, interpretations of the concept underlying a given term. In our opinion, the different tasks (not necessarily ordered) which must be achieved during this stage are: – the identification of the conceptual vocabulary; this activity can be performed by using automatic tools dedicated to the extraction of terms and links between terms in a corpus (for instance, the natural language processing tool called L EXTER [5]); – the association of the various synonymic terms referring to each element of the conceptual vocabulary; – the association of the original data (documents, pictures, interviews, etc.) with the elements they illustrate; – the writing of annotations providing, in an unambiguous way,
F. Fürst et al. / Ontological engineering and mathematical knowledge management
81
• the semantics of the elements of the vocabulary, • the exhibition of tacit knowledge underlying the elements of the vocabulary. In the context of our study, the conceptualization of rough data has led to the identification of concepts such as Polygonal surface, Point, Plane, Segment or Straight line and to the identification of relationships between concepts such as the membership of a point on a straight line, the alignment of three points or the relative position of three points (A is between B and C). The lexical units that have been retained to indicate these concepts and relations correspond to the terms used in the reference book. However, we note that in Hilbert’s book, many remarks concerning the existence of different expressions to indicate the same concept are provided. For example, the following expressions relate to the same concept of membership of two points to a straight line: “A and B belong to the same straight line D”, “D passes via A and B” or “D joins A and B”. It is important to point out that the Hilbert’s book is a very particular corpus since it can be regarded as a first attempt to model the geometry domain. Within the approach advocated in the field of “Terminological Knowledge Bases”, the stage dedicated to the elaboration of the corpus precedes the modeling stage. In our study, the stage dedicated to the elaboration of the corpus has been reduced to the selection of the reference book and the modeling stage has been facilitated by the type of book being considered, i.e. a scientific edition based on the statement of axioms and on the demonstration of theorems in the field of mathematics. 3.1.2. Ontologization The second stage, called ontologization, consists in modeling the formal properties of the considered domain by using a generic language, or at least a language supposed to be generic to several languages of representation (for instance, the language called MDOS [30]). The objective is to obtain a model where most of the ambiguities underlying the natural language have been deleted. Thus, this model aims at approaching the definition of an ontology based on the proposal of T. Gruber: “An ontology is a formal specification of a shared conceptualization” [16]. B. Bachimont makes this definition more precise with the following assertion: “Defining an ontology for the representation of knowledge consists in defining, for a given domain and a given problem, the functional and relational signature of a formal language and its associated semantics” [1]. Thus, the representation of knowledge is possible only when the problem of ontologies is solved. However, in most works, the model which is constructed is often described as semiformal. This term “semi-formal” is used to justify the fact that some knowledge of the considered domain cannot be completely formalized. Actually, this stage produces a model in two parts: – a formal part which has clear semantics or at least a consensual one (i.e. each element of the language is interpretable in set theory and/or in a logical model and/or in another model having an equivalent status of universality);
82
F. Fürst et al. / Ontological engineering and mathematical knowledge management
– an informal part which does not have clear or consensual semantics, or at least a fixed one. In this context, we propose to consider ontologization as a stage based on two types of transformation: – The formalization of most knowledge identified in the conceptual model. This formalization is done by using a generic language that we propose to call OL (Ontologizing Language). This language is considered as unambiguous and formal because it provides functions dedicated to the interpretation (in set theory and in first-order logic) of the properties it is based on. OL is not an operational language in the sense that it does not provide reasoning mechanisms, but any operational system or language which has formal semantics in set theory (or first-order logic) is a candidate for the operationalization of OL; – The formulation of a part of the ambiguities which cannot be represented with the formal language OL. This formulation is done by using an informal language (natural or semi-structured language) or a language whose semantics is not clearly known. It is possible to plan the structuration of OL primitives in a hierarchical way (or at least to propose a typology of the structures of representation it provides) in order to reflect the possibilities of the great families of operational systems such as the frames, the conceptual graphs, the description logics, etc. In the experiment we have carried out, this stage of ontologization has not been done since we passed directly from conceptualization to operationalization. The ontologization of the projective geometry model consists in (1) defining the conceptual vocabulary (i.e. the concepts and the relations identified at the conceptualization phase) by means of necessary conditions and/or necessary and sufficient conditions of membership, and (2) defining the properties related to the elements of this vocabulary such as the symmetry or the transitivity of a relation, the cardinalities of a relation, the rigidity of a concept, etc. Then, it is necessary to structure the conceptual vocabulary by using relations such as kind-of, exclusiveness,12 univocity, etc. This structuration can lead to the factorization of concepts into a generic one and/or to the specialization of a generic concept. Figure 19 illustrates, in the context of the experiment we have carried out, a possible graphic representation of such a structuration applied to a binary-relation. The main interest of a language such as OL is that it is an ideal candidate for ensuring the sharing of ontologies (independently of a predefined formalism of representation) and the interoperability between several Knowledge-Based Systems. Note that this idea is beginning to be applied in the Web area as shown by the recent development of Semantic Web languages dedicated to the sharing of ontologies and knowledge bases such as RDF/RDFS – “Resource Description Framework” recommended by the W3C and technically based on XML [35] – or the more powerful (from the point of view of expressivity) DAML+OIL – DARPA Agent Markup language [20] / Ontology Inference Layer [8]. 12 The logical interpretation of the exclusiveness is: ∀x(T (x) ↔ ¬T (x)).
F. Fürst et al. / Ontological engineering and mathematical knowledge management
83
Figure 19. An extract of the result of projective geometry ontologization.
3.1.3. Operationalization The last stage, called operationalization (sometimes representation), consists in enhancing the ontology with inference mechanisms that will be used to implement reasoning processes. This stage initially requires the selection of a specific language of representation. This language must have formal semantics which must be coherent with the semantics of OL. In other words, each primitive and operator of OL must be translatable in one (or several) primitive(s) or operator(s) of the adopted language, by preserving the same interpretation in set theory. Moreover, this language must provide reasoning capacities which have to be adapted to the intended contexts of use such as classification, verification and validation, management of requests, etc. Finally, the representations of OL must be translated into the target language. For many languages, this stage can be partially automatic, or at least can be assisted by using interactive tools. However, all the properties of OL do not necessary have a corresponding property in all the current operational languages; the structuration of OL primitives can contribute to the selection of a relevant language. From this point of view, the choice of a language can limit the knowledge represented in an operational ontology compared to those represented in a semi-formal ontology. Actually, this limitation highlights the fact that some knowledge (formalized in OL) is not really essential for the operational needs (i.e. the exploitation of the ontology). Conversely, some properties of the semi-formal ontology (i.e. the properties that cannot be represented with OL) can be represented in the target operational language, and thus can acquire a formal status. The work presented in [6] is prototypical of such a translation from RDF descriptions into conceptual graphs. However, in order to take into account the ontological level, this translation has to be extended to RDF schemas. 4.
Discussion
4.1. Justification of the work According to the knowledge management project which is considered, an ontology can correspond to a taxonomy of concepts, a taxonomy of concepts and relations or a
84
F. Fürst et al. / Ontological engineering and mathematical knowledge management
taxonomy of concepts and relations enriched with axioms. For instance, in a context of Web information retrieval, the use of a thesaurus (i.e. a set of mathematical terms structured according to the kind-of relationship) can be sufficient since the precision of results is not the main purpose. But, in the context of an Intelligent Tutoring System dedicated to the verification of proofs, it is necessary to have a formal and operational representation of mathematical knowledge, i.e. an ontology based on a taxonomy of concepts and relations enriched with axioms. In the context of G INA project, the construction of such an ontology is motivated by the main functionality of a CAD system: the interpretation of the geometric scene described by the end-user. This description, which is defined by using a conceptual vocabulary13 based on high-level geometric objects such as cubes or cones and high-level relationships such as to-lie-on or to-be-adjacent-to is translated into basic objects and relationships of projective geometry such as plane, point, straight line, belongs, etc. This translation is done because the module used to raise the scene to dimension 3 is based on projective geometry. In other words, this module is not enable to manage the highlevel objects manipulated by the end-user. Therefore, it is necessary to model (in the context of projective geometry) all the objects related to the conceptual vocabulary of the considered application. Performing this task requires the identification and the formal representation of all the knowledge related to projective geometry: this corresponds to the construction of an operational ontology. 4.2. Experimental feedback The validation of an ontology is one of the hardest problems in ontology design. Indeed, ontology design is subjective: what does it mean for an ontology to be (objectively) correct? The best test is the application for which the ontology was designed [31]. The formal representation of projective geometry has been validated by representing the statements and the demonstrations of theorems from the first chapter of Hilbert’s book. During this activity, two types of knowledge have been identified: explicit knowledge and tacit knowledge. The identification of tacit knowledge was done only through the validation of the first theorems. Indeed, given the impossibility of modeling the demonstrations by simply using the knowledge clearly expressed in the corpus, it has been necessary to empirically seek the knowledge used implicitly by Hilbert in his demonstrations. Thus, it seemed essential to return to an ontologization phase (cf. section 3.1.2), which was not only based on the static corpus but also on the study of knowledge in action which makes it possible to highlight what is implicit in the use of knowledge. Therefore, we can attest that tacit knowledge (which is hidden in our mental representations and natural language) only appears when performing reasoning processes. Tacit knowledge highlighted during our experiment corresponds to the properties of relations considered by Hilbert. For instance, the transitivity of the relation Belongs (if a point belongs to a straight line which belongs to a plane, the point also belongs to 13 This vocabulary can be delimited by the domain of the application that is considered such as urban
architecture.
F. Fürst et al. / Ontological engineering and mathematical knowledge management
85
the plane) is not expressed in the corpus, although this knowledge is used throughout all the demonstrations. These properties are represented by constraints or rules which only produce new relations. Rules which add new concepts are used to represent explicit knowledge (i.e. the axioms). Apart from the traditional division between terminological and assertional knowledge, another division appears between meta-relations and rules producing news concepts. Moreover, two types of knowledge are differentiated: positive knowledge which is represented by conceptual graph rules and is used to produce new concepts or relations and negative knowledge which is represented by conceptual graph constraints and is used to prevent the production of specific situations and facts. According to the operational objectives of the KBS being considered, this last distinction introduces problems of representation. In the case of projective geometry, in order to model demonstrations of theorems, it has been necessary to use a positive form of axioms which, initially, expressed negative knowledge. For example, axiom I-2 of the corpus is given by Hilbert in the following form: there is not more than one straight line to which two points A and B belong. This axiom can be represented by a constraint used to prevent the following situation: two different points which belong simultaneously to two different straight lines. However, in order to be able to use this axiom in a productive way during demonstrations, the following positive form has been adopted: let a point A belonging to two different straight lines D and D’, and a point B, different from A, belonging to D, then B does not belong to D’. With this form, the axiom is represented by a rule. 4.3. Methodological aspects On the basis of the experience gathered when developing the Enterprise Ontology [39] and the T OVE (TOronto Virtual Enterprise) project ontology [11] (both in the domain of enterprise modeling), the first methodological guidelines were proposed in 1996. The ontology development process refers to tasks which should be carried out when building ontologies [10]. Three kinds of activities can be distinguished: project management activities, development oriented activities and integral activities. The goal of project management activities is to secure the proper functioning of the ontology; this includes planning, control and quality assurance tasks. The goal of development oriented activities is to build the ontology by performing specification (why the ontology is being built, what are its intended uses and who are the end users), conceptualization (structuration of the domain as meaningful models at the knowledge level), formalization (transformation of the conceptual model into a formal model), implementation, which builds computable models in computational languages, and maintenance tasks. Finally, integral activities give support to development activities; this includes acquisition, integration, evaluation, documentation and configuration management. All the current methodologies [10,11,39] have in common that they start from the identification of the purpose of the ontology. Moreover, the need for ontology evaluation is also identified in most methodologies. As presented in section 3.1, we have partially followed the M ETHONTOLOGY framework [10] during the experiment we carried out,
86
F. Fürst et al. / Ontological engineering and mathematical knowledge management
in particular for development oriented activities. When designing the ontology, we have anticipated two kinds of use and accepted them as requirements (this contributes to the activity of specification). First, the ontology should provide a notation for representing objects in Conception-Assisted Design (CAD) which must be both machine and human understandable. Second, it should provide a formal specification of a shared conceptualization and vocabulary for the community of interoperating software and human agents in the field of CAD (in the context of the G INA project, the CAD system and the architects which are the privileged end users). Then, for the evaluation of the ontology, we have adopted an operational viewpoint through theorem proving. Indeed, this capability shows that the proposed ontology is coherent and complete. However, this capability does not enable us to validate the conceptual vocabulary underlying the ontology, which consists in evaluating the ontological commitments [16]. This aspect has not yet been studied; we plan to evaluate it in the context of an Intelligent Tutoring System dedicated to the learning of geometry axiomatics. Finally, in section 4.2, we have shown that the operationalization phase is a relevant way to refine the model defined during the conceptualisation phase. In other words, we advocate a “knowledge level prototyping approach”. This position is in agreement with the life cycle based on evolving prototype proposed in the M ETHONTOLOGY framework. 4.4. Comparison with existing ontologies As far as we know,14 E NGMATH is the only formal ontology that has been developed in the field on mathematics [17]. This ontology includes conceptual foundations for scalar, vector and tensor quantities, physical dimensions, units of measure, functions of quantities and dimensionless quantities. However, E NGMATH, which is presented as an ontology for mathematical modeling in engineering, does not provide knowledge related to geometry. Moreover, E NGMATH is just machine readable and not operational; it can not be integrated into a Knowledge-Based System for carrying out reasoning processes. Therefore, constructing an operational ontology dedicated to geometry is both a relevant and necessary task in the sense that such an ontology must be considered as a formal specification of a shared conceptualization and vocabulary for a community of interoperating software and human agents in the field of geometry. In this context, our work can be considered as a first contribution to this knowledge sharing purpose. Note that in its strongest form, an ontology tries to capture universally valid knowledge, independent of its use, a view closely related to its philosophical origin (an ontology goes as far back as Aristotle’s attempt to classify the things in the world). However, in practical ontological engineering research, the definition of ontology has been somewhat diluted, in the sense that taxonomies are considered to be full ontologies. Ontologies differ in two respects from taxonomies as such: they have richer internal structure (in particular, ontologies include axioms which are used to specify constraints on the 14 A list of the ontologies which have been developed during the last decade is proposed in the web site of
the European OntoWeb project [33].
F. Fürst et al. / Ontological engineering and mathematical knowledge management
87
concepts and the relations of a taxonomy) and they reflect a certain rate of consensus about the knowledge of a domain. 5.
Conclusion
In this paper, we have presented a formalization of the ontology underlying projective geometry. This formalization has been done by using the conceptual graphs, a formal model defined in the Artificial Intelligence community. Through this experiment, we have shown that applying knowledge representation techniques to mathematical fields is a relevant way to improve the reliability and efficiency of tools dedicated to mathematical knowledge management. Our proposal is based on the construction of knowledge bases (defined according to ontologies) which must be considered as the core of any mathematical knowledge management tool such as specific math search engines on the web, specific math intelligent tutoring systems, specific math theorem provers, etc. From this practical experiment, we have also highlighted that the operationalization phase is a relevant means to define an ontology which must be integrated into a KBS, in particular to make tacit knowledge explicit. References [1] B. Bachimont, Engagement sémantique et engagement ontologique: conception et réalisation d’ontologies en ingénierie des connaissances, in: Ingénierie des connaissances: évolutions récentes et nouveaux défis, eds. J. Charlet, M. Zacklad, G. Kassel and D. Bourigault (Eyrolles, 2000) pp. 305–323 (in French). [2] J. Baget, D. Genest and M. Mugnier, Knowledge acquisition with a pure graph-based knowledge representation model. Application to the Sisyphus-I case study, in: Proceedings of Knowledge Acquisition Workshop (KAW’1999), Lecture Notes in Artificial Intelligence, Vol. 954 (Springer, Berlin, 1999). [3] J. Baget and M. Mugnier, The SG family: Extensions of simple conceptual graphs, in: Proceedings of International Joint Conference on Artificial Intelligence (IJCAI’2001) (2001) pp. 205–210. [4] T. Berners-Lee, J. Handler and O. Lassila, The semantic Web, Scientific American 248 (2001) 35–43. [5] D. Bourigault, LEXTER, a terminology extraction software for knowledge acquisition from texts, in: Proceedings of the 9th Knowledge Acquisition for Knowledge Based System Workshop (KAW’95) (Banff, Canada, 1995). [6] O. Corby, R. Dieng and C. Hebert, A conceptual graph model for W3C resource description framework, in: Proceedings of the 8th international Conference on Conceptual Structures, Lecture Notes in Artificial Intelligence, Vol. 1867 (Springer, Berlin, 2000) pp. 468–482. [7] L. Doyle, Indexing and Abstracting by Association (American Documentation, 1962) pp. 378–390. [8] D. Fensel, OIL in a nutshell, in: Proceedings of European Knowledge Acquisition Workshop (EKAW’2000), Lecture Notes in Artificial Intelligence, Vol. 1937 (Springer, Berlin, 2000) pp. 1–16. [9] D. Fensel, Ontologies: Silver Bullet for Knowledge Management and Electronic Commerce (Springer, Berlin, 2001). [10] M. Fernandez, A. Gomez-Perez and N. Juristo, Building a chemical ontology using METHONTOLOGY and the ontology design environment, IEEE Intelligent Systems and Their Applications 4(1) (1999) 37–45. [11] M. Fox and M. Gruninger, Enterprise modeling, AI Magazine 19(3) (1999) 109–121.
88
F. Fürst et al. / Ontological engineering and mathematical knowledge management
[12] F. Gandon, Engineering an ontology for a multi-agents corporate memory system, in: Proceedings of the Eighth International Symposium on the Management of Industrial and Corporate Knowledge (ISMICK’2001) (2001) pp. 209–228. [13] D. Genest and E. Salvat, A platform allowing typed nested graphs: how CoGITo became CoGITaNT, in: Proceedings of the 6th International Conference on Conceptual Structures, Lecture Notes in Artificial Intelligence, Vol. 1453 (Springer, Berlin, 1998) pp. 154–161. http://www.lirmm.fr/∼cogito/ cogitant. [14] A. Gomez-Perez, Knowledge Sharing and Reuse, Handbook on Applied Expert Systems (CRC Press, Boca Raton, FL, 1998). [15] T. Gruber, A translation approach to portable ontologies, Knowledge Acquisition 5(2) (1993) 199– 220. [16] T. Gruber, Toward principles for the design of ontologies used for knowledge sharing, International Journal of Human Computer Studies 43(5/6) (1995) 907–928. [17] T. Gruber and G. Olsen, An ontology for engineering mathematics, Technical report KSL-94-18, Knowledge Systems Laboratory (Stanford University) (1994). [18] N. Guarino and C. Welty, A formal ontology of properties, in: Knowledge Engineering and Knowledge Management: Methods, Models and Tools. International Conference EKAW’2000, eds. R. Dieng and O. Corby (Springer, Berlin, 2000) pp. 97–112. [19] N. Guarino and C. Welty, Identity, unity, and individuality: Towards a formal toolkit for ontological analysis, in: European Conference on Artificial Intelligence (ECAI’2000), ed. H. Werner (IOS Press, 2000) pp. 219–223. [20] J. Hendler and D. McGuinness, The Darpa agent markup language, IEEE Intelligent System 25(6) (2000) 67–73. http://www.daml.org. [21] D. Hilbert, Les fondements de la géométrie (Editions Jacques Gabay, 1997). Introduction of the book intitled Grundlagen der Geometrie. [22] A. Kabbaj, From PROLOG++ to PROLOG+CG: A CG object-oriented logic programming language, in: Proceedings of the 8th International Conference on Conceptual Structures, Lecture Notes in Artificial Intelligence, Vol. 1867 (Springer, Berlin, 2000) pp. 540–554. [23] G. Kassel, M.-H. Abel, C. Barry, P. Boulitreau, C. Irastorza and S. Perpette, Evaluation de langages opérationnels de représentation d’ontologies, in: Actes des journées francophones d’Ingénierie des Connaissances (IC’2001) (Presse Universitaire Grenobloise, 2001) pp. 309–328 (in French). [24] M. Leclère, Reasoning with type definitions, in: Proceedings of the 5th International Conference on Conceptual Structures, Lecture Notes in Artificial Intelligence, Vol. 1257 (Springer, Berlin, 1997) pp. 401–415. [25] O. Lhomme, P. Kuzo and P. Macé, Desargues, a constraint-based system for 3D projective geometry, in: Geometric Constraint Solving and Applications, eds. B. Brüderlin and D. Roller (Springer, Berlin, 1998) pp. 114–127. [26] S. Morris and G. Spanoudakis, UML: An evaluation of the visual syntax of the language, in: Proceedings of 34th Annual Hawaii International Conference on System Sciences (HICSS-34), ed. R.H. Sprague, Jr. (IEEE Computer Society, 2001). [27] M. Mugnier, Knowledge representation and reasonings based on graph homomorphism, in: Proceedings of the 8th International Conference on Conceptual Structures, Lecture Notes in Artificial Intelligence, Vol. 1867 (Springer, Berlin, 2000) pp. 172–192. [28] M. Mugnier and M. Chein, Représenter des connaissances et raisonner avec des graphes, Revue d’Intelligence Artificielle (RIA), Hermès 10(1) (1996) 7–56. [29] B. Nebel, Reasoning and Revision in Hybrid Representation Systems, Lecture Notes in Artificial Intelligence, Vol. 422 (Springer, Berlin, 1990). [30] J. Nobécourt and B. Biébow, MDOS: A modelling language to build a formal ontology in either Description Logics or Conceptual Graphs, in: Proceedings of the 12th International Conference on Knowledge Engineering and Management (EKAW’2000), Lecture Notes in Artificial Intelligence,
F. Fürst et al. / Ontological engineering and mathematical knowledge management
89
Vol. 1937 (Springer, Berlin, 2000) pp. 57–64. [31] N. Noy, Tutorial on ontology engineering, in: International Semantic Web Working Symposium (SWWS’2001) (2001), http://www.semanticweb.org/SWWS/program/tutorials/tutorial1/. [32] N. Noy and D. McGuinness, Ontology development 101: A guide to creating your first ontology, Stanford Medical Informatics Report SMI-2001-0880 (2001). [33] OntoWeb, Ontology-based information exchange for knowledge management and electronic commerce (2001), http://babage.dia.fi.upm.es/ontoweb/wp1/OntoRoadMap/index/ontology_frame.html. [34] M. Quillian, Semantic memory, in: Semantic Information Processing (MIT Press, Cambridge, MA, 1968). [35] RDFS, Resource description framework schema specification 1.0 (2000), http://www.w3.org/TR/ 2000/CR-rdf-schema-20000327/. [36] E. Salvat and M. Mugnier, Sound and complete forward and backward chaining of graph rules, in: Proceedings of the 4th International Conference on Conceptual Structures, Lecture Notes in Artificial Intelligence, Vol. 1115 (Springer, Berlin, 1996) pp. 248–262. [37] J. Sowa, Conceptual Structures – Information Processing in Mind and Machine (Addison-Wesley, Reading, MA, 1984). [38] R. Studer, R. Benjamins and D. Fensel, Knowledge engineering: Principles and methods, Data and Knowledge Engineering 25(1) (1998) 161–197. [39] M. Uschold and M. Gruninger, Ontologies: Principles, methods and applications, Knowledge Engineering Review 11(2) (1996). [40] M. Wermelinger, Conceptual graphs and first-order logic, in: Proceedings of the 3rd International Conference on Conceptual Structures, Lecture Notes in Artificial Intelligence, Vol. 954 (Springer, Berlin, 1995).