############################################################################# ## ## Cone.gd ConvexForHomalg package Sebastian Gutsche ## ## Copyright 2011 Lehrstuhl B für Mathematik, RWTH Aachen ## ## Cones for ConvexForHomalg. ## ############################################################################# ## <#GAPDoc Label="IsCone"> ## ## ## true or false ## ## The &GAP; category of a cone. ## ## ## <#/GAPDoc> ## DeclareCategory( "IsCone", IsFan ); ################################ ## ## Basic Properties ## ################################ DeclareProperty( "IsRegularCone", IsCone ); ## <#GAPDoc Label="IsRay"> ## ## ## true or false ## ## Checks if the cone cone is a ray, i.e. if it has only one ray generator. ## ## ## <#/GAPDoc> ## DeclareProperty( "IsRay", IsCone ); ################################ ## ## Attributes ## ################################ ## <#GAPDoc Label="DualCone"> ## ## ## a cone ## ## Returns the dual cone of the cone cone. ## ## ## <#/GAPDoc> ## DeclareAttribute( "DualCone", IsCone ); ## <#GAPDoc Label="HilbertBasis"> ## ## ## a list ## ## Returns a Hilbert Basis of the cone cone. ## ## ## <#/GAPDoc> ## DeclareAttribute( "HilbertBasis", IsCone ); ## <#GAPDoc Label="RaysInFacets"> ## ## ## a list ## ## Returns an incidence matrix for the rays in the facets of the cone cone. The ith entry ## of the result corresponds to the ith facet, the jth entry of this is 1 if the jth ray is ## in th ith facet, 0 otherwise. ## ## ## <#/GAPDoc> ## DeclareAttribute( "RaysInFacets", IsCone ); ## <#GAPDoc Label="Facets"> ## ## ## a list ## ## Returns a list of the facets of the cone cone as homalg cones. ## ## ## <#/GAPDoc> ## DeclareAttribute( "Facets", IsCone ); ## <#GAPDoc Label="GridGeneratedByCone"> ## ## ## a homalg module ## ## Returns the grid generated by the lattice points of the cone cone as a homalg module. ## ## ## <#/GAPDoc> ## DeclareAttribute( "GridGeneratedByCone", IsCone ); ## <#GAPDoc Label="FactorGrid"> ## ## ## a homalg module ## ## Returns the factor of the containing grid of the cone cone and the grid generated by cone. ## ## ## <#/GAPDoc> ## DeclareAttribute( "FactorGrid", IsCone ); ## <#GAPDoc Label="GridGeneratedByOrthogonalCone"> ## ## ## a homalg module ## ## Returns the grid generated by the lattice points of the orthogonal cone of the cone cone. ## ## ## <#/GAPDoc> ## DeclareAttribute( "GridGeneratedByOrthogonalCone", IsCone ); ## <#GAPDoc Label="DefiningInequalities"> ## ## ## a list ## ## Returns a list of the defining inequalities of the cone cone. ## ## ## <#/GAPDoc> ## DeclareAttribute( "DefiningInequalities", IsCone ); ## <#GAPDoc Label="IsContainedInFan"> ## ## ## a fan ## ## If the cone cone is constructed as part of a fan, this method returns the fan. ## ## ## <#/GAPDoc> ## DeclareAttribute( "IsContainedInFan", IsCone ); ## <#GAPDoc Label="FactorGridMorphism"> ## ## ## a morphism ## ## Returns the morphism to the factor grid of the cone cone. ## ## ## <#/GAPDoc> ## DeclareAttribute( "FactorGridMorphism", IsCone ); DeclareAttribute( "LinearSubspaceGenerators", IsCone ); DeclareAttribute( "APointedFactor", IsCone ); DeclareAttribute( "FactorConeEmbedding", IsCone ); DeclareAttribute( "EqualitiesOfCone", IsCone ); DeclareAttribute( "RelativeInteriorRayGenerator", IsCone ); DeclareAttribute( "HilbertBasisOfDualCone", IsCone ); ################################ ## ## Methods ## ################################ ## <#GAPDoc Label="IntersectionOfCones"> ## ## ## a cone ## ## If the cones cone1 and cone2 share a face, the method returns their intersection, ## ## ## <#/GAPDoc> ## DeclareOperation( "IntersectionOfCones", [ IsCone, IsCone ] ); DeclareOperation( "Intersect2", [ IsCone, IsCone ] ); ## <#GAPDoc Label="Contains"> ## ## ## true or false ## ## Returns true if the cone cone1 contains the cone cone2, false otherwise. ## ## ## <#/GAPDoc> ## DeclareOperation( "Contains", [ IsCone, IsCone ] ); ## <#GAPDoc Label="RayGeneratorContainedInCone"> ## ## ## true or false ## ## Returns true if the ray generator raygen is contained the cone cone, false otherwise. ## ## ## <#/GAPDoc> ## DeclareOperation( "RayGeneratorContainedInCone", [ IsList, IsCone ] ); DeclareOperation( "RayGeneratorContainedInRelativeInterior", [ IsList, IsCone ] ); ## <#GAPDoc Label="StarFan"> ## ## ## a fan ## ## Returns the star fan of the cone cone, as described in cox, 3.2.7 ## ## ## <#/GAPDoc> ## DeclareOperation( "StarFan", [ IsCone ] ); ## <#GAPDoc Label="StarFan2"> ## ## ## a fan ## ## Returns the star fan of the fan fan along the cone cone, as described in cox, 3.2.7 ## ## ## <#/GAPDoc> ## DeclareOperation( "StarFan", [ IsCone, IsFan ] ); ## <#GAPDoc Label="StarSubdivisionOfIthMaximalCone"> ## ## ## a fan ## ## Returns the star subdivision of the fan fan on the numbth maximal cone as in cox, 3.3.13. ## ## ## <#/GAPDoc> ## DeclareOperation( "StarSubdivisionOfIthMaximalCone", [ IsFan, IsInt ] ); DeclareOperation( "StellarSubdivision", [ IsCone, IsFan ] ); DeclareOperation( "\*", [ IsHomalgMatrix, IsCone ] ); # DeclareOperation( "\=", # [ IsCone, IsCone ] ); DeclareOperation( "IntersectionOfConelist", [ IsList ] ); DeclareOperation( "NonReducedInequalities", [ IsCone ] ); ################################ ## ## Constructors ## ################################ DeclareOperation( "Cone", [ IsCone ] ); ## <#GAPDoc Label="Cone"> ## ## ## a cone ## ## Returns a cone generated by the rays in cone. ## ## ## <#/GAPDoc> ## DeclareOperation( "Cone", [ IsList ] ); DeclareOperation( "PolymakeCone", [ IsList ] ); DeclareOperation( "InternalCone", [ IsList ] ); DeclareOperation( "ConeByInequalities", [ IsList ] ); DeclareOperation( "ConeByEqualitiesAndInequalities", [ IsList, IsList ] ); DeclareOperation( "Cone", [ IsExternalObject ] );