@incollection{'MC7',
title = {{Proving Termination Using Dependent Types: the Case of Xor-Terms} },
author = {Monin, Jean-Fran\c{c}ois and Courant, Judica\"el},
month = {APR},
year = {2007},
booktitle = {{Trends in Functional Programming 7}},
chapter = {1},
address = {Bristol, UK / Chicago, USA},
pages = {1-18},
publisher = {Intellect},
team = {PACSS},
ps = {Docs/http://www-verimag.imag.fr/~monin/Publis/tfp06.ps},
pdf = {Docs/http://www-verimag.imag.fr/~monin/Publis/tfp06.pdf},
abstract = {We study a normalization function in an algebra of terms quotiented by an associative, commutative and involutive operator (logical xor). This study is motivated by the formal verification of cryptographic systems, where a normalization function for xor-terms turns out to play a key role. Such a function is easy to define using general recursion. However, as it is to be used in a type theoretic proof assistant, we also need a proof termination of this function. Instead of using a clever mixture of various rewriting orderings, we follow an approach involving the power of Type Theory with dependent types. The results are to be applied in the proof of the security API described in~\cite{courantmonin06wits}.},
}