1 package JSci.maths.groups; 2 3 /** 4 * This interface defines a group. 5 * @jsci.planetmath Group 6 * @version 1.0 7 * @author Mark Hale 8 */ 9 public interface Group extends Monoid { 10 /** 11 * Returns true if one member is the inverse of the other. 12 * @param a a group member 13 * @param b a group member 14 */ 15 boolean isInverse(Member a, Member b); 16 17 /** 18 * This interface defines a member of a group. 19 */ 20 interface Member extends Monoid.Member { 21 /** 22 * Returns the inverse member. 23 */ 24 Member inverse(); 25 } 26 } 27 28