fact: Definition Euclidean_division := ASSIGN "r" (VAR "a") ;; ASSIGN "q" (CONST 0) ;; WHILE Inv (LESSEQUAL (VAR "b") (VAR "r")) (ASSIGN "r" (MINUS (VAR "r") (VAR "b")) ;; ASSIGN "q" (PLUS (VAR "q") (CONST 1))).
imports: Coq(ZArith Psatz Bool String List Wellfounded Program.Equality) Coq(FunctionalExtensionality) CDF(IMP Sequences)