slides07.tex
author Christian Urban <urbanc@in.tum.de>
Tue, 13 Nov 2012 09:05:52 +0000
changeset 66 2895a7550754
parent 65 8d3c4efb91b3
child 67 2522dea979d0
permissions -rw-r--r--
added
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
65
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     1
\documentclass[dvipsnames,14pt,t]{beamer}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     2
\usepackage{proof}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     3
\usepackage{beamerthemeplainculight}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     4
\usepackage[T1]{fontenc}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     5
\usepackage[latin1]{inputenc}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     6
\usepackage{mathpartir}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     7
\usepackage{isabelle}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     8
\usepackage{isabellesym}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     9
\usepackage[absolute,overlay]{textpos}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
\usepackage{ifthen}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    11
\usepackage{tikz}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    12
\usepackage{courier}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    13
\usepackage{listings}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    14
\usetikzlibrary{arrows}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    15
\usetikzlibrary{positioning}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    16
\usetikzlibrary{calc}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    17
\usepackage{graphicx} 
66
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
    18
\usetikzlibrary{shapes}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
    19
\usetikzlibrary{shadows}
65
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    20
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    21
\isabellestyle{rm}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    22
\renewcommand{\isastyle}{\rm}%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    23
\renewcommand{\isastyleminor}{\rm}%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    24
\renewcommand{\isastylescript}{\footnotesize\rm\slshape}%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    25
\renewcommand{\isatagproof}{}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    26
\renewcommand{\endisatagproof}{}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    27
\renewcommand{\isamarkupcmt}[1]{#1}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    28
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    29
% Isabelle characters
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    30
\renewcommand{\isacharunderscore}{\_}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    31
\renewcommand{\isacharbar}{\isamath{\mid}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    32
\renewcommand{\isasymiota}{}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    33
\renewcommand{\isacharbraceleft}{\{}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    34
\renewcommand{\isacharbraceright}{\}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    35
\renewcommand{\isacharless}{$\langle$}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    36
\renewcommand{\isachargreater}{$\rangle$}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    37
\renewcommand{\isasymsharp}{\isamath{\#}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    38
\renewcommand{\isasymdots}{\isamath{...}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    39
\renewcommand{\isasymbullet}{\act}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    40
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    42
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    43
\definecolor{javared}{rgb}{0.6,0,0} % for strings
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    44
\definecolor{javagreen}{rgb}{0.25,0.5,0.35} % comments
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    45
\definecolor{javapurple}{rgb}{0.5,0,0.35} % keywords
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    46
\definecolor{javadocblue}{rgb}{0.25,0.35,0.75} % javadoc
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    47
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    48
\lstset{language=Java,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    49
	basicstyle=\ttfamily,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    50
	keywordstyle=\color{javapurple}\bfseries,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    51
	stringstyle=\color{javagreen},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    52
	commentstyle=\color{javagreen},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    53
	morecomment=[s][\color{javadocblue}]{/**}{*/},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    54
	numbers=left,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    55
	numberstyle=\tiny\color{black},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    56
	stepnumber=1,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    57
	numbersep=10pt,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    58
	tabsize=2,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    59
	showspaces=false,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    60
	showstringspaces=false}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    61
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    62
\lstdefinelanguage{scala}{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    63
  morekeywords={abstract,case,catch,class,def,%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    64
    do,else,extends,false,final,finally,%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    65
    for,if,implicit,import,match,mixin,%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    66
    new,null,object,override,package,%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    67
    private,protected,requires,return,sealed,%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    68
    super,this,throw,trait,true,try,%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    69
    type,val,var,while,with,yield},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    70
  otherkeywords={=>,<-,<\%,<:,>:,\#,@},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    71
  sensitive=true,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    72
  morecomment=[l]{//},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    73
  morecomment=[n]{/*}{*/},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    74
  morestring=[b]",
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    75
  morestring=[b]',
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    76
  morestring=[b]"""
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    77
}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    78
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    79
\lstset{language=Scala,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    80
	basicstyle=\ttfamily,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    81
	keywordstyle=\color{javapurple}\bfseries,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    82
	stringstyle=\color{javagreen},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    83
	commentstyle=\color{javagreen},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    84
	morecomment=[s][\color{javadocblue}]{/**}{*/},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    85
	numbers=left,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    86
	numberstyle=\tiny\color{black},
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    87
	stepnumber=1,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    88
	numbersep=10pt,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    89
	tabsize=2,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    90
	showspaces=false,
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    91
	showstringspaces=false}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    92
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    93
% beamer stuff 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    94
\renewcommand{\slidecaption}{APP 07, King's College London, 13 November 2012}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    95
\newcommand{\dn}{\stackrel{\mbox{\scriptsize def}}{=}}% for definitions
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    96
\newcommand{\bl}[1]{\textcolor{blue}{#1}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    97
\begin{document}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    98
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    99
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   100
\mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   101
\begin{frame}<1>[t]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   102
\frametitle{%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   103
  \begin{tabular}{@ {}c@ {}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   104
  \\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   105
  \LARGE Access Control and \\[-3mm] 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   106
  \LARGE Privacy Policies (7)\\[-6mm] 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   107
  \end{tabular}}\bigskip\bigskip\bigskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   108
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   109
  %\begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   110
  %\includegraphics[scale=1.3]{pics/barrier.jpg}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   111
  %\end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   112
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   113
\normalsize
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   114
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   115
  \begin{tabular}{ll}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   116
  Email:  & christian.urban at kcl.ac.uk\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   117
  Of$\!$fice: & S1.27 (1st floor Strand Building)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   118
  Slides: & KEATS (also homework is there)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   119
  \end{tabular}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   120
  \end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   121
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   122
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   123
\end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   124
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   125
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   126
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   127
\mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   128
\begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   129
\frametitle{Judgements}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   130
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   131
\begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   132
\begin{tikzpicture}[scale=1]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   133
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   134
  \draw (0.0,0.0) node {\LARGE \bl{$\Gamma \vdash F$}};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   135
  \onslide<2->{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   136
  \draw (-1,-0.3) node (X) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   137
  \draw (-2.0,-2.0) node (Y) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   138
  \draw (0.7,-3) node {\begin{tabular}{l}Gamma\\stands for a collection of formulas\\(``assumptions'')\end{tabular}};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   139
  \draw[red, ->, line width = 2mm] (Y) -- (X);
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   140
 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   141
  \draw (1.2,-0.1) node (X1) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   142
  \draw (2.8,-0.1) node (Y1) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   143
  \draw (4.5,-0.1) node {\begin{tabular}{l}a single formula\end{tabular}};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   144
  \draw[red, ->, line width = 2mm] (Y1) -- (X1);
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   145
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   146
  \draw (-0.1,0.1) node (X2) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   147
  \draw (0.5,1.5) node (Y2) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   148
  \draw (1,1.8) node {\begin{tabular}{l}entails sign\end{tabular}};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   149
  \draw[red, ->, line width = 2mm] (Y2) -- (X2);}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   150
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   151
  \end{tikzpicture}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   152
\end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   153
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   154
\pause\pause
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   155
\footnotesize Gimel (Phoenician), Gamma (Greek), C and G (Latin), Gim (Arabic),\\[-2mm] ?? (Indian), Ge (Cyrillic) 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   156
\end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   157
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   158
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   159
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   160
\mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   161
\begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   162
\frametitle{Inference Rules}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   163
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   164
\begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   165
\begin{tikzpicture}[scale=1]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   166
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   167
  \draw (0.0,0.0) node 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   168
  {\Large\bl{\infer{\Gamma \vdash F_1 \wedge F_2}{\Gamma \vdash F_1 & \Gamma \vdash F_2}}};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   169
 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   170
  \draw (-0.1,-0.7) node (X) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   171
  \draw (-0.1,-1.9) node (Y) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   172
  \draw (-0.2,-2) node {\begin{tabular}{l}conclusion\end{tabular}};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   173
  \draw[red, ->, line width = 2mm] (Y) -- (X);
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   174
 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   175
  \draw (-1,0.6) node (X2) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   176
  \draw (0.0,1.6) node (Y2) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   177
  \draw (0,1.8) node {\begin{tabular}{l}premisses\end{tabular}};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   178
  \draw[red, ->, line width = 2mm] (Y2) -- (X2);
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   179
   \draw (1,0.6) node (X3) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   180
  \draw (0.0,1.6) node (Y3) {};
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   181
  \draw[red, ->, line width = 2mm] (Y3) -- (X3);
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   182
  \end{tikzpicture}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   183
\end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   184
66
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   185
\only<2>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   186
\begin{textblock}{11}(1,13)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   187
\small
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   188
\bl{$P \,\text{says}\, F \vdash Q\,\text{says}\, F\wedge P \,\text{says}\, G $}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   189
\end{textblock}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   190
\only<3>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   191
\begin{textblock}{11}(1,13)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   192
\small
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   193
\bl{$\underbrace{P \,\text{says}\, F}_{\Gamma} \vdash \underbrace{Q\,\text{says}\, F}_{F_1} \,\wedge
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   194
        \underbrace{P \,\text{says}\, G}_{F_2} $}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   195
\end{textblock}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   196
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   197
\end{frame}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   198
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   199
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   200
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   201
\mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   202
\begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   203
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   204
\begin{center}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   205
\Large
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   206
\bl{\infer{\Gamma \vdash F_2}{\Gamma \vdash F_1\Rightarrow F_2 & \Gamma \vdash F_1}}\bigskip\bigskip\bigskip
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   207
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   208
\bl{\infer{\Gamma\vdash P\,\text{says}\, F}{\Gamma \vdash F}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   209
\end{center}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   210
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   211
\end{frame}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   212
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   213
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   214
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   215
\mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   216
\begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   217
\frametitle{Digression: Proofs in CS}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   218
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   219
Formal proofs in CS sound like science fiction?\pause{} Completely irrelevant!\pause
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   220
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   221
\begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   222
\item in 2008, verification of a small C-compiler\medskip 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   223
\item in 2010, verification of a micro-kernel operating system (approximately 8700 loc)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   224
\begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   225
\item 200k loc of proof
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   226
\item 25 - 30 person years
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   227
\item found 160 bugs in the C code (144 by the proof)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   228
\end{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   229
\end{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   230
65
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   231
\end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   232
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   233
66
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   234
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   235
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   236
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   237
  \frametitle{}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   238
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   239
  \begin{tabular}{c@ {\hspace{2mm}}c}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   240
  \\[6mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   241
  \begin{tabular}{c}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   242
  \includegraphics[scale=0.11]{harper.jpg}\\[-2mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   243
  {\footnotesize Bob Harper}\\[-2.5mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   244
  {\footnotesize (CMU)}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   245
  \end{tabular}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   246
  \begin{tabular}{c}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   247
  \includegraphics[scale=0.37]{pfenning.jpg}\\[-2mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   248
  {\footnotesize Frank Pfenning}\\[-2.5mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   249
  {\footnotesize (CMU)}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   250
  \end{tabular} &
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   251
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   252
  \begin{tabular}{p{6cm}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   253
  \raggedright
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   254
  \color{gray}{published a proof about a specification in a journal (2005),
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   255
  $\sim$31pages}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   256
  \end{tabular}\\
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   257
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   258
  \pause
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   259
  \\[0mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   260
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   261
  \begin{tabular}{c}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   262
  \includegraphics[scale=0.36]{appel.jpg}\\[-2mm] 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   263
  {\footnotesize Andrew Appel}\\[-2.5mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   264
  {\footnotesize (Princeton)}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   265
  \end{tabular} &
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   266
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   267
  \begin{tabular}{p{6cm}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   268
  \raggedright
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   269
  \color{gray}{relied on their proof in a\\ {\bf security} critical application}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   270
  \end{tabular}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   271
  \end{tabular}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   272
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   273
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   274
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   275
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   276
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   277
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   278
  \begin{frame}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   279
  \frametitle{Proof-Carrying Code}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   280
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   281
  \begin{textblock}{10}(2.5,2.2)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   282
  \begin{block}{Idea:}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   283
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   284
  \begin{tikzpicture}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   285
  \draw[help lines,cream] (0,0.2) grid (8,4);
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   286
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   287
  \draw[line width=1mm, red] (5.5,0.6) rectangle (7.5,4);
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   288
  \node[anchor=base] at (6.5,2.8) 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   289
     {\small\begin{tabular}{@ {}p{1.9cm}@ {}}\centering  user: untrusted code\end{tabular}};
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   290
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   291
  \draw[line width=1mm, red] (0.5,0.6) rectangle (2.5,4);
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   292
  \node[anchor=base] at (1.5,2.3) 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   293
     {\small\begin{tabular}{@ {}p{1.9cm}@ {}}\centering  developer ---\\ web server\end{tabular}};
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   294
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   295
  \onslide<3->{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   296
  \draw[line width=1mm, red, fill=red] (5.5,0.6) rectangle (7.5,1.8);
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   297
  \node[anchor=base,white] at (6.5,1.1) 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   298
     {\small\begin{tabular}{@ {}p{1.9cm}@ {}}\bf\centering proof- checker\end{tabular}};}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   299
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   300
  \node at (3.8,3.0) [single arrow, fill=red,text=white, minimum height=3cm]{\bf code};
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   301
  \onslide<2->{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   302
  \node at (3.8,1.3) [single arrow, fill=red,text=white, minimum height=3cm]{\bf certificate};
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   303
  \node at (3.8,1.9) {\small\color{gray}{\mbox{}\hspace{-1mm}a proof}};
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   304
  }
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   305
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   306
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   307
  \end{tikzpicture}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   308
  \end{center}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   309
  \end{block}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   310
  \end{textblock}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   311
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   312
  %\begin{textblock}{15}(2,12)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   313
  %\small
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   314
  %\begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   315
  %\item<4-> Appel's checker is $\sim$2700 lines of code (1865 loc of\\ LF definitions; 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   316
  %803 loc in C including 2 library functions)\\[-3mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   317
  %\item<5-> 167 loc in C implement a type-checker
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   318
  %\end{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   319
  %\end{textblock}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   320
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   321
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   322
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   323
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   324
 \tikzstyle{every node}=[node distance=25mm,text height=1.5ex, text depth=.25ex]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   325
  \tikzstyle{node1}=[rectangle, minimum size=10mm, rounded corners=3mm, very thick, 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   326
                     draw=black!50, top color=white, bottom color=black!20]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   327
  \tikzstyle{node2}=[rectangle, minimum size=12mm, rounded corners=3mm, very thick, 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   328
                     draw=red!70, top color=white, bottom color=red!50!black!20]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   329
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   330
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   331
  \begin{frame}<2->[squeeze]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   332
  \frametitle{} 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   333
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   334
  \begin{columns}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   335
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   336
  \begin{column}{0.8\textwidth}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   337
  \begin{textblock}{0}(1,2)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   338
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   339
  \begin{tikzpicture}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   340
  \matrix[ampersand replacement=\&,column sep=7mm, row sep=5mm]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   341
  { \&[-10mm] 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   342
    \node (def1)   [node1] {\large\hspace{1mm}Spec\hspace{1mm}\mbox{}}; \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   343
    \node (proof1) [node1] {\large Proof}; \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   344
    \node (alg1)   [node1] {\large\hspace{1mm}Alg\hspace{1mm}\mbox{}}; \\
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   345
    
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   346
    \onslide<4->{\node {\begin{tabular}{c}\small 1st\\[-2.5mm] \footnotesize solution\end{tabular}};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   347
    \onslide<4->{\node (def2)   [node2] {\large Spec$^\text{+ex}$};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   348
    \onslide<4->{\node (proof2) [node1] {\large Proof};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   349
    \onslide<4->{\node (alg2)   [node1] {\large\hspace{1mm}Alg\hspace{1mm}\mbox{}};} \\
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   350
     
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   351
    \onslide<5->{\node {\begin{tabular}{c}\small 2nd\\[-2.5mm] \footnotesize solution\end{tabular}};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   352
    \onslide<5->{\node (def3)   [node1] {\large\hspace{1mm}Spec\hspace{1mm}\mbox{}};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   353
    \onslide<5->{\node (proof3) [node1] {\large Proof};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   354
    \onslide<5->{\node (alg3)   [node2] {\large Alg$^\text{-ex}$};} \\
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   355
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   356
    \onslide<6->{\node {\begin{tabular}{c}\small 3rd\\[-2.5mm] \footnotesize solution\end{tabular}};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   357
    \onslide<6->{\node (def4)   [node1] {\large\hspace{1mm}Spec\hspace{1mm}\mbox{}};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   358
    \onslide<6->{\node (proof4) [node2] {\large\hspace{1mm}Proof\hspace{1mm}};} \&
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   359
    \onslide<6->{\node (alg4)   [node1] {\large\hspace{1mm}Alg\hspace{1mm}\mbox{}};} \\
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   360
  };
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   361
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   362
  \draw[->,black!50,line width=2mm] (proof1) -- (def1);
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   363
  \draw[->,black!50,line width=2mm] (proof1) -- (alg1);
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   364
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   365
  \onslide<4->{\draw[->,black!50,line width=2mm] (proof2) -- (def2);}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   366
  \onslide<4->{\draw[->,black!50,line width=2mm] (proof2) -- (alg2);}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   367
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   368
  \onslide<5->{\draw[->,black!50,line width=2mm] (proof3) -- (def3);}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   369
  \onslide<5->{\draw[->,black!50,line width=2mm] (proof3) -- (alg3);}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   370
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   371
  \onslide<6->{\draw[->,black!50,line width=2mm] (proof4) -- (def4);}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   372
  \onslide<6->{\draw[->,black!50,line width=2mm] (proof4) -- (alg4);}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   373
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   374
  \onslide<3->{\draw[white,line width=1mm] (1.1,3.2) -- (0.9,2.85) -- (1.1,2.35) -- (0.9,2.0);} 
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   375
  \end{tikzpicture}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   376
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   377
  \end{textblock}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   378
  \end{column}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   379
  \end{columns}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   380
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   381
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   382
  \begin{textblock}{3}(12,3.6)
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   383
  \onslide<4->{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   384
  \begin{tikzpicture}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   385
  \node at (0,0) [single arrow, shape border rotate=270, fill=red,text=white]{2h};
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   386
  \end{tikzpicture}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   387
  \end{textblock}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   388
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   389
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   390
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   391
     
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   392
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   393
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   394
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   395
  \frametitle{Mars Pathfinder Mission 1997}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   396
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   397
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   398
  \includegraphics[scale=0.15]{marspath1.png}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   399
  \includegraphics[scale=0.16]{marspath3.png}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   400
  \includegraphics[scale=0.3]{marsrover.png}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   401
  \end{center}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   402
  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   403
  \begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   404
  \item despite NASA's famous testing procedure, the lander crashed frequently on Mars
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   405
  \item problem was an algorithm not used in the OS
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   406
  \end{itemize}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   407
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   408
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   409
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
Christian Urban <urbanc@in.tum.de>
parents: 65
diff changeset
   410
65
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   411
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   412
\mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   413
\begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   414
\frametitle{Trusted Third Party}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   415
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   416
Simple protocol for establishing a secure connection via a mutually
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   417
trusted 3rd party (server):
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   418
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   419
\begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   420
\begin{tabular}{@ {\hspace{-7mm}}l@{\hspace{2mm}}r@ {\hspace{1mm}}l}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   421
Message 1 & \bl{$A \rightarrow S :$} & \bl{$A, B$}\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   422
Message 2 & \bl{$S \rightarrow A :$} & \bl{$\{K_{AB}\}_{K_{AS}}$} and \bl{$\{\{K_{AB}\}_{K_{BS}} \}_{K_{AS}}$}\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   423
Message 3 & \bl{$A \rightarrow B :$} & \bl{$\{K_{AB}\}_{K_{BS}} $}\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   424
Message 4 & \bl{$A \rightarrow B :$} & \bl{$\{m\}_{K_{AB}}$}\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   425
\end{tabular}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   426
\end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   427
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   428
\end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   429
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   430
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   431
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   432
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   433
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   434
  \frametitle{Encrypted Messages}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   435
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   436
  \begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   437
  \item Alice sends a message \bl{$m$}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   438
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   439
  \bl{Alice says $m$}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   440
  \end{center}\medskip\pause
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   441
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   442
  \item Alice sends an encrypted message \bl{$m$}\\ (with key \bl{$K$})
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   443
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   444
  \bl{Alice says $\{m\}_K$}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   445
  \end{center}\medskip\pause
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   446
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   447
  \item Decryption of Alice's message\smallskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   448
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   449
  \bl{\mbox{\infer{\Gamma \vdash \text{Alice}\;\text{says}\;m}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   450
              {\Gamma \vdash \text{Alice}\;\text{says}\;\{m\}_K & \Gamma \vdash \text{Alice}\,\text{says}\,K}}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   451
  \end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   452
  \end{itemize}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   453
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   454
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   455
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   456
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   457
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   458
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   459
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   460
  \frametitle{Encryption}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   461
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   462
  \begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   463
  \item Encryption of a message\smallskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   464
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   465
  \bl{\mbox{\infer{\Gamma \vdash \text{Alice}\;\text{says}\;\{m\}_K}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   466
              {\Gamma \vdash \text{Alice}\;\text{says}\;m & \Gamma \vdash \text{Alice}\,\text{says}\,K}}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   467
  \end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   468
  \end{itemize}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   469
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   470
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   471
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   472
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   473
    
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   474
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   475
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   476
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   477
  \frametitle{Trusted Third Party}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   478
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   479
  \begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   480
  \item Alice calls Sam for a key to communicate with Bob
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   481
  \item Sam responds with a key that Alice can read and a key Bob can read (pre-shared)
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   482
  \item Alice sends the message encrypted with the key and the second key it recieved
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   483
  \end{itemize}\bigskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   484
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   485
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   486
  \bl{\begin{tabular}{lcl}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   487
  $A$ sends $S$ &:& $\textit{Connect}(A,B)$\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   488
  $S$ sends $A$ &:& $\{K_{AB}\}_{K_{AS}}$ \textcolor{black}{and} $\{\{K_{AB}\}_{K_{BS}}\}_{K_{AS}}$\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   489
  $A$ sends $B$ &:& $\{K_{AB}\}_{K_{BS}}$\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   490
  $A$ sends $B$ &:& $\{m\}_{K_{AB}}$
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   491
  \end{tabular}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   492
  \end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   493
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   494
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   495
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%      
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   496
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   497
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   498
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   499
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   500
  \frametitle{Sending Rule}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   501
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   502
  \bl{\begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   503
  \mbox{\infer{\Gamma \vdash Q \;\textit{says}\; F}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   504
              {\Gamma \vdash P \;\textit{says}\; F & \Gamma \vdash P \;\textit{sends}\; Q : F}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   505
  \end{center}}\bigskip\pause
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   506
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   507
  \bl{$P \,\text{sends}\, Q : F \dn$}\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   508
  \hspace{6mm}\bl{$(P \,\text{says}\, F) \Rightarrow (Q \,\text{says}\, F)$}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   509
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   510
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   511
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   512
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   513
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   514
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   515
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   516
  \frametitle{Trusted Third Party}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   517
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   518
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   519
  \bl{\begin{tabular}{l}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   520
  $A$ sends $S$ : $\textit{Connect}(A,B)$\\  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   521
  \bl{$S \,\text{says}\, (\textit{Connect}(A,B) \Rightarrow$}\\ 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   522
  \hspace{2.5cm}\bl{$\{K_{AB}\}_{K_{AS}} \wedge 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   523
  \{\{K_{AB}\}_{K_{BS}}\}_{K_{AS}})$}\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   524
 $S$ sends $A$ : $\{K_{AB}\}_{K_{AS}}$ \bl{$\wedge$} $\{\{K_{AB}\}_{K_{BS}}\}_{K_{AS}}$\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   525
  $A$ sends $B$ : $\{K_{AB}\}_{K_{BS}}$\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   526
  $A$ sends $B$ : $\{m\}_{K_{AB}}$
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   527
  \end{tabular}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   528
  \end{center}\bigskip\pause
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   529
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   530
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   531
  \bl{$\Gamma \vdash B \,\text{says} \, m$}?
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   532
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   533
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   534
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   535
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   536
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   537
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   538
  \frametitle{Challenge-Response Protocol}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   539
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   540
 \begin{itemize}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   541
 \item an engine \bl{$E$} and a transponder \bl{$T$} share a key \bl{$K$}\bigskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   542
 \item \bl{$E$} sends out a \alert{nonce} \bl{$N$} (random number) to \bl{$T$}\bigskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   543
 \item \bl{$T$} responds with \bl{$\{N\}_K$}\bigskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   544
 \item if \bl{$E$} receives  \bl{$\{N\}_K$} from \bl{$T$} then starts engine
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   545
 \end{itemize}	
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   546
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   547
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   548
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   549
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   550
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   551
  \mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   552
  \begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   553
  \frametitle{Challenge-Response Protokol}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   554
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   555
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   556
  \bl{\begin{tabular}{l}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   557
  $E \;\text{says}\; N$\hfill(start)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   558
  $E \;\text{sends}\; T : N$\hfill(challenge)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   559
  $(T \;\text{says}\; N) \Rightarrow (T \;\text{sends}\; E : \{N\}_K \wedge$\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   560
  \hspace{3.5cm} $T \;\text{sends}\; E : \text{Id}(T))$\;\;\;\hfill(response)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   561
 $T \;\text{says}\; K$\hfill(key)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   562
 $T \;\text{says}\; \text{Id}(T)$\hfill(identity)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   563
  $(E \;\text{says}\; \{N\}_K \wedge E \;\text{says}\; \text{Id}(T)) \Rightarrow$\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   564
   \hspace{5cm}$ \text{start\_engine}(T)$\hfill(engine)\\
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   565
  \end{tabular}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   566
  \end{center}\bigskip 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   567
  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   568
  \bl{$\Gamma \vdash \text{start\_engine}(T)$}?
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   569
  \end{frame}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   570
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   571
     
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   572
\end{document}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   573
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   574
%%% Local Variables:  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   575
%%% mode: latex
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   576
%%% TeX-master: t
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   577
%%% End: 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   578