============================= new functions and new arguments in KASH 2.2 ============================= ColorString -> computes a string that can be used for colorful printing in kash programs Bell -> sounds the terminal bell Colors -> added possibility to change defaults _ColorTable -> here are the defaults, have a look IsRecType -> IsRecType(r, string) is true iff r is a record, r.Type is existent and r.Type = string RecDump -> Outputs a record and all entries, circumvents the operations.Print entry MatHermiteRowUpper -> stupid, but new MatHermiteRowUpperTrans -> sbn AbelianFieldToRCF -> starting with an abelian field, we'll reconstruct an RayClassGroupToAbelianGroup AbelianGroupEltRandom -> random element of a finite abelian group AbelianGroupEnumInit -> environment for the enumeration of all AbelianGroupEnumNext group elements AbelianGroupHomCreateId -> trivial homomorphism AbelianRayClassGroupAutoCreate -> starting with an automorphism of ideals, we'll produce an automorphism of groups FindMaximalCentralField -> find maximal quotient of RayClassGroupToAbelianGroup that will define an central extension FindQuotientOfShapeEnumInit -> environment to find subgroups/ quotients FindQuotientOfShapeEnumNext of a certain shape IdealPrimeCountInit -> environment to enumerate prime ideals IdealPrimeCountNext or their norms MatIndex -> s.th. like the determinant of rectangular matrices. RayClassFieldIsCentral -> tests whether a RayClassField is going to be a central extension RayClassFieldIsNormal -> same for normal RayClassFieldSplittingField -> computes the minimal splitting field resp. the data neccessary to get a defining equation via RayClassField (for more or less normal base fields!!) RayClassGroupToAbelianGroup -> changed: ideal, inf, MATRIX, Group name added RayClassField -> Group as parameter added, Group, deg Group, Matrix RayConductor -> Group as parameter EltPowerProduct MatSmith -> FFx allowed MatSmithTrans # Galois, GaloisT, OrderGalois -> optional parameter "usc" is removed, because it is done automatically in certain cases (e.g. for primitive groups) The result is unconditional in this case, too. # the main new Alff functions: AlffCanonicalDivisor -> compute a canonical divisor AlffClassGroup -> compute the group structure of the group of divisor classes of degree zero of a global function field AlffClassGroupGens -> same, but additionally return generators of the divisor class group AlffClassGroupPRank -> compute the p-rank of the class group, p = characteristic of the global function field AlffClassGroupGenBound -> compute a degree bound for the prime divisors which generate the divisor class group together with the supp of a divisor of degree one of a global function field AlffClassGroupGenBoundStrong -> same, but better by inspecting the gff AlffClassNumberApprox -> approximate the class number AlffClassNumberApproxBound -> compute a certain bound for class number approximations AlffDivisorClassRep -> compute the class representation of a divisor in the generators of the divisor class group of a global function field AlffDivisorLargeLDim -> compute the dimension of a divisor of large degree or with large exponents AlffDivisorLargeLBasisShort -> compute the basis of the Riemann-Roch space of a divisor of large degree or with large exponents AlffDivisorReduction -> compute a divisor reduction AlffDivisorsSmoothNum -> compute the number of smooth divisors AlffDiffCartier -> compute the Cartier operator AlffDiffCartierMatrix -> return the representation matrix of the Cartier-operator on a basis of holomorphic differentials AlffDifferent -> return the different of F / k(x) AlffDiffSpace -> return a space of differentials >= a divisor AlffDiffFirstKind -> return a basis of the differentials of first kind (= holomorphic differentials) AlffDifferentiation -> compute higher differentiations a la Hasse AlffDiff* -> more functions for differentials AlffEltEval -> eval an algebraic function at a place AlffEltLift -> compute an algebraic function which takes a prescribed value at a place AlffEltPthRoot, QfePthRoot -> take a p-th root in a global function field of characteristic p AlffGapNumbers -> return the gap numbers of a place of degree one AlffHasseWittInvariant -> compute the Hasse-Witt invariant of a global function field AlffIdealClassGroupUnitsInfty -> compute units and ideal class group of the finite maximal order AlffLinearSeries* -> 3 functions for the enumeration of a linear series in a global function field AlffLPoly -> compute the L-polynomial AlffLPolyLift -> lift the L-polynomial to constant field extensions AlffLPolyRed -> compute the L-polynomial mod p via the Cartier-operator (after Manin, R"uck) AlffPlaceRandom -> return a random place of given degree for a global function field AlffPlacesNonSpecial -> return a system of non-special places for a global function field AlffResidueField -> compute the residue field of a place AlffSUnits -> compute S-units for a set of places of a global function field AlffWeierstrassPlaces -> compute Weierstrass places PolyPrimeList -> return a list of prime polynomials of given degree over a finite field ============================= Renamed functions in KASH 2.2 ============================= ============================= new functions and new arguments in KASH 2.1 ============================= GaloisBlocks -> second optional parameter 'true' possible: Is the second parameter used, this function computes the Galois groups of the subfields and excludes transitive groups with other Galois groups of the subfields from the list of possible Galois groups. ============================= Renamed functions in KASH 2.1 ============================= ============================= new functions and new arguments in KASH 2.0 ============================= package for AbelianGroups -> basic functions for Abelian groups RayConductorTest -> support all an aditionally argument RayConductor to specify a subgroup. The fxn's RayDiscSig will operate on the factor group. ZIdealCreate -> generates an ideal in Z RayClassGroup, RayResidueRing -> work for ZIdeals RayClassFieldAuto -> computes automorphisms of RayClassFields RayClassFieldArtin -> the Artin map for RayClassFields RayClassField -> supports subgroups Alffs -> the possible constant fields are now extended to finite fields, rational numbers, number fields. Handling of places, divisors, Riemann-Roch spaces, maximal orders (integral closures) are now possible over these constant fields. AlffInit -> now gets the constant field as parameter, variable names can be specified optionally (standard is T and y). AlffVarT -> Returns the variable 'T' of the defining equation of an alff. AlffVarY -> Returns the variable 'y' of the defining equation of an alff. StarkUnitsHilbert -> Determines a defining equation for the Hilbert Class Field. StarkUnitsPolynom -> Determines the minimal polynomial of the Stark-Unit used to compute the Hilbert Class Field. StarkUnitsRealPolynom -> Determines a real approximation of the minimal polynomial of a primitive element generating the Hilbert class field of a totally real algebraic number field. EltCharPoly -> Characteristic polynomial of an algebraic element over a subfield CharPoly -> Characteristic polynomial of an algebraic function field element or a matrix Den -> generic function, returns the denominator for the following arguments: rational, algebraic element, algebraic function field order element, quotient field or polynomial, ideal Num -> generic function, returns the nominator for the following arguments: rational, algebraic element, algebraic function field order element, quotient field or polynomial, ideal GaloisSymb -> Unconditional Galois group computation up to degree 7 for polynomials in Q, Q(x) and simple relative orders. The name of the Galois group is returned. GaloisSymbT -> Same as GaloisSymb, but the number of the Galois group is returned Galois, GaloisT, OrderGalois -> now supported up to degree 15 GaloisMSumPol -> Let f be a monic polynomial of degree n in Q, Q(x) or a simple relative order.This function computes a primitive polynomial of degree binmoial(n,m). The roots of GaloisMSumPol are the sums of m distinct roots of f. GaloisMSetPol -> Let f be a monic polynomial of degree n in Q, Q(x) or a simple relative order.This function computes a primitive polynomial of degree binmoial(n,m). The roots of GaloisMSetPol are the products of m distinct roots of f. GaloisTwoSequencePol -> Let f be a monic polynomial of degree n in Q, Q(x) or a simple relative order.This function computes a primitive polynomial of degree n*(n-1). The roots of GaloisTwoSequencePol are the products of of the form xi+2xj, where xi and xj are distinct roots of f. Poly*, Qf* -> the handling of univariate polynomials and fractions of such is much improved resp. generalized. SPrint -> Creates a string instead of printing on the screen SScan -> Reads kash objects out of a string ============================= Renamed functions in KASH 2.0 ============================= Alff* -> All Gff* functions are renamed as Alff* functions. AlffInit(p, q) -> AlffInit(FF(p, q)). AlffInit() gets the constant field as parameter. ============================= Renamed functions in KASH 1.9 ============================= IntGcdEx -> IntXGcd !! list is now returned FFEFF -> FFEltFF ============================= new arguments in KASH 1.9 ============================= OrderMaximal -> The first argument can now be a list of arguments defining an order just like in the function ORDER. After that you can specify up to four strings with control devices: Round2, R2: using the round2-algo Round4, R4: using the round4-algo RD: using reduced discriminant NoRD: avoid reduced discriminant Split: using algebra-splitting NoSplit: avoid algebra-splitting Dedekind: using dedekind-test NoDedekind: avoid dedekind-test But only one of these devices in each string. old new OrderMaximal(o,"rd Round2") -> OrderMaximal(o,"Round2","RD"); OrderMaximal(o,"rd Round4") -> OrderMaximal(o,"Round4","RD"); For a detailed description of the new features see the KASH-Reference Manual or type ?OrderMaximal in a KASH-session. OrderPMaximal -> You can use the same control devices as above except of "RD" and "NoRD". For a detailed description of the new features see the KASH-Reference Manual or type ?OrderPMaximal in a KASH-session. MatOrthogonal() -> returns now list of orth. Matrix and transformation matrix ============================= Renamed functions in KASH 1.8 ============================= CycloField -> OrderCyclotomic CycloUnits -> OrderCyclotomicUnits EltIdealResidueRingRep -> EltRayResidueRingRep EltMinPolyAbs(a) -> EltMinPoly(a,Zx) EltMinPolyRel(Px,a) -> EltMinPoly(a,Px) EltNormAbs(a) -> EltNorm(a,Z) EltRepMatAbs(a) -> EltRepMAt(a,Z) EltRepMatRel(a,o) -> EltRepMat(a,o) EltTraceAbs(a) -> EltTrace(a,Z) IdealIsPrincipalByClassGroup(id) -> IdealIsPrincipal(id,"classgroup") IdealResidueRing -> RayResidueRing IdealResidueRingCyclicFactors -> RayResidueRingCyclicFactors IdealResidueRingRepToElt -> RayResidueRingRepToElt OrderClassGroupReg(o) -> OrderReg(o,"classgroup") OrderClassGroupSUnits -> OrderSUnits OrderClassGroupUnits(o) -> OrderUnits(o,"classgroup") MatMinPoly(Zx,M) -> MatMinPoly(M) MatCharPoly(Zx,M) -> MatCharPoly(M)