fact: Fixpoint RepresentableHalf2 (n : nat) : naryFunc n -> Formula -> Prop := match n return (naryFunc n -> Formula -> Prop) with | O => fun (f : naryFunc 0) (A : Formula) => SysPrf T (v#0 = natToTerm f -> A)%fol | S m => fun (f : naryFunc (S m)) (A : Formula) => forall a : nat, RepresentableHalf2 m (f a) (substF A (S m) (natToTerm a)) end.
imports: Coq(Arith List) hydras.Ackermann(ListExt folProp subProp extEqualNat Languages LNN NewNotations)