was@form:~$ wlan Trying to connect to ath0 Scan completed : Cell 01 - Address: 00:07:50:D5:98:66 Mode:Master Encryption key:off Quality=11/94 Signal level=-84 dBm Noise level=-95 dBm Mode:Master ESSID:"Harvard University" Frequency:2.412 GHz (Channel 1) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:11 Mb/s Cell 02 - Address: 00:07:50:D5:A1:F2 Mode:Master Encryption key:off Quality=14/94 Signal level=-81 dBm Noise level=-95 dBm Mode:Master ESSID:"Harvard University" Frequency:2.412 GHz (Channel 1) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:11 Mb/s Cell 03 - Address: 00:0F:8F:59:B2:48 Mode:Master Encryption key:off Quality=47/94 Signal level=-48 dBm Noise level=-95 dBm Mode:Master ESSID:"Harvard University" Frequency:2.437 GHz (Channel 6) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:11 Mb/s Cell 04 - Address: 00:12:44:B0:57:E0 Mode:Master Encryption key:off Quality=11/94 Signal level=-84 dBm Noise level=-95 dBm Mode:Master ESSID:"Harvard University" Frequency:2.437 GHz (Channel 6) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:6 Mb/s Bit Rate:9 Mb/s Bit Rate:11 Mb/s Bit Rate:12 Mb/s Bit Rate:18 Mb/s Bit Rate:24 Mb/s Bit Rate:36 Mb/s Bit Rate:48 Mb/s Bit Rate:54 Mb/s Cell 05 - Address: 00:40:96:45:E9:1F Mode:Master Encryption key:off Quality=42/94 Signal level=-53 dBm Noise level=-95 dBm Mode:Master Frequency:2.462 GHz (Channel 11) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:11 Mb/s Cell 06 - Address: 00:07:50:D5:9F:FB Mode:Master Encryption key:off Quality=16/94 Signal level=-79 dBm Noise level=-95 dBm Mode:Master ESSID:"Harvard University" Frequency:2.462 GHz (Channel 11) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:11 Mb/s Cell 07 - Address: 00:07:50:D5:9F:FF Mode:Master Encryption key:off Quality=7/94 Signal level=-88 dBm Noise level=-95 dBm Mode:Master ESSID:"Harvard University" Frequency:2.462 GHz (Channel 11) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:11 Mb/s Cell 08 - Address: 00:40:96:58:E1:DD Mode:Master Encryption key:off Quality=32/94 Signal level=-63 dBm Noise level=-95 dBm Mode:Master Frequency:2.462 GHz (Channel 11) Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5 Mb/s Bit Rate:11 Mb/s Internet Software Consortium DHCP Client 2.0pl5 Copyright 1995, 1996, 1997, 1998, 1999 The Internet Software Consortium. All rights reserved. Please contribute if you find this software useful. For info, please visit http://www.isc.org/dhcp-contrib.html Listening on LPF/ath0/00:05:4e:49:23:21 Sending on LPF/ath0/00:05:4e:49:23:21 Sending on Socket/fallback/fallback-net DHCPREQUEST on ath0 to 255.255.255.255 port 67 DHCPREQUEST on ath0 to 255.255.255.255 port 67 DHCPDISCOVER on ath0 to 255.255.255.255 port 67 interval 6 DHCPOFFER from 140.247.240.1 DHCPREQUEST on ath0 to 255.255.255.255 port 67 DHCPACK from 140.247.240.1 bound to 140.247.238.99 -- renewal in 900 seconds. Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 172.16.147.0 * 255.255.255.0 U 0 0 0 vmnet1 172.16.148.0 * 255.255.255.0 U 0 0 0 vmnet8 140.247.236.0 * 255.255.252.0 U 0 0 0 ath0 default sc-mr-1-gw-vl23 0.0.0.0 UG 0 0 0 ath0 was@form:~$ modular Linux modular 2.6.7-5-amd64-k8-smp #1 SMP Sun Jul 18 20:26:55 UTC 2004 x86_64 GNU/Linux Welcome to this modular.fas.harvard.edu. This computer is a kick-ass dual Opteron 248 Sun Fire V20Z server with 8GM RAM. Backups! Now /lacie has a backup of everything, so if you delete a file by accident, it's probably there still. 2004-10-21: Received a new 1 TERABYTE disk, which is /lacie. The directory /scratch is read/writeable by everyone and is mounted on this new disk. You have new mail. Last login: Tue Feb 22 09:33:05 2005 from form.fas.harvard.edu was@modular:~$ emacs -nw You have mail in /var/mail/was was@modular:~$ gp Reading GPRC: /etc/gprc ...Done. GP/PARI CALCULATOR Version 2.2.9 (alpha) amd64 running linux (x86-64 kernel) 64-bit version compiled: Feb 16 2005, gcc-3.3.5 (Debian 1:3.3.5-8) (readline v4.3 enabled, extended help available) Copyright (C) 2003 The PARI Group PARI/GP is free software, covered by the GNU General Public License, and comes WITHOUT ANY WARRANTY WHATSOEVER. Type ? for help, \q to quit. Type ?12 for how to get moral (and possibly technical) support. parisize = 8000000, primelimit = 500000 ? ? Help topics: for a list of relevant subtopics, type ?n for n in 0: user-defined identifiers (variable, alias, function) 1: Standard monadic or dyadic OPERATORS 2: CONVERSIONS and similar elementary functions 3: TRANSCENDENTAL functions 4: NUMBER THEORETICAL functions 5: Functions related to ELLIPTIC CURVES 6: Functions related to general NUMBER FIELDS 7: POLYNOMIALS and power series 8: Vectors, matrices, LINEAR ALGEBRA and sets 9: SUMS, products, integrals and similar functions 10: GRAPHIC functions 11: PROGRAMMING under GP 12: The PARI community Also: ? functionname (short on-line help) ?\ (keyboard shortcuts) ?. (member functions) Extended help looks available: ?? (opens the full user's manual in a dvi previewer) ?? tutorial / refcard / libpari (tutorial/reference card/libpari manual) ?? keyword (long help text about "keyword" from the user's manual) ??? keyword (a propos: list of related functions). ? Help topics: for a list of relevant subtopics, type ?n for n in *** Warning: unused characters: :foralistofrelevantsubtopics,type?nfornin. %1 = Helptopics ? 0: user-defined identifiers (variable, alias, function) *** Warning: unused characters: :user-definedidentifiers(variable,alias,function). %2 = 0 ? 1: Standard monadic or dyadic OPERATORS *** Warning: unused characters: :StandardmonadicordyadicOPERATORS. %3 = 1 ? 2: CONVERSIONS and similar elementary functions *** Warning: unused characters: :CONVERSIONSandsimilarelementaryfunctions. %4 = 2 ? 3: TRANSCENDENTAL functions *** Warning: unused characters: :TRANSCENDENTALfunctions. %5 = 3 ? 4: NUMBER THEORETICAL functions *** Warning: unused characters: :NUMBERTHEORETICALfunctions. %6 = 4 ? 5: Functions related to ELLIPTIC CURVES *** Warning: unused characters: :FunctionsrelatedtoELLIPTICCURVES. %7 = 5 ? 6: Functions related to general NUMBER FIELDS *** Warning: unused characters: :FunctionsrelatedtogeneralNUMBERFIELDS. %8 = 6 ? 7: POLYNOMIALS and power series *** Warning: unused characters: :POLYNOMIALSandpowerseries. %9 = 7 ? 8: Vectors, matrices, LINEAR ALGEBRA and sets *** Warning: unused characters: :Vectors,matrices,LINEARALGEBRAandsets. %10 = 8 ? 9: SUMS, products, integrals and similar functions *** Warning: unused characters: :SUMS,products,integralsandsimilarfunctions. %11 = 9 ? 10: GRAPHIC functions *** Warning: unused characters: :GRAPHICfunctions. %12 = 10 ? 11: PROGRAMMING under GP *** Warning: unused characters: :PROGRAMMINGunderGP. %13 = 11 ? 12: The PARI community *** Warning: unused characters: :ThePARIcommunity. %14 = 12 ? ? Also: *** Warning: unused characters: :. %15 = Also ? ? functionname (short on-line help) *** functionname(shorton-linehelp): unknown identifier. ? ?\ (keyboard shortcuts) # : enable/disable timer ## : print time for last result \\ : comment up to end of line \a {n} : print result in raw format (readable by PARI) \b {n} : print result in beautified format \c : list all commands (same effect as ?*) \d : print all defaults \e {n} : enable/disable echo (set echo=n) \g {n} : set debugging level \gf{n} : set file debugging level \gm{n} : set memory debugging level \h {m-n}: hashtable information \l {f} : enable/disable logfile (set logfile=f) \m {n} : print result in prettymatrix format \o {n} : change output method (0=raw, 1=prettymatrix, 2=prettyprint, 3=2-dim) \p {n} : change real precision \ps{n} : change series precision \q : quit completely this GP session \r {f} : read in a file \s {n} : print stack information \t : print the list of PARI types \u : print the list of user-defined functions \um : print the list of user-defined member functions \v : print current version of GP \w {nf} : write to a file \x {n} : print complete inner structure of result \y {n} : disable/enable automatic simplification (set simplify=n) {f}=optional filename. {n}=optional integer ? ?. (member functions) Member functions, followed by relevant objects a1-a6, b2-b8, c4-c6 : coeff. of the curve. ell area : area ell bnf : big number field bnf, bnr clgp : class group bnf, bnr cyc : cyclic decomposition (SNF) clgp bnf, bnr diff, codiff: different and codifferent nf, bnf, bnr disc : discriminant ell, nf, bnf, bnr e, f : inertia/residues degree prid fu : fundamental units bnf, bnr futu : [u,w] where u=unit group, w=torsion bnf, bnr gen : generators prid, clgp bnf, bnr index: index bnf, bnr j : j-invariant ell mod : modulus nf : number field bnf, bnr no : number of elements clgp bnf, bnr omega, eta: [omega1,omega2] and [eta1, eta2] ell p : rational prime contained in prid prid pol : defining polynomial nf, bnf, bnr reg : regulator bnf, bnr roots: roots ell nf, bnf, bnr sign : signature nf, bnf, bnr t2 : t2 matrix nf, bnf, bnr tate : Tate's [u^2,u,q] ell tu : torsion unit and its order bnf, bnr tufu : [w,u] where u=unit group, w=torsion bnf, bnr w : Mestre's w ell zk : integral basis nf, bnf, bnr zkst : structure of (Z_K/m)^* (valid for idealstar also) bnr ? Extended help looks available: *** Warning: unused characters: :. %16 = Extendedhelplooksavailable ? ?? (opens the full user's manual in a dvi previewer) '(opensthefulluser'smanualinadvipreviewer)' not found ! ? ?? tutorial / refcard / libpari (tutorial/reference card/libpari manual) 'tutorial/refcard/libpari(tutorial/referencecard/libparimanual)' not found ! ? ?? keyword (long help text about "keyword" from the user's manual) 'keyword(longhelptextabout"keyword"fromtheuser'smanual)' not found ! ? ??? keyword (a propos: list of related functions). ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Help topics: for a list of relevant subtopics, type ?n for n in 0: user-defined identifiers (variable, alias, function) 1: Standard monadic or dyadic OPERATORS 2: CONVERSIONS and similar elementary functions 3: TRANSCENDENTAL functions 4: NUMBER THEORETICAL functions 5: Functions related to ELLIPTIC CURVES 6: Functions related to general NUMBER FIELDS 7: POLYNOMIALS and power series 8: Vectors, matrices, LINEAR ALGEBRA and sets 9: SUMS, products, integrals and similar functions 10: GRAPHIC functions 11: PROGRAMMING under GP 12: The PARI community Also: ? functionname (short on-line help) ?\ (keyboard shortcuts) ?. (member functions) Extended help looks available: ?? (opens the full user's manual in a dvi previewer) ?? tutorial / refcard / libpari (tutorial/reference card/libpari manual) ?? keyword (long help text about "keyword" from the user's manual) ??? keyword (a propos: list of related functions). ? ?4 addprimes bestappr bezout bezoutres bigomega binomial chinese content contfrac contfracpnqn core coredisc dirdiv direuler dirmul divisors eulerphi factor factorback factorcantor factorff factorial factorint factormod ffinit fibonacci gcd hilbert isfundamental ispower isprime ispseudoprime issquare issquarefree kronecker lcm moebius nextprime numbpart numdiv omega precprime prime primepi primes qfbclassno qfbcompraw qfbhclassno qfbnucomp qfbnupow qfbpowraw qfbprimeform qfbred qfbsolve quadclassunit quaddisc quadgen quadhilbert quadpoly quadray quadregulator quadunit removeprimes sigma sqrtint zncoppersmith znlog znorder znprimroot znstar ? ?eulerphi eulerphi(x): Euler's totient function of x. ? eulerphi(2005) %17 = 1600 ? fibonacci(17) %18 = 1597 ? ? Help topics: for a list of relevant subtopics, type ?n for n in 0: user-defined identifiers (variable, alias, function) 1: Standard monadic or dyadic OPERATORS 2: CONVERSIONS and similar elementary functions 3: TRANSCENDENTAL functions 4: NUMBER THEORETICAL functions 5: Functions related to ELLIPTIC CURVES 6: Functions related to general NUMBER FIELDS 7: POLYNOMIALS and power series 8: Vectors, matrices, LINEAR ALGEBRA and sets 9: SUMS, products, integrals and similar functions 10: GRAPHIC functions 11: PROGRAMMING under GP 12: The PARI community Also: ? functionname (short on-line help) ?\ (keyboard shortcuts) ?. (member functions) Extended help looks available: ?? (opens the full user's manual in a dvi previewer) ?? tutorial / refcard / libpari (tutorial/reference card/libpari manual) ?? keyword (long help text about "keyword" from the user's manual) ??? keyword (a propos: list of related functions). ? ?5 elladd ellak ellan ellap ellbil ellchangecurve ellchangepoint elleisnum elleta ellglobalred ellheight ellheightmatrix ellinit ellisoncurve ellj elllocalred elllseries ellminimalmodel ellorder ellordinate ellpointtoz ellpow ellrootno ellsigma ellsub elltaniyama elltors ellwp ellzeta ellztopoint ? ?6 bnfcertify bnfclassunit bnfclgp bnfdecodemodule bnfinit bnfisintnorm bnfisnorm bnfisprincipal bnfissunit bnfisunit bnfmake bnfnarrow bnfreg bnfsignunit bnfsunit bnfunit bnrL1 bnrclass bnrclassno bnrclassnolist bnrconductor bnrconductorofchar bnrdisc bnrdisclist bnrinit bnrisconductor bnrisprincipal bnrrootnumber bnrstark dirzetak factornf galoisexport galoisfixedfield galoisidentify galoisinit galoisisabelian galoispermtopol galoissubcyclo galoissubfields galoissubgroups idealadd idealaddtoone idealappr idealchinese idealcoprime idealdiv idealfactor idealhnf idealintersect idealinv ideallist ideallistarch ideallog idealmin idealmul idealnorm idealpow idealprimedec idealprincipal idealred idealstar idealtwoelt idealval ideleprincipal matalgtobasis matbasistoalg modreverse newtonpoly nfalgtobasis nfbasis nfbasistoalg nfdetint nfdisc nfeltdiv nfeltdiveuc nfeltdivmodpr nfeltdivrem nfeltmod nfeltmul nfeltmulmodpr nfeltpow nfeltpowmodpr nfeltreduce nfeltreducemodpr nfeltval nffactor nffactormod nfgaloisapply nfgaloisconj nfhilbert nfhnf nfhnfmod nfinit nfisideal nfisincl nfisisom ---- (type RETURN to continue) ---- nfkermodpr nfmodprinit nfnewprec nfroots nfrootsof1 nfsnf nfsolvemodpr nfsubfields polcompositum polgalois polred polredabs polredord poltschirnhaus rnfalgtobasis rnfbasis rnfbasistoalg rnfcharpoly rnfconductor rnfdedekind rnfdet rnfdisc rnfeltabstorel rnfeltdown rnfeltreltoabs rnfeltup rnfequation rnfhnfbasis rnfidealabstorel rnfidealdown rnfidealhnf rnfidealmul rnfidealnormabs rnfidealnormrel rnfidealreltoabs rnfidealtwoelt rnfidealup rnfinit rnfisfree rnfisnorm rnfisnorminit rnfkummer rnflllgram rnfnormgroup rnfpolred rnfpolredabs rnfpseudobasis rnfsteinitz subgrouplist zetak zetakinit ? k=nfinit(x^3+4*x^2-5*x+3); ? k %20 = [x^3 + 4*x^2 - 5*x + 3, [1, 1], -1191, 1, [[1, -4.0965518363602541422109664116867568293, 2.5886332752660621471097293298660766446; 1, 1.5482759181801270711054832058433784146 + 0.53668127674607836326549101086340148950*I, -0.79431663763303107355486466493303832233 + 2.7352239465403914410954579026549260314*I], [1, -4.0965518363602541422109664116867568293, 2.5886332752660621471097293298660766446; 1, 2.0849571949262054343709742167067799041, 1.9409073089073603675405932377218877091; 1, 1.0115946414340487078399921949799769252, -3.5295405841734225146503225675879643538], 0, [3, -1, 1; -1, 21, -16; 1, -16, -7], [1191, 709, 154; 0, 1, 0; 0, 0, 1], [-403, -23, -5; -23, -22, 47; -5, 47, 62], [1191, [557, 2881, -2408; 481, -403, 959; 1, 482, 1037]]], [-5.0965518363602541422109664116867568293, 0.54827591818012707110548320584337841465 + 0.53668127674607836326549101086340148950*I], [1, x + 1, x^2 + 4*x- 3], [1, -1, 7; 0, 1, -4; 0, 0, 1], [1, 0, 0, 0, 6, -5, 0, -5, -3; 0, 1, 0, 1, -2, 2, 0, 2, -3; 0, 0, 1, 0, 1, 1, 1, 1, -1]] ? \p300 realprecision = 308 significant digits (300 digits displayed) ? k=nfinit(x^3+4*x^2-5*x+3); ? k %22 = [x^3 + 4*x^2 - 5*x + 3, [1, 1], -1191, 1, [[1, -4.09655183636025414221096641168675682930447433769381935531099103594927379181866930922982379485153566816285551275840831051475703822191335254159850295232350207064087361368805874015613599374867117285410212946511898233587570582277035032496820709707990879640712264734158411255705260158710511830825053479424, 2.58863327526606214710972932986607664464718676226879454814282568492370903846701489236763941008280229433307895687325983208220890579055291215600290629367016332957441333576724818106219149946756428725629104390504062484609632031875791450385494042041761450402964924750886152905350274828165564197840969208053; 1, 1.54827591818012707110548320584337841465223716884690967765549551797463689590933465461491189742576783408142775637920415525737851911095667627079925147616175103532043680684402937007806799687433558642705106473255949116793785291138517516248410354853995439820356132367079205627852630079355255915412526739712 + 0.536681276746078363265491010863401489496920079577079232482083786877910477476293015921093409547978851483300715249436570201344329493435912795176709013824197613670972623558308602908173900913223901530422426701631191902385818151382448207290338063050042334164796977731996811402653032451199281557625279012847*I, -0.794316637633031073554864664933038322323593381134397274071412842461854519233507446183819705041401147166539478436629916041104452895276456078001453146835081664787206667883624090531095749733782143628145521952520312423048160159378957251927470210208807252014824623754430764526751374140827820989204846040264 + 2.73522394654039144109545790265492603141605890066033232041917013222754586544821863864474538051659557064884889105158236785905372093717197101683248092798531584369589573112928716964937505144574839108425066165573890928169695168108655614135437147988708457736188544825787621382830360191394913362809650950700*I], [1, -4.09655183636025414221096641168675682930447433769381935531099103594927379181866930922982379485153566816285551275840831051475703822191335254159850295232350207064087361368805874015613599374867117285410212946511898233587570582277035032496820709707990879640712264734158411255705260158710511830825053479424, 2.58863327526606214710972932986607664464718676226879454814282568492370903846701489236763941008280229433307895687325983208220890579055291215600290629367016332957441333576724818106219149946756428725629104390504062484609632031875791450385494042041761450402964924750886152905350274828165564197840969208053; 1, 2.08495719492620543437097421670677990414915724842398891013757930485254737338562767053600530697374668556472847162864072545872284860439258906597596048998594864899140943040233797298624189778755948795747349143419068307032367106276762336977444161158999673236835830140278886768117933324475184071175054640997, 1.94090730890736036754059323772188770909246551952593504634775728976569134621471119246092567547519442348230941261495245181794926804189551493883102778115023417890868906324566307911827930171196624745610513970321859685864879152170759888942690126967827732534706082450344544930155222777312131263889166346674; 1, 1.011594641434048707839992194979976925155317089269830445173411731096726418433041638693818487877788982598127041129767585056034189617520763475622542462337553421649464183[+++] ? \p176 realprecision = 192 significant digits (176 digits displayed) ? \p16 realprecision = 19 significant digits (16 digits displayed) ? k %23 = [x^3 + 4*x^2 - 5*x + 3, [1, 1], -1191, 1, [[1, -4.096551836360254, 2.588633275266062; 1, 1.548275918180127 + 0.5366812767460784*I, -0.7943166376330311 + 2.735223946540391*I], [1, -4.096551836360254, 2.588633275266062; 1, 2.084957194926205,1.940907308907360; 1, 1.011594641434049, -3.529540584173423], 0, [3, -1, 1; -1, 21, -16; 1, -16, -7], [1191, 709, 154; 0, 1, 0; 0, 0, 1], [-403, -23, -5; -23, -22,47; -5, 47, 62], [1191, [557, 2881, -2408; 481, -403, 959; 1, 482, 1037]]], [-5.096551836360254, 0.5482759181801271 + 0.5366812767460784*I], [1, x + 1, x^2 + 4*x -3], [1, -1, 7; 0, 1, -4; 0, 0, 1], [1, 0, 0, 0, 6, -5, 0, -5, -3; 0, 1, 0, 1, -2,2, 0, 2, -3; 0, 0, 1, 0, 1, 1, 1, 1, -1]] ? type(k) %24 = "t_VEC" ? A = [1,2;3,4] %25 = [1 2] [3 4] ? type(A) %26 = "t_MAT" ? A^5 %27 = [1069 1558] [2337 3406] ? ?matsnf matsnf(x,{flag=0}): Smith normal form (i.e. elementary divisors) of the matrix x, expressed as a vector d. Binary digits of flag mean 1: returns [u,v,d] where d=u*x*v, otherwise only the diagonal d is returned, 2: allow polynomial entries, otherwise assume x is integral, 4: removes all information corresponding to entries equal to 1 in d. ? matsnf(A) %28 = [2, 1] ? matdet(A) %29 = -2 ? ?gettimne *** gettimne: unknown identifier. ? ?gettime gettime(): time (in milliseconds) since last call to gettime. ? gettime %30 = 20 ? gettime %31 = 0 ? {n=10; A=matrix(n,n,i,j,random(101)); gettime; B=matsnf(A); gettime()/1000.0} %32 = 0 ? n=30;A=matrix(n,n,i,j,random(101));gettime;B=matsnf(A);gettime()/1000.0 %33 = 0.008000000000000000 ? n=50;A=matrix(n,n,i,j,random(101));gettime;B=matsnf(A);gettime()/1000.0 %34 = 0.06300000000000000 ? n=100;A=matrix(n,n,i,j,random(101));gettime;B=matsnf(A);gettime()/1000.0 %35 = 1.435000000000000 ? n=150;A=matrix(n,n,i,j,random(101));gettime;B=matsnf(A);gettime()/1000.0 %36 = 34.47200000000000 ? n=200;A=matrix(n,n,i,j,random(101));gettime;B=matsnf(A);gettime()/1000.0 *** matsnf: the PARI stack overflows ! current stack size: 8000000 (7.629 Mbytes) [hint] you can increase GP stack with allocatemem() ? allocatemem() *** allocatemem: Warning: doubling stack size; new stack = 16000000 (15.259 Mbytes). ? allocatemem() *** allocatemem: Warning: doubling stack size; new stack = 32000000 (30.518 Mbytes). ? n=200;A=matrix(n,n,i,j,random(101));gettime;B=matsnf(A);gettime()/1000.0 *** matsnf: user interrupt after 27,557 ms. ? K %37 = K ? k %38 = [x^3 + 4*x^2 - 5*x + 3, [1, 1], -1191, 1, [[1, -4.096551836360254, 2.588633275266062; 1, 1.548275918180127 + 0.5366812767460784*I, -0.7943166376330311 + 2.735223946540391*I], [1, -4.096551836360254, 2.588633275266062; 1, 2.084957194926205,1.940907308907360; 1, 1.011594641434049, -3.529540584173423], 0, [3, -1, 1; -1, 21, -16; 1, -16, -7], [1191, 709, 154; 0, 1, 0; 0, 0, 1], [-403, -23, -5; -23, -22,47; -5, 47, 62], [1191, [557, 2881, -2408; 481, -403, 959; 1, 482, 1037]]], [-5.096551836360254, 0.5482759181801271 + 0.5366812767460784*I], [1, x + 1, x^2 + 4*x -3], [1, -1, 7; 0, 1, -4; 0, 0, 1], [1, 0, 0, 0, 6, -5, 0, -5, -3; 0, 1, 0, 1, -2,2, 0, 2, -3; 0, 0, 1, 0, 1, 1, 1, 1, -1]] ? k[1] %39 = x^3 + 4*x^2 - 5*x + 3 ? f = k[1] %40 = x^3 + 4*x^2 - 5*x + 3 ? a = Mod(x, f); ? a %42 = Mod(x, x^3 + 4*x^2 - 5*x + 3) ? a^3 %43 = Mod(-4*x^2 + 5*x - 3, x^3 + 4*x^2 - 5*x + 3) ? ?idealfactor idealfactor(nf,x): factorization of the ideal x given in HNF into prime ideals in the number field nf. ? idealfactor(k, a) %44 = [[3, [-1, 1, 0]~, 1, 1, [1, 0, 1]~] 1] ? idealfactor(k, 3) %45 = [[3, [-2, 1, 0]~, 2, 1, [-1, 1, 1]~] 2] [[3, [-1, 1, 0]~, 1, 1, [1, 0, 1]~] 1] ? idealfactor(k, 5) %46 = [[5, [5, 0, 0]~, 1, 3, [1, 0, 0]~] 1] ? ?idealfactor idealfactor(nf,x): factorization of the ideal x given in HNF into prime ideals in the number field nf. ? ?nfbasis nfbasis(x,{flag=0},{p}): integral basis of the field Q[a], where a is a root of the polynomial x, using the round 4 algorithm. Second and third args are optional. Binary digits of flag mean 1: assume that no square of a prime>primelimit divides the discriminant of x, 2: use round 2 algorithm instead. If present, p provides the matrix of a partial factorization of the discriminant of x, useful if one wants only an order maximal at certain primes only. ? nfbasis(x^3+4*x^2-5*x+3) %47 = [1, x, x^2] ? charpoly(2*a) %48 = x^3 + 8*x^2 - 20*x + 24 ? nfbasis(x^3+8*x^2 - 20*x + 24) %49 = [1, 1/2*x, 1/4*x^2] ? d=10; f=sum(i=0,d,i*x^i +2*x+1); gettime; nfbasis(f); gettime/1000.0 %50 = 0.01100000000000000 ? f %51 = 10*x^10 + 9*x^9 + 8*x^8 + 7*x^7 + 6*x^6 + 5*x^5 + 4*x^4 + 3*x^3 + 2*x^2 + 23*x + 11 ? d=20; f=sum(i=0,d,i*x^i +2*x+1); gettime; nfbasis(f); gettime/1000.0 %52 = 1.675000000000000 ? d=22; f=sum(i=0,d,i*x^i +2*x+1); gettime; nfbasis(f); gettime/1000.0 %53 = 1.504000000000000 ? d=25; f=sum(i=0,d,i*x^i +2*x+1); gettime; nfbasis(f); gettime/1000.0 %54 = 39.85800000000000 ? ?ffinit ffinit(p,n,{v=x}): monic irreducible polynomial of degree n over F_p[v] ? ffinit(3,4) %55 = Mod(1, 3)*x^4 + Mod(1, 3)*x^3 + Mod(1, 3)*x^2 + Mod(1, 3)*x + Mod(1, 3) ? f = ffinit(3,4) %56 = Mod(1, 3)*x^4 + Mod(1, 3)*x^3 + Mod(1, 3)*x^2 + Mod(1, 3)*x + Mod(1, 3) ? a = Mod(x, f)