link to more complete Coq implementation