Proof
fun x
=> prod_0_r x
|| x # a = 0          @a by E_n1_inv_l
|| a = 0              @a by <- prod_sum_distrib_l x {-1} 1
|| (x # {-1}) + a = 0 @a by <- prod_id_r x.

(* Specifications: *)
(** Proves that x + -1 x = 0. *)
Theorem prod_n1_x_inv_r
:  forall x : E, sum_is_inv_r x ({-1} # x).