h1

h2

h3

h4

h5
h6
% IMPORTANT: The following is UTF-8 encoded.  This means that in the presence
% of non-ASCII characters, it will not work with BibTeX 0.99 or older.
% Instead, you should use an up-to-date BibTeX implementation like “bibtex8” or
% “biber”.

@PHDTHESIS{Brockschmidt:459458,
      author       = {Brockschmidt, Marc},
      othercontributors = {Giesl, Jürgen},
      title        = {{T}ermination analysis for imperative programs operating on
                      the heap},
      volume       = {2013,18},
      address      = {Aachen},
      publisher    = {Publikationsserver der RWTH Aachen University},
      reportid     = {RWTH-CONV-145366},
      series       = {Aachener Informatik-Berichte},
      pages        = {II, 224 S. : graph. Darst.},
      year         = {2014},
      note         = {Prüfungsjahr: 2013. - Publikationsjahr: 2014; Zugl.:
                      Aachen, Techn. Hochsch., Diss., 2013},
      abstract     = {Analysing if programs and processes terminate is one of the
                      central topics of theoretical computer science. Even though
                      to be undecidable in general, the problem has been studied
                      for decades for specific subproblems. Based on the results
                      of this work, many small example programs can be proven
                      terminating automatically now. However, even small
                      real-world systems usually cannot be handled. The focus has
                      thus now turned towards proving termination of programs that
                      are in wide-spread use in common devices and computers. Two
                      different approaches to apply termination analysis to
                      real-world problems have seen considerable activity in the
                      past decade. One idea is to transform programs into
                      formalisms that have been studied in the past, allowing to
                      directly use existing methods and tools. Another trend is to
                      leverage tools for model checking from the related field of
                      safety verification to apply certain selected techniques for
                      termination proving. This thesis makes contributions in both
                      of these areas. First, we discuss how to transform
                      real-world Java Bytecode programs into term rewriting, a
                      simple formalism that has been used to study termination
                      analysis for decades. User-defined data structures are
                      transformed into terms, allowing to make use of the many
                      methods originally developed for term rewriting. Then, we
                      present techniques to handle term rewrite systems that
                      provide pre-defined support for integers. For this, we show
                      how using suitable transformations, a powerful termination
                      analysis can be implemented by recursing to existing, more
                      specialised method handling either integers or terms.
                      Finally, we present SMT-based techniques to infer
                      non-termination of Java Bytecode and term rewriting with
                      integers. To improve model-checking-based approaches to
                      termination analysis of programs restricted to integers, we
                      present a new cooperative proof framework. Its novel
                      structure allows model checking techniques and advanced
                      termination proving techniques from term rewriting to work
                      together. This work can be seen as a first step towards
                      unifying these two approaches, and allows further
                      cross-fertilisation of ideas. Based on this framework, we
                      show how this approach can be used in alternation with
                      non-termination techniques, further improving the precision
                      of the overall approach. The contributions of this thesis
                      are implemented in the fully automated termination prover
                      AProVE and the model checker and termination prover T2. In
                      the annual International Termination Competition, AProVE has
                      proven to be the most powerful termination analyser for Java
                      Bytecode programs, whereas T2 is the most powerful
                      termination analyser for integer programs.},
      keywords     = {Verifikation (SWD) / Programmanalyse (SWD) / Terminierung
                      <Informatik> (SWD)},
      cin          = {120000 / 121420},
      ddc          = {004},
      cid          = {$I:(DE-82)120000_20140620$ / $I:(DE-82)121420_20140620$},
      shelfmark    = {F.3.1 * D.2.4},
      typ          = {PUB:(DE-HGF)11 / PUB:(DE-HGF)3},
      urn          = {urn:nbn:de:hbz:82-opus-52325},
      url          = {https://publications.rwth-aachen.de/record/459458},
}