1 package JSci.maths.algebras;2 3 import JSci.maths.groups.AbelianGroup;4 import JSci.maths.fields.Ring;5 6 /**7 * This interface defines a module.8 * @jsci.planetmath Module9 * @version 1.010 * @author Mark Hale11 */12 public interface Module extends AbelianGroup {13 /**14 * This interface defines a member of a module.15 */16 interface Member extends AbelianGroup.Member {17 /**18 * The scalar multiplication law.19 * @param r a ring member20 */21 Member scalarMultiply(Ring.Member r);22 }23 }24 25