Skip to main content Accessibility help
  • Print publication year: 2017
  • Online publication date: June 2017

5 - Complexity


In Chapter 4, we looked at concrete algorithms for reasoning in ALC and some of its extensions. In this chapter, we are taking a more abstract viewpoint and discuss the computational complexity of reasoning, which essentially is the question of how efficient we can expect any reasoning algorithm for a given problem to be, even on very difficult (“worst-case”) inputs. Although we will concentrate on the basic reasoning problems satisfiability and subsumption for the sake of simple exposition, all results established in this chapter also apply to the corresponding KB consistency problem. In fact, there are very few relevant cases in which the computational complexity of satisfiability and of KB consistency diverge. We start with ALC and show that the complexity of satisfiability and of subsumption depend on the TBox formalism that is used: without TBoxes and with acyclic TBoxes, it is PSPACE-complete while general TBoxes raise the complexity to EXPTIME-complete. Then we consider two extensions of ALC, ALCOI and ALCOIQ, and show that satisfiability and subsumption are more difficult in these DLs: in ALCOI, satisfiability and subsumption are EXPTIME-complete already without TBoxes. We show only hardness to illustrate the increase in complexity. In ALCOIQ, reasoning even becomes NEXPTIME-complete (without TBoxes). Again, we show only hardness. Finally, we consider two extensions of ALC that render reasoning undecidable: role value maps and a certain concrete domain based on the natural numbers and incrementation.

Before starting to analyse the computational complexity of DLs, let us recall some basics of complexity theory. A complexity class is a set of problems that share some relevant computational property such as being solvable within the same resource bounds. For example, PTIME is the class of all problems that can be solved by a deterministic Turing machine in time polynomial in the size of the input. In this chapter, we will mainly be concerned with the following standard complexity classes, which we order according to set inclusion:

The reader is referred to standard textbooks on complexity theory for the exact definition of these classes [AB09, Sip97, Pap94]. It is commonly believed that the inclusions shown above are all strict, but proofs have not yet been found.