doc-src/IsarAdvanced/Classes/classes.tex
author wenzelm
Tue, 14 Oct 2008 15:16:11 +0200
changeset 28586 d238b83ba3fc
parent 28565 519b17118926
child 28714 1992553cccfe
permissions -rw-r--r--
renamed kill_all to kill, in conformance with atp_kill command; simplified/unified treatment of preferences; check_thread_manager: CRITICAL due to global ref; goal addressing via Thm.cprem_of; reduced NJ basis library stuff to bare minimum;


%% $Id$

\documentclass[12pt,a4paper,fleqn]{report}
\usepackage{latexsym,graphicx}
\usepackage[refpage]{nomencl}
\usepackage{../../iman,../../extra,../../isar,../../proof}
\usepackage{../../isabelle,../../isabellesym}
\usepackage{style}
\usepackage{../../pdfsetup}


%% setup

% hyphenation
\hyphenation{Isabelle}
\hyphenation{Isar}

% logical markup
\newcommand{\strong}[1]{{\bfseries {#1}}}
\newcommand{\qn}[1]{\emph{#1}}

% typographic conventions
\newcommand{\qt}[1]{``{#1}''}

% verbatim text
\newcommand{\isaverbatim}{\renewcommand{\baselinestretch}{1}\setlength{\baselineskip}{8pt}\fontsize{8pt}{0pt}}

% invisibility
\isadroptag{theory}

% quoted segments
\makeatletter
\isakeeptag{quote}
\newenvironment{quotesegment}{\begin{quote}\isa@parindent\parindent\parindent0pt\isa@parskip\parskip\parskip0pt}{\end{quote}}
\renewcommand{\isatagquote}{\begin{quotesegment}}
\renewcommand{\endisatagquote}{\end{quotesegment}}
\makeatother

%\renewcommand{\isasymlongleftrightarrow}{\isamath{\leftrightarrow}}
%\renewcommand{\isasymdiv}{\isamath{{}^{-1}}}
%\renewcommand{\isasymotimes}{\isamath{\circ}}


%% content

\title{\includegraphics[scale=0.5]{isabelle_isar}
  \\[4ex] Haskell-style type classes with Isabelle/Isar}
\author{\emph{Florian Haftmann}}

\begin{document}

\maketitle

\begin{abstract}
  This tutorial introduces the look-and-feel of Isar type classes
  to the end-user; Isar type classes are a convenient mechanism
  for organizing specifications, overcoming some drawbacks
  of raw axiomatic type classes. Essentially, they combine
  an operational aspect (in the manner of Haskell) with
  a logical aspect, both managed uniformly.
\end{abstract}

\thispagestyle{empty}\clearpage

\pagenumbering{roman}
\clearfirst

\input{Thy/document/Classes.tex}

\begingroup
%\tocentry{\bibname}
\bibliographystyle{plain} \small\raggedright\frenchspacing
\bibliography{../../manual}
\endgroup

\end{document}


%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t
%%% End: