2856
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
1 |
\documentclass[preprint]{sigplanconf}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
2 |
\usepackage{isabelle}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
3 |
\usepackage{isabellesym}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
4 |
\usepackage{amsmath}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
5 |
\usepackage{amssymb}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
6 |
\usepackage{pdfsetup}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
7 |
\usepackage{ot1patch}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
8 |
\usepackage{times}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
9 |
\usepackage{stmaryrd}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
10 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
11 |
\urlstyle{rm}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
12 |
\isabellestyle{it}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
13 |
\renewcommand{\isastyleminor}{\it}%
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
14 |
\renewcommand{\isastyle}{\normalsize\it}%
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
15 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
16 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
17 |
\def\dn{\,\stackrel{\mbox{\scriptsize def}}{=}\,}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
18 |
\renewcommand{\isasymequiv}{$\dn$}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
19 |
\renewcommand{\isasymemptyset}{$\varnothing$}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
20 |
\renewcommand{\isacharunderscore}{\mbox{$\_\!\_$}}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
21 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
22 |
\newcommand{\isasymcalL}{\ensuremath{\cal{L}}}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
23 |
\newcommand{\isasymbigplus}{\ensuremath{\bigplus}}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
24 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
25 |
\newcommand{\bigplus}{\mbox{\Large\bf$+$}}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
26 |
\begin{document}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
27 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
28 |
%\titlebanner{Nominal Functions} % These are ignored unless
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
29 |
%\preprintfooter{Nominal Functions} % 'preprint' option specified.
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
30 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
31 |
\title{Nominal Functions}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
32 |
\authorinfo{?}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
33 |
{?}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
34 |
{?}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
35 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
36 |
\maketitle
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
37 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
38 |
\begin{abstract}
|
2857
|
39 |
Nominal Isabelle provides an infrastructure for formal reasoning about terms
|
|
40 |
involving named bound variables. This infrastructure allows bound variables to
|
|
41 |
be analysed and manipulated directly. In this way it can mimic informal
|
|
42 |
pen-and-pencil reasoning. However, this ability makes defining functions the
|
|
43 |
most difficult aspect of the ``nominal approach''. In this paper we present a
|
|
44 |
new way of defining recursive functions over terms with bound variables. For
|
|
45 |
example, we are able to define without difficulties functions for CPS
|
|
46 |
translations or the evaluation of lambda-terms, which were previously not
|
|
47 |
definable in Nominal Isabelle. We also generalise the
|
|
48 |
freshness-condition-for-binders to general binders recently introduced in
|
|
49 |
Nominal Isabelle.
|
2856
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
50 |
\end{abstract}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
51 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
52 |
\category{CR-number}{subcategory}{third-level}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
53 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
54 |
\terms
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
55 |
term1, term2
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
56 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
57 |
\keywords
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
58 |
keyword1, keyword2
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
59 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
60 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
61 |
\input{session}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
62 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
63 |
%\bibliographystyle{plain}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
64 |
%\bibliography{root}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
65 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
66 |
\end{document}
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
67 |
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
68 |
%%% Local Variables:
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
69 |
%%% mode: latex
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
70 |
%%% TeX-master: t
|
e36beb11723c
added a stub for function paper; "isabelle make fnpaper"
Christian Urban <urbanc@in.tum.de>
parents:
diff
changeset
|
71 |
%%% End:
|