\UseRawInputEncoding
\documentclass[runningheads,openbib]{llncs}

\input{prelude.tex}

%\renewcommand\UrlFont{\color{blue}\rmfamily}

\begin{document}

\author{
  David Dill \and Wolfgang Grieskamp(\Envelope)\thanks{\mailname~\email{wgrieskamp@gmail.com}} \and \\ Junkil
  Park \and Shaz Qadeer \and Meng Xu \and Emma Zhong
}

\institute{Novi Research, Meta Platforms, Menlo Park, USA}
  %\\\email{\{dill,wrwg,jkpark,shaz,mengxu,emmazjy\}@fb.com}}
\authorrunning{D. Dill, W. Grieskamp et. al.}

\title{Fast and Reliable Formal Verification of Smart Contracts with the Move
  Prover\thanks{To appear in TACAS'22. This is the extended version with
    appendices.}}

\maketitle
\begin{abstract}
  The Move Prover (\MVP) is a formal verifier for smart contracts written in the
  Move programming language. \MVP has an expressive specification language, and
  is fast and reliable enough that it can be run routinely by developers and in
  integration testing.  Besides the simplicity of smart contracts and the Move
  language, three implementation approaches are responsible for the practicality
  of \MVP: (1) an alias-free memory model, (2) fine-grained invariant checking,
  and (3) monomorphization.  The entirety of the Move code for the Diem
  blockchain has been extensively specified and can be completely verified by
  \MVP in a few minutes. Changes in the Diem framework must be successfully
  verified before being integrated into the open source repository on GitHub.
  \keywords{Smart contracts \and formal verification \and Move language \and
    Diem blockchain}
\end{abstract}


\input{intro.tex}
\input{move.tex}
\input{design.tex}
\input{analysis.tex}
\input{conclusion.tex}

%\vspace{-0.5ex}
\Paragraph{Acknowledgements}

This work would not have been possible without the many contributions of the
Move platform team and collaborators.  We specifically like to thank Bob Wilson,
Clark Barrett, Dario Russi, Jack Moffitt, Jake Silverman, Mathieu Baudet,
Runtian Zhou, Sam Blackshear, Tim Zakian, Todd Nowacki, Victor Gao, and Kevin
Cheang.

\appendix
\newpage
\input{function-injection-apx.tex}
\input{corrected_example-apx.tex}

\newpage
\bibliographystyle{splncs04}
\bibliography{biblio}

\vfill

{\small\medskip\noindent{\bf Open Access} This chapter is licensed under the terms of the Creative Commons\break Attribution 4.0 International License (\url{http://creativecommons.org/licenses/by/4.0/}), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.}

{\small \spaceskip .28em plus .1em minus .1em The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material.~If material is not included in the chapter's Creative Commons license and your intended\break use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.}

\medskip\noindent\includegraphics{cc_by_4-0.eps}


\end{document}


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