gap> ######################### BEGIN COPYRIGHT MESSAGE ######################### GBNP - computing Gröbner bases of noncommutative polynomials Copyright 2001-2010 by Arjeh M. Cohen, Dié A.H. Gijsbers, Jan Willem Knopper, Chris Krook. Address: Discrete Algebra and Geometry (DAM) group at the Department of Mathematics and Computer Science of Eindhoven University of Technology.

For acknowledgements see the manual. The manual can be found in several formats in the doc subdirectory of the GBNP distribution. The acknowledgements formatted as text can be found in the file chap0.txt.

GBNP is free software; you can redistribute it and/or modify it under the terms of the Lesser GNU General Public License as published by the Free Software Foundation (FSF); either version 2.1 of the License, or (at your option) any later version. For details, see the file 'LGPL' in the doc subdirectory of the GBNP distribution or see the FSF's own site: http://www.gnu.org/licenses/lgpl.html gap> ########################## END COPYRIGHT MESSAGE ##########################

gap> LoadPackage("gbnp"); ───────────────────────────────────────────────────────────────────────────── Loading GBNP 1.0.3 (Non-commutative Gröbner bases) by A.M. Cohen (http://www.win.tue.nl/~amc) and J.W. Knopper (J.W.Knopper@tue.nl). Homepage: http://mathdox.org/products/gbnp/ ───────────────────────────────────────────────────────────────────────────── true

SGrobnerTrunc gap> F:=Rationals;; gap> NPzero:=[[],[]];; gap> NPone:=[[[]],[One(F)]];;

gap> SGrobnerTrunc([NPzero],5,[1,1])=[]; true gap> SGrobnerTrunc([],5,[1,1])=[]; true gap> SGrobnerTrunc([NPone],5,[1])=[NPone]; true

gap> F:=GF(2);; gap> NPzero:=[[],[]];; gap> NPone:=[[[]],[One(F)]];;

CheckHomogeneousNPs gap> CheckHomogeneousNPs([],[1,1])=[]; true

gap> F:=Rationals;; gap> NPzero:=[[],[]];; gap> NPone:=[[[]],[One(F)]];;

gap> CheckHomogeneousNPs([NPone],[1,1])=[0]; true

XXX NPzero is Homogeneous but the degree can not be determined -> so false is returned fail might be better here though gap> CheckHomogeneousNPs([NPzero],[1,1])=false; true

gap> F:=GF(2);; gap> NPzero:=[[],[]];; gap> NPone:=[[[]],[One(F)]];;

gap> CheckHomogeneousNPs([NPone],[1,1])=[0]; true

XXX NPzero is Homogeneous but the degree can not be determined -> so false is returned fail might be better here though gap> CheckHomogeneousNPs([NPzero],[1,1])=false; true

BaseQATrunc gap> BaseQATrunc([],1,[2,3])=[ [ [] ], [] ]; true gap> BaseQATrunc([],2,[2,3])=[ [ [] ], [], [ [1] ]]; true why GB instead of lterms (to check homogeneous-ness ?) gap> BaseQATrunc([ [[[1]],[1]] ],2,[2,3])=[ [ [] ], [], [] ]; true gap> BaseQATrunc([ [[[1]],[1]] ],3,[2,3])=[ [ [] ], [], [], [ [2] ] ]; true gap> BaseQATrunc([ [[[]],[1]] ],3,[2,3])=[ [], [], [], [] ]; true gap> BaseQATrunc([ [[[]],[One(GF(3))]] ],3,[2,3])=[ [], [], [], [] ]; true

DimsQATrunc gap> DimsQATrunc([],1,[2,3])=[1,0]; true gap> DimsQATrunc([],2,[2,3])=[1,0,1]; true gap> DimsQATrunc([ [[[1]],[1]] ],2,[2,3])=[1,0,0]; true gap> DimsQATrunc([ [[[1]],[1]] ],3,[2,3])=[1,0,0,1]; true gap> DimsQATrunc([ [[[]],[1]] ],3,[2,3])=[0,0,0,0]; true gap> DimsQATrunc([ [[[]],[One(GF(3))]] ],3,[2,3])=[0,0,0,0]; true

FreqsQATrunc gap> FreqsQATrunc([],1,[2,3])=[ [ [ [ ], 1 ] ] ]; true gap> FreqsQATrunc([],2,[2,3])=[ [ [ [ ], 1 ] ], [ [ [ 1, 0 ], 1 ] ] ]; true gap> FreqsQATrunc([ [[[1]],[1]] ],2,[2,3])=[ [ [ [ ], 1 ] ] ]; true gap> FreqsQATrunc([ [[[1]],[1]] ],3,[2,3])=[ [ [ [ ], 1 ] ], [ [ [ 0, 1 ], 1 ] ] ]; true gap> FreqsQATrunc([ [[[]],[1]] ],3,[2,3])=[]; true gap> FreqsQATrunc([ [[[]],[One(GF(3))]] ],3,[2,3])=[]; true