File: chap77.txt

package info (click to toggle)
gap 4.15.1-1
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 110,212 kB
  • sloc: ansic: 97,261; xml: 48,343; cpp: 13,946; sh: 4,900; perl: 1,650; javascript: 255; makefile: 252; ruby: 9
file content (204 lines) | stat: -rw-r--r-- 14,368 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
  
  77 Replaced and Removed Command Names
  
  In  general  we try to keep GAP 4 compatible with former releases as much as
  possible.  Nevertheless,  from  time  to time it seems appropriate to remove
  some  commands  or  to change the names of some commands or variables. There
  are  various  reasons  for  that:  Some  functionality  was improved and got
  another  (hopefully better) interface, names turned out to be too special or
  too  general  for  the  underlying  functionality,  or names are found to be
  unintuitive or inconsistent with other names.
  
  In  this  chapter  we  collect such old names while pointing to the sections
  which  explain  how to substitute them. Usually, old names will be available
  for  several  releases;  they may be removed when they don't seem to be used
  any more.
  
  Information  about  obsolete  names  is  printed  by  Info (7.4-6) using the
  InfoObsolete (77.4-1) Info class. By default InfoObsolete (77.4-1) is set to
  1. Newly obsoleted identifiers should at first be outputted at info level 2.
  Once  they have been removed from all packages, they should then be moved to
  info  level  1,  so they are visible to normal users, for at least one major
  release before being removed.
  
  The  functions DeclareObsoleteSynonym and DeclareObsoleteSynonymAttr take an
  optional  final  parameter,  specifying  the  info  level at which the given
  obsolete symbol should be reported. It defaults to 2 and 1, respectively.
  
  The obsolete GAP code is collected in two library files, lib/obsolete.gd and
  lib/obsolete.gi.  By  default,  these files are read when GAP is started. It
  may be useful to omit reading these files, for example in order to make sure
  that  one's  own GAP code does not rely on the obsolete variables. For that,
  one  can use the -O command line option (see 3.1) or set the user preference
  ReadObsolete  in  the  file  gap.ini  to  false  (see 3.2). Note that the -O
  command line option overrides ReadObsolete.
  
  (Note  that  the  condition  whether the library files with the obsolete GAP
  code  shall  be  read  has changed. In GAP 4.3 and 4.4, the global variables
  GAP_OBSOLESCENT  and  GAPInfo.ReadObsolete  –to  be set in the user's .gaprc
  file– were used to control this behaviour.)
  
  
  77.1 Group Actions – Name Changes
  
  The concept of a group action is sometimes referred to as a group operation.
  In  GAP 3  as well as in older versions of GAP 4 the term Operation was used
  instead  of  Action.  We decided to change the names to avoid confusion with
  the term operation as in DeclareOperation (78.1-5) and operations for Xyz.
  
  Here are some examples of such name changes.
  
        OLD                     │ NOW USE                         
        ────────────────────────┼──────────────────────────────  
        Operation               │ Action (41.7-2)                 
        RepresentativeOperation │ RepresentativeAction (41.6-1)   
        OperationHomomorphism   │ ActionHomomorphism (41.7-1)     
        FunctionOperation       │ FunctionAction (41.12-4)        
        IsLexicographicallyLess │ \< (31.11-1)                    
  
  
  77.2 Package Interface – Obsolete Functions and Name Changes
  
  With  GAP 4.4  the  package  interface  was  changed. Thereby some functions
  became obsolete and the names of some others were made more consistent.
  
  The    following   functions   are   no   longer   needed:   DeclarePackage,
  DeclareAutoPackage,              DeclarePackageDocumentation             and
  DeclarePackageAutoDocumentation.  They  are  substituted  by  entries in the
  packages' PackageInfo.g files, see 76.3-15.
  
  Furthermore,  the  global  variable  PACKAGES_VERSIONS  is no longer needed,
  since  this  information is now contained in the GAPInfo.PackagesInfo record
  (see  3.5-1).  The global variable Revisions is also no longer needed, since
  the  function  DisplayRevision  was  made obsolete in GAP 4.5 and removed in
  GAP 4.7.
  
  The following function names were changed.
  
        OLD            │ NOW USE                  
        ───────────────┼───────────────────────  
        RequirePackage │ LoadPackage (76.2-1)     
        ReadPkg        │ ReadPackage (76.3-1)     
        RereadPkg      │ RereadPackage (76.3-1)   
  
  
  77.3 Normal Forms of Integer Matrices – Name Changes
  
  Former  versions  of  GAP 4  documented  several functions for computing the
  Smith  or  Hermite  normal form of integer matrices. Some of them were never
  implemented  and  it was unclear which commands to use. The functionality of
  all  of these commands is now available with NormalFormIntMat (25.2-9) and a
  few interface functions.
  
  
  77.4 Miscellaneous Name Changes or Removed Names
  
  In  former  releases of GAP 4 there were some global variable names bound to
  general  information  about  the  running GAP, such as path names or command
  line options. Although they were not officially documented they were used by
  several  users  and in some packages. We mention here BANNER and QUIET. This
  type of information is now collected in the global record GAPInfo (3.5-1).
  
  Here are some further name changes.
  
        OLD                     │ NOW USE                           
        ────────────────────────┼────────────────────────────────  
        MonomialTotalDegreeLess │ MonomialExtGrlexLess (66.17-14)   
        MultRowVector           │ MultVectorLeft (23.4-3)           
        MutableCopyMat          │ MutableCopyMatrix (26.11-4)       
        MutableIdentityMat      │ IdentityMat (24.5-1)              
        MutableNullMat          │ NullMat (24.5-2)                  
        NormedVectors           │ NormedRowVectors (61.9-11)        
        RadicalGroup            │ SolvableRadical (39.12-9)         
  
      The  operation  PositionFirstComponent  has been deprecated in GAP 4.8
        due  to  issues  with  its  documentation  and implementation, and was
        removed  in GAP 4.10. Instead of PositionFirstComponent(list,obj), you
        may            use            PositionSorted(list,[obj])            or
        PositionProperty(list,x->x[1]=obj) as a replacement, depending on your
        specific use case.
  
      The  five  argument  version  of  the operation MultRowVector has been
        deprecated  in  GAP  4.10  since  it was unused and only available for
        coefficient  lists.  Note  that  MultRowVector  was  also  renamed  to
        MultVectorLeft.
  
      The  function  TemporaryGlobalVarName has been deprecated in GAP 4.11.
        Code  using  it  typically can be restructured to not need it, e.g. by
        using EvalString (27.9-5).
  
      A  bunch of synonyms have been deprecated in GAP 4.13. The alternative
        names have always existed and so are safe to use even in code which is
        meant to run in older GAP versions.
  
        Deprecated          │ Recommended alternative                                         
        ────────────────────┼──────────────────────────────────────────────────────────────  
        OneSM               │ OneSameMutability (31.10-2)                                     
        InverseSM           │ InverseSameMutability (31.10-8)                                 
        ZeroSM              │ ZeroSameMutability (31.10-3)                                    
        AdditiveInverseSM   │ AdditiveInverseSameMutability (31.10-9)                         
        OneAttr             │ One (31.10-2), OneImmutable (31.10-2)                           
        InverseAttr         │ Inverse (31.10-8), InverseImmutable (31.10-8)                   
        ZeroAttr            │ Zero (31.10-3), ZeroImmutable (31.10-3)                         
        AdditiveInverseAttr │ AdditiveInverse (31.10-9), AdditiveInverseImmutable (31.10-9)   
  
  77.4-1 InfoObsolete
  
  InfoObsolete  info class
  
  is  an  info class to display warnings when an obsolete variable is used. By
  default,  the  info  level  for this class is set to 1, which will only show
  variables which will be removed in the next major version of GAP. Setting it
  to  2  will  trigger  further warnings, for variables which have alternative
  names,  or  may  be removed in future. This class can be set to 0 to disable
  all obsolete warnings.
  
  To  check  that  the GAP code does not use any obsolete variables at parsing
  time, and not at a runtime, use the -O command line option, see 3.1.
  
  
  77.5 The former .gaprc file
  
  Up to GAP 4.4, a file .gaprc in the user's home directory (if available, and
  GAP  was  started  without -r option) was read automatically during startup,
  early enough for influencing the autoloading of packages and late enough for
  being  allowed  to  execute  any GAP code. On Windows machines this file was
  called gap.rc.
  
  In GAP 4.5 the startup mechanism has changed, see 3.2 for details. These new
  configuration files are now contained in a directory GAPInfo.UserGapRoot.
  
  For  the  sake  of  partial  backwards  compatibility,  also the former file
  ~/.gaprc  is still supported for such initializations, but this file is read
  only  if  the directory GAPInfo.UserGapRoot does not exist. In that case the
  ~/.gaprc  is  read  at the same time as gaprc would be read, i. e., too late
  for influencing the startup of GAP.
  
  As before, the command line option -r disables reading ~/.gaprc, see 3.1.
  
  To  migrate from the old setup to the new one introduced with GAP 4.5, first
  have  a  look  at the function WriteGapIniFile (3.2-3). Many users will find
  that  all  or  most of what was set in the old ~/.gaprc file can now be done
  via  the  user  preferences  in  a  gap.ini  file.  If  you had code for new
  functions  or  abbreviations  in  your old ~/.gaprc file or you were reading
  additional  files,  then  move this into the file gaprc (without the leading
  dot,   same   name   for   all   operating   systems)   in   the   directory
  GAPInfo.UserGapRoot.
  
  
  77.6 Semigroup properties
  
  Until  Version  4.8  of  GAP  there  was  inconsistent  use of the following
  properties   of  semigroups:  IsGroupAsSemigroup,  IsMonoidAsSemigroup,  and
  IsSemilatticeAsSemigroup.  IsGroupAsSemigroup  was  true for semigroups that
  mathematically  defined  a group, and for semigroups in the category IsGroup
  (39.2-7);  IsMonoidAsSemigroup  was  true for semigroups that mathematically
  defined  monoids,  but did not belong to the category IsMonoid (51.2-1); and
  IsSemilatticeAsSemigroup  was  simply  a property of semigroups, there is no
  category IsSemilattice.
  
  From Version 4.8 onwards, IsMonoidAsSemigroup returns true for semigroups in
  the  category IsMonoid (51.2-1), and IsSemilatticeAsSemigroup has been moved
  to   the   Semigroups   under   the   new  name  IsSemilattice  (Semigroups:
  IsSemilattice).