# source:src/ASM/CPP2013-policy/main.tex@3363

Last change on this file since 3363 was 3361, checked in by sacerdot, 6 years ago

15 pages version

• Property svn:executable set to *
File size: 1.9 KB
Line
1\documentclass[a4paper]{llncs}
2\usepackage{algpseudocode}
3%\usepackage{algorithmicx}
4\usepackage{alltt}
5\usepackage{amsfonts}
6\usepackage{amsmath}
7\usepackage[british]{babel}
8\usepackage{hyperref}
9\usepackage[utf8]{inputenc}
10\usepackage{listings}
11\usepackage{subcaption}
12
13\renewcommand{\verb}{\lstinline}
14\def\lstlanguagefiles{lst-grafite.tex}
15\lstset{language=Grafite}
16
17\begin{document}
18
19\mainmatter
20\title{On the correctness of a branch displacement algorithm\thanks{Research supported by the CerCo project, within the Future and Emerging Technologies (FET) programme of the Seventh Framework Programme for Research of the European Commission, under FET-Open grant number 243881}}
21\author{Jaap Boender\inst{1} \and Claudio Sacerdoti Coen\inst{2}}
22\institute{Foundations of Computing Group\\Department of Computer Science\\School of Science and Technology\\Middlesex University, London, UK\\
23\email{J.Boender@mdx.ac.uk}
24\and
25Dipartimento di Scienze dell'Informazione,\\
26Universit\`a degli Studi di Bologna, Italy\\
27\email{sacerdot@cs.unibo.it}}
28
29\maketitle
30
31\begin{abstract}
32The branch displacement problem is a well-known problem in assembler design.
33It revolves around the feature, present in several processor families, of
34having different instructions, of different sizes, for jumps of different
35displacements. The problem, which is provably NP-hard, is then to select the
36instructions such that one ends up with the smallest possible program.
37
38During our research with the CerCo project on formally verifying a C compiler,
39we have implemented and proven correct an algorithm for this problem. In this
40paper, we discuss the problem, possible solutions, our specific solutions and
41the proofs.
42
43\keywords{formal verification, interactive theorem proving, assembler, branch displacement optimisation}
44\end{abstract}
45
46\input{problem}
47\input{algorithm}
48\input{proof}
49\input{conclusion}
50
51\bibliography{biblio}
52\bibliographystyle{splncs03}
53
54\end{document}
Note: See TracBrowser for help on using the repository browser.