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

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).