Fixpoint freeVarListFormula (l : fol.Formulas L) : 
 list nat :=
  match l with
  | nil => nil (A:=nat)
  | f :: l => freeVarFormula f ++ freeVarListFormula l
  end.

Lemma freeVarListFormulaApp : forall a b : fol.Formulas L, freeVarListFormula (a ++ b) = freeVarListFormula a ++ freeVarListFormula b.