ESOP-Paper/document/root.tex
changeset 2748 6f38e357b337
parent 2637 3890483c674f
equal deleted inserted replaced
2747:a5da7b6aff8f 2748:6f38e357b337
       
     1 \documentclass{llncs}
       
     2 \usepackage{times}
       
     3 \usepackage{isabelle}
       
     4 \usepackage{isabellesym}
       
     5 \usepackage{amsmath}
       
     6 \usepackage{amssymb}
       
     7 %%\usepackage{amsthm}
       
     8 \usepackage{tikz}
       
     9 \usepackage{pgf}
       
    10 \usepackage{pdfsetup}
       
    11 \usepackage{ot1patch}
       
    12 \usepackage{times}
       
    13 \usepackage{boxedminipage}
       
    14 \usepackage{proof}
       
    15 \usepackage{setspace}
       
    16 
       
    17 \allowdisplaybreaks
       
    18 \urlstyle{rm}
       
    19 \isabellestyle{it}
       
    20 \renewcommand{\isastyleminor}{\it}%
       
    21 \renewcommand{\isastyle}{\normalsize\it}%
       
    22 
       
    23 \DeclareRobustCommand{\flqq}{\mbox{\guillemotleft}}
       
    24 \DeclareRobustCommand{\frqq}{\mbox{\guillemotright}}
       
    25 \renewcommand{\isacharunderscore}{\mbox{$\_\!\_$}}
       
    26 \renewcommand{\isasymbullet}{{\raisebox{-0.4mm}{\Large$\boldsymbol{\hspace{-0.5mm}\cdot\hspace{-0.5mm}}$}}}
       
    27 \def\dn{\,\stackrel{\mbox{\scriptsize def}}{=}\,}
       
    28 \renewcommand{\isasymequiv}{$\dn$}
       
    29 %%\renewcommand{\isasymiota}{}
       
    30 \renewcommand{\isasymxi}{$..$}
       
    31 \renewcommand{\isasymemptyset}{$\varnothing$}
       
    32 \newcommand{\isasymnotapprox}{$\not\approx$}
       
    33 \newcommand{\isasymLET}{$\mathtt{let}$}
       
    34 \newcommand{\isasymAND}{$\mathtt{and}$}
       
    35 \newcommand{\isasymIN}{$\mathtt{in}$}
       
    36 \newcommand{\isasymEND}{$\mathtt{end}$}
       
    37 \newcommand{\isasymBIND}{$\mathtt{bind}$}
       
    38 \newcommand{\isasymANIL}{$\mathtt{anil}$}
       
    39 \newcommand{\isasymACONS}{$\mathtt{acons}$}
       
    40 \newcommand{\isasymCASE}{$\mathtt{case}$}
       
    41 \newcommand{\isasymOF}{$\mathtt{of}$}
       
    42 \newcommand{\isasymAL}{\makebox[0mm][l]{$^\alpha$}}
       
    43 \newcommand{\isasymPRIME}{\makebox[0mm][l]{$'$}}
       
    44 \newcommand{\isasymFRESH}{\#}
       
    45 \newcommand{\LET}{\;\mathtt{let}\;}
       
    46 \newcommand{\IN}{\;\mathtt{in}\;}
       
    47 \newcommand{\END}{\;\mathtt{end}\;}
       
    48 \newcommand{\AND}{\;\mathtt{and}\;}
       
    49 \newcommand{\fv}{\mathit{fv}}
       
    50 
       
    51 \newcommand{\numbered}[1]{\refstepcounter{equation}{\rm(\arabic{equation})}\label{#1}}
       
    52 %----------------- theorem definitions ----------
       
    53 %%\theoremstyle{plain}
       
    54 %%\spnewtheorem{thm}[section]{Theorem}
       
    55 %%\newtheorem{property}[thm]{Property}
       
    56 %%\newtheorem{lemma}[thm]{Lemma}
       
    57 %%\spnewtheorem{defn}[theorem]{Definition}
       
    58 %%\spnewtheorem{exmple}[theorem]{Example}
       
    59 \spnewtheorem{myproperty}{Property}{\bfseries}{\rmfamily}
       
    60 %-------------------- environment definitions -----------------
       
    61 \newenvironment{proof-of}[1]{{\em Proof of #1:}}{}
       
    62 
       
    63 %\addtolength{\textwidth}{2mm}
       
    64 \addtolength{\parskip}{-0.33mm}
       
    65 \begin{document}
       
    66 
       
    67 \title{General Bindings and Alpha-Equivalence\\ in Nominal Isabelle}
       
    68 \author{Christian Urban and Cezary Kaliszyk}
       
    69 \institute{TU Munich, Germany}
       
    70 %%%{\{urbanc, kaliszyk\}@in.tum.de}
       
    71 \maketitle
       
    72 
       
    73 \begin{abstract} 
       
    74 Nominal Isabelle is a definitional extension of the Isabelle/HOL theorem
       
    75 prover. It provides a proving infrastructure for reasoning about
       
    76 programming language calculi involving named bound variables (as
       
    77 opposed to de-Bruijn indices). In this paper we present an extension of
       
    78 Nominal Isabelle for dealing with general bindings, that means
       
    79 term-constructors where multiple variables are bound at once. Such general
       
    80 bindings are ubiquitous in programming language research and only very
       
    81 poorly supported with single binders, such as lambda-abstractions. Our
       
    82 extension includes new definitions of $\alpha$-equivalence and establishes
       
    83 automatically the reasoning infrastructure for $\alpha$-equated terms. We
       
    84 also prove strong induction principles that have the usual variable
       
    85 convention already built in.
       
    86 \end{abstract}
       
    87 
       
    88 %\category{F.4.1}{subcategory}{third-level}
       
    89 
       
    90 %\terms
       
    91 %formal reasoning, programming language calculi
       
    92 
       
    93 %\keywords
       
    94 %nominal logic work, variable convention
       
    95 
       
    96 
       
    97 \input{session}
       
    98 
       
    99 \begin{spacing}{0.9}
       
   100   \bibliographystyle{plain}
       
   101   \bibliography{root}
       
   102 \end{spacing}
       
   103 
       
   104 %\pagebreak
       
   105 %\input{Appendix} 
       
   106 
       
   107 \end{document}
       
   108 
       
   109 %%% Local Variables:
       
   110 %%% mode: latex
       
   111 %%% TeX-master: t
       
   112 %%% End: