ChengsongTanPhdThesis/main.tex
author Chengsong
Wed, 17 Aug 2022 22:59:15 +0100
changeset 580 e0f0a81f907b
parent 579 35df9cdd36ca
child 585 4969ef817d92
permissions -rw-r--r--
halfway chap3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     2
% Masters/Doctoral Thesis 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     3
% LaTeX Template
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     4
% Version 2.5 (27/8/17)
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     5
%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     6
% This template was downloaded from:
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     7
% http://www.LaTeXTemplates.com
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     8
%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
     9
% Version 2.x major modifications by:
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    10
% Vel (vel@latextemplates.com)
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    11
%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    12
% This template is based on a template by:
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    13
% Steve Gunn (http://users.ecs.soton.ac.uk/srg/softwaretools/document/templates/)
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    14
% Sunil Patel (http://www.sunilpatel.co.uk/thesis-template/)
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    15
%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    16
% Template license:
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    17
% CC BY-NC-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/)
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    18
%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    19
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    20
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    21
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    22
%	PACKAGES AND OTHER DOCUMENT CONFIGURATIONS
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    23
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    24
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    25
\documentclass[
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    26
11pt, % The default document font size, options: 10pt, 11pt, 12pt
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    27
%oneside, % Two side (alternating margins) for binding by default, uncomment to switch to one side
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    28
english, % ngerman for German
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    29
singlespacing, % Single line spacing, alternatives: onehalfspacing or doublespacing
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    30
%draft, % Uncomment to enable draft mode (no pictures, no links, overfull hboxes indicated)
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    31
%nolistspacing, % If the document is onehalfspacing or doublespacing, uncomment this to set spacing in lists to single
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    32
%liststotoc, % Uncomment to add the list of figures/tables/etc to the table of contents
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    33
%toctotoc, % Uncomment to add the main table of contents to the table of contents
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    34
%parskip, % Uncomment to add space between paragraphs
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    35
%nohyperref, % Uncomment to not load the hyperref package
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    36
headsepline, % Uncomment to get a line under the header
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    37
%chapterinoneline, % Uncomment to place the chapter title next to the number on one line
471
Chengsong
parents: 468
diff changeset
    38
consistentlayout, % Uncomment to change the layout of the declaration, abstract and acknowledgements pages to match the default layout
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    39
]{MastersDoctoralThesis} % The class file specifying the document structure
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    40
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    41
\usepackage[utf8]{inputenc} % Required for inputting international characters
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    42
\usepackage[T1]{fontenc} % Output font encoding for international characters
505
5ce3bd8e5696 thesis chapter2 section 2.4
Chengsong
parents: 503
diff changeset
    43
%\usepackage{fdsymbol} % Loads unicode-math
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    44
555
Chengsong
parents: 554
diff changeset
    45
\usepackage{verbatim}
580
e0f0a81f907b halfway chap3
Chengsong
parents: 579
diff changeset
    46
\usepackage{float}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    47
\usepackage{mathpazo} % Use the Palatino font by default
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    48
\usepackage{hyperref}
542
a7344c9afbaf chapter3 finished
Chengsong
parents: 538
diff changeset
    49
\usepackage{lipsum}
564
Chengsong
parents: 555
diff changeset
    50
\usepackage[backend=bibtex]{biblatex} % Use the bibtex backend with the authoryear citation style (which resembles APA)
577
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    51
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    52
\usepackage[usestackEOL]{stackengine}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    53
\usepackage{scalerel}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    54
\usepackage{graphicx}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    55
564
Chengsong
parents: 555
diff changeset
    56
%style=authoryear, natbib=true 
500
Chengsong
parents: 472
diff changeset
    57
\usepackage{stmaryrd}
537
Chengsong
parents: 535
diff changeset
    58
\usepackage{caption}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    59
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    60
\addbibresource{example.bib} % The filename of the bibliography
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    61
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    62
\usepackage[autostyle=true]{csquotes} % Required to generate language-dependent quotes in the bibliography
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    63
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    64
%My Newly added Libraries in addition to template
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    65
\usepackage{graphic}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    66
\usepackage{data}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    67
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    68
%\usepackage{algorithm}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    69
\usepackage{amsmath}
577
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    70
\makeatletter
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    71
\newcommand{\xleftrightarrow}[2][]{\ext@arrow 3359\leftrightarrowfill@{#1}{#2}}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    72
\newcommand{\xdashrightarrow}[2][]{\ext@arrow 0359\rightarrowfill@@{#1}{#2}}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    73
\newcommand{\xdashleftarrow}[2][]{\ext@arrow 3095\leftarrowfill@@{#1}{#2}}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    74
\newcommand{\xdashleftrightarrow}[2][]{\ext@arrow 3359\leftrightarrowfill@@{#1}{#2}}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    75
\def\rightarrowfill@@{\arrowfill@@\relax\relbar\rightarrow}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    76
\def\leftarrowfill@@{\arrowfill@@\leftarrow\relbar\relax}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    77
\def\leftrightarrowfill@@{\arrowfill@@\leftarrow\relbar\rightarrow}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    78
\def\arrowfill@@#1#2#3#4{%
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    79
  $\m@th\thickmuskip0mu\medmuskip\thickmuskip\thinmuskip\thickmuskip
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    80
   \relax#4#1
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    81
   \xleaders\hbox{$#4#2$}\hfill
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    82
   #3$%
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    83
}
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    84
\makeatother
579
35df9cdd36ca more chap3
Chengsong
parents: 577
diff changeset
    85
\def\checkmark{\tikz\fill[scale=0.4](0,.35) -- (.25,0) -- (1,.7) -- (.25,.15) -- cycle;} 
577
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
    86
506
69ad05398894 thesis chapter 2 section 2.4 2.5
Chengsong
parents: 505
diff changeset
    87
\usepackage{amsthm}
69ad05398894 thesis chapter 2 section 2.4 2.5
Chengsong
parents: 505
diff changeset
    88
\usepackage{amssymb}
519
Chengsong
parents: 518
diff changeset
    89
\usepackage{cleveref}
505
5ce3bd8e5696 thesis chapter2 section 2.4
Chengsong
parents: 503
diff changeset
    90
%\usepackage{mathtools}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    91
\usepackage[noend]{algpseudocode}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    92
\usepackage{enumitem}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    93
\usepackage{nccmath}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    94
\usepackage{tikz-cd}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
    95
\usepackage{tikz}
472
Chengsong
parents: 471
diff changeset
    96
\usetikzlibrary{automata, positioning, calc}
579
35df9cdd36ca more chap3
Chengsong
parents: 577
diff changeset
    97
\usetikzlibrary{arrows}
580
e0f0a81f907b halfway chap3
Chengsong
parents: 579
diff changeset
    98
\usetikzlibrary{shapes.misc}
542
a7344c9afbaf chapter3 finished
Chengsong
parents: 538
diff changeset
    99
\usetikzlibrary{fit,
564
Chengsong
parents: 555
diff changeset
   100
                shapes.geometric,
Chengsong
parents: 555
diff changeset
   101
		patterns,
Chengsong
parents: 555
diff changeset
   102
		backgrounds,
Chengsong
parents: 555
diff changeset
   103
		graphs}
Chengsong
parents: 555
diff changeset
   104
\usetikzlibrary{babel}
538
8016a2480704 intro and chap2
Chengsong
parents: 537
diff changeset
   105
\usepackage{mathpartir}
555
Chengsong
parents: 554
diff changeset
   106
\usepackage{stackrel}
537
Chengsong
parents: 535
diff changeset
   107
Chengsong
parents: 535
diff changeset
   108
\DeclareCaptionType{mytype}[Illustration][]
Chengsong
parents: 535
diff changeset
   109
\newenvironment{envForCaption}{\captionsetup{type=mytype} }{}
577
f47fc4840579 thesis chap2
Chengsong
parents: 568
diff changeset
   110
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   111
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   112
%	MARGIN SETTINGS
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   113
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   114
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   115
\geometry{
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   116
	paper=a4paper, % Change to letterpaper for US letter
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   117
	inner=2.5cm, % Inner margin
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   118
	outer=3.8cm, % Outer margin
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   119
	bindingoffset=.5cm, % Binding offset
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   120
	top=1.5cm, % Top margin
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   121
	bottom=1.5cm, % Bottom margin
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   122
	%showframe, % Uncomment to show how the type block is set on the page
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   123
}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   124
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   125
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   126
%	THESIS INFORMATION
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   127
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   128
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   129
\thesistitle{POSIX Regular Expression Matching and Lexing} % Your thesis title, this is used in the title and abstract, print it elsewhere with \ttitle
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   130
\supervisor{Dr. Christian \textsc{Urban}} % Your supervisor's name, this is used in the title page, print it elsewhere with \supname
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   131
\examiner{} % Your examiner's name, this is not currently used anywhere in the template, print it elsewhere with \examname
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   132
\degree{Doctor of Philosophy} % Your degree name, this is used in the title page and abstract, print it elsewhere with \degreename
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   133
\author{Chengsong \textsc{Tan}} % Your name, this is used in the title page and abstract, print it elsewhere with \authorname
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   134
\addresses{} % Your address, this is not currently used anywhere in the template, print it elsewhere with \addressname
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   135
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   136
\subject{Computer Science} % Your subject area, this is not currently used anywhere in the template, print it elsewhere with \subjectname
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   137
\keywords{} % Keywords for your thesis, this is not currently used anywhere in the template, print it elsewhere with \keywordnames
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   138
\university{\href{https://www.kcl.ac.uk}{King's College London}} % Your university's name and URL, this is used in the title page and abstract, print it elsewhere with \univname
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   139
\department{\href{https://www.kcl.ac.uk/informatics}{Department or Informatics}} % Your department's name and URL, this is used in the title page and abstract, print it elsewhere with \deptname
471
Chengsong
parents: 468
diff changeset
   140
\group{\href{https://www.kcl.ac.uk/research/ssy}{Software Systems Group}} % Your research group's name and URL, this is used in the title page, print it elsewhere with \groupname
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   141
\faculty{\href{http://faculty.university.com}{Chengsong Tan}} % Your faculty's name and URL, this is used in the title page and abstract, print it elsewhere with \facname
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   142
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   143
\AtBeginDocument{
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   144
\hypersetup{pdftitle=\ttitle} % Set the PDF's title to your title
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   145
\hypersetup{pdfauthor=\authorname} % Set the PDF's author to your name
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   146
\hypersetup{pdfkeywords=\keywordnames} % Set the PDF's keywords to your keywords
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   147
}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   148
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   149
\begin{document}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   150
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   151
\frontmatter % Use roman page numbering style (i, ii, iii, iv...) for the pre-content pages
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   152
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   153
\pagestyle{plain} % Default to the plain heading style until the thesis style is called for the body content
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   154
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   155
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   156
%	TITLE PAGE
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   157
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   158
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   159
\begin{titlepage}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   160
\begin{center}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   161
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   162
\vspace*{.06\textheight}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   163
{\scshape\LARGE \univname\par}\vspace{1.5cm} % University name
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   164
\textsc{\Large Doctoral Thesis}\\[0.5cm] % Thesis type
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   165
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   166
\HRule \\[0.4cm] % Horizontal line
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   167
{\huge \bfseries \ttitle\par}\vspace{0.4cm} % Thesis title
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   168
\HRule \\[1.5cm] % Horizontal line
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   169
 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   170
\begin{minipage}[t]{0.4\textwidth}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   171
\begin{flushleft} \large
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   172
\emph{Author:}\\
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   173
\href{https://kclpure.kcl.ac.uk/portal/en/persons/chengsong-tan(a63b381b-04bc-4cd7-beea-beb3e96cb153).html}{\authorname} % Author name - remove the \href bracket to remove the link
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   174
\end{flushleft}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   175
\end{minipage}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   176
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   177
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   178
\begin{minipage}[t]{0.4\textwidth}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   179
\begin{flushright} \large
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   180
\emph{Supervisor:} \\
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   181
\href{https://www.kcl.ac.uk/people/christian-urban}{\supname} % Supervisor name - remove the \href bracket to remove the link  
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   182
\end{flushright}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   183
\end{minipage}\\[3cm]
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   184
 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   185
\vfill
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   186
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   187
\large \textit{A thesis submitted in fulfillment of the requirements\\ for the degree of \degreename}\\[0.3cm] % University requirement text
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   188
\textit{in the}\\[0.4cm]
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   189
\groupname\\\deptname\\[2cm] % Research group name and department name
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   190
 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   191
\vfill
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   192
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   193
{\large \today}\\[4cm] % Date
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   194
%\includegraphics{Logo} % University/department logo - uncomment to place it
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   195
 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   196
\vfill
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   197
\end{center}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   198
\end{titlepage}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   199
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   200
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   201
%	DECLARATION PAGE
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   202
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   203
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   204
\begin{declaration}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   205
\addchaptertocentry{\authorshipname} % Add the declaration to the table of contents
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   206
\noindent I, \authorname, declare that this thesis titled, \enquote{\ttitle} and the work presented in it are my own. I confirm that:
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   207
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   208
\begin{itemize} 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   209
\item This work was done wholly or mainly while in candidature for a research degree at this University.
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   210
\item Where any part of this thesis has previously been submitted for a degree or any other qualification at this University or any other institution, this has been clearly stated.
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   211
\item Where I have consulted the published work of others, this is always clearly attributed.
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   212
\item Where I have quoted from the work of others, the source is always given. With the exception of such quotations, this thesis is entirely my own work.
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   213
\item I have acknowledged all main sources of help.
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   214
\item Where the thesis is based on work done by myself jointly with others, I have made clear exactly what was done by others and what I have contributed myself.\\
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   215
\end{itemize}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   216
 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   217
\noindent Signed:\\
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   218
\rule[0.5em]{25em}{0.5pt} % This prints a line for the signature
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   219
 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   220
\noindent Date:\\
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   221
\rule[0.5em]{25em}{0.5pt} % This prints a line to write the date
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   222
\end{declaration}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   223
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   224
\cleardoublepage
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   225
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   226
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   227
%	QUOTATION PAGE
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   228
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   229
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   230
\vspace*{0.2\textheight}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   231
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   232
\noindent\enquote{\itshape Thanks to my solid academic training, today I can write hundreds of words on virtually any topic without possessing a shred of information, which is how I got a good job in journalism.}\bigbreak
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   233
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   234
\hfill Dave Barry
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   235
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   236
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   237
%	ABSTRACT PAGE
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   238
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   239
519
Chengsong
parents: 518
diff changeset
   240
%\begin{abstract}
Chengsong
parents: 518
diff changeset
   241
Chengsong
parents: 518
diff changeset
   242
 
Chengsong
parents: 518
diff changeset
   243
%\end{abstract}
Chengsong
parents: 518
diff changeset
   244
Chengsong
parents: 518
diff changeset
   245
527
2c907b118f78 all chapters put in
Chengsong
parents: 526
diff changeset
   246
\begin{abstract}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   247
\addchaptertocentry{\abstractname} % Add the abstract to the table of contents
527
2c907b118f78 all chapters put in
Chengsong
parents: 526
diff changeset
   248
%\addchap{Abstract} 
568
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   249
This thesis is about regular expressions and derivatives. It combines functional algorithms and their formal verification in the Isabelle/HOL theorem prover. 
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   250
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   251
Theoretical results say that regular expression matching should be linear with respect to the input. Under a certain class of regular expressions and inputs though, practical implementations often suffer from non-linear or even exponential running time, allowing ReDoS (regular expression denial-of-service ) attacks. This makes levers with formalised properties such as correctness and time complexity appealing.
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   252
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   253
Sulzmann and Lu describe a lexing algorithm that calculates Brzozowski derivatives using bitcodes annotated to regular expressions. Their algorithm generates POSIX values which encode the information of how a regular expression matches a string—that is, which part of the string is matched by which part of the regular expression. This information is needed in the context of lexing in order to extract and to classify tokens. The purpose of the bitcodes is to generate POSIX values incrementally while derivatives are calculated. They also help with designing an “aggressive” simplification function that keeps the size of derivatives finitely bounded. Without simplification the size of some derivatives can grow arbitrarily big resulting in an extremely slow lexing algorithm. 
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   254
568
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   255
In this thesis we describe a variant of Sulzmann and Lu’s algorithm: Our variant is a recursive functional program, whereas Sulzmann and Lu’s version involves a fixpoint construction. We (i) prove in Isabelle/HOL that our algorithm is correct and generates unique POSIX values; we also (ii) establish a finite bound for the size of the derivatives. 
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   256
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   257
568
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   258
7a579f5533f8 more chapter2 modifications
Chengsong
parents: 564
diff changeset
   259
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   260
527
2c907b118f78 all chapters put in
Chengsong
parents: 526
diff changeset
   261
\end{abstract}
519
Chengsong
parents: 518
diff changeset
   262
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   263
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   264
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   265
%	ACKNOWLEDGEMENTS
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   266
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   267
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   268
\begin{acknowledgements}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   269
\addchaptertocentry{\acknowledgementname} % Add the acknowledgements to the table of contents
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   270
The acknowledgments and the people to thank go here, don't forget to include your project advisor\ldots
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   271
\end{acknowledgements}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   272
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   273
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   274
%	LIST OF CONTENTS/FIGURES/TABLES PAGES
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   275
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   276
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   277
\tableofcontents % Prints the main table of contents
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   278
518
ff7945a988a3 more to thesis
Chengsong
parents: 506
diff changeset
   279
%\listoffigures % Prints the list of figures
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   280
518
ff7945a988a3 more to thesis
Chengsong
parents: 506
diff changeset
   281
%\listoftables % Prints the list of tables
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   282
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   283
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   284
%	ABBREVIATIONS
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   285
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   286
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   287
\begin{abbreviations}{ll} % Include a list of abbreviations (a table of two columns)
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   288
500
Chengsong
parents: 472
diff changeset
   289
Chengsong
parents: 472
diff changeset
   290
\newtheorem{theorem}{Theorem}
Chengsong
parents: 472
diff changeset
   291
\newtheorem{lemma}{Lemma}
528
28751de4b4ba revised according to comments
Chengsong
parents: 527
diff changeset
   292
\newtheorem{definition}{Definition}
542
a7344c9afbaf chapter3 finished
Chengsong
parents: 538
diff changeset
   293
\newtheorem{conjecture}{Conjecture}
554
Chengsong
parents: 542
diff changeset
   294
\newtheorem{corollary}{Corollary}
Chengsong
parents: 542
diff changeset
   295
\newtheorem{property}{Property}
Chengsong
parents: 542
diff changeset
   296
\newtheorem{proposition}{Proposition}
505
5ce3bd8e5696 thesis chapter2 section 2.4
Chengsong
parents: 503
diff changeset
   297
%proof
5ce3bd8e5696 thesis chapter2 section 2.4
Chengsong
parents: 503
diff changeset
   298
500
Chengsong
parents: 472
diff changeset
   299
503
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   300
\newcommand\sflat[1][]{\textit{sflat} \, #1}
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   301
\newcommand{\ASEQ}[3]{\textit{ASEQ}_{#1} \, #2 \, #3}
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   302
\newcommand{\bderssimp}[2]{#1 \backslash_{bsimp} #2}
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   303
\newcommand{\rderssimp}[2]{#1 \backslash_{rsimp} #2}
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   304
\newcommand{\sflataux}[1]{\lbracket #1 \rbracket}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   305
\newcommand{\dn}{\stackrel{\mbox{\scriptsize def}}{=}}%
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   306
\newcommand{\ZERO}{\mbox{\bf 0}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   307
\newcommand{\ONE}{\mbox{\bf 1}}
503
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   308
\newcommand{\AALTS}[2]{\XOR {\scriptstyle #1}\, #2}
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   309
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   310
\def\lexer{\mathit{lexer}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   311
\def\mkeps{\mathit{mkeps}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   312
500
Chengsong
parents: 472
diff changeset
   313
\def\AZERO{\textit{AZERO}}
Chengsong
parents: 472
diff changeset
   314
\def\AONE{\textit{AONE}}
Chengsong
parents: 472
diff changeset
   315
\def\ACHAR{\textit{ACHAR}}
503
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   316
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   317
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   318
\def\ALTS{\textit{ALTS}}
500
Chengsong
parents: 472
diff changeset
   319
\def\ASTAR{\textit{ASTAR}}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   320
\def\DFA{\textit{DFA}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   321
\def\bmkeps{\textit{bmkeps}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   322
\def\retrieve{\textit{retrieve}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   323
\def\blexer{\textit{blexer}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   324
\def\flex{\textit{flex}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   325
\def\inj{\mathit{inj}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   326
\def\Empty{\mathit{Empty}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   327
\def\Left{\mathit{Left}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   328
\def\Right{\mathit{Right}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   329
\def\Stars{\mathit{Stars}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   330
\def\Char{\mathit{Char}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   331
\def\Seq{\mathit{Seq}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   332
\def\Der{\mathit{Der}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   333
\def\nullable{\mathit{nullable}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   334
\def\Z{\mathit{Z}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   335
\def\S{\mathit{S}}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   336
\def\rup{r^\uparrow}
500
Chengsong
parents: 472
diff changeset
   337
%\def\bderssimp{\mathit{bders}\_\mathit{simp}}
Chengsong
parents: 472
diff changeset
   338
\def\distinctWith{\textit{distinctWith}}
Chengsong
parents: 472
diff changeset
   339
503
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   340
\def\rexp{\mathbf{rexp}}
500
Chengsong
parents: 472
diff changeset
   341
\def\simp{\mathit{simp}}
Chengsong
parents: 472
diff changeset
   342
\def\simpALTs{\mathit{simp}\_\mathit{ALTs}}
Chengsong
parents: 472
diff changeset
   343
\def\map{\mathit{map}}
Chengsong
parents: 472
diff changeset
   344
\def\distinct{\mathit{distinct}}
Chengsong
parents: 472
diff changeset
   345
\def\blexersimp{\mathit{blexer}\_\mathit{simp}}
Chengsong
parents: 472
diff changeset
   346
\def\map{\textit{map}}
Chengsong
parents: 472
diff changeset
   347
\def\vsuf{\textit{vsuf}}
Chengsong
parents: 472
diff changeset
   348
\def\sflataux{\textit{sflat}\_\textit{aux}}
Chengsong
parents: 472
diff changeset
   349
\def\rrexp{\textit{rrexp}}
Chengsong
parents: 472
diff changeset
   350
\def\rsize{\textit{rsize}}
Chengsong
parents: 472
diff changeset
   351
\def\asize{\textit{asize}}
Chengsong
parents: 472
diff changeset
   352
\def\rerase{\textit{rerase}}
Chengsong
parents: 472
diff changeset
   353
\def\erase{\textit{erase}}
Chengsong
parents: 472
diff changeset
   354
\def\STAR{\textit{STAR}}
Chengsong
parents: 472
diff changeset
   355
\def\flts{\textit{flts}}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   356
503
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   357
35b80e37dfe7 new writing
Chengsong
parents: 500
diff changeset
   358
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   359
\end{abbreviations}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   360
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   361
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   362
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   363
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   364
%	SYMBOLS
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   365
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   366
528
28751de4b4ba revised according to comments
Chengsong
parents: 527
diff changeset
   367
%\begin{symbols}{lll} % Include a list of Symbols (a three column table)
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   368
528
28751de4b4ba revised according to comments
Chengsong
parents: 527
diff changeset
   369
%$a$ & distance & \si{\meter} \\
28751de4b4ba revised according to comments
Chengsong
parents: 527
diff changeset
   370
%$P$ & power & \si{\watt} (\si{\joule\per\second}) \\
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   371
%Symbol & Name & Unit \\
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   372
528
28751de4b4ba revised according to comments
Chengsong
parents: 527
diff changeset
   373
%\addlinespace % Gap to separate the Roman symbols from the Greek
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   374
528
28751de4b4ba revised according to comments
Chengsong
parents: 527
diff changeset
   375
%$\omega$ & angular frequency & \si{\radian} \\
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   376
528
28751de4b4ba revised according to comments
Chengsong
parents: 527
diff changeset
   377
%\end{symbols}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   378
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   379
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   380
%	DEDICATION
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   381
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   382
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   383
\dedicatory{For/Dedicated to/To my\ldots} 
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   384
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   385
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   386
%	THESIS CONTENT - CHAPTERS
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   387
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   388
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   389
\mainmatter % Begin numeric (1,2,3...) page numbering
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   390
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   391
\pagestyle{thesis} % Return the page headers back to the "thesis" style
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   392
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   393
% Include the chapters of the thesis as separate files from the Chapters folder
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   394
% Uncomment the lines as you write the chapters
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   395
532
cc54ce075db5 restructured
Chengsong
parents: 528
diff changeset
   396
\include{Chapters/Introduction}
cc54ce075db5 restructured
Chengsong
parents: 528
diff changeset
   397
\include{Chapters/Inj} 
cc54ce075db5 restructured
Chengsong
parents: 528
diff changeset
   398
\include{Chapters/Bitcoded1}
cc54ce075db5 restructured
Chengsong
parents: 528
diff changeset
   399
\include{Chapters/Bitcoded2}
cc54ce075db5 restructured
Chengsong
parents: 528
diff changeset
   400
\include{Chapters/Finite} 
cc54ce075db5 restructured
Chengsong
parents: 528
diff changeset
   401
\include{Chapters/Cubic}
cc54ce075db5 restructured
Chengsong
parents: 528
diff changeset
   402
\include{Chapters/Further}
468
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   403
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   404
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   405
%	THESIS CONTENT - APPENDICES
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   406
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   407
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   408
\appendix % Cue to tell LaTeX that the following "chapters" are Appendices
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   409
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   410
% Include the appendices of the thesis as separate files from the Appendices folder
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   411
% Uncomment the lines as you write the Appendices
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   412
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   413
\include{Appendices/AppendixA}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   414
%\include{Appendices/AppendixB}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   415
%\include{Appendices/AppendixC}
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   416
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   417
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   418
%	BIBLIOGRAPHY
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   419
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   420
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   421
\printbibliography[heading=bibintoc]
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   422
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   423
%----------------------------------------------------------------------------------------
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   424
a0f27e21b42c all texrelated
Chengsong
parents:
diff changeset
   425
\end{document}