<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>SIVA: An Educational Tool for the Tableau Reasoning Algorithm</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Peter Paulovics</string-name>
          <email>paulovics95@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Julia Pukancova</string-name>
          <email>pukancova@fmph.uniba.sk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Martin Homola</string-name>
          <email>homola@fmph.uniba.sk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Comenius University in Bratislava Mlynska dolina</institution>
          ,
          <addr-line>84248 Bratislava</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>The tableau algorithm is one of the main reasoning algorithms employed by DL reasoners. It is also often taught as a reasoning technique at DL courses at universities. As the algorithm proves the existence of a model for a knowledge base by constructing a completion tree, the best way to understand this mechanism is to construct this tree graphically. Realization of this process on the blackboard is usually very laborious, and mainly the backtracking is chaotic. We have developed SIVA { a simulation tool for ALC, visualizing the whole process from initializing a vocabulary and a knowledge base, to building a completion tree step by step by application of the tableau rules. It allows easy backtracking to any of the previous states. SIVA is freely available as an online application.</p>
      </abstract>
      <kwd-group>
        <kwd>description logics</kwd>
        <kwd>tableau algorithm cation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        A signi cant amount of research in DL is focused on tableau reasoning algorithms
[25,15,13,14,12,10,11, i.a.]. They are also taught to students during courses on
knowledge representation and reasoning. Visualization of the tableau algorithm
on the blackboard is helpful, but it is usually quite messy, especially in cases
when the algorithm needs to backtrack. Indeed, a body of research in algorithms
education has been devoted to development of tools for algorithm visualization
[
        <xref ref-type="bibr" rid="ref26">26</xref>
        ], e.g., a number of them were developed for various tree-search algorithms.
      </p>
      <p>
        There is a number of tools [22,28,7,23,24,4,31,18,17,3,6, i.a.] for ontology
visualization. Though as noted by a recent survey [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], the issue of coupling
reasoning and visualization has not yet been su ciently explored in the literature.
Notably, OntoTrack [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] uses an external reasoner in order to detect problems
with the currently open ontology. Also, Protege [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] with its plugins is able to
run the reasoning over an ontology and visualize the inferred data. None of these
tools is instrumental in easing the understanding how the tableau algorithm is
working.
      </p>
      <p>
        If we extend our outlook beyond ontologies and description logics, both
LoTREC [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and OOPS [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ] are able to visualize tableau proofs for various
modal logics. Also the Tree Proof Generator [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] visualizes tableau proofs for
rst-order logic. Out of this tools LoTREC allows to interact with the tableau
once it is generated, otherwise no interaction is possible.
      </p>
      <p>
        To our best knowledge, none of these tools allows full step-by-step control of
the user while working with the visualized proof, where user has to gure out
the next step of the proof. This is possible e.g. in the Tableau Editor [
        <xref ref-type="bibr" rid="ref19 ref20">19,20</xref>
        ] for
rst-order logic.
      </p>
      <p>
        We have developed and implemented a web application enabling step-by-step
simulation of the tableau algorithm for the DL ALC [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ]. The tool enables to
create a knowledge base; choose one of the decision problems from consistency
checking, instance checking, and concept satis ability; and consequently to build
a completion tree proving the existence of a model. In accordance with the
educational goal, each action needs to be done by the user, but the tool guides
the user and evaluates the resulting state after each action.
      </p>
      <p>We believe such a tool is a useful aid for students learning the tableau
algorithm. In the future, we plan to extend the application to enable reasoning
over more expressive DLs, and to enable the user to add custom tableau rules
or blocking methods. We consider the latter two upgrades to be useful also for
researchers in their works.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Description Logics</title>
      <p>
        We build on top of the ALC DL [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ]. A DL vocabulary consists of countably
in nite mutually disjoint sets of individuals NI, roles NR, and atomic concepts
NC. Concepts are recursively built using constructors :, u, t, 9, 8, as shown in
Table 1.
      </p>
      <p>A knowledge base K = (T ; A) consists of a TBox T and an ABox A. A TBox
is a nite set of GCI axioms of the form C v D, where C; D are concepts. An
ABox is a nite set of concept assertions of the form C(a), and role assertions
of the form R(a; b), where a; b 2 NI, C is a concept, and R 2 NR.</p>
      <p>An interpretation is a pair I = ( I ; I ), where I 6= ; is a domain, and the
interpretation function I maps each individual a 2 NI to aI 2 I , each atomic
concept A 2 NC to AI I , each role R 2 NR to RI I I in such a
way that the constraints in Table 1 are satis ed.</p>
      <p>Two concepts C and C0 are equivalent if CI = C0I for every interpretation
I. An interpretation I satis es an axiom ' (denoted I j= ') if the respective
constraint in Table 1 is satis ed. It is a model of a knowledge base K if it satis es
all axioms included in K.</p>
      <p>De nition 1 (Model). An interpretation I is a model of a knowledge base
K = (T ; A) (denoted I j= K) i I j= ' for all ' 2 T [ A.</p>
      <p>The main DL decision problems deal with concept satis ability checking,
axiom entailment checking, and consistency checking of a knowledge base.</p>
      <p>A concept is satis able w.r.t. a knowledge base if there is a model of this
knowledge base interpreting the concept into a non-empty set.</p>
      <p>De nition 2 (Satis ability). A concept C is satis able w.r.t. a knowledge
base K i there is a model I of K s.t. CI 6= fg.</p>
      <p>An axiom is entailed by a knowledge base if it is satis ed by all the models
of this knowledge base.</p>
      <p>De nition 3 (Entailment). A knowledge base K entails an axiom ' (denoted
K j= ') i I j= ' for each model I of K.</p>
      <p>A knowledge base is consistent, if there is at least one interpretation I such
that I j= K, i.e. it has at least one model.</p>
      <p>De nition 4 (Consistency). A knowledge base K is consistent, if there is at
least one interpretation I that is a model of K.</p>
      <p>
        In fact, it is well known that all the decision problems stated above are
reducible to the consistency checking problem [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>Lemma 1 (Satis ability reduction). Given a DL knowledge base K, a
concept C is satis able w.r.t. K i K [ fC(a)g is consistent for some new
individual a.</p>
      <p>Lemma 2 (Subsumption entailment reduction). Given a DL knowledge
base K, and concepts C and D, K j= C t D i K [ fC u D(a)g is consistent for
some new individual a.</p>
      <p>Lemma 3 (Assertion entailment reduction). Given a DL knowledge base
K, a concept C, and an individual a, K j= C(a) i K [ f:C(a)g is inconsistent.</p>
      <p>
        A concept C is in negation normal form (NNF) if the complement
constructor : stands only in front of atomic concepts in C. From now on, by nnf(C) we
denote a concept C0 in NNF that is equivalent to C. At least one such concept
always exists [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>Tableau Algorithm</title>
      <p>Thanks to reductions, it is su cient to have an algorithm that solves the
consistency checking problem, and so each of the listed decision problems can be
solved via reduction. Perhaps the most common reasoning technique in DL is
the tableau algorithm.</p>
      <p>This algorithm works by proving the existence of a model of K by constructing
it. More precisely, it works on a structure called completion tree that is iteratively
extended by applying a set of tableau rules until it corresponds to a model, or
until it is clear that this is not possible.</p>
      <p>De nition 5 (Completion tree). A completion tree (CTree) is a triple T =
(V; E; L) where (V; E) is an oriented graph with a set of nodes V and a set of
edges E, and L is a labeling function that assigns a label to all nodes and edges
of T as follows:
{ L(v) is a set of concepts in NNF for a node v 2 V ,
{ L(hx; yi) is a set of roles for an edge hx; yi 2 E.</p>
      <p>We say that a node y 2 V is a successor of a node x 2 V in a CTree
T = (V; E; L) if hx; yi 2 E, and that a node y 2 V is a descendant of x 2 V if
there is a path from x to y. A node y is an R-successor if y is a successor of x
and R 2 L(hx; yi).</p>
      <p>To nd out whether a knowledge base K is consistent, the algorithm tries to
construct a corresponding CTree, that is free of any local inconsistency, which
is called a clash; i.e., it tries to assure that the CTree is clash-free.
De nition 6 (Clash). There is a clash in L(v) for a node v 2 V of a CTree
T = (V; E; L), if fC; :Cg 2 L(v) for some concept C. A CTree is clash-free if
none of its nodes contains a clash.</p>
      <p>
        However, some models may be in nite [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. While the algorithm cannot
continue the construction inde nitely, it relies on a technique called blocking to
recognize in nite models by constructing a CTree that is a nite representation
thereof.
      </p>
      <p>De nition 7 (Blocked node). Given a CTree T = (V; E; L), a node y 2 V is
blocked if it is a descendant of another node x 2 V s.t.:
{ either L(y) L(x);
{ or x is blocked.</p>
      <p>Finally, the algorithm is presented in De nition 8. For K = (T ; A) it rstly
initializes the CTree T by encoding into it the explicit statements from the
ABox A. After this initialization, tableau expansion rules are repetitively applied
in order to expand a CTree. If a clash-free and complete CTree is found, the
algorithm answers that K is consistent, otherwise that K is inconsistent.
De nition 8 (Tableau algorithm for consistency checking). Input: K =
(T ; A) in NNF
Output: answers if K is consistent or not
Steps:
1. Initialize a CTree T as follows:
(a) V := fa j individual a occurs in Ag;
(b) E := fha; bi j R(a; b) 2 A for some role Rg;
(c) L(a) := fnnf(C) j C(a) 2 Ag for all a 2 V ;
(d) L(ha; bi) := fR j R(a; b) 2 Ag for all a; b 2 V ;
2. Apply tableau expansion rules from De nition 8 while at least one is
applicable:
u-rule:
t-rule:
T -rule:
if C u D 2 L(x), x 2 V is not blocked, and</p>
      <p>fC; Dg * L(x)
then L(x) L(x) [ fC; Dg
if C t D 2 L(x), x 2 V is not blocked, and</p>
      <p>fC; Dg \ L(x) = ;
then either L(x) L(x) [ fCg or</p>
      <p>L(x) L(x) [ fDg
if 8R:C 2 L(x), x 2 V is not blocked, and
y is R-successor of x and</p>
      <p>C 2= L(y)
then L(y) L(x) [ fCg
if 9R:C 2 L(x), x 2 V is not blocked, and</p>
      <p>there is no R-successor y of x s.t. C 2 L(y)
then create a new anonymous node z and</p>
      <p>V V [ fzg and</p>
      <p>L(z) = fCg
if C v D 2 T , x 2 V is not blocked, and</p>
      <p>nnf(:C t D) 2= L(x)
then L(x) L(x) [ fnnf(:C t D)g
3. Answer \K is consistent" if T is clash-free, otherwise answer \K is
inconsistent".</p>
      <p>The process of building a CTree is nondeterministic. Speci cally, there are
two kinds of rules. All rules but the t-rule are AND-rules : they are deterministic
rules with a single possible way of application. The t-rule is an OR-rule: a
nondeterministic rules with multiple possible ways of application (two, in this
case).</p>
      <p>
        In order to explicitly represent the nondeterministic choices and backtracking
done by the algorithm, we track them in a structure called a tableau.1
1 We are aware that this notion of tableau is di erent from how this term is usually
used in DL literature [
        <xref ref-type="bibr" rid="ref1 ref10 ref11 ref12 ref13 ref14 ref15 ref25">1,25,15,13,14,12,10,11</xref>
        ] however it is similar to the notion of a
tableau proof in the tableau calculi for propositional and rst order logic [
        <xref ref-type="bibr" rid="ref2 ref27">2,27</xref>
        ].
De nition 9 (Tableau). A tableau is a triple
tree and is a labeling function s.t.:
= (V; E; ) where (V; E) is a
{
{
{
(x) = T is a CTree for each x 2 V ;
(hx; yi) = (r; u) if an AND-rule r was applied on a node u from (x)
yielding (y) in which case y is a sole successor of x;
      </p>
      <p>(hx; yi) = (r; u; C) if an OR-rule r was applied on a node u from (x)
yielding (y) in which L(u) was extended by C; in this case x has as many
successors as many are possible nondeterministic choices for r on u.</p>
      <p>The root node in is the only node without incoming edges and represents
the initial state of the reasoning process.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Implementation</title>
      <p>Within our work, we have proposed and implemented a general purpose
algorithm visualization system called SIVA (System of Interactive Visualizations of
Algorithms). While designing SIVA, a considerable amount of attention has been
paid to its extensibility and modularity. Currently, the most signi cant
contribution of our work to the eld of DL is enabling visualization and control over every
step of the completion tree version of the tableau algorithm reasoning process
in ALC, which is provided by SIVA's modules we have implemented (DL
module and its submodule CTreeTableauReasoning). SIVA's extensibility promotes
its future development, due to which support for other description languages or
visualization of di erent algorithms could be implemented.</p>
      <p>Our implementation of the tableau algorithm for ALC, utilizes an abstract
tableau, which is not constrained to be used with any particular logic
formalism. The tableau is stored as a tree-like data structure with exactly one of its
nodes representing the initial and one node representing the current state of the
reasoning process. Every tableau node except the initial one contains an exact
description of reversible actions that transform the state represented by their
parents to the state represented by them, which makes them freely traversable.
In case of the completion tree version of the tableau algorithm for DL, each
node of the tableau describes how an application of a tableau rule a ects the
completion tree.</p>
      <p>The CTreeTableauReasoning module enables access to the completion tree
data structure and its interactive visualization. The completion tree is
represented by a graph-like data structure, whose nodes and edges are labeled by
sets of concepts and roles, respectively. While applying tableau expansion rules,
the application automatically extends respective labels of nodes and edges and
transforms concepts to their NNF.</p>
      <p>The DL module processes input in the form of DL expressions in original
mathematical notation and provides a virtual keyboard with all necessary
mathematical symbols. User input is automatically parsed and checked for errors,
which have to be xed before choosing a desired DL problem to solve. SIVA
currently supports three types of problems within ALC, which can be interactively
solved using the completion tree version of tableau algorithm:
{ concept satis ability checking,
{ instance checking,
{ knowledge base consistency checking.</p>
      <p>All instances of these decision problems are solved by reducing them to
knowledge base consistency checking. SIVA's extensible design allows broadening its
support beyond ALC and the mentioned set of reasoning problems in DL.</p>
      <p>Functionality of external modules can be made accessible to users through
SIVA's API by providing a so called workspace { a container component, which
assembles all visual and functional components required to perform actions
speci ed by the module. Our implementation of CTreeTableauReasoning contains
a workspace that assembles visualizations and functionality of DL
vocabularies, knowledge bases, completion trees and tableaux and enables communication
between these components.</p>
      <p>We have implemented SIVA as a heavily client-side oriented web application.
It has been built using the React framework with TypeScript as the main
scripting language. The application's internal work ow follows the Flux architecture,
which is standardly used within React-based applications.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Web application</title>
      <p>During the initial access of SIVA, the user is provided by a list of workspaces
available for initialization, which currently contains only the workspace
allowing visual simulation of reasoning using the completion tree version of tableau
algorithm in ALC. Prior to any actual reasoning, the user has to establish a
DL vocabulary and a knowledge base, either by typing them manually into
designated input boxes or by loading existing ones, which have been previously
exported using our application.</p>
      <p>In Fig. 1 an example knowledge base about owners of potentially murder
weapons (PMW) and a butcher owning a meat cleaver is shown. If the provided
input is error-free, the user can choose one of the supported types of reasoning
problems to solve and de ne its instance using the provided input controls.</p>
      <p>While solving a reasoning problem, the application guides the user through
the completion tree (Fig. 4) initialization phase, which, due to reduction to
knowledge base consistency checking, always consists of creating nodes
representing individuals from a non-empty ABox.</p>
      <p>Afterwards, the user can freely apply tableau rules, essentially replacing the
algorithm's non-determinism. Application of the T -rule is accessed through a
dedicated button present in the labels of completion tree nodes and it is
performed by choosing a TBox axiom associated with the desired T -rule (Fig. 2).
All other tableau rules are applied by simply clicking on concepts in labels of
nodes associated with the tableau rule. When applying the t-rule, the user also
chooses one of the two ways he wants it to be applied (Fig. 3).</p>
      <p>After encountering a clash or a fully expanded completion tree, the
application visually informs the user and no more tableau expansion rules can be
applied. The user can utilize the tableau (Fig. 5) in order to backtrack the
reasoning state to any of the previously discovered ones. The tableau is visualized
as a simple rooted tree, whose nodes can be freely traversed by clicking on them,
which transforms the current state to the one represented by the clicked tableau
node. The user can also quickly traverse the states represented by the current
tableau node's parent and its children by using dedicated buttons without the
need to access the tableau visualization.</p>
      <p>Our application is accessible online at http://siva.6f.sk/.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusions</title>
      <p>We have developed SIVA { an educational tool for visual simulation of the
tableau algorithm for the description logic ALC. The web application is freely
accessible. It allows the user to create a knowledge base, and to solve a decision
problem by running a step-by-step simulation of the tableau algorithm.
Available decision problems are consistency checking, instance checking, and concept
satis ability.</p>
      <p>
        In the future, we would like to extend the application for more expressive
description logics, and to allow the user to specify own tableau rules,
blocking strategy, etc. We hope that this could make our tool interesting also for
researchers. The application can also be extended by some standard tableau
expansion strategies or optimization techniques. We would like to integrate the
application with a course ware, such as Moodle [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
Acknowledgements. This work presents the results of the Master's thesis by
Peter Paulovics [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. It was supported by the Slovak national project VEGA
1/0778/18. Julia Pukancova is also supported by an extraordinary scholarship
awarded by Faculty of Mathematics, Physics, and Informatics, Comenius
University in Bratislava, and by the Comenius University grant no. UK/266/2018.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P.F</given-names>
          </string-name>
          . (eds.):
          <article-title>The Description Logic Handbook: Theory, Implementation, and Applications</article-title>
          . Cambridge University Press (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Beth</surname>
            ,
            <given-names>E.W.:</given-names>
          </string-name>
          <article-title>The foundations of mathematics</article-title>
          . North Holland (
          <year>1959</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Boinski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jaworska</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kleczkowski</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kunowski</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Ontology visualization</article-title>
          .
          <source>In: Information Technology (ICIT)</source>
          ,
          <year>2010</year>
          2nd International Conference on. pp.
          <volume>17</volume>
          {
          <fpage>20</fpage>
          .
          <string-name>
            <surname>IEEE</surname>
          </string-name>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bosca</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bonino</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pellegrino</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Ontosphere: more than a 3d ontology visualization tool</article-title>
          . In: SWAP 2005 {
          <article-title>Semantic Web Applications and Perspectives</article-title>
          ,
          <source>Proceedings of the 2nd Italian Semantic Web Workshop</source>
          , University of Trento, Trento, Italy.
          <source>CEUR-WS</source>
          , vol.
          <volume>166</volume>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Dougiamas</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Taylor</surname>
          </string-name>
          , P.: Moodle:
          <article-title>Using learning communities to create an open source course management system</article-title>
          .
          <source>In: EdMedia: World Conference on Educational Media and Technology</source>
          . pp.
          <volume>171</volume>
          {
          <issue>178</issue>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Dudas</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hanzal</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Svatek</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>What can the ontology describe? Visualizing local coverage in PURO modeler</article-title>
          .
          <source>In: Proceedings of the International Workshop on Visualizations</source>
          and
          <article-title>User Interfaces for Knowledge Engineering and Linked Data Analytics</article-title>
          ,
          <source>VISUAL@EKAW</source>
          <year>2014</year>
          ,
          <article-title>Linkoping, Sweden</article-title>
          .
          <source>CEUR-WS</source>
          , vol.
          <volume>1299</volume>
          , pp.
          <volume>28</volume>
          {
          <issue>33</issue>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Eklund</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roberts</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Green</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>OntoRama: Browsing RDF ontologies using a hyperbolic-style browser</article-title>
          .
          <source>In: Cyber Worlds</source>
          ,
          <year>2002</year>
          . Proceedings. First International Symposium on. pp.
          <volume>405</volume>
          {
          <fpage>411</fpage>
          .
          <string-name>
            <surname>IEEE</surname>
          </string-name>
          (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Gasquet</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Herzig</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Longin</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sahade</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Lotrec: Logical tableaux research engineering companion</article-title>
          .
          <source>In: Automated Reasoning with Analytic Tableaux and Related Methods</source>
          , International Conference, TABLEAUX 2005, Koblenz, Germany,
          <source>Proceedings. LNCS</source>
          , vol.
          <volume>3702</volume>
          , pp.
          <volume>318</volume>
          {
          <fpage>322</fpage>
          . Springer (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Gennari</surname>
            ,
            <given-names>J.H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Musen</surname>
            ,
            <given-names>M.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fergerson</surname>
            ,
            <given-names>R.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grosso</surname>
            ,
            <given-names>W.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Crubezy</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eriksson</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Noy</surname>
            ,
            <given-names>N.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tu</surname>
            ,
            <given-names>S.W.:</given-names>
          </string-name>
          <article-title>The evolution of Protege: an environment for knowledge-based systems development</article-title>
          .
          <source>International Journal of Human-computer studies 58(1)</source>
          ,
          <volume>89</volume>
          {
          <fpage>123</fpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kutz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>The irresistible SRIQ</article-title>
          .
          <source>In: Proceedings of the OWLED*05 Workshop on OWL: Experiences and Directions</source>
          , Galway, Ireland.
          <source>CEUR-WS</source>
          , vol.
          <volume>188</volume>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kutz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>The even more irresistible SROIQ</article-title>
          .
          <source>In: Proceedings, Tenth International Conference on Principles of Knowledge Representation and Reasoning</source>
          ,
          <source>Lake District of the United Kingdom, June 2-5</source>
          ,
          <year>2006</year>
          . pp.
          <volume>57</volume>
          {
          <fpage>67</fpage>
          .
          <string-name>
            <surname>AAAI</surname>
          </string-name>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>A tableau decision procedure for SHOIQ</article-title>
          .
          <source>Journal of automated reasoning 39(3)</source>
          ,
          <volume>249</volume>
          {
          <fpage>276</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tobies</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Practical reasoning for expressive description logics</article-title>
          .
          <source>In: Logic Programming and Automated Reasoning</source>
          , 6th International Conference, LPAR'99,
          <string-name>
            <surname>Tbilisi</surname>
          </string-name>
          , Georgia. LNCS, vol.
          <volume>1705</volume>
          , pp.
          <volume>161</volume>
          {
          <fpage>180</fpage>
          . Springer (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tobies</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Practical reasoning for very expressive description logics</article-title>
          .
          <source>Logic Journal of IGPL 8</source>
          (
          <issue>3</issue>
          ),
          <volume>239</volume>
          {
          <fpage>263</fpage>
          (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.R.</given-names>
          </string-name>
          :
          <article-title>Optimising tableaux decision procedures for description logics</article-title>
          .
          <source>Ph.D. thesis</source>
          , University of Manchester (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Katifori</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Halatsis</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lepouras</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vassilakis</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giannopoulou</surname>
          </string-name>
          , E.:
          <article-title>Ontology visualization methods { a survey</article-title>
          .
          <source>ACM Computing Surveys</source>
          <volume>39</volume>
          (
          <issue>4</issue>
          ),
          <volume>10</volume>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Krivov</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Williams</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Villa</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Growl: A tool for visualization and editing of OWL ontologies</article-title>
          .
          <source>Journal of Web Semamntics</source>
          <volume>5</volume>
          (
          <issue>2</issue>
          ),
          <volume>54</volume>
          {
          <fpage>57</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Liebig</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Noppens</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Ontotrack: A semantic approach for ontology authoring</article-title>
          .
          <source>Journal of Web Semamntics</source>
          <volume>3</volume>
          (
          <issue>2-3</issue>
          ),
          <volume>116</volume>
          {
          <fpage>131</fpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Nyitraiova</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Educational tools for rst order logic</article-title>
          .
          <source>Bachelor's Thesis</source>
          , Comenius University in Bratislava (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Nyitraiova</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Tableau editor</article-title>
          .
          <source>Computer software</source>
          , available: https:// fmfi-uk-1
          <string-name>
            <surname>-</surname>
          </string-name>
          ain-412.github.io/tableauEditor/ (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Paulovics</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Educational tool for tableau algorithm for DL. Master's thesis</article-title>
          , Comenius University in Bratislava (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Pietriga</surname>
          </string-name>
          , E.:
          <article-title>IsaViz: A visual authoring tool for RDF</article-title>
          . Computer software, available: http://www.w3.org/
          <year>2001</year>
          /11/IsaViz
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Plaisant</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grosjean</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bederson</surname>
            ,
            <given-names>B.B.</given-names>
          </string-name>
          :
          <article-title>SpaceTree: Supporting exploration in large node link tree, design evolution and empirical evaluation</article-title>
          .
          <source>In: The Craft of Information Visualization</source>
          , pp.
          <volume>287</volume>
          {
          <fpage>294</fpage>
          .
          <string-name>
            <surname>Elsevier</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Robertson</surname>
            ,
            <given-names>G.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mackinlay</surname>
            ,
            <given-names>J.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Card</surname>
            ,
            <given-names>S.K.</given-names>
          </string-name>
          :
          <article-title>Cone Trees: Animated 3D visualizations of hierarchical information</article-title>
          .
          <source>In: Proceedings of the SIGCHI conference on Human factors in computing systems</source>
          . pp.
          <volume>189</volume>
          {
          <fpage>194</fpage>
          .
          <string-name>
            <surname>ACM</surname>
          </string-name>
          (
          <year>1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Schmidt-Schau</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Smolka</surname>
          </string-name>
          , G.:
          <article-title>Attributive concept descriptions with complements</article-title>
          .
          <source>Arti cial intelligence</source>
          <volume>48</volume>
          (
          <issue>1</issue>
          ),
          <volume>1</volume>
          {
          <fpage>26</fpage>
          (
          <year>1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26. Sha er,
          <string-name>
            <given-names>C.A.</given-names>
            ,
            <surname>Cooper</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.L.</given-names>
            ,
            <surname>Alon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.J.D.</given-names>
            ,
            <surname>Akbar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Stewart</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Ponce</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Edwards</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.H.</surname>
          </string-name>
          :
          <article-title>Algorithm visualization: The state of the eld</article-title>
          .
          <source>ACM Transactions on Computing Education</source>
          <volume>10</volume>
          (
          <issue>3</issue>
          ),
          <volume>9</volume>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Smullyan</surname>
            ,
            <given-names>R.R.</given-names>
          </string-name>
          :
          <article-title>First-order logic</article-title>
          . Springer (
          <year>1968</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Sure</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Erdmann</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Angele</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Staab</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Studer</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wenke</surname>
            ,
            <given-names>D.:</given-names>
          </string-name>
          <article-title>OntoEdit: Collaborative ontology development for the semantic web</article-title>
          .
          <source>In: The Semantic Web { ISWC</source>
          <year>2002</year>
          , First International Semantic Web Conference, Sardinia, Italy,
          <source>Proceedings. LNCS</source>
          , vol.
          <volume>2342</volume>
          , pp.
          <volume>221</volume>
          {
          <fpage>235</fpage>
          . Springer (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <article-title>Tree proof generator</article-title>
          .
          <source>Computer software</source>
          , available: https://www.umsu.de/logik/ trees/
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30. van Valkenhoef, G.,
          <string-name>
            <surname>van der Vaart</surname>
          </string-name>
          , E.,
          <string-name>
            <surname>Verbrugge</surname>
          </string-name>
          , R.:
          <article-title>OOPS: an S5n prover for educational settings</article-title>
          .
          <source>Electr. Notes Theor. Comput. Sci</source>
          .
          <volume>262</volume>
          ,
          <issue>249</issue>
          {
          <fpage>261</fpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>T.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Cropcircles: Topology sensitive visualization of OWL class hierarchies</article-title>
          .
          <source>In: The Semantic Web { ISWC</source>
          <year>2006</year>
          , 5th International Semantic Web Conference,
          <string-name>
            <surname>ISWC</surname>
          </string-name>
          <year>2006</year>
          , Athens, GA, USA,
          <source>Proceedings. LNCS</source>
          , vol.
          <volume>4273</volume>
          , pp.
          <volume>695</volume>
          {
          <fpage>708</fpage>
          . Springer (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>