Definition poly_BC_mon (ar:nat)(m:mon) : BC :=
  multl_e ar (nat2BC ar 0 (fst m) :: map (poly_BC_pow ar) (snd m)).

(* Specifications: *)
Lemma poly_BC_mon_arities : forall ar xn, pWF_mon ar xn -> arities (poly_BC_mon ar xn) = ok_arities ar 0.
Lemma poly_BC_mon_correct : forall ar m nl, pWF_mon ar m -> length (sem (poly_BC_mon ar m) nl nil) = peval_mon m (map (@length _) nl).