Modeling Permutations in Coq for Coccinelle

  • Evelyne Contejean
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4600)


In this paper we present the part of the Coccinelle library which deals with list permutations. Indeed permutations naturally arise when formally modeling rewriting in Coq, for instance RPO with multiset status and equality modulo AC. Moreover the needed permutations are up to an equivalence relation, and may be used to inductively define the same relation (equivalence modulo RPO). This is why we introduce the notion of permutation w. r. t. an arbitrary relation. The advantages of our approach are a very simple inductive definition (with only 2 constructors), the adequacy with the mathematical definition, the ability to define a relation using recursively permutations up to this very relation, and a fine grained modularity (if R enjoys a property, so does permut R).


Recursive Call Arbitrary Relation Modeling Permutation Binary Function Symbol List Permutation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Blanqui, F., Coupet-Grimal, S., Delobel, W., Hinderer, S., Koprowski, A.: CoLoR, a Coq Library on Rewriting and termination. In: Extended Abstracts of the 8th International Workshop on Termination, WST 2006 (2006).
  2. 2.
    Boudet, A., Contejean, E.: “Syntactic” AC-unification. In: Jouannaud, J.-P. (ed.) CCL 1994. LNCS, vol. 845, pp. 136–151. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  3. 3.
    Contejean, E.: A certified AC matching algorithm. In: van Oostrom, V. (ed.) RTA 2004. LNCS, vol. 3091, pp. 70–84. Springer, Heidelberg (2004)Google Scholar
  4. 4.
  5. 5.
    Coupet-Grimal, S., Delobel, W.: Une preuve effective de la bonne fondation de l’ordre récursif multi-ensemble sur les chemins. In: Dix-septièmes Journées Francophones des Langages Applicatifs. INRIA, INRIA, (January 2006)Google Scholar
  6. 6.
    Dershowitz, N.: Orderings for term rewriting systems. Theoretical Computer Science 17(3), 279–301 (March 1982)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Dershowitz, N., Jouannaud, J.-P.: Rewrite systems. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, vol, pp. 243–320. North-Holland, Amsterdam (1990)Google Scholar
  8. 8.
    Hullot, J.-M.: Associative commutative pattern matching. In: Proc. 6th IJCAI Tokyo, vol. I, pp. 406–412 (August 1979)Google Scholar
  9. 9.
    Jouannaud, J.-P.: Syntactic theories. In: Rovan, B. (ed.) Mathematical Foundations of Computer Science, LNCS, vol. 452, Springer, Heidelberg (1990)Google Scholar
  10. 10.
    Kirchner, C., Klay, F.: Syntactic theories and unification. In: Proc. 5th IEEE Symp. Logic in Computer Science, Philadelphia (June 1990)Google Scholar
  11. 11.
    Koprowski, A.: Certified Higher-Order Recursive Path Ordering. In: Pfenning, F. (ed.) RTA 2006. LNCS, vol. 4098, pp. 227–241. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  12. 12.
    The Coq Development Team. The Coq Proof Assistant Reference Manual – Version V8.1 (July 2006)

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Evelyne Contejean
    • 1
  1. 1.Laboratoire de Recherche en Informatique, CNRS, Univ Paris-Sud, Orsay F-91405, INRIA Futurs, ProVal, Parc Orsay Université, F-91893 

Personalised recommendations