\Chapter{General lattices} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Section{Constructing general lattices} \>GeneralLattice( <coll>, <geq>, <string> ) The function `GeneralLattice' constructs a lattice from a list of elements of the lattice <coll>, an operation <geq>, which decides whether an element is greater or equal than another and a string which is used when the lattice is printed. It is assumed that whenever an element $i$ occurs after an element $j$ in <coll> then $j$ is not smaller than $i$ whith respect to <geq>. As an example `GeneralLattice( Subgroups( GTW6_2 ), IsSubgroup, "subgroup" )' will return the lattice of subgroups of the group $6/2$. `GeneralLattice( NormalSubgroups( GTW6_2 ), IsSubgroup, "normal subgroup" )' will return the lattice of normal subgroups of the group $6/2$. `GeneralLattice( NearRingIdeals( LibraryNearRing( GTW6_2, 3 ) ), IsSubset, "ideal" )' will return the ideal lattice of the library nearring number 3 on the group $6/2$. \beginexample gap> GeneralLattice( Subgroups( GTW6_2 ), IsSubgroup, "subgroup" ); GeneralLattice( 6 subgroups ) gap> GeneralLattice( NormalSubgroups( GTW6_2 ), IsSubgroup, > "normal subgroup" ); GeneralLattice( 3 normal subgroups ) gap> GeneralLattice( NearRingIdeals( LibraryNearRing( GTW6_2, 3 ) ), > IsSubset, "ideal" ); GeneralLattice( 2 ideals ) \endexample Once a general lattice is generated its elements are represented by their position in the list <coll>. This list can be accessed via `AsList' or `AsSortedList'. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Section{Comparing lattice elements} \>Less( <L>, <i>, <j> ) The function `Less' checks whether the <i>-th element of the lattice <L> is smaller than the <j>-th element and returns the according boolean value `true' or `false'. \>SubCoverOfJI( <L>, <i> ) \>Join( <L>, <i>, <j> ) \>Meet( <L>, <i>, <j> ) \>IsJoinIrreducible( <L>, <i> ) \>JoinIrreducibles( <L> ) \beginexample gap> n := LibraryNearRing( GTW8_4, 3 ); LibraryNearRing(8/4, 3) gap> i := NearRingIdeals( n ); [ NearRingIdeal(...), NearRingIdeal(...), NearRingIdeal(...), NearRingIdeal(...), NearRingIdeal(...), NearRingIdeal(...) ] gap> l := GeneralLattice( i, IsSubset, "ideal" ); GeneralLattice( 6 ideals ) gap> JoinIrreducibles( l ); [ 2, 3, 4, 5 ] gap> i{last}; [ NearRingIdeal(...), NearRingIdeal(...), NearRingIdeal(...), NearRingIdeal(...) ] gap> List(last, Size); [ 2, 4, 4, 4 ] \endexample \>IsCoveringPair( <L>, <pair> ) \>IsSC1Group( <G> ) \>IsProjectivePairOfPairs( <L>, <pair1>, <pair2> ) \>AlphaBar( <G> ) . %%% Local Variables: %%% mode: latex %%% TeX-master: t %%% End: