  Description Logics (DLs) are a family of languages used for the
representation and reasoning on the knowledge of an application domain, in a
structured and formal manner. In order to achieve this objective, several
provers, such as RACER and FaCT++, have been implemented, but these provers
themselves have not been yet certified. In order to ensure the soundness of
derivations in these DLs, it is necessary to formally verify the deductions
applied by these reasoners. Formal methods offer powerful tools for the
specification and verification of proof procedures, among them there are
methods for proving properties such as soundness, completeness and termination
of a proof procedure. In this paper, we present the definition of a proof
procedure for the Description Logic ALC, based on a semantic tableau method. We
ensure validity of our prover by proving its soundness, completeness and
termination properties using Isabelle proof assistant. The proof proceeds in
two phases, first by establishing these properties on an abstract level, and
then by instantiating them for an implementation based on lists.
