prbnmcn-basic-structures

Base package for prbnmcn-* packages
Library prbnmcn-basic-structures
include Module
module R : Ring
type t
include Abelian_group with type t := t
val zero : t
val add : t -> t -> t
val neg : t -> t
val smul : R.t -> t -> t
val mul : t -> t -> t

mul should distribute over addition. Not necessarily associative, nor commutative, nor unital.