functor (R : T) ->
sig
type t = R.t array
val length : Ring.Polynomial.t -> int
val degree : Ring.Polynomial.t -> int
val eq : Ring.Polynomial.t -> Ring.Polynomial.t -> bool
val compact : Ring.Polynomial.t -> Ring.Polynomial.t
val coeff : Ring.Polynomial.t -> int -> R.t
val init : int -> (int -> R.t) -> Ring.Polynomial.t
val add : Ring.Polynomial.t -> Ring.Polynomial.t -> Ring.Polynomial.t
val zero : 'a array
val cmul : R.t -> Ring.Polynomial.t -> Ring.Polynomial.t
val neg : Ring.Polynomial.t -> Ring.Polynomial.t
val sub : Ring.Polynomial.t -> Ring.Polynomial.t -> Ring.Polynomial.t
val mul : Ring.Polynomial.t -> Ring.Polynomial.t -> Ring.Polynomial.t
val one : R.t array
val to_string : Ring.Polynomial.t -> string
val monomial : R.t -> int -> R.t array
end