(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* constr:true | Zpos ?p => isZcst p | Zneg ?p => isZcst p | xI ?p => isZcst p | xO ?p => isZcst p | xH => constr:true | _ => constr:false end. Ltac Zcst t := match isZcst t with true => t | _ => NotConstant end. Add Ring Zr : Zth (decidable Zeqb_ok, constants [Zcst], preprocess [unfold Zsucc]).