Fixpoint felim x a b c d e accu :=
match e with
| nil => accu
| (cc,l)::e1 =>
felim x a b c d e1
(free_elim cc x a b c d l nil accu)
end.

Lemma felim_c x a b c d e accu :
{v[x]} = {k[a]} .* {v[b]} + {k[c]} .* {v[d]} :> vect K ->
{e[felim x a b c d e accu]} = ({e[accu]} + {e[e]})%f.