doc-src/isac/mlehnfeld/presentation.tex
branchdecompose-isar
changeset 42031 95abe93a41d2
parent 42030 bc8a1d08f0a4
child 42032 6e3504221cac
     1.1 --- a/doc-src/isac/mlehnfeld/presentation.tex	Sat May 28 02:55:36 2011 +0200
     1.2 +++ b/doc-src/isac/mlehnfeld/presentation.tex	Sat May 28 21:41:12 2011 +0200
     1.3 @@ -157,11 +157,12 @@
     1.4      \item theories too general
     1.5      \item not capable of type inference
     1.6      \item replace function \texttt{parseNEW}
     1.7 +    \item assumptions \& environment $\rightarrow$ context
     1.8      \end{itemize}
     1.9  \end{frame}
    1.10  
    1.11  \begin{frame}
    1.12 -  \frametitle{Introduction of Isabelle Contexts}
    1.13 +  \frametitle{Code Snippets: \texttt{parse}}
    1.14      \texttt{\tiny{
    1.15        \begin{tabbing}
    1.16  xx\=xx\=xx\=xx\=\kill
    1.17 @@ -173,12 +174,41 @@
    1.18  \\~\\~\\
    1.19  fun parseNEW ctxt str = SOME (Syntax.read\_term ctxt str |> numbers\_to\_string)\\
    1.20  \>\>\>handle \_ => NONE;
    1.21 -\\~\\~\\
    1.22 +      \end{tabbing}
    1.23 +    }}
    1.24 +\end{frame}
    1.25 +
    1.26 +
    1.27 +\begin{frame}
    1.28 +  \frametitle{Code Snippets: context data}
    1.29 +    \texttt{\tiny{
    1.30 +      \begin{tabbing}
    1.31 +xx\=xx\=xx\=xx\=\kill
    1.32 +datatype Isac\_Ctxt =\\
    1.33 +\>\>Env of term * term\\
    1.34 +\>| Asm of term;\\
    1.35 +\\
    1.36 +structure ContextData = Proof\_Data\\
    1.37 +\>~(type T = Isac\_Ctxt list\\
    1.38 +\>\>fun init \_ = []);\\
    1.39 +\\
    1.40  local\\
    1.41  \>fun insert\_ctxt data = ContextData.map (fn xs => distinct (data@xs));\\
    1.42  in\\
    1.43  \>fun insert\_assumptions asms = map (fn t => Asm t) asms |> insert\_ctxt;\\
    1.44  \>fun insert\_environments envs = map (fn t => Env t) envs |> insert\_ctxt;\\
    1.45 +end\\
    1.46 +\\
    1.47 +local\\
    1.48 +\>fun unpack\_asms (Asm t::ts) = t::(unpack\_asms ts)\\
    1.49 +\>\>| unpack\_asms (Env \_::ts) = unpack\_asms ts\\
    1.50 +\>\>| unpack\_asms [] = [];\\
    1.51 +\>fun unpack\_envs (Env t::ts) = t::(unpack\_envs ts)\\
    1.52 +\>\>| unpack\_envs (Asm \_::ts) = unpack\_envs ts\\
    1.53 +\>\>| unpack\_envs [] = [];\\
    1.54 +in\\
    1.55 +\>fun get\_assumptions ctxt = ContextData.get ctxt |> unpack\_asms;\\
    1.56 +\>fun get\_environments ctxt = ContextData.get ctxt |> unpack\_envs;\\
    1.57  end
    1.58        \end{tabbing}
    1.59      }}
    1.60 @@ -186,7 +216,7 @@
    1.61  
    1.62  \subsection[Redesign]{Redesign of Type Inference in \isac}
    1.63  \begin{frame}
    1.64 -  \frametitle{Redesign of type inference in \isac}
    1.65 +  \frametitle{Redesign of Type Inference in \isac}
    1.66      \begin{itemize}
    1.67      \item use context type inference
    1.68      \item parsing input (specification \& user input)
    1.69 @@ -195,6 +225,18 @@
    1.70      \end{itemize}
    1.71  \end{frame}
    1.72  
    1.73 +\begin{frame}
    1.74 +  \frametitle{Lines of Code}
    1.75 +    \begin{tabular}{lr}
    1.76 +      src/ & 1700 k \\
    1.77 +      src/Pure/ & 70 k \\
    1.78 +      src/Provers/ & 8 k \\
    1.79 +      src/Tools/ & 800 k \\
    1.80 +      src/isac/ & 37 k \\
    1.81 +      src/isac/Knowledge & 16 k \\
    1.82 +    \end{tabular}
    1.83 +\end{frame}
    1.84 +
    1.85  \subsection[Code Improvement]{Improvement of functional code}
    1.86  \begin{frame}
    1.87    \frametitle{Improvement of functional code}
    1.88 @@ -265,13 +307,18 @@
    1.89      \end{itemize}
    1.90  \end{frame}
    1.91  
    1.92 +\begin{frame}
    1.93 +  \frametitle{jedit demonstration}
    1.94 +  DEMO
    1.95 +\end{frame}
    1.96 +
    1.97  \section[Problems]{Problems encountered in the project}
    1.98  \begin{frame}
    1.99    \frametitle{Problems encountered in the project}
   1.100      \begin{itemize}
   1.101      \item publication of new Isabelle release
   1.102      \item amount of code in Isabelle and \isac
   1.103 -    \item changes scattered throughout the code
   1.104 +    \item changes scattered throughout the code ($\rightarrow$ grep)
   1.105      \end{itemize}
   1.106  \end{frame}
   1.107