
diff -r 2d30c74ba67f -r 9128b9440e93 thys/notes.tex
--- a/thys/notes.tex	Thu Feb 26 16:35:10 2015 +0000
+++ b/thys/notes.tex	Wed Mar 04 19:34:47 2015 +0000
@@ -1,6 +1,7 @@
 \documentclass[11pt]{article}
 \usepackage[left]{lineno}
 \usepackage{amsmath}
+\usepackage{stmaryrd}
 
 \begin{document}
 %%%\linenumbers
@@ -377,6 +378,67 @@
 
 \subsection*{Problems in the paper proof}
 
-I cannot verify 
+I cannot verify\ldots
+
+
+
+\newpage
+\section*{Isabelle Cheat-Sheet}
+ 
+\begin{itemize} 
+\item The main notion in Isabelle is a \emph{theorem}.
+      Definitions, inductive predicates and recursive
+      functions all have underlying theorems. If a definition
+      is called \texttt{foo}, then the theorem will be called
+      \texttt{foo\_def}. Take a recursive function, say
+      \texttt{bar}, it will have a theorem that is called
+      \texttt{bar.simps} and will be added to the simplifier.
+      That means the simplifier will automatically 
+      Inductive predicates called \texttt{baz} will be called
+      \texttt{baz.intros}. For inductive predicates, there are
+      also theorems \texttt{baz.induct} and
+      \texttt{baz.cases}.    
+
+\item A \emph{goal-state} consists of one or more subgoals. If
+      there are \texttt{No more subgoals!} then the theorem is
+      proved. Each subgoal is of the form
+  
+      \[
+      \llbracket \ldots{}premises\ldots \rrbracket \Longrightarrow 
+      conclusion
+      \]  
+  
+      \noindent 
+      where $premises$ and $conclusion$ are formulas of type 
+      \texttt{bool}.
+      
+\item There are three low-level methods for applying one or
+      more theorem to a subgoal, called \texttt{rule},
+      \texttt{drule} and \texttt{erule}. The first applies a 
+      theorem to a conclusion of a goal. For example
+      
+      \[\texttt{apply}(\texttt{rule}\;thm)
+      \]
+ 
+      If the conclusion is of the form $\_ \wedge \_$,
+      $\_ \longrightarrow \_$ and $\forall\,x. \_$ the
+      $thm$ is called
+      
+      \begin{center}
+      \begin{tabular}{lcl}
+      $\_ \wedge \_$          &  $\Rightarrow$ & $conjI$\\
+      $\_ \longrightarrow \_$ &  $\Rightarrow$ & $impI$\\
+      $\forall\,x.\_$        &  $\Rightarrow$ & $allI$
+      \end{tabular}
+      \end{center}
+       
+      Many of such rule are called intro-rules and end with 
+      an ``$I$'', or in case of inductive predicates $\_.intros$.
+      
+      
+       
+       
+\end{itemize}
+ 
 
 \end{document}  




