src/HOL/Bali/document/root.tex
author schirmer
Mon, 28 Jan 2002 17:00:19 +0100
changeset 12854 00d4a435777f
child 12856 17ae8bbb46cb
permissions -rw-r--r--
Isabelle/Bali sources;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12854
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     1
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     2
\documentclass[11pt,a4paper]{book}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     3
\usepackage{isabelle,isabellesym}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     4
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     5
% further packages required for unusual symbols (see also isabellesym.sty)
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     6
\usepackage{latexsym}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     7
%\usepackage{amssymb}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     8
%\usepackage[english]{babel}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
     9
%\usepackage[latin1]{inputenc}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    10
%\usepackage[only,bigsqcap]{stmaryrd}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    11
%\usepackage{wasysym}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    12
%\usepackage{eufrak}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    13
%\usepackage{textcomp}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    14
%\usepackage{marvosym}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    15
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    16
% this should be the last package used
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    17
\usepackage{pdfsetup}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    18
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    19
% proper setup for best-style documents
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    20
\urlstyle{rm}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    21
\isabellestyle{it}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    22
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    23
\pagestyle{myheadings}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    24
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    25
\addtolength{\hoffset}{-1,5cm}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    26
\addtolength{\textwidth}{4cm}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    27
\addtolength{\voffset}{-2cm}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    28
\addtolength{\textheight}{4cm}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    29
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    30
%subsection instead of section to make the toc readable
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    31
\renewcommand{\thesubsection}{\arabic{subsection}}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    32
\renewcommand{\isamarkupheader}[1]{\newpage\markright{Theory~\isabellecontext}\subsection{#1}}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    33
\renewcommand{\isamarkupsection}[1]{\subsubsection{#1}}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    34
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    35
%remove spaces from the isabelle environment (trivlist makes them too large)
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    36
\renewenvironment{isabelle}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    37
{\begin{isabellebody}}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    38
{\end{isabellebody}}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    39
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    40
\begin{document}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    41
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    42
\title{Java Source and Bytecode Formalizations in Isabelle: Bali\\
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    43
  {\large -- VerifiCard Project Deliverables -- }}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    44
\author{Gerwin Klein \and Tobias Nipkow \and David von Oheimb \and
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    45
  Leonor Prensa Nieto \and Norbert Schirmer \and Martin Strecker}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    46
\maketitle
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    47
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    48
\tableofcontents
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    49
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    50
\parindent 0pt\parskip 0.5ex
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    51
\chapter{Overview}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    52
These theories, called Bali,  model and analyse different aspects of the 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    53
JavaCard \textbf{source language}. 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    54
The basis is an abstract model of the JavaCard source language. 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    55
On it, a type system, an operational semantics and an axiomatic semantics 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    56
(Hoare logic) are built. The execution of a wellformed program (with respect to
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    57
the type system) according to the operational semantics is proved to be 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    58
typesafe. The axiomatic semantics is proved to be sound and relative complete 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    59
with respect to the operational semantics.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    60
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    61
We have modelled large parts of the original JavaCard source language. It models
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    62
features such as:
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    63
\begin{itemize}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    64
\item The basic ``primitive types'' of Java 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    65
\item Classes and related concepts 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    66
\item Class fields and methods
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    67
\item Instance fields and methods
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    68
\item Interfaces and related concepts 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    69
\item Arrays
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    70
\item Static initialisation
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    71
\item Static overloading of fields and methods
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    72
\item Inheritance, overriding and hiding of methods, dynamic binding
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    73
\item All cases of abrupt termination
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    74
      \begin{itemize}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    75
        \item Exception throwing and handling
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    76
        \item \texttt{break}, \texttt{continue} and \texttt{return} 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    77
      \end{itemize}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    78
\item Packages
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    79
\item Access Modifiers (\texttt{private}, \texttt{protected}, \texttt{public})
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    80
\end{itemize}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    81
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    82
The following features are missing in Bali wrt.{} JavaCard:
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    83
\begin{itemize}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    84
\item Some primitive types (\texttt{byte, short})
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    85
\item Most numeric operations, syntactic variants of statements
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    86
  (\texttt{do}-loop, \texttt{for}-loop)
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    87
\item A ``definite assignment'' check
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    88
\end{itemize}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    89
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    90
In addition, features are missing that are not part of the JavaCard
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    91
language, such as multithreading and garbage collection. No attempt
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    92
has been made to model peculiarities of JavaCard such as the applet
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    93
firewall or the transaction mechanism.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    94
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    95
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    96
Overview of the theories:
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    97
\begin{description}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    98
\item [Basis.thy] 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
    99
Some basic definitions and settings not specific to JavaCard but missing in HOL.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   100
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   101
\item [Table.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   102
Definition and some properties of a lookup table to map various names 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   103
(like class names or method names) to some content (like classes or methods).
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   104
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   105
\item[Name.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   106
Definition of various names (class names, variable names, package names,...)
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   107
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   108
\item[Value.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   109
JavaCard expression values (Boolean, Integer, Addresses,...)
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   110
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   111
\item[Type.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   112
JavaCard types. Primitive types (Boolean, Integer,...) and reference types 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   113
(Classes, Interfaces, Arrays,...)
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   114
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   115
\item[Term.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   116
JavaCard terms. Variables, expressions and statements.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   117
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   118
\item[Decl.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   119
Class, interface and program declarations. Recursion operators for the
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   120
class and the interface hierarchy. 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   121
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   122
\item[TypeRel.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   123
Various relations on types like the subclass-, subinterface-, widening-, 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   124
narrowing- and casting-relation.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   125
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   126
\item[DeclConcepts.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   127
Advanced concepts on the class and interface hierarchy like inheritance, 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   128
overriding, hiding, accessibility of types and members according to the access 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   129
modifiers, method lookup.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   130
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   131
\item[WellType.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   132
Typesystem on the JavaCard term level.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   133
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   134
\item[WellForm.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   135
Typesystem on the JavaCard class, interface and program level.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   136
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   137
\item[State.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   138
The program state (like object store) for the execution of JavaCard.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   139
Abrupt completion (exceptions, break, continue, return) is modelled as flag
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   140
inside the state.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   141
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   142
\item[Eval.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   143
Operational (big step) semantics for JavaCard.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   144
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   145
\item[Example.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   146
An concrete example of a JavaCard program to validate the typesystem and the
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   147
operational semantics.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   148
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   149
\item[Conform.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   150
Conformance predicate for states. When does an execution state conform to the
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   151
static types of the program given by the typesystem.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   152
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   153
\item[TypeSafe.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   154
Typesafety proof of the execution of JavaCard. ''Welltyped programs don't go
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   155
wrong'' or more technical: The execution of a welltyped JavaCard program 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   156
preserves the conformance of execution states.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   157
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   158
\item[Evaln.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   159
Copy of the operational semantics given in Eval.thy expanded with an annotation
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   160
for the maximal recursive depth. The semantics is not altered. The annotation
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   161
is needed for the soundness proof of the axiomatic semantics.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   162
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   163
\item[AxSem.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   164
An axiomatic semantics (Hoare logic) for JavaCard.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   165
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   166
\item[AxSound.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   167
The soundness proof of the axiomatic semantics with respect to the operational
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   168
semantics.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   169
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   170
\item[AxCompl.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   171
The proof of (relative) completeness of the axiomatic semantics with respect
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   172
to the operational semantics. 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   173
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   174
\item[AxExample.thy]
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   175
An concrete example of the axiomatic semantics at work, applied to prove 
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   176
some properties of the JavaCard example given in Example.thy.
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   177
\end{description}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   178
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   179
% include generated text of all theories
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   180
\chapter{Basis.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   181
\input{../generated/Basis.tex}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   182
\chapter{Table.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   183
\input{../generated/Table.tex}    
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   184
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   185
\chapter{Name.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   186
\input{../generated/Name.tex}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   187
\chapter{Value.thy}     
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   188
\input{../generated/Value.tex}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   189
\chapter{Type.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   190
\input{../generated/Type.tex}      
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   191
\chapter{Term.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   192
\input{../generated/Term.tex}     
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   193
\chapter{Decl.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   194
\input{../generated/Decl.tex}          
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   195
\chapter{TypeRel.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   196
\input{../generated/TypeRel.tex}   
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   197
\chapter{DeclConcepts.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   198
\input{../generated/DeclConcepts.tex}  
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   199
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   200
\chapter{WellType.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   201
\input{../generated/WellType.tex}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   202
\chapter{WellForm.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   203
\input{../generated/WellForm.tex}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   204
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   205
\chapter{State.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   206
\input{../generated/State.tex}    
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   207
\chapter{Eval.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   208
\input{../generated/Eval.tex}          
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   209
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   210
\chapter{Example.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   211
\input{../generated/Example.tex}  
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   212
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   213
\chapter{Conform.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   214
\input{../generated/Conform.tex}       
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   215
\chapter{TypeSafe.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   216
\input{../generated/TypeSafe.tex}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   217
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   218
\chapter{Evaln.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   219
\input{../generated/Evaln.tex}         
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   220
\chapter{AxSem.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   221
\input{../generated/AxSem.tex}      
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   222
\chapter{AxSound.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   223
\input{../generated/AxSound.tex}    
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   224
\chapter{AxCompl.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   225
\input{../generated/AxCompl.tex}    
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   226
\chapter{AxExample.thy}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   227
\input{../generated/AxExample.tex}  
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   228
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   229
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   230
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   231
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   232
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   233
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   234
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   235
%\bibliographystyle{abbrv}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   236
%\bibliography{root}
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   237
00d4a435777f Isabelle/Bali sources;
schirmer
parents:
diff changeset
   238
\end{document}