Skip to content

Latest commit

 

History

History
1120 lines (753 loc) · 43.6 KB

CHANGES.md

File metadata and controls

1120 lines (753 loc) · 43.6 KB

Version history of the RCWA package

Changes between RCWA 4.7.0 and RCWA 4.7.1 (December 6, 2022):

  • Added a global switch CTSparse to choose sparse representation for class transpositions of Z.
  • Some janitorial changes

Changes between RCWA 4.6.4 and RCWA 4.7.0 (July 29, 2022):

  • An operation TryToComputeDegreeOfTransitivity has been added, together with a method for rcwa groups over Z. (Not documented so far.)
  • An operation SupersetOfOrbitRepresentatives has been added, together with a method for subgroups of CT(Z).
  • An operation ResidueClassCyclesThroughResidueClass has been added, together with a method for rcwa permutations of Z.
  • An operation DrawResidueClassCyclesThroughResidueClassPicture has been added, together with a method for rcwa permutations of Z. (Not documented so far.)
  • Components growthsequences, abelian, metabelian, solvable, abelianinvariants and compositionfactors have been added to the database of groups generated by 3 class transpositions interchanging residue classes with moduli <= 6.
  • Other minor adjustments.

Changes between RCWA 4.6.3 and RCWA 4.6.4 (March 24, 2019):

  • Clarified that this package is licensed under GPL 2 or later.
  • Moved package homepage to https://gap-packages.github.io/rcwa.
  • Fixed some issues where loading ResClasses could inadvertently alter the behavior of GAP library functions.
  • Increased minimal required resclasses version to 4.7.2.
  • Improved compatibility with future GAP releases (4.11 and later).
  • Other minor adjustments.

Changes between RCWA 4.6.2 and RCWA 4.6.3 (November 27, 2018):

  • An operation CTCSCRSplit has been added.

Changes between RCWA 4.6.1 and RCWA 4.6.2 (June 26, 2018):

  • First release after migrating the source code repository to GitHub.
  • Updated the method for Embeddings to fix the compatibility problem with LOOPS package.

Changes between RCWA 4.6.0 and RCWA 4.6.1 (December 18, 2017):

  • The author's email address has been updated.

Changes between RCWA 4.5.1 and RCWA 4.6.0 (December 5, 2017):

  • Determining transitivity and computing transitivity certificates has been made more efficient in some cases, and an operation SimplifiedCertificate has been added.

  • An operation EpimorphismsUpToAutomorphisms has been added, together with a method which computes all epimorphisms from a given finitely presented group to a given finite group up to automorphisms of the latter.

  • Lists 'redundant_generator', 'spheresizebound_4', 'spheresizebound_6', 'spheresizebound_12' and 'spheresizebound_24' have been added to the database of groups generated by 3 class transpositions.

  • Single-argument methods for TransitionMatrix and TransitionGraph have been added.

Changes between RCWA 4.5.0 and RCWA 4.5.1 (March 13, 2017):

  • RCWA now prints a warning if GAP is run in legacy 32-bit mode. The reason is the limitation on the size of integers in ranges in 32-bit GAP which may make some computations fail and trigger error messages.

Changes between RCWA 4.4.1 and RCWA 4.5.0 (February 12, 2017):

  • A further method for EpimorphismFromFpGroup has been added. This method allows to limit the search space to elements with not more than a given number of affine parts.

  • Attributes DecompositionIntoPermutationalAndOrderPreservingElement and SignInOddCTPZ have been added.

  • The following components have been added to the database of groups generated by 3 class transpositions: 'minwordlengthnonbalanced', 'minwordlengthcoprimemultdiv', 'epifromfpgrouptocollatzgroup_c' and 'epifromfpgrouptocollatzgroup_t'.

  • The method for RestrictedBall for computing restricted balls in rcwa monoids does now interpret options "boundaffineparts" and "boundnonidentityaffineparts". -- If set, the specified bound is on the number of affine parts, respectively, on the number of affine parts distinct from the identity, rather than on the modulus of the mapping.

  • An operation HashValueOfRcwaMapping has been added. The purpose of the hash values is to allow faster searching of rcwa mappings by algorithms.

  • Now the operations Support, IncreasingOn, DecreasingOn, ShiftsUpOn, ShiftsDownOn, LargestSourcesOfAffineMappings and Multpk return their result in sparse representation if the argument is in sparse representation.

  • An operation RefinementSequence has been added.

Changes between RCWA 4.4.0 and RCWA 4.4.1 (May 22, 2016):

  • A Random method for finitely generated rcwa groups and given word length has been added.

  • A bug in the default method for RespectedPartition for subgroups of CT(Z) has been fixed. This bug caused wrong results in very rare cases.

Changes between RCWA 4.3.1 and RCWA 4.4.0 (May 14, 2016):

  • Many newly found subgroup relations have been added to the database of groups generated by 3 class transpositions which interchange residue classes with moduli <= 6.

  • A new method for computing the order of an element of CT(Z) has been added. Its use can be triggered by setting the option "new_order" when calling the operation Order. This method is sometimes faster and sometimes slower than the default method.

  • The function PrimeSwitch has been turned into an operation, and new methods PrimeSwitch(p,r,m) and PrimeSwitch(p,cl) to construct "residue class specific" prime switches have been added.

  • The functions for loading the databases of rcwa groups and -mappings do no longer return the content of the respective database itself, but just the name of the variable which the database record is assigned to. Hence forgetting the ';;' at the end of the line when loading one of the databases does no longer result in megabytes of data printed to the screen.

  • Selector functions All3CTs9Groups and All3CTs9Indices have been added to the database of groups generated by 3 class transpositions interchanging residue classes with moduli <= 9.

  • The meaning of CT(P,Integers) has been changed in that 2 is no longer treated as a special case, and P is now the full prime set of the constructed group. -- That means e.g. that the former CT([],Integers) is now CT([2],Integers).

  • There is now a generating set for CT([2,3],Integers) consisting of only 6 class transpositions known, instead of 14 as before. Also, a generating set for CT([3],Integers) has been added.

  • The performance of the function ClassPairs has been improved, and this function takes now an optional first argument P and interprets an option "divisors".

  • A method for ExtRepOfObj for class transpositions has been added. This method returns the 4-tuple [r1,m1,r2,m2] corresponding to the interchanged residue classes r1(m1) and r2(m2).

Changes between RCWA 4.3.0 and RCWA 4.3.1 (March 9, 2016):

  • Minor adjustments.

Changes between RCWA 4.2.0 and RCWA 4.3.0 (March 8, 2016):

  • The remaining utility functions and -operations SaveAsBitmapPicture, LoadBitmapPicture, DrawGrid, EquivalenceClasses, GraphClasses, AllGraphs and IdGraph have been moved to the ResClasses package.

  • Some code reordering has been done (the remaining contents of general.gd and general.gi have been merged into rcwamap.gd, rcwamap.gi, rcwagrp.gd and rcwagrp.gi, and frdepend.gi has been renamed to perlist.gi).

  • A few further minor adjustments have been made.

Changes between RCWA 4.1.0 and RCWA 4.2.0 (March 4, 2016):

  • The utility functions and -operations GeneratorsAndInverses, EpimorphismByGenerators, ListOfPowers, AssignGlobals, SearchCycle, NextProbablyPrimeInt, PrimeNumbersIterator, AllSmoothIntegers, ExponentOfPrime and LaTeXStringFactorsInt have been moved to the Utils package. Therefore Utils is now a needed package of RCWA.

  • The automated package test covers now the full test suite, and the tests now use standard functionality instead of the old custom setup.

  • The function DrawOrbitPicture which was broken due to some other changes is now working again.

  • RCWA needs now the FR package, which was before only suggested.

Changes between RCWA 4.0.1 and RCWA 4.1.0 (March 1, 2016):

  • The test suite (a.k.a. RCWATestAll();) has been amended considerably, in order to increase the code coverage of the tests.

  • A few minor bugs which could have led to error messages have been fixed.

Changes between RCWA 4.0.0 and RCWA 4.0.1 (February 23, 2016):

  • The propagation of the knowledge about bijectivity to inverses of bijective rcwa mappings is now taken care of by RCWA. -- Until GAP 4.8.1 this was done by the GAP Library.

Changes between RCWA 3.7.0 and RCWA 4.0.0 (January 25, 2016):

  • A database of groups generated by 3 class transpositions intechanging residue classes with moduli <= 9 has been added. For each of these 3031864 groups, the modulus and the order are stored. Also, for all finite ones among these groups, the length of the shortest respected partition is stored.

  • The following data has been added to the database of groups generated by 3 class transpositions:

    • data on subgroup- and supergroup relations between the groups in the database (lists 'subgroups' and 'supergroups'),
    • data on the orbit growth functions (list 'orbitgrowthtype'),
    • lists of lengths of short finite orbits of residue classes, and
    • data on sphere size cycles for orbits with periodic growth function. Also the data on the action of the groups in the database on the set of nonnegative integers in their support has been revised and improved (aka trsstatus / trsstatuspos).
  • RCWA makes now use of the new sparse representation of residue class unions implemented in ResClasses 4.0.0.

  • A couple of methods for computing stabilizers in rcwa groups have been added.

  • A method for DirectFactorsOfGroup for finite subgroups of CT(Z) has been added.

  • The method for ShortResidueClassOrbits for rcwa groups over Z has been made more efficient.

  • A database of realizations of all (simple) graphs with 4, 5 and 6 vertices as class transposition graphs has been added.

  • An attribute TransitivityCertificate for subgroups of CT(Z) which act transitively on the set of nonnegative integers in their support, as well as an operation TryToComputeTransitivityCertificate, have been added. Also, the method for IsTransitiveOnNonnegativeIntegersInSupport has been improved.

  • An operation PiecewiseMapping to compose a mapping from pieces has been added, together with a method for rcwa mappings of Z.

  • An operation GrowthFunctionOfOrbit has been added, together with methods for rcwa groups.

  • An option to Display an rcwa mapping f of Z in the form of a table with a line of the form r(m) -> r(m)^f for each affine part has been added (option "AsClassMapping").

  • A constructor for the groups CT_P(Z) has been added. For P = [] (corresponds to Thompson's group V) and P = [3], generators are provided.

  • The operation RestrictedBall now interprets an option "untilsmaller".

  • Operations DensityOfSetOfFixedPoints and DensityOfSupport have been added.

  • The method for CollatzLikeMappingByOrbitTree has been improved.

  • Utility functions AllGraphs, GraphClasses and IdGraph have been added.

  • A utility function PrimeNumbersIterator has been added, which returns an iterator looping over the prime numbers in ascending order.

  • A utility function ComputeCycleLength has been added.

  • The utility functions ShrinkMonochromePictureToGrayscalesPicture, EncryptIntoBitmapPicture, DecryptFromBitmapPicture and RunDemonstration have been removed from the package, since they will be moved to the new Utils package.

  • The utility function AllProducts has been discarded.

  • The auxiliary functions ReadTestWithTimings and ReadTestCompareRuntimes have been moved from general.gi to rcwaaux.g, since given the improvements of the testing routines of 'core GAP', they will be hardly of general interest any more.

Changes between RCWA 3.6.1 and RCWA 3.7.0 (July 21, 2014):

  • An operation MergerExtension has been added. This operation constructs a certain infinite extension of a given transitive finite permutation group.

  • The manual section "Constructing residue-class-wise affine groups" has been revised.

  • The function DrawOrbitPicture has been improved, and in particular been made more efficient. The meaning of one of its arguments has changed.

  • Functions EncryptIntoBitmapPicture and DecryptFromBitmapPicture for steganography in bitmap pictures have been added.

  • A function ShrinkMonochromePictureToGrayscalesPicture has been added. This function is for producing smaller greyscale pictures from large monochrome pictures.

  • Custom methods for = for rcwa groups have been added.

  • The file rcwa/doc/manual.js has been added.

Changes between RCWA 3.6.0 and RCWA 3.6.1 (November 18, 2013):

  • The manual chapter on the algorithms implemented in this package has been brought up-to-date.

  • The function LoadDatabaseOfGroupsGeneratedBy4ClassTranspositions has been documented.

Changes between RCWA 3.5.1 and RCWA 3.6.0 (October 28, 2013):

  • Considerable additions to the database of groups generated by 3 class transpositions have been made -- for example:

    • Information on which groups are conjugate in RCWA(Z).
    • Information about short finite orbits.
    • Lengths of shortest respected partitions as well as degrees of action and orbit lengths on these partitions for all finite groups in the database.
    • Shortest respected partitions and generators of permutation groups induced on them, for all finite groups in the database.
    • Information on which groups stabilize a union of residue classes (mod m) for m <= 60.
  • A database of pairs of class transpositions interchanging residue classes with moduli <= 12 sorted by the order of their product has been added.

  • A database similar to the one mentioned before up to modulus 32, but restricted to orders 8, 24, 40, 42, 84, 120, 168 and 420 has been added.

  • There is now a considerably faster method for RespectedPartition for finite subgroups of CT(Z), giving a speedup by a factor of 1000 or more for large groups. The method also needs much less memory.

  • A better method for EpimorphismFromFpGroup for rcwa groups has been added.

  • There is now an operation Mirrored which applies the automorphism conjugating with n |-> -n - 1 to an rcwa mapping of Z or an rcwa group over Z. This interchanges the action on negative and nonnegative integers.

  • The performance of the method for computing the order of an rcwa permutation of Z has been improved.

  • A basic method for RepresentativeAction has been added which computes an rcwa permutation g such that G^g = H for given conjugate rcwa groups G, H < RCWA(Z).

  • A bug has been fixed which caused error messages when computing with rcwa mappings of Z in sparse representation which were not class-wise order-preserving.

Changes between RCWA 3.5.0 and RCWA 3.5.1:

  • The manual examples and the test files have been adjusted to the improved output format for words in GAP 4.6.0.

Changes between RCWA 3.4.0 and RCWA 3.5.0 (December 12, 2012):

  • A sparse representation for rcwa mappings of Z has been implemented. This allows much faster, much less memory-consuming computations in case the respective rcwa mappings have only few different affine partial mappings.

  • There are performance improvements in various places.

Changes between RCWA 3.3.1 and RCWA 3.4.0 (November 1, 2012):

  • The output of tame rcwa permutations has been improved. Now sign-preserving tame rcwa permutations of Z are often shown in disjoint cycle notation and residue classes moved by class transpositions etc. are shown as such. Also it is possible now to customize the output by 3 options, which can be either 'true', 'false' or not set: CycleNotation, PrintNotation, AbridgedNotation.

  • The method to enter an rcwa mapping of Z by giving a string expression accepts now rcwa permutations given in disjoint residue class cycle notation.

  • The method for ShortResidueClassCycles for rcwa permutations of Z has been made much faster and much less memory-consuming.

  • An operation FixedResidueClasses has been added. This operation finds all residue classes with moduli up to a specified bound which are fixed setwise by a given rcwa mapping or -group.

  • An operation CyclesOnFiniteOrbit has been added. This operation returns a list of all cycles of an element of an rcwa group on a finite orbit.

  • Two sections have been added to Chapter 'Examples' of the manual:

    1. The 3n+1 group.
    2. A group with huge finite orbits.
  • The function ClassPairs can now compute pairs of disjoint residue classes of Z^2 as well.

  • A function RCWATestExamples has been added. This function tests all examples in the RCWA manual, and reports any differences between the actual output and the output printed in the manual. It replaces the former script-based utility for this purpose.

  • The directory rcwa/gap/ has been renamed to rcwa/lib/, in order to follow the same naming convention as for the subdirectories of the GAP root directory.

  • A temporary variable property has been removed.

  • The ordering of this list has been changed from chronological to reverse chronological.

Changes between RCWA 3.2.0 and RCWA 3.3.1 (June 8, 2012):

  • The chapter "About the RCWA Package" of the manual has been rewritten.

  • The 3 functions with names RCWALoadDatabaseOf ... have been renamed to LoadDatabaseOf .... Further the function RCWALoadExamples has been renamed to LoadRCWAExamples, while the old name is kept as a synonym.

Changes between RCWA 3.1.2 and RCWA 3.2.0 (May 7, 2012):

  • Further data has been added to the database of groups generated by 3 class transpositions.

  • An operation LaTeXStringRcwaGroup has been added.

  • A method for the new operation IsCommuting for rcwa mappings has been added.

  • A helper function AllSmoothIntegers has been added.

  • Now the new function Test is used instead of ReadTest for the test suite.

  • In order to emphasize the permutation aspect, in output the wording "bijective rcwa mapping" has been changed to "rcwa permutation".

  • Now RCWA needs ResClasses 3.1.0.

Changes between RCWA 3.1.1 and RCWA 3.1.2:

  • Prevent that tst/rcwa_ct.tst shows diff's if due to better methods in other packages the groups RCWA(R) and CT(R) know already more attributes and properties.

  • Added a README file in the otherwise empty directory tst/timings.

Changes between RCWA 3.0.4 and RCWA 3.1.1 (October 18, 2011):

  • Operations ShortResidueClassCycles, ShortResidueClassOrbits, CycleRepresentativesAndLengths, IsTransitiveOnNonnegativeIntegersInSupport, CheckForWildness and TryIsTransitiveOnNonnegativeIntegersInSupport have been added.

  • The methods for Modulus and RespectedPartition for rcwa groups have been improved, and helper functions CommonRefinementOfPartitionsOfZ_NC and CommonRefinementOfPartitionsOfR_NC have been added.

  • A database of groups generated by 3 class transpositions which interchange residue classes with moduli <= 6 has been added.

  • The database on products of class transpositions has been extended.

  • The output format for rcwa mappings used by Display is now much nicer.

  • The documentation has been improved in various places.

  • A run of the test suite now indicates changed run times of individual commands in comparison with a reference run.

  • The file gap/general.g has been split into gap/general.gd and gap/general.gi, in order to allow other packages to use the declarations before RCWA's implementation part is loaded.

  • A utility function LaTeXStringFactorsInt has been added.

  • The following functions have been renamed: RCWAReadExamples -> RCWALoadExamples RcwaMappingToLaTeX -> LaTeXStringRcwaMapping ReadFromBitmapPicture -> LoadBitmapPicture

  • Now RCWA needs GAP 4.5.2, ResClasses 3.0.2 and GAPDoc 1.4.

Changes between RCWA 3.0.3 and RCWA 3.0.4:

  • Renamed undocumented variables:
    • IsOrbit -> IsRcwaGroupOrbit
    • IsOrbitStandardRep -> IsRcwaGroupOrbitStandardRep
    • IsOrbitsIteratorRep -> IsRcwaGroupOrbitsIteratorRep
    • IsOrbitInStandardRep -> IsRcwaGroupOrbitInStandardRep. Reason: name collision with orb package, and potential for further name collisions; expected benefit from synergies with other code for dealing with orbits is small.

Changes between RCWA 3.0.2 and RCWA 3.0.3:

  • The CVS revision entries have been removed from the source files.

  • The PDF version of the manual contains now bookmarks for chapters, sections and subsections. -- This is due to improved functionality of the most recent version of the GAPDoc package.

Changes between RCWA 3.0.1 and RCWA 3.0.2:

  • Renamed the operation Projections for rcwa mappings of Z^2 to ProjectionsToCoordinates and turned it into an attribute.

  • Renamed the operation Projections for rcwa group and modulus to ProjectionsToInvariantUnionsOfResidueClasses.

Changes between RCWA 3.0.0 and RCWA 3.0.1:

  • Instead of RCWATest there are now two different test functions: RCWATestInstall for briefly checking whether a installation went well, and RCWATestAll for running the full test suite. The function RCWATestAll corresponds to the former RCWATest.

Changes between RCWA 2.5.4 and RCWA 3.0.0 (May 8, 2011):

The main changes are:

  • Now the RCWA package provides basic functionality for computing in rcwa groups over Z^2.

  • Many examples have been added -- to the manual as well as to the files in the examples/ subdirectory.

Further changes are:

  • A function GroupByResidueClasses has been added.

  • A method for ResidueClass has been added which accepts an expression involving class transpositions, class shifts, class reflections, operators like *, /, ^ and brackets. The expression is to be provided as a string.

  • A function DrawGrid to draw pictures of residue class unions of Z^2 has been added.

  • A property IsClassWiseTranslating and an attribute MaximalShift have been introduced.

  • Trajectory now recognizes the option "Action"; default is OnPoints.

  • The amount of memory needed to store rcwa mappings with only few different coefficient triples has been reduced by making equal triples identical.

  • A sparse multiplication method for rcwa mappings has been added.

  • LargestSourcesOfAffineMappings has been made more efficient.

  • Now, class transpositions, class shifts, class rotations and class reflections have no longer predefined names, and the nice Viewing is cared for by separate methods.

  • Now the RCWA package needs GAP 4.4.12, ResClasses 3.0.0 (which supports unions of residue classes of Z^2), GAPDoc 1.3 and Polycyclic 2.6.

Changes between RCWA 2.5.3 and RCWA 2.5.4 (September 26, 2007):

  • A function RunDemonstration has been added. The purpose of this function is to present demonstrations of this package and possibly also of other GAP code.

  • The line length used in the examples has been reduced to 75 in order to improve their appearance in the online help with standard settings.

Changes between RCWA 2.5.2 and RCWA 2.5.3:

  • A bug concerning SymmetricGroup([]) has been fixed -- the empty list was wrongly interpreted as empty list of residue classes, rather than as empty list of integers. This caused an error message. Thanks to John McDermott for reporting this bug.

Changes between RCWA 2.5.1 and RCWA 2.5.2:

  • The action of subgroups of CT(Z) on FR's periodic lists by permuting the list entries has been implemented. An analogous action has been imple- mented for non-bijective rcwa mappings.

  • A method for EquivalenceClasses has been added. The arguments are either a list and a function computing a class invariant of a list entry or a list and a function describing an equivalence relation on the entries of the list.

  • A function RestrictedPartitionsWithoutRepetitions has been added. This is similar to RestrictedPartitions, but the difference is that no part may occur twice.

  • The documentation has been improved in a few places, and a couple of comments in the source files have been improved as well.

Changes between RCWA 2.5.0 and RCWA 2.5.1:

  • Some minor adjustments have been made, and RCWA needs now the recently released version 1.0 of GAPDoc and version 2.5.1 of ResClasses.

Changes between RCWA 2.4.3 and RCWA 2.5.0 (May 25, 2007):

  • Some functionality for rcwa monoids has been added -- see the short new manual chapter "Residue-Class-Wise Affine Monoids".

  • The manual has undergone a revision. Nothing has been rewritten completely, but lots of improvements and updates have been made in many places, and the chapter "The Algorithms Implemented in RCWA" has been extended considerably.

  • Iterators for rcwa groups have been implemented. These iterators can be used for finitely generated infinite groups in general.

  • The functionality for orbits under the action of rcwa groups has been improved. There are now orbit objects representing possibly infinite orbits. There are methods to compare such orbits, and to loop over them.

  • An operation EpimorphismFromFpGroup has been introduced.

  • A SymmetricGroup method for partitions of a ring into residue classes has been added.

  • The IsomorphismRcwaGroup method for finite groups has been improved. It works now over all rings which are currently supported by RCWA.

  • An Exponent method for rcwa groups has been added.

  • Methods for Action and ActionHomomorphism to compute the action of an rcwa group on a subset of its underlying ring have been added.

  • Basic functionality for subgroups of rcwa groups "by property" has been implemented.

  • A method to construct a dihedral group acting on a given residue class has been added.

  • Methods for ExtRepOfObj and ObjByExtRep for rcwa mappings have been added.

  • Attributes ShiftsUpOn and ShiftsDownOn as well as a property IsSignPreserving have been introduced.

  • Class shifts, class reflections, class rotations and class transpositions can now be given user-defined names via an option Name.

  • The methods for PreImagesElm, PreImagesRepresentative and PreImagesSet have been generalized to rcwa mappings of rings other than Z.

  • "Generalized class transpositions" have been introduced. The difference between them and "usual" class transpositions is that the former interchange given pairs of disjoint residue classes with fixed representatives and signed moduli.

  • The operation RcwaGroupByPermGroup / RcwaGroupOverZByPermGroup is no longer needed, and has been removed.

  • The Attributes SetOnWhichMappingIs ... have been given shorter names. Now they are called ClassWiseOrderPreservingOn, ClassWiseConstantOn and ClassWiseOrderReversingOn.

  • The bibliography format has been changed from BibTeX to GAPDoc XML.

  • Now RCWA needs ResClasses 2.5.0 and GAPDoc 0.99999.

Changes between RCWA 2.4.2 and RCWA 2.4.3:

  • The documentation has been improved in a few places.

  • The HTML version of the manual has been made a bit nicer by adding a couple of images for displayed formulae.

  • A few formulae in ASCII art have been added to the text version of the manual.

  • A quirk with the style file for the HTML version of the manual has been fixed.

Changes between RCWA 2.4.1 and RCWA 2.4.2:

  • A method IsomorphismRcwaGroup( , ) for the case that is a (semi-) localization of Z has been added.

  • The Order method for rcwa permutations of polynomial rings GF(q)[x] has been improved.

  • The membership test for rcwa groups over polynomial rings GF(q)[x] has been improved. This also includes improved or new methods for a couple of related operations.

Changes between RCWA 2.4.0 and RCWA 2.4.1:

  • Some improvements of the documentation have been made.

Changes between RCWA 2.3.3 and RCWA 2.4.0 (February 20, 2007):

  • The groups CT(R) are now available as GAP objects.

  • More methods for RepresentativeAction have been added:

    • For RCWA(GF(q)[x]) resp. RCWA(Z_(pi)) and two partitions of GF(q)[x] resp. Z_(pi) into residue classes.

    • For RCWA(GF(q)[x]) resp. RCWA(Z_(pi)) and two unions of residue classes of GF(q)[x] resp. Z_(pi).

  • An operation ClassRotation has been introduced.

  • A method for Permuted for a list of residue classes and an rcwa permutation has been added.

  • A major "cleanup" of the source files has taken place: Many comments have been improved, and the declarations / implementations have been rearranged and grouped together by "topic".

  • The documentation has been improved in a few places.

  • Now RCWA needs ResClasses 2.4.0, which provides improved support for unions of residue classes of rings Z_(pi) and GF(q)[x].

Changes between RCWA 2.3.2 and RCWA 2.3.3:

  • Now there is a new preprint on algorithms and methods for rcwa groups, in which many of the algorithms and methods implemented in this package are described in detail. A reference to this preprint has been added to the manual.

  • A couple of minor improvements of the code and the documentation have been made. For example, the method for computing the order of a bijective rcwa mapping has been improved, and the number of stored generators of wreath products of rcwa groups with finite permutation groups has been reduced.

  • There is now a two-argument version of the function ClassPairs, which supports the rings Z_pi and GF(q)[x] as well. The ring has to be given as the first argument.

Changes between RCWA 2.3.1 and RCWA 2.3.2:

  • A copy of my thesis is distributed with the package again (somebody had asked for it).

Changes between RCWA 2.3.0 and RCWA 2.3.1:

  • A graphics function ReadFromBitmapPicture has been added.

  • The code of the function SaveAsBitmapPicture has been improved, and the requirement that the width of a bitmap picture must be a multiple of 32 has been removed.

  • A test file tst/bmptest.g for RCWA's graphics functionality has been added.

Changes between RCWA 2.2.2 and RCWA 2.3.0 (November 30, 2006):

  • Graphics functions SaveAsBitmapPicture and DrawOrbitPicture have been added.

  • A DirectProductOp method has been moved to Polycyclic. Therefore RCWA now requires Polycyclic 2.1.

  • A couple of minor improvements in the code and in the documentation have been made.

Changes between RCWA 2.2.1 and RCWA 2.2.2:

  • The implementation of the methods for checking some wildness criteria has been improved.

  • The documentation has been improved in some places.

  • A little "spelling reform" has taken place -- the longer the author looks at it, the more he is convinced that "residue-class-wise affine" looks better than "residue class-wise affine".

Changes between RCWA 2.2.0 and RCWA 2.2.1:

  • Some minor code and documentation improvements have been made. Now RCWA needs ResClasses 2.3.5.

Changes between RCWA 2.1.7 and RCWA 2.2.0 (September 20, 2006):

  • Improvements of the documentation have been made: In particular the abstract, the preface and the readme file have been updated, improved and shortened.

  • The author's thesis is no longer distributed with the package, since more and better results on residue-class-wise affine groups have been found in the meantime.

Changes between RCWA 2.1.6 and RCWA 2.1.7:

  • A function GluckTaylorInvariant has been added.

  • A bug in KernelOfActionOnRespectedPartition has been fixed.

Changes between RCWA 2.1.5 and RCWA 2.1.6:

  • A bug in the application of a non-membership criterion for rcwa groups has been fixed (the error has been identified in the code, no example has been constructed).

  • Some cleanup of comments and declarations in the source code has been made.

Changes between RCWA 2.1.4 and RCWA 2.1.5:

  • The abstract and the preface of the manual have been revised.

Changes between RCWA 2.1.3 and RCWA 2.1.4:

  • Some information in the chapter The Algorithms Implemented in RCWA of the manual has been updated.

  • A method for computing conjugates of GAP permutations under bijective rcwa mappings has been added.

Changes between RCWA 2.1.2 and RCWA 2.1.3:

  • Some additional criteria for disproving membership of a given rcwa permutation in a given rcwa group are now tested.

  • The output string of StructureDescription is now a bit nicer in certain cases.

Changes between RCWA 2.1.1 and RCWA 2.1.2:

  • A method for the operation Index for rcwa groups has been added.

  • A method for computing factor groups G/N of rcwa groups has been added. This method covers the case that the normal subgroup N has finite index in G.

  • A few internal code improvements have been made.

Changes between RCWA 2.1.0 and RCWA 2.1.1:

  • Some improvements to StructureDescription and to the membership test have been made.

Changes between RCWA 2.0.2 and RCWA 2.1.0 (June 6, 2006):

  • A method for StructureDescription with basic functionality has been added.

Changes between RCWA 2.0.0 and RCWA 2.0.2:

  • Operations Projections and RespectsPartition have been introduced.

Changes between RCWA 1.8.0 and RCWA 2.0.0 (May 30, 2006):

The main change is that the manual has been revised.

Further changes:

  • ClassTransposition, ClassShift and ClassReflection now work also over rings other than Z.

  • Methods for Multiplier and Divisor for rcwa groups have been added.

  • Some further minor extensions of the functionality have been made, e.g. there is now a method for ShortCycles analogous to ShortOrbits, and a function InjectiveAsMappingFrom has been added.

  • The code has been improved in various places.

Changes between RCWA 1.7.2 and RCWA 1.8.0 (May 18, 2006):

  • The method for the operation KernelOfActionOnRespectedPartition works now also for tame rcwa groups which are not class-wise order-preserving, and has been documented. RCWA needs now the package Polycyclic.

  • An operation SplittedClassTransposition has been introduced, and the function ClassPairs has been documented.

  • The documentation has been improved in some places, and a couple of general auxiliary functions have been documented.

  • An example "embeddings of graphs with 4 vertices in the class transposition graph" has been added to examples/examples.g.

  • Various little "internal" improvements have been made.

Changes between RCWA 1.7.1 and RCWA 1.7.2:

  • The length of the used respected partitions of tame rcwa mappings and -groups has been reduced.

Changes between RCWA 1.7.0 and RCWA 1.7.1:

  • The method for Root has been improved. The modulus of the result is now often significantly smaller.

  • Some minor improvements of code and documentation have been made.

Changes between RCWA 1.6.2 and RCWA 1.7.0 (April 28, 2006):

  • A method for Root which extracts k-th roots of class-wise order-preserving rcwa mappings of finite order has been added.

  • Methods for RepresentativeAction for RCWA(Z) and two integers and for RCWA(Z) and two tuples of integers have been added.

  • The functions Trajectory, TrajectoryModulo and CoefficientsOnTrajectory have been merged into an operation Trajectory.

  • The functions IncreasingOn and DecreasingOn have been turned into attributes.

  • The function TransitionMatrix has been turned into an operation.

  • Some cleanup "behind the scenes" has been made. In particular some code has been improved or simplified, and a number of undocumented global variables have been made local.

Changes between RCWA 1.6.0 and RCWA 1.6.2:

  • A method for IsomorphismRcwaGroup for free products of finite groups has been added.

  • Methods for CyclicGroup, DihedralGroup and AbelianGroup have been added.

Changes between RCWA 1.5.2 and RCWA 1.6.0 (April 18, 2006):

  • Two Methods for WreathProduct have been added:

    • for an rcwa group over Z and a finite permutation group, and
    • for an rcwa group over Z and an infinite cyclic group.
  • An IsomorphismRcwaGroup method for free groups has been added.

  • Properties IsClassShift, IsClassReflection, IsClassTransposition and IsPrimeSwitch have been introduced.

  • An attribute TransposedClasses for class transpositions has been introduced.

Changes between RCWA 1.5.1 and RCWA 1.5.2:

  • An example "Representations of the free group of rank 2" has been added to the manual. This example shows a transfer of the construction of the Schottky groups from PSL(2,C) to RCWA(Z).

  • An example "A representation of the modular group PSL(2,Z)" has been added to the manual.

  • A bug in the Size method for tame rcwa groups which are not class-wise order-preserving has been fixed. In certain situations this bug falsely caused the method to return infinity.

Changes between RCWA 1.4.4 and RCWA 1.5.1 (March 29, 2006):

  • Attributes Sources, Sinks and Loops have been introduced.

  • A larger number of method descriptions has been made more intuitive.

  • The names of some filters have been changed in order to make the naming scheme more consistent and more intuitive. These are:

    IsIntegralRcwaMapping -> IsRcwaMappingOfZ IsSemilocalIntegralRcwaMapping -> IsRcwaMappingOfZ_pi IsModularRcwaMapping -> IsRcwaMappingOfGFqx

    IsIntegralRcwaGroup -> IsRcwaGroupOverZ IsSemilocalIntegralRcwaGroup -> IsRcwaGroupOverZ_pi IsModularRcwaGroup -> IsRcwaGroupOverGFqx

  • Some minor adjustments to output formatting improvements in ResClasses 2.2.2 have been made. RCWA requires now ResClasses 2.2.2.

Changes between RCWA 1.4.2 and RCWA 1.4.4:

  • An attribute FixedPointsOfAffinePartialMappings has been introduced.

  • Functions LocalizedRcwaMapping and SemilocalizedRcwaMapping have been added.

  • A function mKnot has been added. This function constructs bijective rcwa mappings of the type discussed in

    Timothy P. Keller. Finite Cycles of Certain Periodically Linear Permutations. Missouri J. Math. Sci. 11(1999), no. 3, 152-157.

Changes between RCWA 1.4.1 and RCWA 1.4.2:

  • Functions ConjugatingCTs and TreeSortingPerm have been added to the examples file (rcwa/examples/examples.g):

    ConjugatingCTs is a function which, given two class transpositions ct1 and ct2, returns a 6-tuple of class transpositions ct3 .. ct8 such that ct1^(ct3 * .. * ct8) = ct2. The existence of such a tuple of class transpositions is used in the proof that the group generated by all class transpositions is simple.

    TreeSortingPerm is a mapping which is a permutation of the positive integers if and only if the 3n+1 Conjecture holds.

  • A couple of minor / technical changes have been made, e.g. some newly introduced features of ResClasses are now used. RCWA requires now ResClasses 2.2.1.

Changes between RCWA 1.4.0 and RCWA 1.4.1:

  • The attribute FactorizationIntoGenerators has been renamed to FactorizationIntoCSCRCT, and the method for computing such factorizations has been installed as a method for Factorization. The old name remains available as a synonym.

  • The mappings used in a preprint Symmetrizing the 3n+1 Tree and a few related examples have been added to examples/examples.g.

  • An example Forward orbits of a monoid with two generators has been added to the manual. In this example, it is checked by means of computation that the forward orbit of any positive integer under the action of the monoid generated by the two mappings T5+/-: n -> (n/2 if n even, (5n+/-1)/2 if n odd) contains 1.

Changes between RCWA 1.3.6 and RCWA 1.4.0 (January 27, 2006):

  • Significant parts of the documentation have been rewritten.

  • A synonym Support for MovedPoints, a generic method for NrMovedPoints and an operation Ball have been added.

Changes between RCWA 1.3.5 and RCWA 1.3.6:

  • A bug in FactorizationIntoGenerators which caused an infinite loop under certain circumstances has been fixed.

  • The shortening of the respected partition in the last factoring step in FactorizationIntoGenerators has been made much faster.

  • A special method for RepresentativeActionOp has been added.

  • A new test file tst/Ngens.tst has been added (corresponds to a preprint on minimal normal subgroups of RCWA(Z)).

Changes between RCWA 1.3.4 and RCWA 1.3.5:

  • The package documentation has been made autoloaded.

Changes between RCWA 1.3.1 and RCWA 1.3.4:

  • The errata known on 29/12/2005 have been corrected in the copy of the thesis distributed with this package.

  • A bunch of typo's in the English translation of the thesis has been corrected.

Changes between RCWA 1.3.0 and RCWA 1.3.1:

  • A list of a few (harmless!) errata for the author's thesis has been added.

Changes between RCWA 1.2.2 and RCWA 1.3.0 (November 22, 2005):

  • Operations Induction, RightInverse and CommonRightInverse have been added.

  • The code for Restriction has been improved.

  • RepresentativeAction(RCWA(Integers),P1,P2) works now also in cases where P1 and P2 do not consist entirely of single residue classes, but of unions of residue classes.

  • The multiplication of rcwa mappings is now slightly faster due to making use of a better bound for the modulus of the product.

  • The archive file now includes a copy of the author's thesis "Restklassenweise affine Gruppen" as well as an English translation of it.

Changes between RCWA 1.2.1 and RCWA 1.2.2:

  • Some code which was misplaced in RCWA has been moved to the GAP library (rudimentary support for floats, PadicValuation, EpimorphismFromFreeGroup).

  • An example has been added to the manual in which finite quotients of Grigorchuk groups are constructed.

Changes between RCWA 1.2.0 and RCWA 1.2.1:

  • An adaptation to an incompatible change in GAP 4.4.6 w.r.t. InstallValue for families has been made.

Changes between RCWA 1.1.0 and RCWA 1.2.0 (August 8, 2005):

  • An example "A group which acts 3-transitively, but not 4-transitively on Z" has been added to the manual. In this example, the 3-transitivity and non-4-transitivity of the action of a given wild rcwa group on Z is checked computationally.

  • The example which has been added in the previous version has been extended -- now it is checked that the given group acts even 4-transitively on the positive integers.

  • A RepresentativeAction method for RCWA(Z) and two unions of residue classes has been added.

Changes between RCWA 1.0.3 and RCWA 1.1.0 (June 16, 2005):

  • The Display - method for rcwa mappings over the integers now recognizes an option xdvi. If this option is set, a LaTeX representation of the rcwa mapping is written to a file, LaTeX'ed and shown with xdvi. Try e.g. Display(Random(RCWA(Integers)):xdvi);.

  • An example "A group which acts 2-transitively on the positive integers" has been added to the manual. In this example, the 2-transitivity of a given wild rcwa group is checked computationally.

Changes between RCWA 1.0.2 and RCWA 1.0.3:

  • View - methods for certain group rings of rcwa groups and their elements have been added (compact form to save space; not documented yet).

Changes between RCWA 1.0.0 and RCWA 1.0.2:

  • Several cosmetic improvements have been made; no new functionality has been added.

Release of RCWA 1.0.0: April 26, 2005