(** Represents strongly-specified negation. *)
Definition op_neg_strong
  :  forall x : E, { y | op_is_inv x y }
  := Group.op_neg_strong op_group.(** Represents negation. *)
Definition op_neg
  :  E -> E
  := Group.op_neg op_group.Notation "{-}" := (Abelian_Group.op_neg _) : abelian_group_scope.Notation "- x" := (Abelian_Group.op_neg _ x) : abelian_group_scope.

Theorem op_cancel_neg : forall x : E, op_neg (- x) = x.