src/HOL/Statespace/document/root.tex
author wenzelm
Sat, 17 Dec 2011 13:08:03 +0100
changeset 45909 6fe61da4c467
parent 45358 4849133d7a78
child 73404 299f6a8faccc
permissions -rw-r--r--
tuned signature;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
25171
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     1
\documentclass[11pt,a4paper]{article}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     2
\usepackage{isabelle,isabellesym}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     3
% this should be the last package used
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     4
\usepackage{pdfsetup}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     5
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     6
% urls in roman style, theory text in math-similar italics
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     7
\urlstyle{rm}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     8
\isabellestyle{it}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
     9
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    10
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    11
\begin{document}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    12
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    13
\title{State Spaces: The Locale Way}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    14
\author{Norbert Schirmer}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    15
\maketitle
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    16
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    17
\tableofcontents
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    18
25174
d70d6dbc3a60 be explicit about .ML files;
wenzelm
parents: 25171
diff changeset
    19
\parindent 0pt\parskip 0.5ex
25171
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    20
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    21
\section{Introduction}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    22
45358
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    23
These theories introduce a new command called \isacommand{statespace}.
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    24
It's usage is similar to \isacommand{record}s. However, the command
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    25
does not introduce a new type but an abstract specification based on
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    26
the locale infrastructure. This leads to extra flexibility in
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    27
composing state space components, in particular multiple inheritance
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    28
and renaming of components.
25171
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    29
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    30
The state space infrastructure basically manages the following things:
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    31
\begin{itemize}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    32
\item distinctness of field names
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    33
\item projections~/ injections from~/ to an abstract \emph{value} type
45358
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    34
\item syntax translations for lookup and update, hiding the
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    35
  projections and injections
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    36
\item simplification procedure for lookups~/ updates, similar to
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    37
  records
25171
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    38
\end{itemize}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    39
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    40
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    41
\paragraph{Overview}
45358
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    42
In Section \ref{sec:DistinctTreeProver} we define distinctness of the
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    43
nodes in a binary tree and provide the basic prover tools to support
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    44
efficient distinctness reasoning for field names managed by state
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    45
spaces. The state is represented as a function from (abstract) names
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    46
to (abstract) values as introduced in Section \ref{sec:StateFun}. The
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    47
basic setup for state spaces is in Section
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    48
\ref{sec:StateSpaceLocale}. Some syntax for lookup and updates is
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    49
added in Section \ref{sec:StateSpaceSyntax}. Finally Section
4849133d7a78 tuned document;
wenzelm
parents: 40729
diff changeset
    50
\ref{sec:Examples} explains the usage of state spaces by examples.
25171
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    51
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    52
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    53
% generated text of all theories
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    54
\input{session}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    55
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    56
% optional bibliography
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    57
%\bibliographystyle{abbrv}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    58
%\bibliography{root}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    59
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    60
\end{document}
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    61
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    62
%%% Local Variables:
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    63
%%% mode: latex
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    64
%%% TeX-master: t
4a9c25bffc9b added Statespace library
schirmer
parents:
diff changeset
    65
%%% End: