[GAP Forum] Time to compute Size(semigroup)

Jose Joao Morais jjoao at netcabo.pt
Tue Jan 27 11:08:24 GMT 2004


Dear GAP Forum,

	I have a semigroup of transformations S1. Then I do

gap> Size(S1);
39536

	and this is what I got with DisplayProfile()

gap> DisplayProfile();
  count  self/ms  chld/ms  function
  39537       10      -10  UnderlyingCollection: system getter
  39537       30        0  UnderlyingCollection
  39543       50        0  ADD_LIST
 276739      260       20  EQ: for two transformations of the same set
 237221      620      -10  Enumerator: for a collection that is a list
  39530     1420      700  AddSet: for mutable internally represented
list, and object
  39530       80     2110  AddSet
3950033     5680     -220  LT: <trans> < <trans>
 237216     6040     1040  PROD: trans * trans
 237216     3370     5280  IN: for an object, and a small list
  39537     1060    18050  ISB_LIST: for a right semigroup ideal
enumerator
 790742      480    18710  Size: for a list that is a collection
      1        0    19190  Size: for a collection
      3        0    19190  Order: for a group
      1       60    19130  LENGTH: for a semigroup ideal enumerator
           19190           TOTAL





	For another semigroup S2, which is a semidirect product semigroup,
whose elements are Tuples, I did

gap> Size(S2);
1764

	after clearing the Profile information I got these times

gap> DisplayProfile();
  count  self/ms  chld/ms  function
165128*     9060     -430  UnderlyingCollection: system getter
165128*    18000     9280  UnderlyingCollection
8863493     9230      120  EQ: for two transformations of the same set
 425088      680      570  AddSet
1627094     1920      -50  LT: <trans> < <trans>
 127008     2180      340  PROD: trans * trans
  63504      670     4270  IN: for an object, and a small list
165128*    53310    97690  ISB_LIST: for a right semigroup ideal
enumerator
171496*     9570   141430  Size: for a list that is a collection
      1        0   151000  Size: for a collection
      4        0   151000  Order: for a group
      1        0   151000  LENGTH: for a semigroup ideal enumerator

(Total    104620)


  63504       10       40  SemiDirectProductSemigroupElmAction: system
getter
 127008       50       20  Enumerator: system getter
 127008      100      -30  IsSingleValued
 127010      100        0  FamilySource: system getter
 127008      100       10  IsTotal
 127013      130       20  Enumerator: for a collection that is a list
 127010      120       50  Tester(FamilySource)
  63504      190        0  SemiDirectProductSemigroupElmAction
 127008      170       30  Source: for default general mapping
 127009      180       50  Enumerator
 127010      180       90  FamilySource
  65301      140      160  EQ: for two pairs
 127008      110      210  PreImagesRange: for total general mapping
(delegate to `Source')
 508330      190      140  EQ: for two families: delegate to
`IsIdenticalObj'
  63540      450       50  Setter(SemiDirectProductSemigroupElmAction):
system setter
 425088      500        0  AddSet: for mutable internally represented
list, and object
  63540       80      500  Setter(SemiDirectProductSemigroupElmAction)
  63540      830       60  Setter(IsSemiDirectProductSemigroupElm)
 127008     2040     1740  ImageElm: for mapping by function
 127008      140     3790  ImageElm
 667623     2250     1720  LT: for two pairs
8255520    13190    45140  ELM_LIST: for a right semigroup ideal
enumerator
 127008    22500   111250  IN: for a semigroup ideal emunerator
 127008      370   133980  IN: for a domain, and an element
  63504     2260   143390  PROD: for two elements of a semidirect
product semigroup
          151000           TOTAL




	I wonder if anyone could give me an hint on why the times for the
common methods between these two results are so much higher in the case
of S2.


	Thank you,
	Jose Morais
	




More information about the Forum mailing list