predicate exercices implemented