Fixpoint RepresentableHelp (n : nat) : naryFunc n -> Formula -> Prop :=
match n return (naryFunc n -> Formula -> Prop) with
| O =>
fun (f : naryFunc 0) (A : Formula) =>
SysPrf T (iffH A (equal (var 0) (natToTerm f)))
| S m =>
fun (f : naryFunc (S m)) (A : Formula) =>
forall a : nat,
RepresentableHelp m (f a) (substituteFormula LNN A (S m) (natToTerm a))
end.

(* Specifications: *)
Lemma RepresentableHalfHelp :
forall (n : nat) (f : naryFunc n) (A : Formula),
RepresentableHalf1 n f A ->
RepresentableHalf2 n f A -> RepresentableHelp n f A.