Proof
fun x
=> prod_0_l x
|| a # x = 0          @a by E_n1_inv_r
|| a = 0              @a by <- prod_sum_distrib_r x 1 {-1}
|| a + ({-1} # x) = 0 @a by <- prod_id_l x.

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