CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

Views: 418346
/home/daniel/maple/lib9/Janet..................................................................................................................................................................................................................................�q�F����anetJanetTJanetAJanet/versionJanet/compiledJanet/homalgJanet1/homalgJanet/copyright_JanetJanet/jplexJanet/jplex_POTJanet/jplex_dvar_blockJanet/jplex_blockJanet/plex3Janet/degrevlexJanet/degrevlex_POTJanet/degrevlex_dvar_blockJanet/degrevlex_blockJanet/degrevlex3Janet/degrevlex_degJanet/degrevlex_deg_POTJanet/degrevlex_deg_dvar_blockJanet/degrevlex_deg_blockJanet/block_ordJanet/block_ord_POTJanet/block_ord_dvar_blockJanet/block_cmpJanet/inv_divideJanet/jnonmult_prolongJanet/lead_monJanet/lead_derivJanet/get_varsJanet/get_ivarsJanet/get_termorderJanet/get_ordJanet/subsDJanet/conv2eqJanet/is_indnotationJanet/is_inhomogeneousJanet/get_optsJanet/diffalg_reduceJanet/get_inputJanet/Dresultant...,uM7R0
I/Janet/compiled"-Z4875?6"
M7R0
I0Janet/jplex_POTf*6$%"aG%"bG6#%"iG6#%jnCopyright~(C)~2000-2010~by~Daniel~Rober
tz.~All~rights~reserved.G6"C%@&2&9$6#""#&9%F1-%'RETURNG6#%&falseG2F3F/-F66#%%tr
ueG?(8$"""F?-%%nopsG6#&F06#F?F<@&2&FC6#F>&&F4FDFHF:2FIFGF5F<F+F+F+F+
M7R0
I,Janet/subsDf*6%%"pG'%&dops1G%%listG'%&dops2GF(6#%$posG6#%jnCopyright~(C)~2000
-2010~by~Daniel~Robertz.~All~rights~reserved.G6"@'555-%%typeG6$9$F(-F56$F7%"+G-
F56$F7%"*G-F56$F7%"^G-%$mapG6&F"F79%9&-%'memberG6%F7FD.8$&FE6#FJF7F/F/F/F/
M7R0
I>Janet/diff_normalform_simp_ldf*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nl
varsG%)rhs_dvarG%)coeff_ptG6&%"aG%"lG%"rG%$conG6#%jnCopyright~(C)~2000-2010~by~
Daniel~Robertz.~All~rights~reserved.G6"C(>%)_jnnformG,&F8"""F:F:>8&-%5Janet/red
uce_simp_ldG6#9"@$/F<7"-%'RETURNG6#7$&9$6#F:7$&FI6#""$&FI6#""'>8%&F<6#""#>F<&F<
FJ@%/FX%$zedG@%0FT""!C$-%2Janet/updateCOMPAG6$7#FT9'7$-%'subsopG6$/FVFhnF<FS7$F
<FSC'>8'-%0Janet/comfactorG6$FX9%@$09,FC>&FgoFJ-%5Janet/invertiblepartG6$F`pF^p
-%1Janet/updateNuStG6#7#F`p@$30F`pFhn50F`pF:0&FgoFUF:C$>F<7%-%$mapG6$f*6#F/F56$
%)operatorG%&arrowGF5-%(collectG6%-%'normalG6#*(FIF:&T#FUF:&FbrFJ!""T&%,distrib
utedGF5F56&F2FgoF&F[pFX-F[r6%-F^r6#*(FTF:F^qF:F`pFdr9+Ffr&F<FM>&FS6$FVF:-F^r6#*
(F`sF:F^qF:F`pFdrFdoF56#F8F5F5
M7R0
I/Janet/Diff2Indf*6%%$eqnG%%ivarG%%dvarG6%%"eG%"iG%"JG6#%^pCopyright~(C)~2000-2
010~by~Mohamed~Barakat~and~Daniel~Robertz.~All~rights~reserved.G6"C%>8&-%%subsG
6%-%$mapG6$f*6#%"xGF.6$%)operatorG%&arrowGF./9$-%/Janet/jmap2indG6$F?T$F.F.6$F&
9%-%/Janet/jgetdrvsG6$F?9&-F66$f*F9F.F;F./-F?6#-%#opG6#FCF?F.F.FDFIF?@$-%'hasfu
nG6$F1FIC%>8$F??(F."""FenF.55-%%typeG6$FY%%listG-Fin6$FY%"+G-Fin6$FY%"*GC%>8%Fe
n?(F.FenFenF.31Fdo-%%nopsG6#FY4-FU6$-FQ6$FdoFYFI>Fdo,&FdoFenFenFen@%Fgo>FYF^p-%
&ERRORG6#-%$catG6$%Zcannot~convert~the~following~expression~to~jet~notation:~G-
%(convertG6$FY%'stringGFdpF1F.F.F.F.
M7R0
I0Janet/jgcollectf*6$%$dopG%%ivarG6)%"iG%"jG%"vG%"lG%"AG%#dpG%#dvG6#%inCopyrigh
t~(C)~2000-2002~by~Gehrt~Hartjen.~All~rights~reserved.G6"C*@$/9$""!-%'RETURNG6#
F6>8$""">8(7"@%2""#9#C$>8*&9"6#""$@)/FF!"">8)-%%sortG6$-%$mapG6$f*6#%"xGF16$%)o
peratorG%&arrowGF17$&F56#F<-FQ6$&F56#FBf*6$%"aG%"bGF1F1F1-%.Janet/jiorderG6%F59
%T$F1F16$F&FeoF1F16$F&FdoF5f*F^oF1F1F1-%/Janet/joporderGFcoF1F1Fgo/FFF<>FO-FQ6$
-FT6$f*FWF1FYF17$Fgn-FQ6$F[of*F^oF1F1F1FaoF1F1FfoF1F1FgoF5f*F^oF1F1F1-%0Janet/j
roporderGFcoF1F1Fgo32FJFC/&FH6#""%FM>FO-FQ6$-FT6$f*FWF1FYF17$Fgn-FQ6$F[of*F^oF1
F1F1FaoF1F1FfoF1F1FgoF5f*F^oF1F1F1-%0Janet/jrvforderG6&F5FdoFeoT%F1F16&F&FdoF.F
F>FO-FQ6$-FT6$f*FWF1FYF17$Fgn-FQ6$F[of*F^oF1F1F1FaoF1F1FfoF1F1FgoF5f*F^oF1F1F1-
%/Janet/jvforderGF\rF1F1F^r>FO-FQ6$-FT6$f*FWF1FYF17$Fgn-FQ6$F[of*F^oF1F1F1FaoF1
F1FfoF1F1FgoF5f*F^oF1F1F1FgpF1F1Fgo?(F1F<F<F11F;-%%nopsG6#FOC'>8'&FO6$F;F<>8&&F
O6$F;FB?(F1F<F<F132F;Fis/&FO6$,&F;F<F<F<FBFbtC$>F^t,&F^tF<&FO6$F[uF<F<>F;F[u>F>
7$-%#opG6#F>7$F^tFbt>F;F[u>F>-FT6$f*FWF1FYF17$-%)simplifyG6#FgnF[oF1F1F1F>?(8%-
FjsFfuFMF<%%trueG@$/&F>6$FbvF<F6>F>-%'subsopG6$/Fbv%%NULLGF>@%/F>F?F7F>F1F1F1F1
M7R0
I,Janet/jezipf*6$%#L1G%#L2G6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~A
ll~rights~reserved.GF'-%$zipG6%f*6$%"aG%"bGF'6$%)operatorG%&arrowGF'/9$9%F'F'F'
-%.Janet/jmklistG6#F5-F86#F6F'F'F'F'
M7R0
I+Janet/Op2Df*6%%"LG'%%DvarG%%listG'%%ivarGF(6(%"aG%"bG%"dG%"iG%"jG%"lG6#%jnCop
yright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$@$0-%%nopsG6#9
%-F96#9&-%&ERRORG6#%_pexpecting~as~many~indeterminates~for~differential~operato
r~as~independent~variables.G@%-%%typeG6$9$F(-%(convertG6$-%$mapG6$f*6#F-F46$%)o
peratorG%&arrowGF4*&&FG6#"""FV-%%subsG6$7#-%$seqG6$/&T(6#T%&T$F[o/F\o;FV-F96#Fj
n-FI6$&FG6#""#%"*GFVF4F46(F'F;F/8'F*F>FG%"+GC$>8&7"?(8(FVFV-&%'linalgG6#%'rowdi
mG6#FG%%trueGC$>8)-FI6$-&Fdp6#%$rowG6$FGFapF(@%2""!-F96#F[q>F^p7$-%#opG6#F^p-FL
6$f*6#F,F4FPF4@'/FGFeqFeq-FE6$FTF(-FI6$-FL6$f*FOF4FPF4FSF4F46(F'F^oF/F\oF*FjnFG
F[pFSF4F4FioF[q>F^p7$FjqFeqF4F4F4F4
M7R0
I7Janet/AssertJanetBasisf*6%'%"LG%%listG'%&ivarsGF''%&dvarsGF'6D%"aG%"iG%"jG%"k
G%"lG%"nG%"rG%#ldG%"FG%"GG%"JG%%arg1G%%ivarG%%dvarG%)dops_ordG%)ivar_degG%)dvar
_degG%)ideg_ordG%)ddeg_ordG%&_ivarG%&oivarG%&m_ordG%$fmtG%%dopsG%'ldprocG%&N_Or
dG%&B_OrdG%)dvar_cmpG%"pG%&ib_gbG%)dvar_posG%*want_simpG%+force_simpG%+constcoe
ffG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"CM@$0
%2Janet/initializedG.%%trueG-%+Janet/initGFQ@%31""$-%%nopsG6#9$-%%typeG6$&F[o6#
"""F'C$>8/FW>80-%/Janet/get_varsG6$&F[o6#""#&F[o6#FgnC$>Fdo%&falseG>Ffo-Fho6$9%
9&>81&FfoF[p>82&FfoF^p>83&Ffo6#""%>84&Ffo6#""&>85&Ffo6#""'>86&Ffo6#""(>87&Ffo6#
"")>8B&Ffo6#""*>Ffo&FfoF`o@%Fdo>88-%/Janet/get_optsG6$Ffo&9"6#;F\p9#>F_s-Fas6$F
fo&Fds6#;FaqFgs>89&F_sF[p>8C&F_sFir>F_s&F_sF^p@%Fdo>8,-%0Janet/get_inputG6*F_oF
foFhpF_sFbr7"F\uFap>Fht-Fjt6*F[oFfoFhpF_sFbrF\uF\uFap>8:&FhtF[p@$1FaqFau-%&ERRO
RG6#%_pdifferential~equations~are~expected~to~be~given~as~list~of~differential~
expressions.G>8;&FhtF`q>8D5Fbt&FhtFeq>8E&FhtFjq>Fht&FhtF`o>F[q-%%subsG6$-%,Jane
t/jezipG6$FfoFjuF[q>8(-%.Janet/get_ordG6,F_tFjuFhpF[qF^qFcqFhqF]rFgr34F]vFav>8<
&F]wF`o>8=&F]wF[p>8>&F]wF^p@$&F]wF`q>FgrF\u>8?&F]wFeq>%)_jnnformG""!>%(_jreducG
Fdx>%(_jcrit2GFdx>%(_jcrit3GFdx>%(_jcrit4GFdx>8--%2Janet/setupT_ListG6.FhtFfoFh
pFbrF_sFjuFdwFjwFgrF^qFcqF`x>8@-%4Janet/HilbertSeriesGFQ@$-F]o6$Fcy%(polynomGC&
>Fcy7#-%'coeffsG6#Fcy>8%Fao?(FQFaoFaoFQ31Faz-FinF_z1Fdx&Fcy6#Faz>Faz,&FazFaoFao
Fao@$Fdz-Ffu6#%ipthe~given~list~L~is~not~a~Janet~basis~w.~r.~t.~the~variables~i
var.~You~have~to~use~JanetBasis.G>8AFao>FazFao?(FQFaoFaoFQ3/F`[lFao1Faz-Fin6#%'
T_ListGC%>8'Fao?(FQFaoFaoFQ3Fd[l1F[\l%$nivGC$@$2&Fh[l6%FazFfqF[\l%)infinityGC&>
8*Fjz>8+7%FdxFdx-%'subsopG6$/Fao-F]]l6$/F[\l,(&Fh[l6&FazFgnFaoF[\lFaoFc\lFaoFao
Fao&Fh[l6%FazFgnFao&Fh[l6$FazFgn?(FQFaoFaoFQ31Fh\lFf[l-Fgw6$&Fh[l6#Fh\lFj\l>Fh\
l,&Fh\lFaoFaoFao@$/&Fj\lF^p&Fh[l6$,&Fh\lFao!""FaoFgn>F`[lFdx>F[\l,&F[\lFaoFaoFa
o>FazFjz>%)_JStatssG7*FcxFfxFdxFhxFjxF\yF`[lFdx>%-_jforce_simpGF]vF^yFQ6)FcxFfx
FhxFjxF\yF__lFb_lFQFQ
M7R0
I0Janet/posmatrixf*6$%"AG%"rG6#%"vG6#%inCopyright~(C)~2000-2002~by~Carlos~F.~Ci
d.~All~rights~reserved.G6"C$>8$-&%'linalgG6#%$rowG6$9$9%@%-%'memberG6%"""-%(con
vertG6$F.%%listG.%$posGFA""!F+F+F+F+
M7R0
I/Janet/Pol2Difff*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6)%"aG%"iG%%ivarG%%dvarG%%rv
arG%"FG%#L2G6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved
.G6"C+>8*-%.Janet/jmklistG6#9$@$/-%%nopsG6#F8""!-%'RETURNGFA>8&-%/Janet/get_var
sG6$9%9&>8'&FF6#""#>FF&FF6#"""@$2FT-F@6#FM@&-%%typeG6$&F8FS%)equationG@$4-Fen6$
-%#opG6$FTFgnF(-%&ERRORG6#%iqthe~number~of~components~of~the~elements~in~the~fi
rst~given~list~must~match~the~number~of~dependent~variables.G4-Fen6$FgnF(>F87#F
8@%2""$9#C$>8(&9"6#""%@$4-Fen6$F_pF(-Fao6#%^qexpecting~a~list~of~names~for~the~
unknowns~representing~the~right~hand~side~standard~basis~vectors.G>F_p%%NULLG>8
)-%$mapG6$f*6#F-6&%"cG%"jG%"rG%"tGF5F5@%-Fen6$F<FhnC$@$3-Fen6$-%$lhsGF;F(0-F@6#
Far-F@6#T#-Fao6#%[rnumber~of~components~of~the~(left~hand~sides~of~the)~element
s~of~L~must~match~the~number~of~dependent~variables.G@%-Fen6$-%$rhsGF;F(C$@'/T%
F\q>FF7#-%$seqG6$-%$catG6$T'8%/F^t;FT-F@6#F_s0-F@6#FdsFat-Fao6#%erwrong~number~
of~names~for~right~hand~sides~in~optional~argument,~or~not~the~same~number~of~c
omponents~in~right~hand~sides.G>FFFds,&-%/Janet/Ind2DiffG6%-%.Janet/Pol2IndG6%F
arT)FhrFauFhrFT-F\u6%-F_u6%F_sFauFFFauFF!""@%Fcs-Fao6#%jsa~list~of~names~for~th
e~unknowns~representing~the~right~hand~side~standard~basis~vectors~must~be~prov
ided~if~the~right~hand~side~is~not~a~list.GC'>8$-%'coeffsG6%-%(collectG6%F_sFds
%,distributedGFds.FM@$0-%&minusG6$<#FM<$FT-F^oFet<"-Fao6#/%\oexpecting~right~ha
nd~side~that~is~linear~in~the~variables~in~rvarGFds@%-%'memberG6%FTF[w.F^tC%>FF
&F]v6#F^t>F]v-%'subsopG6$/F^tF\q7#F]v>FM-F^x6$F`x7#FMC%>FFFB>F]vFax>FMFex@$/-F@
6#F]vFT>F]v-F^oF]y,(F[uFT-F\u6%-F_u6%F]vFauFMFauFMFfuFFFfu@%-Fen6$F<F(C$@$0-F@F
;Ffr-Fao6#%bpnumber~of~components~of~the~elements~of~L~must~match~the~number~of
~dependent~variables.G@%/FfrFT-F\u6%-F_u6%-F^oF;FauFhrFauFhr-F\u6%-F_u6%F<FauFh
rFauFhrFfzF5F56*F/FMF0F_pF,F]vF.FFF8@%45Ffy-Fen6$F<%&arrayG-F^o6#F^q-%%copyGFb[
lF5F5F5F5
M7R0
I2Janet/LeftInversef*6%%"LG'%&ivarsG%%listG%&dvarsG6*%"iG%#JBG%#L2G%#LIG%&rvars
G%%dvarG%"JG%'nlvarsG6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights
~reserved.G6"C*>8(%%NULLG>8*F9>8+F9?(8$""$"""9#%%trueG@'-%%typeG6$&9"6#F?F(@$1"
"%F?@%5-%(hastypeG6$FH%'symbolG-FQ6$FH%(indexedG>F8FH-%&ERRORG6#%0invalid~optio
n.G-FF6$FH%)equationG@'/-%#opG6$FAFHQ)coeffeqsF5>F;FH/F[oQ*coeffdvarF5>F=FHFXFX
@%-FF6$9$%'matrixGC$>8)7#-%$seqG6$-%$catG6$%#_uGF?/F?;FA-&%'linalgG6#%'coldimG6
#Ffo>8&-%,Janet/AppOpG6&FfoFjo9%FjoC$>Fjo9&>F\qFfo@$/F8F9>F87#-F]p6$-F`p6$%#_AG
F?/F?;FA-%%nopsG6#F\q>8%&-%1Janet/JanetBasisG6'-%-Janet/AffEqnG6%F\qF`qF8F`qFjo
F;F=6#FA@%/-%4Janet/HilbertSeriesGF5""!C$>8'7#-F]p6$,&-&FjoFJ6#-F\o6#F`qFA*&&Fd
r6#,(-Far6#FdrFAF?!""FAFAFA-%&coeffG6$F_tFisFdtFdt/F?;FAFbt@%Fdo-%.Janet/Diff2O
pG6%FdsF`qF8Fds%%FAILGF5F5F5F5
M7R0
I/Janet/Jpdesolvf*6%%%leqnG'%%ivarG%%listG'%%dvarGF(6$%"aG%&fdvarG6#%jnCopyrigh
t~(C)~2000-2002~by~Daniel~Robertz.~All~rights~reserved.G6"C%@$4-%)assignedG6#%(
pdesolvG-%&ERRORG6#%]pThe~function~'pdesolv'~is~not~defined.~Please~load~the~pa
ckage~desolv~(or~Desolv).G>8%-%$mapG6$f*6#F,F06$%)operatorG%&arrowGF0@%-%%typeG
6$9$%)functionGFJ-FJ6#-%#opG6#T$F0F06$F'9%9&-F76%FJF=FSF0F0F0F0
M7R0
I1Janet/saveT_Listf*6"F$6#%jnCopyright~(C)~2006-2010~by~Daniel~Robertz.~All~rig
hts~reserved.GF$7+%'T_ListG%)number_tG%(Tab_VarG%$nivG%$zedG%&Nu_StG%&COMPAG%)G
lob_SOLG%-_jforce_simpGF$F$F$F$
M7R0
I3Janet/normalcoeffsf*6$%"pG%%varsG6"6#%jnCopyright~(C)~2008-2010~by~Daniel~Rob
ertz.~All~rights~reserved.GF'@%4-%$hasG6$9$9%-%'normalG6#F/@'-%%typeG6$F/%"+G-%
$mapG6%F"F/F0-F66$F/%"*GF1F/F'F'F'F'
M7R0
I1Janet/numerdenomf*6#%"pG6%%"iG%$denG%$numG6#%jnCopyright~(C)~2003-2010~by~Dan
iel~Robertz.~All~rights~reserved.G6"@)-%%typeG6$9$%"+GC$>8$-%'normalG6#F1@%-F/6
$F5F26$F5"""-F"6#F5-F/6$F1%"^GC$@$4-F/6$-%#opG6$""#F1%(integerG-%&ERRORG6#%?exp
ecting~only~integer~powers.G@%2FH""!6$F=F16$F1F=-F/6$F1%"*GC&>8%F=>8&F=?&F5F1%%
trueG@%-F/6$F5FBC$@$4-F/6$-FI6$FKF5FLFM@%2FboFS>Fen*&FenF=F5F=>Fgn*&FgnF=F5F=>F
gnFio6$FgnFenFUF,F,F,F,
M7R0
I8Janet/deglex_dvar_blockf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%jnCopyright~(C)~2006-
2010~by~Daniel~Robertz.~All~rights~reserved.G6"C'@&2&%,_dvarblocksG6#&9$6#""#&F
26#&9%F6-%'RETURNG6#%&falseG2F8F1-F=6#%%trueG>8%-%(convertG6$&F56#"""%"+G>8&-FG
6$&F;FJFL@'2FEFNFA2FNFEF<?(8$FKFK-%%nopsG6#FIFC@&2&FQ6#FV&FIFgnF<2FhnFfnFA@%2F4
F:F?FCF-F-F-F-
M7R0
I;Janet/degrevlex_deg_lc_POTf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%enCopyright~(C
)~2010~by~Daniel~Robertz.~All~rights~reserved.G6"C+@&2&9$6#""#&9%F4-%'RETURNG6#
%&falseG2F6F2-F96#%%trueG>8%-%%nopsG6#&F36#""">8&-%$addG6$*&&FE6#8$FG&%)_jvarde
gGFOFG/FP;FGFA>8'-FK6$*&&&F7FFFOFGFQFGFS@'2FIFVF=2FVFIF8?(FPFA!""FGF?@&2FZFNF=2
FNFZF8>FI-%(convertG6$&&F36#""$FF%"+G>FV-F`o6$&&F7FdoFFFfo@'FgnF=FhnF8?(FP-FC6#
FboFjnFGF?@&2&FjoFO&FboFOF=2FcpFbpF8F?F.F.F.F.
M7R0
I1Janet/degrevlex3f*6$%"aG%"bG6"6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~a
nd~Daniel~Robertz.~All~rights~reserved.GF'-%0Janet/degrevlexG6$&9$6#""$&9%F/F'F
'F'F'
M7R0
I+Janet/CmpDf*6&%#_pG%#_qG'%%DvarG%%listG'%%ivarGF)6-%"aG%"cG%"iG%"jG%"kG%"lG%"
pG%"qG%"rG%$opsG%"LG6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights~
reserved.G6"C&>8--%$zipG6%f*6$F/F0F:6$%)operatorG%&arrowGF:-%&parseG6#-%$catG6%
Q-_a->diff(_a,F:-%(convertG6$9$%'stringGQ")F:F:F:F:9'9&@%-%%typeG6$FP%)listlist
G>8*-%'matrixG6#FP>FenFP@%-FW6$9%FY>8+-Fgn6#F]o>F_oF]o@%-FW6$FenFgn@%-FW6$F_oFg
nC(>8,-&%'linalgG6#%'rowdimG6#Fen>8%-&F^p6#%'coldimGFap@$0-F]p6#F_oFcp-%&ERRORG
6#%Lnon~matching~dimensions~for~matrix~product.G>8.7#-%"$G6$7"F[p?(8&"""FiqF[p%
%trueG?(8'FiqFiq-FepF[qFjqC%>8$-%)simplifyG6#-%$addG6$-%,Janet/dmultG6'&Fen6$Fh
q8(&F_o6$F\sF\rFSFTF=/F\s;FiqFcp>F`r-%4Janet/normalizeWeylG6$F`rFT>Faq-%'subsop
G6$/Fhq7$-%#opG6#&Faq6#FhqF`rFaq-Fgn6#FaqC'>F[pF\p>FcpFdp>FaqFbq?(FhqFiqFiqF[pF
jq?(F\rFiqFiqFcpFjqC%>F`r-Fbr6#-Fhr6'&Fen6$FhqF\rF_oFSFTF=>F`rFbs>FaqFfsF`t@%Fg
oC'>F[pFjp>FcpF]r>FaqFbq?(FhqFiqFiqF[pFjq?(F\rFiqFiqFcpFjqC%>F`r-Fbr6#-Fhr6'Fen
&F_oF_uFSFTF=>F`rFbs>FaqFfsF`tC$>F`r-Fbr6#-Fhr6'FenF_oFSFTF=FbsF:F:F:F:
M7R0
I0Janet/jrvforderf*6&%"aG%"bG%%ivarG%%dvarG6%%"iG%"pG%"qG6#%inCopyright~(C)~200
0-2002~by~Gehrt~Hartjen.~All~rights~reserved.G6"@+2-%%nopsG6#-%#opG6#&9%6#""#-F
36#-F66#&9$F:-%'RETURNG6#%%trueG2F<F2-FC6#%&falseG-%%typeG6$F>%'symbolG@%4-FK6$
F5FMFGC%-%'memberG6%F>7$-F66#9'-F66#9&.8%-FT6%F5FV.8&@%1FhnF\oFBFGFPFBC&-FT6%-F
66$""!F>FYFgn-FT6%-F66$FdoF5FYF[o@'2FhnF\oFB2F\oFhnFG?(8$"""F^pF<FEC&-FT6%-F66$
F]pF>FfnFgn-FT6%-F66$F]pF5FfnF[o@$FjoFB@$F[pFGFBF/F/F/F/
M7R0
I-Janet/jmksetf*6#%"LG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~ri
ghts~reserved.GF&@'-%%typeG6$9$%$setGF--F+6$F-%%listG-%(convertGF,<#F-F&F&F&F&
M7R0
I-Janet/jsymchf*6$%$numG%%ivarG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Baraka
t.~All~rights~reserved.GF'-%#opG6#-%$mapG6$f*6#%"aGF'6$%)operatorG%&arrowGF'7#-
%/Janet/jsortvarG6$9$T$F'F'6$F&9%-&%)combinatG6#%'chooseG6$-F.6$f*6#%"cGF'F3F'-
%"$GF9F'F'6$F%F:F=F:F'F'F'F'
M7R0
I-Janet/TabVarf*6"6$%"iG%"nG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~D
aniel~Robertz.~All~rights~reserved.GF$C%@$4-%)assignedG6#%'T_ListG-%&ERRORG6#%P
missing~involutive~basis;~run~JanetBasis~first.G>8%-%%nopsG6#%(Tab_VarG?(8$"""F
=F6%%trueG-%&printG6#&F:6#F<F$F$F$F$
M7R0
I0Janet/jmult2indf*6$%$indG%%ivarG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Bar
akat.~All~rights~reserved.GF'-%#opG6#-%$mapG6$f*6#%"iGF'6$%)operatorG%&arrowGF'
-%"$G6$&T$6#9$&T&F;F'F'6&F&9%F%F<7#-F76#;"""-%%nopsG6#F@F'F'F'F'
M7R0
I0Janet/EulerCharf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6%%"dG%"iG%"nG6#%jnCopyrigh
t~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%>8$-%4Janet/Resolut
ionDimG6%9$9%9&>8&-%%nopsG6#F4-%$addG6$*&)!"",&8%"""FEFHFH&F46#,(F<FHFGFEFHFHFH
/FG;FHF<F1F1F1F1
M7R0
I+Janet/Extnf*6&'%"qG%'posintG%%_AR1G'%%ivarG%%listG'%%dvarGF+61%"iG%"nG%"sG%$A
R0G%$AR1G%"GG%"KG%#J1G%#R0G%#R1G%$RR1G%%kvarG%%tvarG%(tmpNuStG%%optsG6#%jnCopyr
ight~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C?>8&%%NULLG>82FD?
(8$""&"""9#%%trueG@%-%%typeG6$&9"6#FH%'symbolG>FCFQ>FF6$FFFQ>%&Nu_StG.FY@%-FO6$
9%%'matrixG>8(Fhn>F[o-%.Janet/Diff2OpG6%Fhn9&9'?(FHFJFJ9$FLC$>8'-%&evalmG6#F[o>
F[o-%,Janet/SyzOpG6%FfoF`oFF>8%-&%'linalgG6#%'coldimGFio>8,-%/Janet/JAdjointG6$
F[oF`o>8--Fhp6$FfoF`o>8.-F\p6%FfpF`oFF>8/7#-%$seqG6$-%$catG6$%#_vGFH/FH;FJF_p>8
*-%,Janet/AppOpG6&F_qFcqF`oFcq>81FY>8+-%1Janet/JanetBasisG6&-Far6&F[qFcqF`oFcqF
`oFcqFF-%1Janet/updateNuStG6#Fdr>F_r-%0Janet/InvReduceG6%F_rFfrFF>F_r-%0Janet/j
depcheckG6#-%'expandG6#F_r@$/F_r7">F_r7#""!>807#-Ffq6$-Fiq6$%#_TGFH/FH;FJ-%%nop
sGFis>8)-%-Janet/AffEqnG6&F_rF`oFatQ!F@>F_r-F_u6%F_rF`oFat>FdrFY-Fhr6&7$-%#opG6
#&Ffr6#FJ-FjuFisF`oFcqFFF\s>F_r-%/Janet/CompCondGFgu>FdrFY-Fhr6&F_rF`oFatFFF\s7
%F]uF_r-%4Janet/HilbertSeriesG6#FCF@6#FYF@F@
M7R0
I0Janet/AutonomEqf*6&%"pG'%"LG%%listG'%%ivarGF('%%dvarGF(6#%#L2G6#%jnCopyright~
(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%>8$7$-%#opG6#9%,&9$""
"-%#_AG6#-F76#9&!""-%1Janet/JanetBasisG6$F4&9"6#;""$FC-%/Janet/CompCondGFFF1F1F
1F1
M7R0
I0Janet/jfrechetof*6%%%leqnG%%ivarG%%dvarG6$%&_leqnG%"AG6#%[oCopyright~(C)~2000
-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C%>8$-%.Janet/jmklistG6#9$>8%-
%(convertG6$-%$mapG6&%.Janet/jdiffopG-%0Janet/jfrechetcG6%F09%9&FAFB%)listlistG
@%34-%%typeG6$F4%%listG/-%%nopsG6#FB"""&F66$FOFOF6F-F-F-F-
M7R0
I4Janet/jdividebyunitf*6$%"aG%"bG6"6#%[oCopyright~(C)~2004-2010~by~Mohamed~Bara
kat.~All~rights~reserved.GF'C$@$/9$""!-%'RETURNG6#F.@'-%.Janet/jchkdopG6#9%@'-F
46#F--%$mapG6$f*6#%"cGF'6$%)operatorG%&arrowGF'7$*&&F-6#"""FG&T$6$FGFG!""&F-6#"
"#F'F'6$F&F6F--F46$F-Q!F'*&F-FG&F6FJFK-%&ERRORG6$%4Wrong~ring~element:GF--F46$F
6FR@'F8-F;6$f*F>F'F@F'7$*&FEFGFIFKFLF'F'FOF-FP*&F-FGF6FKFU-FV6$FXF6F'F'F'F'
M7R0
I1Janet/maxmin_degf*6#%"TG6&%"aG%"vG%%maxdG%%mindG6#%jnCopyright~(C)~2007-2010~
by~Daniel~Robertz.~All~rights~reserved.G6"C&>8&""!>8'%)infinityG@%%0Janet/janet
likeG?&8%9$%%trueGC%>8$,&-%(convertG6$&F86$""$"""%"+GFE-F@6$-%%subsG6$/F4F1&F86
#""&FFFE@$2F0F=>F0F=@$2F=F3>F3F=?&F8F9F:C%>F=F?@$FQ>F0F=@$FT>F3F=6$F0F3F-F-F-F-
M7R0
I4Janet/reduce_pseudof*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%)rhs
_dvarG60%"aG%"bG%"hG%"iG%"jG%"pG%"rG%$divG%#lmG%&lmredG%$mulG%$su1G%$su2G%"SG6#
%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~rese
rved.G6"C,@$-%)assignedG6#%-JPRINTpseudoG-%&printG6#Q4start~reduce_pseudoF>>8&&
9$6#;"""""#>8)&FL6#""$>8*7$%$zedG""!>8/-%$zipG6%f*6$F1F2F>6$%)operatorG%&arrowG
F>/FL9%F>F>F>9'9(>80-Fhn6%f*F[oF>F\oF>F_oF>F>F>FboFao>8,-9&6#&FJ6#FO?(F>FOFOF>0
&Fio6$FPFOFZC&@$-FB6#%)JPRINTldG-FF6$Q$lm1F>Fio>8+%&falseG@$09)7"@&/%3Janet/coe
fficientsGQ(jreduceF>C(@$-FB6#%.JPRINTjreduceG-FF6#/Q/reduce:~vorherF>Fap>8--%/
Janet/jjreduceG6&F`q-%/Janet/Diff2IndG6%-%%subsG6$Ffn-%&numerG6#FapFbo9*FboF]s>
F`r*&-Fhr6$Fdo-%/Janet/Ind2DiffG6%F`rFboF]sFO-%&denomGF\s!""@$Fhq-FF6#/Q0reduce
:~nachherF>F`r>FJ7$-%'subsopG6$/&Fio6$FOFP-%(collectG6%,&&F]p6#FctFO*&,&F`rFOFa
pFgsFO&Fio6$FPFPFOFOF`o%,distributedGF]p&FJ6#FP>FapF`r/FdqQ(diffalgF>C$@$-FB6#%
.JPRINTdiffalgG-FF6$Q,belongs_to?F>-Fhr6$Ffn-%(convertG6$Fjr%%diffG@$-%3diffalg
/belongs_toG6$F]vF`qC%@$Fgu-FF6$Q+belongs_toF>%%trueG>FJ7$-F`t6$/Fct-Fft6%,&Fit
FO*&FapFOF]uFOFgsF`oF_uF]pF`u>FapFZ@$F`pC&>8'FO?(F>FOFOF>31Fjw%)number_tG4F\q@%
-%1Janet/inv_divideG6%&%'T_ListG6$FjwFU&Fex6$Fjw""&&FioF^pC(>%(_jreducG,&F]yFOF
OFO>81,&&Fio6$FOFOFO&Fex6%FjwFUFOFgs>8.-%,Janet/derivG6'F`y&Fex6$FjwFOFaoF`o9+>
FJ7$-Fhn6%f*6$F.F/F>F\oF>-%3Janet/normalcoeffsG6$-Fft6%,&*&&Fex6%T#""'FOFOFLFOF
O*&&T%FbpFOF`oFOFgsT(F_uFb[lF>F>6(F1FjwF6FioF&F`oF]p&FgyF^p-Fez6$-Fft6%,&*&&Fex
6%FjwF^[lFOFOF`uFOFO*&FapFO&FgyFauFOFgsF]zF_uF]z>FR-%$maxG6$FR,&&Fex6%FjwFOFUFO
-F`v6$F`y%"+GFO>F\qF\w>Fjw,&FjwFOFOFO@$F_xC$>FW7$-F`t6$/Fct-Fez6$-Fft6%,&&&FWF^
pFjtFOFewFOF`oF_uF`oFi]l&FWFau>FJ7$-F`t6$/Fct-Fez6$FbwF`oF]pF`u>FioFjo@$FA-FF6#
Q7finished~reduce_pseudoF>7%Fi]lF`uFRF>6#F]yF>F>
M7R0
I4Janet/normalizeWeylf*6$%"pG%%DvarG6"6#%jnCopyright~(C)~2003-2010~by~Daniel~Ro
bertz.~All~rights~reserved.GF'*&-%(collectG6%-%&numerG6#9$9%%,distributedG"""-%
&denomGF0!""F'F'F'F'
M7R0
I5Janet/deglex_deg_POTf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%jnCopyright~(C)~2004
-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C(@&2&9$6#""#&9%F4-%'RETURNG6#%
&falseG2F6F2-F96#%%trueG>8%-%%nopsG6#&F36#""">8&-%$addG6$*&&FE6#8$FG&%)_jvardeg
GFOFG/FP;FGFA>8'-FK6$*&&&F7FFFOFGFQFGFS@'2FIFVF=2FVFIF8?(FPFGFGFAF?@&2FZFNF82FN
FZF=F?F.F.F.F.
M7R0
I:Janet/jplex_lc_dvar_blockf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~201
0~by~Daniel~Robertz.~All~rights~reserved.G6"C(@&2&%,_dvarblocksG6#&9$6#""#&F26#
&9%F6-%'RETURNG6#%&falseG2F8F1-F=6#%%trueG?(8$"""FF-%%nopsG6#&F56#FFFC@&2&FJ6#F
E&&F;FKFOFA2FPFNF<>8%-%(convertG6$&&F56#""$FK%"+G>8&-FV6$&&F;FZFKFfn@'2FTFhnFA2
FhnFTF<?(FE-FH6#FX!""FFFC@&2&F[oFO&FXFOFA2FgoFfoF<@%2F4F:F?FCF-F-F-F-
M7R0
I4Janet/deglex_deg_lcf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%enCopyright~(C)~2010~
by~Daniel~Robertz.~All~rights~reserved.G6"C*>8%-%%nopsG6#&9$6#""">8&,&-%$addG6$
*&&F56#8$F8&%)_jvardegGFAF8/FB;F8F1F8&%)_jtupdegG6#&F66#""#F8>8',&-F=6$*&&&9%F7
FAF8FCF8FEF8&FH6#&FUFKF8@'2F:FN-%'RETURNG6#%%trueG2FNF:-Ffn6#%&falseGC%>F:F<>FN
FP@'FZFenFinFjn?(FBF8F8F1Fhn@&2FSF@Fjn2F@FSFen>F:-%(convertG6$&&F66#""$F7%"+G>F
N-Fgo6$&&FUF[pF7F]p@'FZFenFinFjn?(FB-F36#Fio!""F8Fhn@&2&FapFA&FioFAFen2F[qFjpFj
n@%2FJFXF\oFhnF.F.F.F.
M7R0
I'JanetT=6"%&falseGE\[lbw%*jtotalderGf*F$F$6#%[pCopyright~(C)~2000-2005~by~Moha
med~Barakat~and~Arne~Lorenz.~All~rights~reserved.GF$C$30%2Janet/initializedG.%%
trueG0-%+Janet/initGF$""!-%0Janet/jtotalderG6#9"F$F$F$%4jplex_lc_dvar_blockGf*F
$F$6#%enCopyright~(C)~2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%:Jan
et/jplex_lc_dvar_blockGF7F$F$F$%,janet_separGf*F$F$6#%\pCopyright~(C)~2000-2010
~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%2Janet/janet
_separGF7F$F$F$%)mem_multGf*F$F$6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.
~All~rights~reserved.GF$C$F,-%/Janet/mem_multGF7F$F$F$%/diffalg_reduceGf*F$F$6#
%jnCopyright~(C)~2005-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%5Jan
et/diffalg_reduceGF7F$F$F$%;diff_normalform_constcoeffGf*F$F$FBF$C$F,-%AJanet/d
iff_normalform_constcoeffGF7F$F$F$%)jpartderGf*F$F$6#%[oCopyright~(C)~2000-2002
~by~Mohamed~Barakat.~All~rights~reserved.GF$C$F,-%/Janet/jpartderGF7F$F$F$%*deg
lex_lcGf*F$F$F;F$C$F,-%0Janet/deglex_lcGF7F$F$F$%1jplex_dvar_blockGf*F$F$6#%jnC
opyright~(C)~2006-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%7Janet/j
plex_dvar_blockGF7F$F$F$%.reduce_pseudoGf*F$F$FBF$C$F,-%4Janet/reduce_pseudoGF7
F$F$F$%+jlinmatrixGf*F$F$6#%inCopyright~(C)~2000-2003~by~Gehrt~Hartjen.~All~rig
hts~reserved.GF$C$F,-%1Janet/jlinmatrixGF7F$F$F$%*degrevlexGf*F$F$FBF$C$F,-%0Ja
net/degrevlexGF7F$F$F$%5block_ord_dvar_blockGf*F$F$FboF$C$F,-%;Janet/block_ord_
dvar_blockGF7F$F$F$%&jrestGf*F$F$FfnF$C$F,-%,Janet/jrestGF7F$F$F$%'dualopGf*F$F
$6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%-
Janet/dualopGF7F$F$F$%(jaddconGf*F$F$FfnF$C$F,-%.Janet/jaddconGF7F$F$F$%)jplex_
lcGf*F$F$F;F$C$F,-%/Janet/jplex_lcGF7F$F$F$%)dadjointGf*F$F$FdqF$C$F,-%/Janet/d
adjointGF7F$F$F$%(jorderdGf*F$F$FfnF$C$F,-%.Janet/jorderdGF7F$F$F$%2deglex_dvar
_blockGf*F$F$FboF$C$F,-%8Janet/deglex_dvar_blockGF7F$F$F$%)jjetcoorGf*F$F$FfnF$
C$F,-%/Janet/jjetcoorGF7F$F$F$%7diff_normalform_pseudoGf*F$F$FBF$C$F,-%=Janet/d
iff_normalform_pseudoGF7F$F$F$%-degrevlex_lcGf*F$F$F;F$C$F,-%3Janet/degrevlex_l
cGF7F$F$F$%.restoreT_ListGf*F$F$FboF$C$F,-%4Janet/restoreT_ListGF7F$F$F$%,updat
eCOMPAGf*F$F$FIF$C$F,-%2Janet/updateCOMPAGF7F$F$F$%6deglex_deg_dvar_blockGf*F$F
$FboF$C$F,-%<Janet/deglex_deg_dvar_blockGF7F$F$F$%2binary_insert_posGf*F$F$FBF$
C$F,-%8Janet/binary_insert_posGF7F$F$F$%)jsortconGf*F$F$F)F$C$F,-%/Janet/jsortc
onGF7F$F$F$%.jdividebyunitGf*F$F$6#%[oCopyright~(C)~2004-2010~by~Mohamed~Baraka
t.~All~rights~reserved.GF$C$F,-%4Janet/jdividebyunitGF7F$F$F$%5reduce_constcoef
f_ldGf*F$F$FIF$C$F,-%;Janet/reduce_constcoeff_ldGF7F$F$F$%/reduce_simp_ldGf*F$F
$FIF$C$F,-%5Janet/reduce_simp_ldGF7F$F$F$%1is_inhomogeneousGf*F$F$FboF$C$F,-%7J
anet/is_inhomogeneousGF7F$F$F$%)jsortderGf*F$F$FfnF$C$F,-%/Janet/jsortderGF7F$F
$F$%*jfuncnameGf*F$F$FfnF$C$F,-%0Janet/jfuncnameGF7F$F$F$%*jmult2indGf*F$F$FfnF
$C$F,-%0Janet/jmult2indGF7F$F$F$%(jind2jDGf*F$F$6#%XCopyright~(C)~2005~by~Arne~
Lorenz.~All~rights~reserved.GF$C$F,-%.Janet/jind2jDGF7F$F$F$%)jeqn2prdGf*F$F$Ff
nF$C$F,-%/Janet/jeqn2prdGF7F$F$F$%(jmklistGf*F$F$FfnF$C$F,-%.Janet/jmklistGF7F$
F$F$%'jdprodGf*F$F$FfnF$C$F,-%-Janet/jdprodGF7F$F$F$%(jmulmatGf*F$F$FfnF$C$F,-%
.Janet/jmulmatGF7F$F$F$%)red2listGf*F$F$FBF$C$F,-%/Janet/red2listGF7F$F$F$%*jro
porderGf*F$F$6#%inCopyright~(C)~2000-2002~by~Gehrt~Hartjen.~All~rights~reserved
.GF$C$F,-%0Janet/jroporderGF7F$F$F$%*posmatrixGf*F$F$6#%inCopyright~(C)~2000-20
02~by~Carlos~F.~Cid.~All~rights~reserved.GF$C$F,-%0Janet/posmatrixGF7F$F$F$%(js
ubconGf*F$F$FfnF$C$F,-%.Janet/jsubconGF7F$F$F$%9deglex_deg_lc_dvar_blockGf*F$F$
F;F$C$F,-%?Janet/deglex_deg_lc_dvar_blockGF7F$F$F$%.normalizeWeylGf*F$F$FdqF$C$
F,-%4Janet/normalizeWeylGF7F$F$F$%)jmap2indGf*F$F$FfnF$C$F,-%/Janet/jmap2indGF7
F$F$F$%'jgendlGf*F$F$FfnF$C$F,-%-Janet/jgendlGF7F$F$F$%5diff_normalform_simpGf*
F$F$FBF$C$F,-%;Janet/diff_normalform_simpGF7F$F$F$%&plex3Gf*F$F$FBF$C$F,-%,Jane
t/plex3GF7F$F$F$%8block_ord_lc_dvar_blockGf*F$F$F;F$C$F,-%>Janet/block_ord_lc_d
var_blockGF7F$F$F$%+lead_derivGf*F$F$FIF$C$F,-%1Janet/lead_derivGF7F$F$F$%+degl
ex_POTGf*F$F$6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserve
d.GF$C$F,-%1Janet/deglex_POTGF7F$F$F$%4degrevlex_deg_blockGf*F$F$F\^lF$C$F,-%:J
anet/degrevlex_deg_blockGF7F$F$F$%.deglex_lc_POTGf*F$F$F;F$C$F,-%4Janet/deglex_
lc_POTGF7F$F$F$%)jzerocolGf*F$F$FazF$C$F,-%/Janet/jzerocolGF7F$F$F$%5degrevlex_
deg_lc_POTGf*F$F$F;F$C$F,-%;Janet/degrevlex_deg_lc_POTGF7F$F$F$%+criterion2Gf*F
$F$FBF$C$F,-%1Janet/criterion2GF7F$F$F$%(jmulconGf*F$F$FfnF$C$F,-%.Janet/jmulco
nGF7F$F$F$%(jgetposGf*F$F$FfnF$C$F,-%.Janet/jgetposGF7F$F$F$%(jiorderGf*F$F$Faz
F$C$F,-%.Janet/jiorderGF7F$F$F$%(deglex3Gf*F$F$FIF$C$F,-%.Janet/deglex3GF7F$F$F
$%<degrevlex_deg_lc_dvar_blockGf*F$F$F;F$C$F,-%BJanet/degrevlex_deg_lc_dvar_blo
ckGF7F$F$F$%)jind2revGf*F$F$FfnF$C$F,-%/Janet/jind2revGF7F$F$F$%.get_termorderG
f*F$F$6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$
F,-%4Janet/get_termorderGF7F$F$F$%)get_varsGf*F$F$FjalF$C$F,-%/Janet/get_varsGF
7F$F$F$%2reduce_constcoeffGf*F$F$FBF$C$F,-%8Janet/reduce_constcoeffGF7F$F$F$%/i
s_indnotationGf*F$F$FIF$C$F,-%5Janet/is_indnotationGF7F$F$F$%&dmultGf*F$F$FdqF$
C$F,-%,Janet/dmultGF7F$F$F$%)jgetdrvsGf*F$F$FfnF$C$F,-%/Janet/jgetdrvsGF7F$F$F$
%*jfrechetcGf*F$F$FfnF$C$F,-%0Janet/jfrechetcGF7F$F$F$%+canceltermGf*F$F$6#%jnC
opyright~(C)~2008-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%1Janet/c
anceltermGF7F$F$F$%'jesubsGf*F$F$FfnF$C$F,-%-Janet/jesubsGF7F$F$F$%)mult_varGf*
F$F$FBF$C$F,-%/Janet/mult_varGF7F$F$F$%0copyright_JanetGf*F$F$FBF$C$F,-%6Janet/
copyright_JanetGF7F$F$F$%*jgcollectGf*F$F$FazF$C$F,-%0Janet/jgcollectGF7F$F$F$%
*conv_prodGf*F$F$FhzF$C$F,-%0Janet/conv_prodGF7F$F$F$%-deglex_blockGf*F$F$F\^lF
$C$F,-%3Janet/deglex_blockGF7F$F$F$%(jfacsepGf*F$F$6#%>Copyright~(c)~1997~by~Kh
ai~VuGF$C$F,-%.Janet/jfacsepGF7F$F$F$%(multcmpGf*F$F$FIF$C$F,-%.Janet/multcmpGF
7F$F$F$%&subsDGf*F$F$FIF$C$F,-%,Janet/subsDGF7F$F$F$%,jplex_blockGf*F$F$F\^lF$C
$F,-%2Janet/jplex_blockGF7F$F$F$%'jsymchGf*F$F$FfnF$C$F,-%-Janet/jsymchGF7F$F$F
$%'jmkmatGf*F$F$6#%^pCopyright~(C)~2000-2002~by~Mohamed~Barakat~and~Daniel~Robe
rtz.~All~rights~reserved.GF$C$F,-%-Janet/jmkmatGF7F$F$F$%)jind2subGf*F$F$FfnF$C
$F,-%/Janet/jind2subGF7F$F$F$%9degrevlex_deg_dvar_blockGf*F$F$FboF$C$F,-%?Janet
/degrevlex_deg_dvar_blockGF7F$F$F$%8diff_normalform_simp_ldGf*F$F$FIF$C$F,-%>Ja
net/diff_normalform_simp_ldGF7F$F$F$%1reduce_pseudo_ldGf*F$F$FIF$C$F,-%7Janet/r
educe_pseudo_ldGF7F$F$F$%(nextmonGf*F$F$FPF$C$F,-%.Janet/nextmonGF7F$F$F$%+cdiv
isibleGf*F$F$FhzF$C$F,-%1Janet/cdivisibleGF7F$F$F$%*block_ordGf*F$F$F\^lF$C$F,-
%0Janet/block_ordGF7F$F$F$%.degrevlex_POTGf*F$F$FIF$C$F,-%4Janet/degrevlex_POTG
F7F$F$F$%-block_ord_lcGf*F$F$F;F$C$F,-%3Janet/block_ord_lcGF7F$F$F$%*janet_divG
f*F$F$FBF$C$F,-%0Janet/janet_divGF7F$F$F$%)jjcoeffsGf*F$F$FfnF$C$F,-%/Janet/jjc
oeffsGF7F$F$F$%+jcollectedGf*F$F$FfnF$C$F,-%1Janet/jcollectedGF7F$F$F$%5deglex_
lc_dvar_blockGf*F$F$F;F$C$F,-%;Janet/deglex_lc_dvar_blockGF7F$F$F$%2degrevlex_d
eg_POTGf*F$F$FIF$C$F,-%8Janet/degrevlex_deg_POTGF7F$F$F$%.degrevlex_degGf*F$F$F
BF$C$F,-%4Janet/degrevlex_degGF7F$F$F$%)jsortvarGf*F$F$FfnF$C$F,-%/Janet/jsortv
arGF7F$F$F$%-jplex_lc_POTGf*F$F$F;F$C$F,-%3Janet/jplex_lc_POTGF7F$F$F$%5degrevl
ex_dvar_blockGf*F$F$FboF$C$F,-%;Janet/degrevlex_dvar_blockGF7F$F$F$%8degrevlex_
lc_dvar_blockGf*F$F$F;F$C$F,-%>Janet/degrevlex_lc_dvar_blockGF7F$F$F$%)jgetinds
Gf*F$F$FfnF$C$F,-%/Janet/jgetindsGF7F$F$F$%(jdiffopGf*F$F$FfnF$C$F,-%.Janet/jdi
ffopGF7F$F$F$%'jQsubsGf*F$F$FazF$C$F,-%-Janet/jQsubsGF7F$F$F$%+jfind2multGf*F$F
$FfnF$C$F,-%1Janet/jfind2multGF7F$F$F$%)jjreduceGf*F$F$FfnF$C$F,-%/Janet/jjredu
ceGF7F$F$F$%%factGf*F$F$FhzF$C$F,-%+Janet/factGF7F$F$F$%0degrevlex_blockGf*F$F$
F\^lF$C$F,-%6Janet/degrevlex_blockGF7F$F$F$%/invertiblepartGf*F$F$F;F$C$F,-%5Ja
net/invertiblepartGF7F$F$F$%*get_inputGf*F$F$FIF$C$F,-%0Janet/get_inputGF7F$F$F
$%*block_cmpGf*F$F$F\^lF$C$F,-%0Janet/block_cmpGF7F$F$F$%*get_ivarsGf*F$F$FjalF
$C$F,-%0Janet/get_ivarsGF7F$F$F$%)jcoltermGf*F$F$FdflF$C$F,-%/Janet/jcoltermGF7
F$F$F$%+degrevlex3Gf*F$F$FBF$C$F,-%1Janet/degrevlex3GF7F$F$F$%)jvforderGf*F$F$F
azF$C$F,-%/Janet/jvforderGF7F$F$F$%)jind2mapGf*F$F$FfnF$C$F,-%/Janet/jind2mapGF
7F$F$F$%1jnonmult_prolongGf*F$F$FPF$C$F,-%7Janet/jnonmult_prolongGF7F$F$F$%)lea
d_monGf*F$F$FBF$C$F,-%/Janet/lead_monGF7F$F$F$%:diff_normalform_pseudo_ldGf*F$F
$FIF$C$F,-%@Janet/diff_normalform_pseudo_ldGF7F$F$F$%(jcmpdopGf*F$F$FfnF$C$F,-%
.Janet/jcmpdopGF7F$F$F$%%jlcmGf*F$F$FhzF$C$F,-%+Janet/jlcmGF7F$F$F$%&jezipGf*F$
F$FfnF$C$F,-%,Janet/jezipGF7F$F$F$%*reduce_ldGf*F$F$FIF$C$F,-%0Janet/reduce_ldG
F7F$F$F$%0diff_normalformGf*F$F$FBF$C$F,-%6Janet/diff_normalformGF7F$F$F$%(max_
degGf*F$F$FBF$C$F,-%.Janet/max_degGF7F$F$F$%*jdepcheckGf*F$F$F^pF$C$F,-%0Janet/
jdepcheckGF7F$F$F$%1block_ord_lc_POTGf*F$F$F;F$C$F,-%7Janet/block_ord_lc_POTGF7
F$F$F$%&DlclmGf*F$F$F\^lF$C$F,-%,Janet/DlclmGF7F$F$F$%)joporderGf*F$F$FazF$C$F,
-%/Janet/joporderGF7F$F$F$%*jrvforderGf*F$F$FazF$C$F,-%0Janet/jrvforderGF7F$F$F
$%+updateNuStGf*F$F$FIF$C$F,-%1Janet/updateNuStGF7F$F$F$%-coord_reduceGf*F$F$FB
F$C$F,-%3Janet/coord_reduceGF7F$F$F$%(jjet2jDGf*F$F$6%Fbx%'systemG%)rememberGF$
C$F,-%.Janet/jjet2jDGF7F$F$F$%,criteria234Gf*F$F$FPF$C$F,-%2Janet/criteria234GF
7F$F$F$%1degrevlex_lc_POTGf*F$F$F;F$C$F,-%7Janet/degrevlex_lc_POTGF7F$F$F$%)jco
ntentGf*F$F$FIF$C$F,-%/Janet/jcontentGF7F$F$F$%+multcoeffsGf*F$F$F_dlF$C$F,-%1J
anet/multcoeffsGF7F$F$F$%*jrepljetsGf*F$F$FfnF$C$F,-%0Janet/jrepljetsGF7F$F$F$%
(jsumsepGf*F$F$FdflF$C$F,-%.Janet/jsumsepGF7F$F$F$%'deglexGf*F$F$FIF$C$F,-%-Jan
et/deglexGF7F$F$F$%.block_ord_POTGf*F$F$F\^lF$C$F,-%4Janet/block_ord_POTGF7F$F$
F$%>diff_normalform_constcoeff_ldGf*F$F$FIF$C$F,-%DJanet/diff_normalform_constc
oeff_ldGF7F$F$F$%(jjD2indGf*F$F$FaxF$C$F,-%.Janet/jjD2indGF7F$F$F$%'jjsubsGf*F$
F$FazF$C$F,-%-Janet/jjsubsGF7F$F$F$%*jcolbylstGf*F$F$FfnF$C$F,-%0Janet/jcolbyls
tGF7F$F$F$%3diff_normalform_ldGf*F$F$FIF$C$F,-%9Janet/diff_normalform_ldGF7F$F$
F$%*jind2multGf*F$F$FazF$C$F,-%0Janet/jind2multGF7F$F$F$%+saveT_ListGf*F$F$FboF
$C$F,-%1Janet/saveT_ListGF7F$F$F$%(jchksclGf*F$F$FfnF$C$F,-%.Janet/jchksclGF7F$
F$F$%*jfrechetoGf*F$F$FfnF$C$F,-%0Janet/jfrechetoGF7F$F$F$%,reduce_simpGf*F$F$F
BF$C$F,-%2Janet/reduce_simpGF7F$F$F$%1deglex_deg_blockGf*F$F$F\^lF$C$F,-%7Janet
/deglex_deg_blockGF7F$F$F$%*comfactorGf*F$F$FIF$C$F,-%0Janet/comfactorGF7F$F$F$
%.Intersection2Gf*F$F$FdqF$C$F,-%4Janet/Intersection2GF7F$F$F$%'jinfinGf*F$F$Ff
nF$C$F,-%-Janet/jinfinGF7F$F$F$%(get_ordGf*F$F$FjalF$C$F,-%.Janet/get_ordGF7F$F
$F$%)get_optsGf*F$F$FPF$C$F,-%/Janet/get_optsGF7F$F$F$%'jopdotGf*F$F$FazF$C$F,-
%-Janet/jopdotGF7F$F$F$%+numerdenomGf*F$F$FdqF$C$F,-%1Janet/numerdenomGF7F$F$F$
%(jjD2jetGf*F$F$F`hmF$C$F,-%.Janet/jjD2jetGF7F$F$F$%(jchkdopGf*F$F$FfnF$C$F,-%.
Janet/jchkdopGF7F$F$F$%,setupT_ListGf*F$F$FIF$C$F,-%2Janet/setupT_ListGF7F$F$F$
%*jplex_POTGf*F$F$FIF$C$F,-%0Janet/jplex_POTGF7F$F$F$%)DAdjointGf*F$F$FdqF$C$F,
-%/Janet/DAdjointGF7F$F$F$%+deglex_degGf*F$F$FIF$C$F,-%1Janet/deglex_degGF7F$F$
F$%(jappmatGf*F$F$FfnF$C$F,-%.Janet/jappmatGF7F$F$F$%-jcoeffmatrixGf*F$F$6#%\pC
opyright~(C)~2000-2010~by~Gehrt~Hartjen~and~Daniel~Robertz.~All~rights~reserved
.GF$C$F,-%3Janet/jcoeffmatrixGF7F$F$F$%4ElementaryDivisors1Gf*F$F$F\^lF$C$F,-%:
Janet/ElementaryDivisors1GF7F$F$F$%)jisderivGf*F$F$FfnF$C$F,-%/Janet/jisderivGF
7F$F$F$%*countplusGf*F$F$6#%jnCopyright~(C)~2009-2010~by~Daniel~Robertz.~All~ri
ghts~reserved.GF$C$F,-%0Janet/countplusGF7F$F$F$%/deglex_deg_POTGf*F$F$F\^lF$C$
F,-%5Janet/deglex_deg_POTGF7F$F$F$%*posmemberGf*F$F$FhzF$C$F,-%0Janet/posmember
GF7F$F$F$%(jcflistGf*F$F$FfnF$C$F,-%.Janet/jcflistGF7F$F$F$%&derivGf*F$F$6%FCFa
hmFbhmF$C$F,-%,Janet/derivGF7F$F$F$%&jplexGf*F$F$FBF$C$F,-%,Janet/jplexGF7F$F$F
$%.deglex_deg_lcGf*F$F$F;F$C$F,-%4Janet/deglex_deg_lcGF7F$F$F$%(conv2eqGf*F$F$F
IF$C$F,-%.Janet/conv2eqGF7F$F$F$%+inv_divideGf*F$F$FBF$C$F,-%1Janet/inv_divideG
F7F$F$F$%&jjlinGf*F$F$FfnF$C$F,-%,Janet/jjlinGF7F$F$F$%1degrevlex_deg_lcGf*F$F$
F;F$C$F,-%7Janet/degrevlex_deg_lcGF7F$F$F$%/jautoreductionGf*F$F$FjalF$C$F,-%5J
anet/jautoreductionGF7F$F$F$%*jmultinomGf*F$F$FazF$C$F,-%0Janet/jmultinomGF7F$F
$F$%-normalcoeffsGf*F$F$F_dlF$C$F,-%3Janet/normalcoeffsGF7F$F$F$%)update_TGf*F$
F$FIF$C$F,-%/Janet/update_TGF7F$F$F$%'jjsimpGf*F$F$FfnF$C$F,-%-Janet/jjsimpGF7F
$F$F$%/SimplifySinCosGf*F$F$F^dnF$C$F,-%5Janet/SimplifySinCosGF7F$F$F$%.binary_
insertGf*F$F$FBF$C$F,-%4Janet/binary_insertGF7F$F$F$%+criteria23Gf*F$F$FPF$C$F,
-%1Janet/criteria23GF7F$F$F$%+transfer_TGf*F$F$FIF$C$F,-%1Janet/transfer_TGF7F$
F$F$%)jsublistGf*F$F$FazF$C$F,-%/Janet/jsublistGF7F$F$F$%+maxmin_degGf*F$F$6#%j
nCopyright~(C)~2007-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%1Janet
/maxmin_degGF7F$F$F$%2deglex_deg_lc_POTGf*F$F$F;F$C$F,-%8Janet/deglex_deg_lc_PO
TGF7F$F$F$%)jaffpartGf*F$F$6#%[oCopyright~(C)~2000-2003~by~Mohamed~Barakat.~All
~rights~reserved.GF$C$F,-%/Janet/jaffpartGF7F$F$F$%)jprd2eqnGf*F$F$FfnF$C$F,-%/
Janet/jprd2eqnGF7F$F$F$%(jremainGf*F$F$FazF$C$F,-%.Janet/jremainGF7F$F$F$%'jmks
etGf*F$F$FfnF$C$F,-%-Janet/jmksetGF7F$F$F$%'reduceGf*F$F$FBF$C$F,-%-Janet/reduc
eGF7F$F$F$F$
M7R0
I?Janet/degrevlex_deg_dvar_blockf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%jnCopyrigh
t~(C)~2006-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C(@&2&%,_dvarblocksG6
#&9$6#""#&F36#&9%F7-%'RETURNG6#%&falseG2F9F2-F>6#%%trueG>8%-%%nopsG6#&F66#""">8
&-%$addG6$*&&FJ6#8$FL&%)_jvardegGFTFL/FU;FLFF>8'-FP6$*&&&F<FKFTFLFVFLFX@'2FNFen
FB2FenFNF=?(FUFF!""FLFD@&2FinFSFB2FSFinF=@%2F5F;[email protected].
M7R0
I0Janet/block_ordf*6&%"aG%"bG%$sepG%+termordersG6#%"iG6#%jnCopyright~(C)~2004-2
010~by~Daniel~Robertz.~All~rights~reserved.G6"@'4-&9'6#"""6$7$&&9$F36#;F4&9&F3&
F96#""#7$&&9%F3F:&FDF?%&falseG/F7FBC$?(8$F@F4-%%nopsG6#F=%%trueG@&4-&F26#FJ6$7$
&F86#;,&&F=6#,&FJF4!""F4F4F4F4&F=FSF>7$&FCFWFE-%'RETURNG6#FF0FVFjn-F\o6#FN@%2F>
FEFFFNFNF-F-F-F-
M7R0
I2Janet/Dleftdividef*6&%"pG%"qG'%&dvarsG%%listG'%&ivarsGF)6,%"cG%"dG%#dpG%#dqG%
"iG%"jG%$opsG%#DtG%"PG%"QG6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~r
ights~reserved.G6"C2@$/9$""!-%'RETURNG6#7$F>F=@$/9%F>-%&ERRORG6#%7left~division
~by~zero.G>8(""">8&F>?(F9FLFLF931FK-%%nopsG6#9&/FNF>C&>8+&FU6#FK>FN-%'degreeG6$
F=FY@$/FN%%FAILG-FG6#%gnexpecting~differential~operators~with~rational~coeffici
ents.G>FK,&FKFLFLFL>8'-Fhn6$FEFY@$/FcoF\oF]o@$2FNFcoF?>8*-%$zipG6%f*6$F1F2F96$%
)operatorG%&arrowGF9-%&parseG6#-%$catG6%Q-_a->diff(_a,F9-%(convertG6$F=%'string
GQ")F9F9F9F99'FU@$/FcoF>-F@6#7$-%)simplifyG6#-%,Janet/dmultG6'F=*$FE!""F`qFUF[p
F>>8%F>>8,F=>8--%&numerG6#FE?(F9FLFLF91FcoFNC%>8$-Fjq6')FY,&FNFLFcoF]r*&-%&coef
fG6$Far)FYFNFL-Fbs6$Fcr)FYFcoF]rF`qFUF[p@%3-%%typeG6$Far%(polynomG-F[t6$F[sF]tC
$>Far-%(collectG6%,&FarFL-Fjq6'F[sFcrF`qFUF[pF]rFY%,distributedG>F_r-Fct6%,&F_r
FLF[sFLFYFhtC$>Far-%4Janet/normalizeWeylG6$FetFU>F_r-F`u6$F\uFU>FN-Fhn6$FarFY>F
_r-Fjq6'F_r-%&denomGFfrF`qFUF[p7$F_rFarF9F9F9F9
M7R0
I9Janet/ElementaryDivisorsf*6%'%"TG<$%'matrixG%%listG'%&ivarsGF)'%&dvarsGF)6=%"
aG%"bG%"cG%"dG%"hG%"iG%"jG%"kG%"mG%"nG%"rG%"tG%%DvarG%#DtG%$conG%%degtG%$denG%&
gammaG%$numG%"GG%"MG%#M0G%"PG%"UG%"VG%&trafoG%*nopreprocG6#%jnCopyright~(C)~200
4-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C1@'-%%typeG6$9$F(C$>809&@%5-%
(hastypeG6$FRF)3-FP6$FR%'symbolG-FZ6$-%&evalmG6#FRF)>88-F(6#-%+Janet/Op2DG6%FRF
U9%>F`o-%%copyGF^o-FP6$FR%)listlistGC$>FUFV>F`o-F(F^oC$>FU7#-%$seqG6$-%$catG6$%
#_DG8)/F[q;"""-%%nopsG6#Ffo>F`o-F(6#-%-Janet/Diff2DG6&FRFUFfoFV>8=%%trueG>8>Fjq
?(F[q""%F^q9#Fjq@%-FP6$&9"6#F[q%)equationG@'/-%#opG6$F^qFcrQ.preprocessingFL@%-
FP6$-Fjr6$""#Fcr%(booleanG>F\r4F`s-%&ERRORG6#%Texpecting~boolean~value~for~opti
on~"preprocessing".G/FirQ&trafoFL@%F^s>FiqF`s-Fgs6#%Lexpecting~boolean~value~fo
r~option~"trafo".G-Fgs6#%0invalid~option.GFat@$-%)assignedG6#%*JCHECK_EDG>89-Fi
o6#F`o>8/&Ffo6#F^q>81&FUF`u>8+-&%'linalgG6#%'rowdimGF\u>8--&Fhu6#%'coldimGF\u@$
FiqC$>8;-&Fhu6#%%diagG6#-%"$G6$F^qFeu>8<-Ffv6#-F[w6$F^qF\v@$4F\r?(F[qF^qF^qFeuF
jqC&>84F^q>86""!?(8*F^qF^qF\vFjq@$0&F`o6$F[qF]xF[xC%>82-%(contentG6$F`xFbu>Fhw-
%$lcmG6$Fhw-%&denomG6#Fdx>Fjw-%$gcdG6$Fjw-%&numerGF^y@$50FhwF^q0FjwF^qC&@$-Fft6
#%2JPRINT_ED_CONTENTG-%&printG6$Q2multipliziere~mitFL7$FhwFjw>87-Ffv6#-Fjr6#-%'
subsopG6$/F[q*&FhwF^qFjw!""7#Fjv>F`o-%+Janet/CmpDG6&F`oFdzFUFfo@$Fiq>Fdv-Fb[l6&
FdvFdzFUFfo>8(F^q>83F[x?(FLF^qF^qFL1Fi[l-%$minG6$FeuF\vC%>85F^q?(FLF^qF^qFL0Fc\
lF[xC7>8,F^[l>FhwF^q>FjwF[x?(F[qFi[lF^qFeuFjq?(F]xFi[lF^qF\vFjq@$F_xC'>FdxFex>F
hwFix>FjwF`y>8'-%'degreeGFgx@$5/Fh\lF^[l2Fc]lFh\lC%>Fh\lFc]l>8.F[q>8&F]x@$Fh]l@
%Fiq-%'RETURNG6#7%-F]o6#Fdv-F]oF\u-F]o6#F^w-Fc^l6#Fh^l@$-Fft6#%*JPRINT_EDGC%-F_
z6#Q4vor~Multiplikation:FL-F_z6$Q"MFLFh^l@$Fiq-F_z6$Q"UFLFf^l@$F^_lC$-F_z6$Q&Gr
adeFL-%(convertG6$-%$mapG6%Fe]lF`oFbuF\pF^z@$FfyC%>Fdz-Ffv6$-F[w6$F^q,&Fi[lF^qF
^[lF^q-F[w6$F][l,(FeuF^qFi[lF^[lF^qF^q>F`o-Fb[l6&FdzF`oFUFfo@$Fiq>Fdv-Fb[l6&Fdz
FdvFUFfo@$3Fet4-&Fhu6#%'iszeroG6#-%)simplifyG6#-F]o6#,&-Fb[l6&-Fb[l6&FdvFjtFUFf
oF^wFUFfoF^qF`oF^[l-Fgs6#%)falsch5.G@$-Fft6#%/JPRINT_ED_SWAPGC&-F_z6#Q%swapFL-F
_z6$Q"hFLFi[l-F_z6$Q"rFLF]^l-F_z6$Q"cFLF_^l>F`o-&Fhu6#%(swaprowG6%-&Fhu6#%(swap
colG6%F`oFi[lF_^lFi[lF]^l@$FiqC$>F^w-Ffdl6%F^wFi[lF_^l>Fdv-Fadl6%FdvFi[lF]^l>F[
q,&Fi[lF^qF^qF^q>Fc\lF[x?(FLF^qF^qFL31F[qFeu/Fc\lF[xC*>Fc\l-%2Janet/Dleftdivide
G6&&F`o6$F[qFi[l&F`o6$Fi[lFi[lFUFfo@$3Fet0-Fbbl6#,(F^flF^q-Fb[l6&&Fc\lF`uF`flFU
FfoF^[l&Fc\l6#FbsF^[lF[x-Fgs6#%)falsch1.G>F^flF[gl?(F]xFcelF^qF\vFjqC$>8:-Fb[l6
&Fjfl&F`o6$Fi[lF]xFUFfo@%3-FP6$F`x%(polynomG-FP6$FdglF]hl>F`x-%(collectG6%,&F`x
F^qFdglF^[lFU%,distributedGC$>FdglFdhl>F`x-%4Janet/normalizeWeylG6$FdglFU@$Fiq?
(F]xF^qF^qFeuFjqC$>Fdgl-Fb[l6&Fjfl&FdvFhglFUFfo@%3-FP6$&FdvFaxF]hlF^hl>Fgil-Fbh
l6%,&FgilF^qFdglF^[lFUFehlC$>FdglF[jl>FgilFihl@$FjalC&Ffcl-F_z6$Q"iFLF[q-F_z6$Q
"kFLFeu-Fgs6#%*falsch2.1G>Fc\lF[gl>F[q,&F[qF^qF^qF^q@$F^_l-F_z6#Q1nach~left~div
ideFL@$Fjal-Fgs6#%)falsch2.G>F[qFcel?(FLF^qF^qFL31F[qF\vFhelC*>Fc\l-%3Janet/Dri
ghtdivideG6&&F`o6$Fi[lF[qF`flFUFfo@$3Fet0-Fbbl6#,(F^\mF^q-Fb[l6&F`flFjflFUFfoF^
[lF[glF^[lF[x-Fgs6#%)falsch3.G>F^\mF[gl@$-Fft6#%/JPRINT_ED_MOREGC$Fajl-F_z6$Q&g
ammaFLFc\l?(F]xFcelF^qFeuFjqC'@$F]]m-F_z6$Q'M[j,h]FL&F`o6$F]xFi[l>Fdgl-Fb[l6&Fj
]mFjflFUFfo@$F]]m-F_z6$Q"PFLFdgl@%3-FP6$&F`o6$F]xF[qF]hlF^hl>Fg^m-Fbhl6%,&Fg^mF
^qFdglF^[lFUFehl>Fg^m-Fjhl6$F\_mFU@$F]]m-F_z6$Q'M[j,i]FLFg^m@$Fiq?(F]xF^qF^qF\v
FjqC'@$F]]m-F_z6$Q'V[j,h]FL&F^wF[^m>Fdgl-Fb[l6&F[`mFjflFUFfo@$F]]mF`^m@%3-FP6$&
F^wFh^mF]hlF^hl>Fd`m-Fbhl6%,&Fd`mF^qFdglF^[lFUFehl>Fd`m-Fjhl6$Fh`mFU@$F]]m-F_z6
$Q'V[j,i]FLFd`m>Fc\lF[gl>F[qF\[m@$F^_l-F_z6#Q2nach~right~divideFL@$Fjal-Fgs6#%)
falsch4.G@%/Fh\lF[xC&@$Fiq?(F]xF^qF^qFeuFjq>Fbil-Fb[l6&*$F`flF^[lFbilFUFfo>F`fl
F^q>Fi[lFcel>F[\lF[xC'>Fh\lF^[l>FhwF^q>FjwF[x?(F[qFcelF^qFeuFjq?(F]xFcelF^qF\vF
jq@$F_xC'>FdxFex>FhwFix>FjwF`y>Fc]lFd]l@$Fg]lC%>Fh\lFc]l>F]^lF[q>F_^lF]x@%0Fh\l
F^[lC&@$FfyC%>Fdz-Ffv6$-F[w6$F^qFi[l-F[w6$F][l,&FeuF^qFi[lF^[l>F`oFcal@$Fiq>Fdv
Fgal>F[\l,&F[\lF^qF^qF^q?(F]xFcelF^qFeuFjq>Fj]m-Fjhl6$,&Fj]mF^q-Fb[l6&&F`o6$F]x
F_^l)F^uF[\lFUFfoF^qFU@$Fiq?(F]xF^qF^qF\vFjq>F[`m-Fjhl6$,&F[`mF^q-Fb[l6&&F^wFae
mFbemFUFfoF^qFUC&>Fc\l-%&coeffG6$F`fl)Fbu-Fe]l6$F`flFbu@$Fiq?(F]xF^qF^qFeuFjq>F
bil-Fjhl6$-Fb[l6&*$Fc\lF^[lFbilFUFfoFU>F`fl-Fjhl6$-Fb[l6&F[gmF`flFUFfoFU@%FiqFb
^lF[_l@%FiqFe^lFh^lFLFLFLFL
M7R0
I;Janet/diff_normalform_simpf*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvar
sG%)rhs_dvarG%)coeff_ptG6%%"aG%"rG%$conG6#%\pCopyright~(C)~2000-2010~by~Carlos~
F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C%>%)_jnnformG,&F7"""F9F9>8%-
%2Janet/reduce_simpG6#9"@%/&F;6#F9%$zedG@%0&F;6#""#""!C$-%2Janet/updateCOMPAG6$
7#FG9'-%'subsopG6$/FIFJF;F;C&>8&-%0Janet/comfactorG6$FB9%@$09,7">&FWFC-%5Janet/
invertiblepartG6$F[oFhn-%1Janet/updateNuStG6#7#F[o@%30F[oFJ50F[oF90&FWFHF97%-%$
mapG6$f*6#F/F46$%)operatorG%&arrowGF4-%(collectG6%-%'normalG6#*(9$F9&T#FHF9&F\q
FC!""T&%,distributedGF4F46&F1FWF&FenFB-Fdp6%-Fgp6#*(FGF9FioF9F[oF^q9+F`q&F;6#""
$F;F46#F7F4F4
M7R0
I2Janet/reduce_simpf*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%)rhs_d
varG%)coeff_ptG60%"aG%"hG%"iG%"jG%"pG%"rG%$denG%$divG%#lmG%&lmredG%$mulG%$su1G%
$su2G%"SG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~
rights~reserved.G6"C*>8%&9$6#;"""""#>8(&FD6#""$>8)7$%$zedG""!>8/-%$zipG6%f*6$F1
F2F?6$%)operatorG%&arrowGF?/FD9%F?F?F?9'9(>80-FV6%f*FYF?FZF?FgnF?F?F?FjnFin>8,-
9&6#&FB6#FG?(F?FGFGF?0&Fao6$FHFGFRC%>8+%&falseG@$09)7"@&/%3Janet/coefficientsGQ
(jreduceF?C(@$-%)assignedG6#%.JPRINTjreduceG-%&printG6#/Q4reduce_simp:~vorherF?
Fio>8--%)simplifyG6#-%/Janet/jjreduceG6&Fap-%/Janet/Diff2IndG6%-%%subsG6$FT-%&n
umerG6#FioFjn9*FjnFcr>Fcq*&-F^r6$F\o-%/Janet/Ind2DiffG6%FcqFjnFcrFG-%&denomGFbr
!""@$Fip-F^q6#/Q5reduce_simp:~nachherF?Fcq>FB7$-%'subsopG6$/&Fao6$FGFH-%(collec
tG6%,&&Feo6#FisFG*&,&FcqFGFioF]sFG&Fao6$FHFHFGFGFhn%,distributedGFeo&FB6#FH>Fio
Fcq/FepQ(diffalgF?C$@$-Fjp6#%.JPRINTdiffalgG-F^q6$Q9reduce_simp:~belongs_to?F?-
F^r6$FT-%(convertG6$F`r%%diffG@$-%3diffalg/belongs_toG6$FcuFapC%@$F]u-F^q6$Q8re
duce_simp:~belongs_toF?%%trueG>FB7$-Ffs6$/Fis-F\t6%,&F_tFG*&FioFGFctFGF]sFhnFet
FeoFft>FioFR@$FhoC&>8&FG?(F?FGFGF?31F`w%)number_tG4F]p@%-%1Janet/inv_divideG6%&
%'T_ListG6$F`wFM&F[x6$F`w""&&FaoFfoC+>%(_jreducG,&FcxFGFGFG>81,&&Fao6$FGFGFG&F[
x6%F`wFMFGF]s>8.-%,Janet/derivG6'Ffx&F[x6$F`wFGFinFhn9+>8**&&F[x6%F`w""'FGFG-F\
s6#FgyFG@$09,Fbp-F^q6$Q)red~subsF?-%%evalG6#-F^r6$F^zFey-%1Janet/updateNuStG6#7
#Fey>FB7$-F\t6%-Feq6#,&FeoFG-%$mapG6$f*6#F/F?FZF?*(&T#FjoFG&F[x6%T%FiyFGF]sFDFG
F?F?6&F7FaoF1F`w&F]yFfoF]sFhnFet-F\t6%-Feq6#,&FftFG*(FioFGFgyF]s&F]yFgtFGF]sFcy
Fet>FJ-%$maxG6$FJ,&&F[x6%F`wFGFMFG-Ffu6$Ffx%"+GFG>F]pFbv>F`w,&F`wFGFGFG@$FewC$>
FO7$-Ffs6$/Fis-F\t6%-Feq6#,&&&FOFfoF`tFGF[wFGFhnFetF`^l&FOFgt>FB7$-Ffs6$/Fis-F\
t6%-Feq6#FjvFhnFetFeoFft>FaoFbo7%F`^lFftFJF?6#FcxF?F?
M7R0
I/Janet/jvforderf*6&%"aG%"bG%%ivarG%%dvarG6%%"iG%"pG%"qG6#%inCopyright~(C)~2000
-2002~by~Gehrt~Hartjen.~All~rights~reserved.G6"@+2-%%nopsG6#-%#opG6#&9$6#""#-F3
6#-F66#&9%F:-%'RETURNG6#%%trueG2F<F2-FC6#%&falseG-%%typeG6$F5%'symbolG@%4-FK6$F
>FMFBC%-%'memberG6%F57$-F66#9&-F66#9'.8%-FT6%F>FV.8&@%1FhnF\oFBFGFPFGC&-FT6%-F6
6$""!F5FfnFgn-FT6%-F66$FdoF>FfnF[o@'2FhnF\oFB2F\oFhnFG?(8$"""F^pF2FEC&-FT6%-F66
$F]pF5FYFgn-FT6%-F66$F]pF>FYF[o@$FjoFB@$F[pFGFBF/F/F/F/
M7R0
I/Janet/jisderivf*6$%%funcG%%dvarG6#%#fnG6#%[oCopyright~(C)~2000-2002~by~Mohame
d~Barakat.~All~rights~reserved.G6"@)4-%%typeG6$9$%)functionG%&falseG-%$hasG6$-%
#opG6$""!F1%"DG-%'memberG6$-F86#F79%-F56$F7%%diffGC%>8$-F86$"""F1?(F+FJFJF+-F56
$-F86$F:FGFD>FG-F86$FJFG-F=6$FNFA@%/9#""#F3-F=6$F7FAF+F+F+F+
M7R0
I.Janet/jfacsepf*6$%%termG%$varG6#%%dfacG6#%>Copyright~(c)~1997~by~Khai~VuG6"@'
-%%typeG6$9$%"*GC$>8$-%'selectG6%%$hasGF09%7$F4*&F0"""F4!""-F86$F0F97$F0F<7$F<F
0F+F+F+F+
M7R0
I<Janet/WeightedHilbertSeriesf*6%'%&ivarsG%%listG'%&dvarsGF'%#_sG6.%"bG%"fG%"iG
%"jG%"pG%"sG%$serG%%ivarG%%dvarG%)ivar_degG%)dvar_degG%$ndvG6#%jnCopyright~(C)~
2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C/@$4-%)assignedG6#%'T_List
G-%&ERRORG6#%Pmissing~involutive~basis;~run~JanetBasis~first.G>8/-%%nopsG6#&FA6
%"""FMFM>8+-%/Janet/get_varsG6$9$9%>8,&FO6#""#>8-&FO6#""%>8.&FO6#""&>FO&FO6#FM@
$0-FI6#FO%$nivG-FC6#%Gwrong~number~of~independent~variables.G@$0-FI6#FVFG-FC6#%
Ewrong~number~of~dependent~variables.G@$/Fjn7">Fjn7#-%"$G6$""!FG@%29#""$>8).F^q
>F^q9&@%2F\qF[qC%>8%-%$mulG6$*$,&FMFM)F^q&Fen6#8&!""F`r/F_r;FMFeo>8*-%$addG6$*&
)F^q&FjnF^rFMFfqFM/F_r;FMFG@$0&FA6%FM""'FMFhp?(F_rFMFM-FIF@%%trueGC)>8$-%%subsG
6$/%)infinityGFhp&FA6$F_rF]o>8(7#-Ffp6$FhpFeo>Ffq)F^q,&&Fjn6#&FA6%F_rF\qFYFM-Ff
r6$*&&FA6&F_rF\qFM8'FM&Fen6#F`uFM/F`uFbrFM?(F`uFMFMFeoFds@$/&FA6%F_rF]oF`uF\t>F
fq*&FfqFM,&FMFM)F^qFauF`rF`r>Fdr,&FdrFMFfqF`r>F`t-%.Janet/nextmonG6$F`tFgs?(F:F
MFMF:0F`tFatC$>Fdr,&FdrFM*&FfqFM)F^q-%(convertG6$F`t%"+GFMF`r>F`tF`vC$>Fdr-Fis6
$7#-%$seqG6$/&FOF^rF\rFar-%1Janet/ParamDerivG6%FSFTQ"GF:@%/FGFM>Fdr*&)F^q&FjnF`
oFMFdrFM>Fdr-%'expandG6#-Ffr6$*&FirFM&FdrF^rFMF[s-%'RETURNG6#FdrF:F:F:F:
M7R0
I0Janet/jtotalderf*6&%%funcG%'_livarG%%ivarG%%dvarG6(%%exprG%%IvarG%&sIvarG%)ls
tsIvarG%(lstSubsG%&livarG6#%[pCopyright~(C)~2000-2005~by~Mohamed~Barakat~and~Ar
ne~Lorenz.~All~rights~reserved.G6"C$>8)-%.Janet/jmklistG6#9%@'/F57"9$5/9#""$32F
AF@/9'F<-%/Janet/jpartderG6#9"C+>8%-%%sortG6#7#-%#opG6#<#-FR6#F5>8&-%$mapG6$f*6
#%"aGF26$%)operatorG%&arrowGF2-FZ6$f*6#%"bGF2FinF2@$/T$F=FcoF2F26$FhnF=T#F2F26$
F/F5FL>FL-FZ6$f*FgnF2FinF2@$-%'memberG6$F=FcoF=F2F26$F'9&FL>8$-%.Janet/jind2jDG
6'F=F`pFEFLQ!F2>8(-FZ6$%$rhsG&Fbp6#""#?&8'FX%%trueG>Fhp7$-FR6#Fhp-FR6#-FZ6$f*6#
%"iGF2FinF2-FR6#-%%diffG6$Feo-FR6#&T%6#;"""F=F2F26&F.FhpF-F`q7#-%"$G6#;Fhr-%%no
psG6#F`q>Fhp-FZ6$f*FgnF2FinF2/F=-%.Janet/jjD2jetG6$-FR6$FhrF=7#-%/Janet/jsortva
rG6$-FR6$F^qF=FcoF2F2F_pFhp>Fbp-F`r6$&Fbp6#Fhr-FNFV-%%subsG6$FhpFbpF2F2F2F2
M7R0
I.Janet/jchkdopf*6#%$dopG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All
~rights~reserved.GF&@)5/9$""!/F,7"%%trueG332"""9#-%%typeG6$&9"6#""#%'stringG-%.
Janet/jchksclG6#F,F033333-F76$F,%%listG-F76$&F,6#F4FH/-%%nopsG6#FKF<4-F76$&F,6$
F4F4FH-F76$&F,6$F4F<FH54-F76$FX-FH6#FH/FXF/F0%&falseGF&F&F&F&
M7R0
I.Janet/jind2jDf*6&%%exprG%%ivarG%%dvarG%%IvarG6%%(lstSubsG%)lstSubs1G%)lstSubs
2G6#%XCopyright~(C)~2005~by~Arne~Lorenz.~All~rights~reserved.G6"C%>8$-%/Janet/j
getindsG6%9$9&Q!F/>8%-%$mapG6$f*6#%"aGF/6$%)operatorG%&arrowGF/@%-%%typeG6$F6%(
indexedG@$-%(convertG6$-F<6$f*6#%"bGF/FAF/@%-%'memberG6$F6T$%%trueG%&falseGF/F/
6$F&FV7#-%#opG6#F6%$andGF6F6F/F/6$F&9%F2@%0-%%nopsG6#F:-F^o6#F2C&>8&-%,Janet/jr
estG6$F2F:-%(WARNINGG6$QPThe~following~variables~will~be~set~to~zero:~%1F/Fdo>F
:-F<6$f*F?F/FAF//F6-%.Janet/jjet2jDGFUF/F/6$F(9'F:@%32""%9#-FF6$&9"6#!""%'strin
gG7$-%%subsG6%-%,Janet/jezipG6$Fdo7#-%"$G6$""!-F^o6#FdoF:F6F:FbqC$>F:-F<6$f*F?F
/FAF/F`pF/F/FcpF:@%Ffp7$-Fcq6$F:F6F:FfrF/F/F/F/
M7R0
I9Janet/PDEHilbertFunctionf*6"6A%"iG%"jG%"lG%#q1G%#q2G%"sG%#_sG%,given_basisG%"
FG%/args_without_sG%$resG%0tmp_T_List_dataG%%ivarG%%dvarG%)dops_ordG%)ivar_degG
%)dvar_degG%)ideg_ordG%)ddeg_ordG%&_ivarG%)dvar_posG%&oivarG%&m_ordG%$fmtG%%dop
sG%'ldprocG%&B_OrdG%)dvar_cmpG%*want_simpG%+force_simpG%+constcoeffG6#%jnCopyri
ght~(C)~2007-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C(>8:""%>8)%%NULLG@
%519#""#32FRFQ555-%%typeG6$&9"6#""$%)equationG-FY6$Fen%(integerG-FY6$Fen-%%list
G6#F\o-FY6$Fen%'stringGC$>8+%&falseG>8-FMC%>Fgo%%trueG>Fjo6%&Ffn6#"""&Ffn6#FRFe
n?(8$FJFbpFQF]p@$5-FY6$&Ffn6#FfpF\o-FY6$F[qF`o>Fjo6$FjoF[q@%FgoC@>8/7+%'T_ListG
%)number_tG%(Tab_VarG%$nivG%$zedG%&Nu_StG%&COMPAG%)Glob_SOLG%-_jforce_simpG>80-
%/Janet/get_varsG6$FcpFen>81&F`rFdp>82&F`rFgn>83&F`r6#FJ>84&F`r6#""&>85&F`r6#""
'>86&F`r6#""(>87&F`r6#"")>88&F`r6#""*>F`r&F`rFap>89-%/Janet/get_optsG6$F`r&Ffn6
#;FJFQ>FI&FjtFdp>8@&FjtFet?&Ffp&FjtFapF]p@'55-FY6$Ffp%%nameG-FY6$Ffp%(numericG/
FfpQ!F$@%/FLFM>FLFfp-%&ERRORG6#%Zcannot~determine~which~indeterminate~or~value~
to~plug~in.G3-FY6$FfpFin/-%#opG6$FbpFfpQ$varF$@%Fdv>FL-F_w6$FRFfpFfv-Fgv6#%0inv
alid~option.G>Fjt&FjtFgn>8,-%0Janet/get_inputG6*F`pF`rFerFjtF^t7"F`xFho>8;&F\xF
dp@$1FJFbx-Fgv6#%_pdifferential~equations~are~expected~to~be~given~as~list~of~d
ifferential~expressions.G>8<&F\xF]s>8A5Fdu&F\xFas>8B&F\xFfs>F\x&F\xFap>Fhr-%%su
bsG6$-%,Janet/jezipG6$F`rFjxFhr>8&-%.Janet/get_ordG6,FIFjxFerFhrF[sF_sFdsFisFct
34F]yFay>8=&F]zFap>8>&F]zFgn@$&F]zF]s>FctF`x>8?&F]zFas-%2Janet/setupT_ListG6.F\
xF`rFerF^tFjtFjxFdzFgzFctF[sF_sF][lC$@$4-%)assignedG6#Ffq-Fgv6#%Pmissing~involu
tive~basis;~run~JanetBasis~first.G?&FfpFfnF]p@'Fiu@%Fdv>FLFfpFfvFjv@%Fdv>FLFdwF
fvFfw@$Fdv-%'RETURNG6#F"@)-FY6$FLFdoC(>6$8'8(-%1Janet/maxmin_degGFg[l@$2""!F\]l
-%'printfG6$Q:Dim(M.s)~=~0,~for~s~<~%d|+F$F\]l?(FfpF\]lFbp,&F[]lFbp!""FbpF]p-Fc
]l6%Q0Dim(M.%d)~=~%a|+F$Ffp-F"F\q-Fc]l6%Q;Dim(M.s)~=~%a,~for~s~>=~%dF$-Fgy6$/8*
.FL-%;Janet/PDEHilbertPolynomialG6#Fc^lF[]l@$Fgo-%4Janet/restoreT_ListG6#Fdq-Fc
\l6#FM3-FY6$FLF`v/FLFa]lC%>8.-%,Janet/PDEHFG6#FL@$FgoFi^lFd_lF__lC%>Fd_l-%)simp
lifyG6#,&Fe_lFbp-Ff_l6#,&FLFbpFh]lFbpFh]l@$FgoFi^lFd_l@%FgoC$Fi^lf*6#F&F$6$%)op
eratorG%&arrowGF$-F"6$T#/Faw9$F$F$6$F/Fjof*Ff`lF$Fg`lF$-F"6#F]alF$F$F$F$F$F$F$
M7R0
I'JanetA=6"%&falseGE\[lf\l%*jtotalderGf*F$F$6#%[pCopyright~(C)~2000-2005~by~Moh
amed~Barakat~and~Arne~Lorenz.~All~rights~reserved.GF$C$30%2Janet/initializedG.%
%trueG0-%+Janet/initGF$""!-%0Janet/jtotalderG6#9"F$F$F$%&AddOpGf*F$F$6#%[oCopyr
ight~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.GF$C$F,-%,Janet/AddO
pGF7F$F$F$%0ParametrizationGf*F$F$6#%^pCopyright~(C)~2000-2010~by~Mohamed~Barak
at~and~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%6Janet/ParametrizationGF7F$
F$F$%4jplex_lc_dvar_blockGf*F$F$6#%enCopyright~(C)~2010~by~Daniel~Robertz.~All~
rights~reserved.GF$C$F,-%:Janet/jplex_lc_dvar_blockGF7F$F$F$%,janet_separGf*F$F
$6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~r
eserved.GF$C$F,-%2Janet/janet_separGF7F$F$F$%)mem_multGf*F$F$6#%jnCopyright~(C)
~2000-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%/Janet/mem_multGF7F$
F$F$%3ShortestResolutionGf*F$F$6#%\pCopyright~(C)~2004-2010~by~Alban~Quadrat~an
d~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%9Janet/ShortestResolutionGF7F$F$
F$%/diffalg_reduceGf*F$F$6#%jnCopyright~(C)~2005-2010~by~Daniel~Robertz.~All~ri
ghts~reserved.GF$C$F,-%5Janet/diffalg_reduceGF7F$F$F$%;diff_normalform_constcoe
ffGf*F$F$FPF$C$F,-%AJanet/diff_normalform_constcoeffGF7F$F$F$%)jpartderGf*F$F$F
;F$C$F,-%/Janet/jpartderGF7F$F$F$%*deglex_lcGf*F$F$FIF$C$F,-%0Janet/deglex_lcGF
7F$F$F$%1jplex_dvar_blockGf*F$F$6#%jnCopyright~(C)~2006-2010~by~Daniel~Robertz.
~All~rights~reserved.GF$C$F,-%7Janet/jplex_dvar_blockGF7F$F$F$%.reduce_pseudoGf
*F$F$FPF$C$F,-%4Janet/reduce_pseudoGF7F$F$F$%+JanetStatsGf*F$F$FPF$C$F,-%1Janet
/JanetStatsGF7F$F$F$%(Pol2IndGf*F$F$F;F$C$F,-%.Janet/Pol2IndGF7F$F$F$%+jlinmatr
ixGf*F$F$6#%inCopyright~(C)~2000-2003~by~Gehrt~Hartjen.~All~rights~reserved.GF$
C$F,-%1Janet/jlinmatrixGF7F$F$F$%%Op2DGf*F$F$6#%jnCopyright~(C)~2002-2010~by~Da
niel~Robertz.~All~rights~reserved.GF$C$F,-%+Janet/Op2DGF7F$F$F$%3PDEHilbertFunc
tionGf*F$F$6#%jnCopyright~(C)~2007-2010~by~Daniel~Robertz.~All~rights~reserved.
GF$C$F,-%9Janet/PDEHilbertFunctionGF7F$F$F$%*degrevlexGf*F$F$FPF$C$F,-%0Janet/d
egrevlexGF7F$F$F$%5block_ord_dvar_blockGf*F$F$FepF$C$F,-%;Janet/block_ord_dvar_
blockGF7F$F$F$%*LinearizeGf*F$F$6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.
~All~rights~reserved.GF$C$F,-%0Janet/LinearizeGF7F$F$F$%&jrestGf*F$F$F;F$C$F,-%
,Janet/jrestGF7F$F$F$%'dualopGf*F$F$FjsF$C$F,-%-Janet/dualopGF7F$F$F$%(jaddconG
f*F$F$F;F$C$F,-%.Janet/jaddconGF7F$F$F$%)jplex_lcGf*F$F$FIF$C$F,-%/Janet/jplex_
lcGF7F$F$F$%)dadjointGf*F$F$FjsF$C$F,-%/Janet/dadjointGF7F$F$F$%&PDEHFGf*F$F$Fi
rF$C$F,-%,Janet/PDEHFGF7F$F$F$%%Ext1Gf*F$F$FBF$C$F,-%+Janet/Ext1GF7F$F$F$%(Base
ChgGf*F$F$6#%ioCopyright~(C)~2003~by~Mohamed~Barakat~and~Anna~Fabianska.~All~ri
ghts~reserved.GF$C$F,-%.Janet/BaseChgGF7F$F$F$%(jorderdGf*F$F$F;F$C$F,-%.Janet/
jorderdGF7F$F$F$%+ParamDerivGf*F$F$FWF$C$F,-%1Janet/ParamDerivGF7F$F$F$%2deglex
_dvar_blockGf*F$F$FepF$C$F,-%8Janet/deglex_dvar_blockGF7F$F$F$%)jjetcoorGf*F$F$
F;F$C$F,-%/Janet/jjetcoorGF7F$F$F$%7diff_normalform_pseudoGf*F$F$FPF$C$F,-%=Jan
et/diff_normalform_pseudoGF7F$F$F$%-degrevlex_lcGf*F$F$FIF$C$F,-%3Janet/degrevl
ex_lcGF7F$F$F$%.IsTorsionBaseGf*F$F$FdvF$C$F,-%4Janet/IsTorsionBaseGF7F$F$F$%.r
estoreT_ListGf*F$F$FepF$C$F,-%4Janet/restoreT_ListGF7F$F$F$%,updateCOMPAGf*F$F$
FWF$C$F,-%2Janet/updateCOMPAGF7F$F$F$%6deglex_deg_dvar_blockGf*F$F$FepF$C$F,-%<
Janet/deglex_deg_dvar_blockGF7F$F$F$%2binary_insert_posGf*F$F$FPF$C$F,-%8Janet/
binary_insert_posGF7F$F$F$%)jsortconGf*F$F$F)F$C$F,-%/Janet/jsortconGF7F$F$F$%.
jdividebyunitGf*F$F$6#%[oCopyright~(C)~2004-2010~by~Mohamed~Barakat.~All~rights
~reserved.GF$C$F,-%4Janet/jdividebyunitGF7F$F$F$%5reduce_constcoeff_ldGf*F$F$FW
F$C$F,-%;Janet/reduce_constcoeff_ldGF7F$F$F$%/reduce_simp_ldGf*F$F$FWF$C$F,-%5J
anet/reduce_simp_ldGF7F$F$F$%1is_inhomogeneousGf*F$F$FepF$C$F,-%7Janet/is_inhom
ogeneousGF7F$F$F$%)jsortderGf*F$F$F;F$C$F,-%/Janet/jsortderGF7F$F$F$%*jfuncname
Gf*F$F$F;F$C$F,-%0Janet/jfuncnameGF7F$F$F$%3ElementaryDivisorsGf*F$F$6#%jnCopyr
ight~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%9Janet/Eleme
ntaryDivisorsGF7F$F$F$%+JanetBasisGf*F$F$FPF$C$F,-%1Janet/JanetBasisGF7F$F$F$%*
jmult2indGf*F$F$F;F$C$F,-%0Janet/jmult2indGF7F$F$F$%(jind2jDGf*F$F$6#%XCopyrigh
t~(C)~2005~by~Arne~Lorenz.~All~rights~reserved.GF$C$F,-%.Janet/jind2jDGF7F$F$F$
%)jeqn2prdGf*F$F$F;F$C$F,-%/Janet/jeqn2prdGF7F$F$F$%(jmklistGf*F$F$F;F$C$F,-%.J
anet/jmklistGF7F$F$F$%)JAdjointGf*F$F$6#%inCopyright~(C)~2000-2002~by~Gehrt~Har
tjen.~All~rights~reserved.GF$C$F,-%/Janet/JAdjointGF7F$F$F$%'jdprodGf*F$F$F;F$C
$F,-%-Janet/jdprodGF7F$F$F$%(jmulmatGf*F$F$F;F$C$F,-%.Janet/jmulmatGF7F$F$F$%%E
xtnGf*F$F$FWF$C$F,-%+Janet/ExtnGF7F$F$F$%)red2listGf*F$F$FPF$C$F,-%/Janet/red2l
istGF7F$F$F$%*jroporderGf*F$F$Fi^lF$C$F,-%0Janet/jroporderGF7F$F$F$%0HilbertFun
ctionGf*F$F$FPF$C$F,-%6Janet/HilbertFunctionGF7F$F$F$%*posmatrixGf*F$F$6#%inCop
yright~(C)~2000-2002~by~Carlos~F.~Cid.~All~rights~reserved.GF$C$F,-%0Janet/posm
atrixGF7F$F$F$%(jsubconGf*F$F$F;F$C$F,-%.Janet/jsubconGF7F$F$F$%-RightInverseGf
*F$F$FjsF$C$F,-%3Janet/RightInverseGF7F$F$F$%2ShorterResolutionGf*F$F$FhnF$C$F,
-%8Janet/ShorterResolutionGF7F$F$F$%9deglex_deg_lc_dvar_blockGf*F$F$FIF$C$F,-%?
Janet/deglex_deg_lc_dvar_blockGF7F$F$F$%+DresultantGf*F$F$Fg\lF$C$F,-%1Janet/Dr
esultantGF7F$F$F$%.normalizeWeylGf*F$F$FjsF$C$F,-%4Janet/normalizeWeylGF7F$F$F$
%)jmap2indGf*F$F$F;F$C$F,-%/Janet/jmap2indGF7F$F$F$%'jgendlGf*F$F$F;F$C$F,-%-Ja
net/jgendlGF7F$F$F$%5diff_normalform_simpGf*F$F$FPF$C$F,-%;Janet/diff_normalfor
m_simpGF7F$F$F$%&plex3Gf*F$F$FPF$C$F,-%,Janet/plex3GF7F$F$F$%8block_ord_lc_dvar
_blockGf*F$F$FIF$C$F,-%>Janet/block_ord_lc_dvar_blockGF7F$F$F$%+lead_derivGf*F$
F$FWF$C$F,-%1Janet/lead_derivGF7F$F$F$%-DrightdivideGf*F$F$Fg\lF$C$F,-%3Janet/D
rightdivideGF7F$F$F$%-DenominatorsGf*F$F$FWF$C$F,-%3Janet/DenominatorsGF7F$F$F$
%+deglex_POTGf*F$F$Fg\lF$C$F,-%1Janet/deglex_POTGF7F$F$F$%4degrevlex_deg_blockG
f*F$F$Fg\lF$C$F,-%:Janet/degrevlex_deg_blockGF7F$F$F$%%CmpDGf*F$F$FjsF$C$F,-%+J
anet/CmpDGF7F$F$F$%.deglex_lc_POTGf*F$F$FIF$C$F,-%4Janet/deglex_lc_POTGF7F$F$F$
%)jzerocolGf*F$F$Fi^lF$C$F,-%/Janet/jzerocolGF7F$F$F$%5degrevlex_deg_lc_POTGf*F
$F$FIF$C$F,-%;Janet/degrevlex_deg_lc_POTGF7F$F$F$%+criterion2Gf*F$F$FPF$C$F,-%1
Janet/criterion2GF7F$F$F$%(jmulconGf*F$F$F;F$C$F,-%.Janet/jmulconGF7F$F$F$%(jge
tposGf*F$F$F;F$C$F,-%.Janet/jgetposGF7F$F$F$%(jiorderGf*F$F$Fi^lF$C$F,-%.Janet/
jiorderGF7F$F$F$%(deglex3Gf*F$F$FWF$C$F,-%.Janet/deglex3GF7F$F$F$%*Pres2DiffGf*
F$F$FbrF$C$F,-%0Janet/Pres2DiffGF7F$F$F$%<degrevlex_deg_lc_dvar_blockGf*F$F$FIF
$C$F,-%BJanet/degrevlex_deg_lc_dvar_blockGF7F$F$F$%%D2OpGf*F$F$FbrF$C$F,-%+Jane
t/D2OpGF7F$F$F$%)jind2revGf*F$F$F;F$C$F,-%/Janet/jind2revGF7F$F$F$%.get_termord
erGf*F$F$FbrF$C$F,-%4Janet/get_termorderGF7F$F$F$%)get_varsGf*F$F$FbrF$C$F,-%/J
anet/get_varsGF7F$F$F$%)PDEBasisGf*F$F$FirF$C$F,-%/Janet/PDEBasisGF7F$F$F$%2red
uce_constcoeffGf*F$F$FPF$C$F,-%8Janet/reduce_constcoeffGF7F$F$F$%/is_indnotatio
nGf*F$F$FWF$C$F,-%5Janet/is_indnotationGF7F$F$F$%&dmultGf*F$F$FjsF$C$F,-%,Janet
/dmultGF7F$F$F$%)jgetdrvsGf*F$F$F;F$C$F,-%/Janet/jgetdrvsGF7F$F$F$%3Annihilatin
gSystemGf*F$F$6#%jnCopyright~(C)~2009-2010~by~Daniel~Robertz.~All~rights~reserv
ed.GF$C$F,-%9Janet/AnnihilatingSystemGF7F$F$F$%-ParamBaseChgGf*F$F$FdvF$C$F,-%3
Janet/ParamBaseChgGF7F$F$F$%*jfrechetcGf*F$F$F;F$C$F,-%0Janet/jfrechetcGF7F$F$F
$%+canceltermGf*F$F$6#%jnCopyright~(C)~2008-2010~by~Daniel~Robertz.~All~rights~
reserved.GF$C$F,-%1Janet/canceltermGF7F$F$F$%*SubFactorGf*F$F$FBF$C$F,-%0Janet/
SubFactorGF7F$F$F$%'jesubsGf*F$F$F;F$C$F,-%-Janet/jesubsGF7F$F$F$%)mult_varGf*F
$F$FPF$C$F,-%/Janet/mult_varGF7F$F$F$%0copyright_JanetGf*F$F$FPF$C$F,-%6Janet/c
opyright_JanetGF7F$F$F$%*jgcollectGf*F$F$Fi^lF$C$F,-%0Janet/jgcollectGF7F$F$F$%
)Diff2IndGf*F$F$FBF$C$F,-%/Janet/Diff2IndGF7F$F$F$%*conv_prodGf*F$F$F^alF$C$F,-
%0Janet/conv_prodGF7F$F$F$%-deglex_blockGf*F$F$Fg\lF$C$F,-%3Janet/deglex_blockG
F7F$F$F$%(jfacsepGf*F$F$6#%>Copyright~(c)~1997~by~Khai~VuGF$C$F,-%.Janet/jfacse
pGF7F$F$F$%-JanetOptionsGf*F$F$FWF$C$F,-%3Janet/JanetOptionsGF7F$F$F$%(multcmpG
f*F$F$FWF$C$F,-%.Janet/multcmpGF7F$F$F$%&subsDGf*F$F$FWF$C$F,-%,Janet/subsDGF7F
$F$F$%,jplex_blockGf*F$F$Fg\lF$C$F,-%2Janet/jplex_blockGF7F$F$F$%'jsymchGf*F$F$
F;F$C$F,-%-Janet/jsymchGF7F$F$F$%'jmkmatGf*F$F$6#%^pCopyright~(C)~2000-2002~by~
Mohamed~Barakat~and~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%-Janet/jmkmatG
F7F$F$F$%&CmpOpGf*F$F$FbrF$C$F,-%,Janet/CmpOpGF7F$F$F$%)jind2subGf*F$F$F;F$C$F,
-%/Janet/jind2subGF7F$F$F$%9degrevlex_deg_dvar_blockGf*F$F$FepF$C$F,-%?Janet/de
grevlex_deg_dvar_blockGF7F$F$F$%)Ind2DiffGf*F$F$F;F$C$F,-%/Janet/Ind2DiffGF7F$F
$F$%8diff_normalform_simp_ldGf*F$F$FWF$C$F,-%>Janet/diff_normalform_simp_ldGF7F
$F$F$%1reduce_pseudo_ldGf*F$F$FWF$C$F,-%7Janet/reduce_pseudo_ldGF7F$F$F$%(nextm
onGf*F$F$F_oF$C$F,-%.Janet/nextmonGF7F$F$F$%6WeightedHilbertSeriesGf*F$F$FWF$C$
F,-%<Janet/WeightedHilbertSeriesGF7F$F$F$%+cdivisibleGf*F$F$F^alF$C$F,-%1Janet/
cdivisibleGF7F$F$F$%*block_ordGf*F$F$Fg\lF$C$F,-%0Janet/block_ordGF7F$F$F$%.deg
revlex_POTGf*F$F$FWF$C$F,-%4Janet/degrevlex_POTGF7F$F$F$%)Pol2DiffGf*F$F$FWF$C$
F,-%/Janet/Pol2DiffGF7F$F$F$%0CartanCharacterGf*F$F$6#%inCopyright~(C)~2000-201
0~by~Carlos~F.~Cid.~All~rights~reserved.GF$C$F,-%6Janet/CartanCharacterGF7F$F$F
$%-block_ord_lcGf*F$F$FIF$C$F,-%3Janet/block_ord_lcGF7F$F$F$%'Diff2DGf*F$F$FbrF
$C$F,-%-Janet/Diff2DGF7F$F$F$%*janet_divGf*F$F$FPF$C$F,-%0Janet/janet_divGF7F$F
$F$%)jjcoeffsGf*F$F$F;F$C$F,-%/Janet/jjcoeffsGF7F$F$F$%+jcollectedGf*F$F$F;F$C$
F,-%1Janet/jcollectedGF7F$F$F$%#HFGf*F$F$FPF$C$F,-%)Janet/HFGF7F$F$F$%5deglex_l
c_dvar_blockGf*F$F$FIF$C$F,-%;Janet/deglex_lc_dvar_blockGF7F$F$F$%+FlatOutputGf
*F$F$FbrF$C$F,-%1Janet/FlatOutputGF7F$F$F$%2degrevlex_deg_POTGf*F$F$FWF$C$F,-%8
Janet/degrevlex_deg_POTGF7F$F$F$%.degrevlex_degGf*F$F$FPF$C$F,-%4Janet/degrevle
x_degGF7F$F$F$%)jsortvarGf*F$F$F;F$C$F,-%/Janet/jsortvarGF7F$F$F$%-jplex_lc_POT
Gf*F$F$FIF$C$F,-%3Janet/jplex_lc_POTGF7F$F$F$%2DiffGroebnerBasisGf*F$F$FWF$C$F,
-%8Janet/DiffGroebnerBasisGF7F$F$F$%5degrevlex_dvar_blockGf*F$F$FepF$C$F,-%;Jan
et/degrevlex_dvar_blockGF7F$F$F$%-LeadingDerivGf*F$F$FWF$C$F,-%3Janet/LeadingDe
rivGF7F$F$F$%8degrevlex_lc_dvar_blockGf*F$F$FIF$C$F,-%>Janet/degrevlex_lc_dvar_
blockGF7F$F$F$%)jgetindsGf*F$F$F;F$C$F,-%/Janet/jgetindsGF7F$F$F$%(jdiffopGf*F$
F$F;F$C$F,-%.Janet/jdiffopGF7F$F$F$%'jQsubsGf*F$F$Fi^lF$C$F,-%-Janet/jQsubsGF7F
$F$F$%+jfind2multGf*F$F$F;F$C$F,-%1Janet/jfind2multGF7F$F$F$%)jjreduceGf*F$F$F;
F$C$F,-%/Janet/jjreduceGF7F$F$F$%%factGf*F$F$F^alF$C$F,-%+Janet/factGF7F$F$F$%*
EulerCharGf*F$F$FWF$C$F,-%0Janet/EulerCharGF7F$F$F$%0degrevlex_blockGf*F$F$Fg\l
F$C$F,-%6Janet/degrevlex_blockGF7F$F$F$%/invertiblepartGf*F$F$FIF$C$F,-%5Janet/
invertiblepartGF7F$F$F$%*get_inputGf*F$F$FWF$C$F,-%0Janet/get_inputGF7F$F$F$%*b
lock_cmpGf*F$F$Fg\lF$C$F,-%0Janet/block_cmpGF7F$F$F$%*get_ivarsGf*F$F$FbrF$C$F,
-%0Janet/get_ivarsGF7F$F$F$%)HomoPolyGf*F$F$F^alF$C$F,-%/Janet/HomoPolyGF7F$F$F
$%#HPGf*F$F$FPF$C$F,-%)Janet/HPGF7F$F$F$%)jcoltermGf*F$F$Fi`mF$C$F,-%/Janet/jco
ltermGF7F$F$F$%)GenCoeffGf*F$F$FdvF$C$F,-%/Janet/GenCoeffGF7F$F$F$%(Diff2OpGf*F
$F$FbrF$C$F,-%.Janet/Diff2OpGF7F$F$F$%.HilbertSeriesGf*F$F$FPF$C$F,-%4Janet/Hil
bertSeriesGF7F$F$F$%+degrevlex3Gf*F$F$FPF$C$F,-%1Janet/degrevlex3GF7F$F$F$%)jvf
orderGf*F$F$Fi^lF$C$F,-%/Janet/jvforderGF7F$F$F$%)jind2mapGf*F$F$F;F$C$F,-%/Jan
et/jind2mapGF7F$F$F$%1jnonmult_prolongGf*F$F$F_oF$C$F,-%7Janet/jnonmult_prolong
GF7F$F$F$%)lead_monGf*F$F$FPF$C$F,-%/Janet/lead_monGF7F$F$F$%:diff_normalform_p
seudo_ldGf*F$F$FWF$C$F,-%@Janet/diff_normalform_pseudo_ldGF7F$F$F$%(jcmpdopGf*F
$F$F;F$C$F,-%.Janet/jcmpdopGF7F$F$F$%%jlcmGf*F$F$F^alF$C$F,-%+Janet/jlcmGF7F$F$
F$%&jezipGf*F$F$F;F$C$F,-%,Janet/jezipGF7F$F$F$%*reduce_ldGf*F$F$FWF$C$F,-%0Jan
et/reduce_ldGF7F$F$F$%(PolySolGf*F$F$FPF$C$F,-%.Janet/PolySolGF7F$F$F$%&SubOpGf
*F$F$F;F$C$F,-%,Janet/SubOpGF7F$F$F$%0diff_normalformGf*F$F$FPF$C$F,-%6Janet/di
ff_normalformGF7F$F$F$%(max_degGf*F$F$FPF$C$F,-%.Janet/max_degGF7F$F$F$%*jdepch
eckGf*F$F$F[rF$C$F,-%0Janet/jdepcheckGF7F$F$F$%1block_ord_lc_POTGf*F$F$FIF$C$F,
-%7Janet/block_ord_lc_POTGF7F$F$F$%.CompCondBasisGf*F$F$FWF$C$F,-%4Janet/CompCo
ndBasisGF7F$F$F$%*InvReduceGf*F$F$FPF$C$F,-%0Janet/InvReduceGF7F$F$F$%&DlclmGf*
F$F$Fg\lF$C$F,-%,Janet/DlclmGF7F$F$F$%2CoefficientMatrixGf*F$F$Fi\mF$C$F,-%8Jan
et/CoefficientMatrixGF7F$F$F$%0IndexRegularityGf*F$F$FPF$C$F,-%6Janet/IndexRegu
larityGF7F$F$F$%)joporderGf*F$F$Fi^lF$C$F,-%/Janet/joporderGF7F$F$F$%*jrvforder
Gf*F$F$Fi^lF$C$F,-%0Janet/jrvforderGF7F$F$F$%,CoeffReduceGf*F$F$FWF$C$F,-%2Jane
t/CoeffReduceGF7F$F$F$%+updateNuStGf*F$F$FWF$C$F,-%1Janet/updateNuStGF7F$F$F$%)
CompCondGf*F$F$FWF$C$F,-%/Janet/CompCondGF7F$F$F$%&AppOpGf*F$F$FWF$C$F,-%,Janet
/AppOpGF7F$F$F$%-coord_reduceGf*F$F$FPF$C$F,-%3Janet/coord_reduceGF7F$F$F$%(jje
t2jDGf*F$F$6%Fi]l%'systemG%)rememberGF$C$F,-%.Janet/jjet2jDGF7F$F$F$%,criteria2
34Gf*F$F$F_oF$C$F,-%2Janet/criteria234GF7F$F$F$%'Pol2OpGf*F$F$FbrF$C$F,-%-Janet
/Pol2OpGF7F$F$F$%1degrevlex_lc_POTGf*F$F$FIF$C$F,-%7Janet/degrevlex_lc_POTGF7F$
F$F$%)jcontentGf*F$F$FWF$C$F,-%/Janet/jcontentGF7F$F$F$%+multcoeffsGf*F$F$Fj]mF
$C$F,-%1Janet/multcoeffsGF7F$F$F$%*jrepljetsGf*F$F$F;F$C$F,-%0Janet/jrepljetsGF
7F$F$F$%(jsumsepGf*F$F$Fi`mF$C$F,-%.Janet/jsumsepGF7F$F$F$%(TorsionGf*F$F$FBF$C
$F,-%.Janet/TorsionGF7F$F$F$%'deglexGf*F$F$FWF$C$F,-%-Janet/deglexGF7F$F$F$%.bl
ock_ord_POTGf*F$F$Fg\lF$C$F,-%4Janet/block_ord_POTGF7F$F$F$%>diff_normalform_co
nstcoeff_ldGf*F$F$FWF$C$F,-%DJanet/diff_normalform_constcoeff_ldGF7F$F$F$%(jjD2
indGf*F$F$Fh]lF$C$F,-%.Janet/jjD2indGF7F$F$F$%'jjsubsGf*F$F$Fi^lF$C$F,-%-Janet/
jjsubsGF7F$F$F$%*jcolbylstGf*F$F$F;F$C$F,-%0Janet/jcolbylstGF7F$F$F$%'DefectGf*
F$F$FBF$C$F,-%-Janet/DefectGF7F$F$F$%3diff_normalform_ldGf*F$F$FWF$C$F,-%9Janet
/diff_normalform_ldGF7F$F$F$%*jind2multGf*F$F$Fi^lF$C$F,-%0Janet/jind2multGF7F$
F$F$%+saveT_ListGf*F$F$FepF$C$F,-%1Janet/saveT_ListGF7F$F$F$%1PDEHilbertSeriesG
f*F$F$FirF$C$F,-%7Janet/PDEHilbertSeriesGF7F$F$F$%+ResolutionGf*F$F$FWF$C$F,-%1
Janet/ResolutionGF7F$F$F$%(jchksclGf*F$F$F;F$C$F,-%.Janet/jchksclGF7F$F$F$%*jfr
echetoGf*F$F$F;F$C$F,-%0Janet/jfrechetoGF7F$F$F$%,reduce_simpGf*F$F$FPF$C$F,-%2
Janet/reduce_simpGF7F$F$F$%1deglex_deg_blockGf*F$F$Fg\lF$C$F,-%7Janet/deglex_de
g_blockGF7F$F$F$%)JpdesolvGf*F$F$6#%jnCopyright~(C)~2000-2002~by~Daniel~Robertz
.~All~rights~reserved.GF$C$F,-%/Janet/JpdesolvGF7F$F$F$%-PDEFactorizeGf*F$F$FIF
$C$F,-%3Janet/PDEFactorizeGF7F$F$F$%*comfactorGf*F$F$FWF$C$F,-%0Janet/comfactor
GF7F$F$F$%1AssertJanetBasisGf*F$F$FWF$C$F,-%7Janet/AssertJanetBasisGF7F$F$F$%.I
ntersection2Gf*F$F$FjsF$C$F,-%4Janet/Intersection2GF7F$F$F$%'jinfinGf*F$F$F;F$C
$F,-%-Janet/jinfinGF7F$F$F$%(get_ordGf*F$F$FbrF$C$F,-%.Janet/get_ordGF7F$F$F$%)
get_optsGf*F$F$F_oF$C$F,-%/Janet/get_optsGF7F$F$F$%'jopdotGf*F$F$Fi^lF$C$F,-%-J
anet/jopdotGF7F$F$F$%+numerdenomGf*F$F$FjsF$C$F,-%1Janet/numerdenomGF7F$F$F$%(j
jD2jetGf*F$F$FijnF$C$F,-%.Janet/jjD2jetGF7F$F$F$%&SyzOpGf*F$F$FWF$C$F,-%,Janet/
SyzOpGF7F$F$F$%(jchkdopGf*F$F$F;F$C$F,-%.Janet/jchkdopGF7F$F$F$%'D2DiffGf*F$F$F
brF$C$F,-%-Janet/D2DiffGF7F$F$F$%,setupT_ListGf*F$F$FWF$C$F,-%2Janet/setupT_Lis
tGF7F$F$F$%*jplex_POTGf*F$F$FWF$C$F,-%0Janet/jplex_POTGF7F$F$F$%*AutonomEqGf*F$
F$FWF$C$F,-%0Janet/AutonomEqGF7F$F$F$%,DleftdivideGf*F$F$Fg\lF$C$F,-%2Janet/Dle
ftdivideGF7F$F$F$%)DAdjointGf*F$F$FjsF$C$F,-%/Janet/DAdjointGF7F$F$F$%+deglex_d
egGf*F$F$FWF$C$F,-%1Janet/deglex_degGF7F$F$F$%)Diff2PolGf*F$F$FWF$C$F,-%/Janet/
Diff2PolGF7F$F$F$%-IntersectionGf*F$F$FjsF$C$F,-%3Janet/IntersectionGF7F$F$F$%(
jappmatGf*F$F$F;F$C$F,-%.Janet/jappmatGF7F$F$F$%-jcoeffmatrixGf*F$F$6#%\pCopyri
ght~(C)~2000-2010~by~Gehrt~Hartjen~and~Daniel~Robertz.~All~rights~reserved.GF$C
$F,-%3Janet/jcoeffmatrixGF7F$F$F$%'TabVarGf*F$F$FPF$C$F,-%-Janet/TabVarGF7F$F$F
$%,LeftInverseGf*F$F$FjsF$C$F,-%2Janet/LeftInverseGF7F$F$F$%4ElementaryDivisors
1Gf*F$F$Fg\lF$C$F,-%:Janet/ElementaryDivisors1GF7F$F$F$%)jisderivGf*F$F$F;F$C$F
,-%/Janet/jisderivGF7F$F$F$%*countplusGf*F$F$Fi\mF$C$F,-%0Janet/countplusGF7F$F
$F$%/deglex_deg_POTGf*F$F$Fg\lF$C$F,-%5Janet/deglex_deg_POTGF7F$F$F$%)AppOpIndG
f*F$F$F;F$C$F,-%/Janet/AppOpIndGF7F$F$F$%4ExpressInFlatOutputGf*F$F$FbrF$C$F,-%
:Janet/ExpressInFlatOutputGF7F$F$F$%*posmemberGf*F$F$F^alF$C$F,-%0Janet/posmemb
erGF7F$F$F$%(jcflistGf*F$F$F;F$C$F,-%.Janet/jcflistGF7F$F$F$%&derivGf*F$F$6%FQF
jjnF[[oF$C$F,-%,Janet/derivGF7F$F$F$%&jplexGf*F$F$FPF$C$F,-%,Janet/jplexGF7F$F$
F$%.deglex_deg_lcGf*F$F$FIF$C$F,-%4Janet/deglex_deg_lcGF7F$F$F$%(conv2eqGf*F$F$
FWF$C$F,-%.Janet/conv2eqGF7F$F$F$%&PDEHPGf*F$F$FirF$C$F,-%,Janet/PDEHPGF7F$F$F$
%+inv_divideGf*F$F$FPF$C$F,-%1Janet/inv_divideGF7F$F$F$%&jjlinGf*F$F$F;F$C$F,-%
,Janet/jjlinGF7F$F$F$%1degrevlex_deg_lcGf*F$F$FIF$C$F,-%7Janet/degrevlex_deg_lc
GF7F$F$F$%/jautoreductionGf*F$F$FbrF$C$F,-%5Janet/jautoreductionGF7F$F$F$%*jmul
tinomGf*F$F$Fi^lF$C$F,-%0Janet/jmultinomGF7F$F$F$%2HilbertPolynomialGf*F$F$FPF$
C$F,-%8Janet/HilbertPolynomialGF7F$F$F$%-normalcoeffsGf*F$F$Fj]mF$C$F,-%3Janet/
normalcoeffsGF7F$F$F$%)update_TGf*F$F$FWF$C$F,-%/Janet/update_TGF7F$F$F$%'jjsim
pGf*F$F$F;F$C$F,-%-Janet/jjsimpGF7F$F$F$%/SimplifySinCosGf*F$F$Fi\mF$C$F,-%5Jan
et/SimplifySinCosGF7F$F$F$%.binary_insertGf*F$F$FPF$C$F,-%4Janet/binary_insertG
F7F$F$F$%+criteria23Gf*F$F$F_oF$C$F,-%1Janet/criteria23GF7F$F$F$%(AutonomGf*F$F
$FWF$C$F,-%.Janet/AutonomGF7F$F$F$%+transfer_TGf*F$F$FWF$C$F,-%1Janet/transfer_
TGF7F$F$F$%)ZeroSetsGf*F$F$FPF$C$F,-%/Janet/ZeroSetsGF7F$F$F$%)jsublistGf*F$F$F
i^lF$C$F,-%/Janet/jsublistGF7F$F$F$%+maxmin_degGf*F$F$FirF$C$F,-%1Janet/maxmin_
degGF7F$F$F$%5PDEHilbertPolynomialGf*F$F$FirF$C$F,-%;Janet/PDEHilbertPolynomial
GF7F$F$F$%+PrincDerivGf*F$F$FWF$C$F,-%1Janet/PrincDerivGF7F$F$F$%2deglex_deg_lc
_POTGf*F$F$FIF$C$F,-%8Janet/deglex_deg_lc_POTGF7F$F$F$%'AffEqnGf*F$F$FWF$C$F,-%
-Janet/AffEqnGF7F$F$F$%.ResolutionDimGf*F$F$FWF$C$F,-%4Janet/ResolutionDimGF7F$
F$F$%)jaffpartGf*F$F$6#%[oCopyright~(C)~2000-2003~by~Mohamed~Barakat.~All~right
s~reserved.GF$C$F,-%/Janet/jaffpartGF7F$F$F$%)jprd2eqnGf*F$F$F;F$C$F,-%/Janet/j
prd2eqnGF7F$F$F$%(jremainGf*F$F$Fi^lF$C$F,-%.Janet/jremainGF7F$F$F$%'jmksetGf*F
$F$F;F$C$F,-%-Janet/jmksetGF7F$F$F$%*SolSeriesGf*F$F$FPF$C$F,-%0Janet/SolSeries
GF7F$F$F$%'reduceGf*F$F$FPF$C$F,-%-Janet/reduceGF7F$F$F$F$
M7R0
I-Janet/homalg=6"%&falseGE\[l1%$OneG7#7$"""7"%'IsUnitG%4homalg/Janet/IsUnitG%(C
omposeG%,Janet/CmpOpG%'ReduceG%8homalg/Janet/InvoReduceG%.IsRingElementGf*6#%"a
GF$F$F$-%.Janet/jchkdopG6$9$Q!F$F$F$F$%1PresentationInfoG%>homalg/Janet/JanHilb
ertCartanG%'matrixG%-Janet/jmkmatG%'SubMatG%,Janet/SubOpG%3SyzygiesGeneratorsG%
6homalg/Janet/SyzygiesG%&MinusG%.Janet/jsubconG%'AddMatG%,Janet/AddOpG%-DivideB
yUnitG%4Janet/jdividebyunitG%'MulMatG%.Janet/jmulmatG%.SimplifyBasisG%9homalg/J
anet/JandepcheckG%+InvolutionG%8homalg/Janet/InvolutionG%.BasisOfModuleG%4homal
g/Janet/JBasisGF$
M7R0
I4Janet/degrevlex_POTf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%jnCopyright~(C)~2000-2010
~by~Daniel~Robertz.~All~rights~reserved.G6"C&@&2&9$6#""#&9%F3-%'RETURNG6#%&fals
eG2F5F1-F86#%%trueG>8%-%(convertG6$&F26#"""%"+G>8&-FB6$&F6FEFG@'2F@FIF>2FIF@F:C
$?(8$-%%nopsG6#FD!""FFF>@&2&FL6#FR&FDFZF<2FenFYF7F>F-F-F-F-
M7R0
I/Janet/dadjointf*6&%"pG'%%ivarG%%listG'%&opvarGF('%$opsGF(6#%"iG6#%jnCopyright
~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserved.G6"-%%subsG6$7#-%$seqG6$/
&9&6#8$,$F:!""/F=;"""-%%nopsG6#F;-%-Janet/dualopG6&9$9%F;9'F1F1F1F1
M7R0
I8Janet/binary_insert_posf*6)%"aG%"FG%"sG%"nG%"lG%&N_OrdG%#eqG6%%"iG%"jG%"pG6#%
\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reser
ved.G6"C'@$/9(""!-%'RETURNG6$7#9$"""@$3/9&F=/9'F6@$-9)6$F<&9%6#F=@%-9*FG-F96$FI
F=-F96$-%'subsopG6$/F=FGFIF=@$/FAFC-F96$-FS6$/FA6$&FI6#FAF<FI,&FAF=F=F=>8&-%%iq
uoG6$,(FAF=FCF=F=F=""#@%-FF6$F<&FI6#F\o@%-FMFdo6$FIF\o-F"6)F<FIFA,&F\oF=!""F=F6
FFFM-F"6)F<FIF\oFCF6FFFMF2F2F2F2
M7R0
I-Janet/jopdotf*6&%%lvarG%%exprG%%ivarG%%dvarG6%%#ISG%"SG%#lvG6#%inCopyright~(C
)~2000-2002~by~Gehrt~Hartjen.~All~rights~reserved.G6"C(@%09$""!>8&-%%sortG6$F3f
*6$%"aG%"bGF/F/F/-%.Janet/jiorderG6%F39%T$F/F/6$F'9&>F67">8$FF>8%-&%)combinatG6
#%(subsetsG6#F6?(F/"""FRF/4&FJ6#%)finishedG>FH7$-%#opG6#FH-&FJ6#%*nextvalueGF/>
FH-%$mapG6$f*6#%"cGF/6$%)operatorG%&arrowGF/-F86$F3f*F;F/F/F/F>F/F/6$F'FBF/F/FC
FH-F\o6$f*6#%"JGF/FaoF/7$-%-Janet/jjsimpG6$*&-%0Janet/jmultinomG6%T#F3T&FR-%0Ja
net/jtotalderG6&T(-%.Janet/jremainG6$FepF3FfpT*FRF^qF3F/F/6*F,F6F'FDF&FAF(9'FHF
/F/F/F/
M7R0
I-Janet/jQsubsf*6&%"QG%%exprG%%ivarG%%dvarG6#%#_QG6#%inCopyright~(C)~2000-2002~
by~Gehrt~Hartjen.~All~rights~reserved.G6"C%>8$-%.Janet/jmklistG6#9$@$0-%%nopsG6
#F0-F86#9'-%&ERRORG6#%HQ~must~have~as~many~components~as~dvar!G-%-Janet/jjsimpG
6%-%%subsG6$-%$mapG6$f*6#%"iGF-6$%)operatorG%&arrowGF--%#opG6#7$-FQ6#-FH6$f*6#%
"aGF-FMF-/F4-%0Janet/jtotalderG6&&T#6#T&7#-FQF3T(T*F-F-6*F*T'FLF4F'F`oF(F\o-%/J
anet/jgetindsG6$T$7#&F\oF3/Fho&FboF3F-F-6*F&9%F(F<F*F0F'9&7#-%"$G6#;"""F:F\pF<%
)simplifyGF-F-F-F-
M7R0
I/Janet/jeqn2prdf*6%%$eqnG%%ivarG%%dvarG6+%"iG%"dG%#zzG%&_ivarG%&_dvarG%%_eqnG%
'ivdvarG%%aeqnG%$prdG6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~right
s~reserved.G6"C.>8)-%.Janet/jmklistG6#-%'expandG6#9$>8&7#-%"$G6$""!-%%nopsG6#9&
>8(F@>8*F@>8+%%NULLG@%32""$9#4-%%typeG6$&9"6#""%%'stringG>8'FZ>Fjn9%?(8$"""F_oF
F%%trueG@%-FX6$&FI6#F^o%)functionGC%>FK-%'subsopG6$/F^o-%#opG6$FEFdoFK>FM-Fjo6$
/F^o7#-F^p6#FdoFM@'32-FG6#&FMFeo-FG6#Fjn-%/Janet/jsublistG6$F\qFjn>FO6$FO-F^p6#
-%$mapG6$f*6#%"aGF46$%)operatorG%&arrowGF47$-Fjo6$/T#&%"DGF=T%FEF4F46&F)F^oF+F@
-%.Janet/jgetposG6$-%,Janet/jrestG6$FjnF\qFjn3/FjpF]qF_qF4-%&ERRORG6$Fdo%9has~t
he~wrong~variables!GC$>FK-Fjo6$/F^oFdoFK>FM-Fjo6$/F^oF\oFM>8%-%/Janet/jgetdrvsG
6$F>FK@$-FX6$&Fen6#FUFhnC$-Fgq6%%'degreeGF7<$-F^p6#F^t-%$seqG6$-&FK6#%"bG6#-F^p
6#&FMFcu/Fdu;F_o-FG6#FK@$5-%$hasG6$%"%G%%FAILG0-%'selectG6$f*6#F)F4F\rF42F_oF>F
4F4F4Fbv7"-Fas6#%isnonlinear~PDEs~appear~in~the~input,~or~a~dependent~variable~
appears~as~function~with~arguments~different~from~the~given~independent~variabl
es.G>8,-%%subsG6%-Fgq6$f*6#%"xGF4F\rF4/F>-%/Janet/jmap2indG6%F>FcrQ!F4F4F46$F,F
jnF^t-Fgq6$f*FcuF4F\rF4/-&FcrF=6#-F^p6#&FfrF=FdxF4F46&F-FKF/FM7#-FC6#FjuF7>F`w7
$FO-F^p6#-Fgq6$f*FjqF4F\rF47$-Fgq6$f*FcuF4F\rF4-%&coeffG6$-%(collectG6$T$FfrF>F
4F46&F[rF>F-FcrFcr-%/Janet/jaffpartG6$F>FcrF4F46$F-FKF`w@'5-FX6$F>%%listG0FOFPF
`w-FX6$F>%$setG-%-Janet/jmksetG6#F`w-F^pF_[lF4F4F4F4
M7R0
I-Janet/jesubsf*6%%$relG%%exprG%%lvarG6#%*myunapplyG6#%[oCopyright~(C)~2000-200
2~by~Mohamed~Barakat.~All~rights~reserved.G6"C%>8$f*F,6$%&fnameG%&snameGF,F,@%-
%%typeG6$&9"6#"""%)functionGC&>F/-%#opG6$""!F8>8%-%(convertG6$F/%'symbolG-%(una
pplyG6$-FD6#-F@6#F8&F96#;""#!""-%%subsG6$/FDF/%"%G-FJ6#F9F,F,F,@%2FS9#-%$mapG6$
f*6#%"aGF,6$%)operatorG%&arrowGF,@%-F66$-%$lhsG6#9$F</-F@6$FBFeo-T#6$-%$rhsGFgo
-F@6#Feo/Feo-F]p6$F_pT&F,F,6&F)F/F'9&-%.Janet/jmklistGFgo-Fjn6$f*F]oF,F_oF,@%Fc
oFioFhoF,F,6$F)F/Fip-%%evalG6$9%FYF,F,F,F,
M7R0
I+Janet/D2Opf*6%%#_LG'%%DvarG%%listG'%%ivarGF(6&%"iG%"LG%#LDG%%dvarG6#%jnCopyri
ght~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C&@%-%%typeG6$9$%'m
atrixG>8%-%(convertG6$F8%)listlistG>F;F8@%-F66$F;F?>8'7#-%$seqG6$-%$catG6$%#_uG
8$/FN;"""-%%nopsG6#&F;6#FQ>FE7#FM>8&-%-Janet/D2DiffG6&F;9%9&FE@%-F66$FZF?-%.Jan
et/Diff2OpG6%-%$mapG6$%#opGFZFinFE-F^o6%FZFinFEF2F2F2F2
M7R0
I2Janet/CoeffReducef*6&%"LG'%$eqsG%%listG'%%ivarGF('%%dvarGF(6%%"eG%"iG%.isindn
otationG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"
C%>8&4-%$hasG6$9$7#-%$seqG6$-&9'6#8%6#-%#opG6#9&/FD;"""-%%nopsG6#FB@%-F96$9%F<>
8$-%/Janet/Diff2IndG6%FSFIFB>FUFS@%F6-%/Janet/jjreduceG6&FUF;FIFB-%/Janet/Ind2D
iffG6%-Ffn6&FU-FW6%F;FIFBFIFBFIFBF3F3F3F3
M7R0
I/Janet/jsublistf*6$%"aG%"bG6%%#bbG%"iG%#poG6#%inCopyright~(C)~2000-2002~by~Geh
rt~Hartjen.~All~rights~reserved.G6"C$>8$9%@'2-%%nopsG6#F1-F56#9$-%'RETURNG6#%&f
alseG/F9F1-F;6#%%trueGC$?&8%F9FA@%-%'memberG6%FDF0.8&>F0-%'subsopG6$/FJ%%NULLGF
0F:F?F-F-F-F-
M7R0
I0Janet/jdepcheckf*6#%$resG6+%#vsG%#slG%"iG%#KMG%#GMG%#ncG%#nrG%#zlG%#rkG6#%inC
opyright~(C)~2000-2003~by~Gehrt~Hartjen.~All~rights~reserved.G6"C0>8%-%.Janet/j
mklistG6#9$>8$7">8&"""?(F2F?F?F21F>-%%nopsG6#F5@%/&F56#F>""!C$>F;7$-%#opG6#F;FI
>F5-%'subsopG6$/F>%%NULLGF5>F>,&F>F?F?F?>8'-%3Janet/jcoeffmatrixGFD>8*FB>8)-&%'
linalgG6#%'coldimG6#FY>8(-&F\o6#%*gausselimG6$-&F\o6#%(augmentG6$FY-%&arrayG6%;
F?FgnF_p%)identityGFin>8,-&F\o6#%%rankG6#-&F\o6#%*submatrixG6%FaoF_p;F?Fin>8+-%
/Janet/jzerocolG6#-Fip6%Fao;F?Fbp;,&FinF?F?F?,&FgnF?FinF?>F;7$FM-FN6#-%$mapG6$f
*6#F)F26$%)operatorG%&arrowGF2-%(convertG6$-%$zipG6%f*6$%"aG%"bGF2FbrF2*&F9F?9%
F?F2F2F2-Ffr6$-&F\o6#%*subvectorG6%T#F9;,&T%F?F?F?,&F[tF?T'F?%%listGT)%"+GF2F26
*F+FaoF,FinF-FgnF(F57#-%"$G6#;,&FbpF?F?F?Fgn>F5-FR6$-FN6#-F^r6$f*FarF2FbrF2/F9F
UF2F2F2F_qF5@$32F?9#-%%typeG6$&9"6#""#%'symbolG-%'assignG6$FhuF;F5F2F2F2F2
M7R0
I4Janet/ResolutionDimf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6(%"iG%"jG%"dG%#d1G%#tr
G%#MVG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C'
@%2""$9#>8(&9"6#""%>F;""!>8'-%%nopsG6#&-%1Janet/JanetBasisG6&9$9%9&""#6#""">8&7
$FC-FE6#&%'T_ListG6%FPFPFP@$5/F;FA2FPF;C%@%%0Janet/janetlikeG>8)-%$mapG6$f*6#%"
aGF46$%)operatorG%&arrowGF4,&-FE6#&FK6#""&FP-%*numboccurG6$Fho%)infinityG!""F4F
4F4FW>F[o-F]o6$f*F`oF4FboF4-F\p6$FhoFAF4F4F4FW>FC-%$addG6$&F[o6#8$/F\q;FPFC@$2F
AFCC%>FR7$FC-%#opG6#FR?(F\qFPFP-FE6#F[o%%trueG@$2FAFjp>Fjp,&FjpFPF_pFP?(F4FPFPF
43F`q5Fen2,&-FEFfqFPF_pFPF;C%>FC-Fhp6$-Fhp6$8%/F[s;FPFjp/F\q;FPFhq?(F\qFPFPFhqF
jq@$F\r>FjpF^r@$F`q>FRFcq-%'RETURNGFfqF4F4F4F4
M7R0
I.Janet/jdiffopf*6$%$vecG%%ivarG6&%%dvarG%%DvarG%$cmdG%%mvecG6#%[oCopyright~(C)
~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C&@$4-%%typeG6$9$<'%$setG
%'matrixG%'vectorG%&arrayG%%listG-%'RETURNG6#f*6#%#_aGF.6$%)operatorG%&arrowGF.
*&T$"""F5FGF.F.6$F%F5@%2""#9#C$>8$-%.Janet/jmklistG6#&9"6#""$>8%FOC$>FO%%NULLG>
FX7"@%2FVFL>8&&FT6#""%>F[o%)simplifyG@%-%.Janet/jchkdopG6#F5-%%subsG6%/%$_JSG%-
Janet/jjsimpG/%%_JSCGF[o-Ffo6$/%$_FFG%0Janet/jtotalderG-%(unapplyG6$-Fio6%-%(co
nvertG6$-%$mapG6$f*6#%#zzGF.FBF.*&&F56#FGFG-F`p6&FA&F56#FKFFT%FGF.F.6&F&9%F(FOF
5%"+GFXF\pFAC$>8'-FQFdo@'3-F36$F]rF;-Fco6#&F]rFbq-Ffo6%FhoF[p-Ffo6$F_p-Fcp6$-Fi
o6%-Fhp6$-F[q6$f*6#%"bGF.FBF.-Fhp6$-F[q6$f*F^qF.FBF.*&FaqFG-F`p6&&FA6#FFFeqT&T'
FGF.F.6(FdsF5F&F_tF(F`t&T#FdoFjqF.F.6(F+F]rF&FiqF(FO7#-%"$G6#;FG-%%nopsG6#F]rFj
qFXF\pFA3-F36$FerF;-Fco6#&F]r6$FGFG-Ffo6%FhoF[p-Ffo6$F_p-Fcp6$-Fio6%-F[q6$f*6#%
"cGF.FBF.-Fhp6$-F[q6$f*FcsF.FBF.-Fhp6$-F[q6$f*F^qF.FBF.FjsF.F.6(FdsF5F&T(F(T)&F
ct6$F_tF5FjqF.F.6*F+FctF`vF5F&F_tF(F`t7#-Fgt6#;FG-F[u6#FbtFjqF.F.FdtFetFXF\pFA-
%&ERRORG6$%=cannot~recognise~the~type~ofGF5F.F.F.F.
M7R0
I3Janet/RightInversef*6%%"LG'%&ivarsG%%listG%&dvarsG6'%"iG%"RG%&rvarsG%"JG%'nlv
arsG6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C)>8
&%%NULLG>8'F6>8(F6?(8$""$"""9#%%trueG@'-%%typeG6$&9"6#F<F(@$1""%F<@%5-%(hastype
G6$FE%'symbolG-FN6$FE%(indexedG>F5FE-%&ERRORG6#%0invalid~option.G-FC6$FE%)equat
ionG@'/-%#opG6$F>FEQ)coeffeqsF2>F8FE/FhnQ*coeffdvarF2>F:FEFUFU@%-FC6$9$%'matrix
G>8%Fco>Ffo-%.Janet/Diff2OpG6%Fco9%9&>Ffo-%2Janet/LeftInverseG6&-%/Janet/JAdjoi
ntG6$FfoF[p%%ivarGF8F:@%/Ffo%%FAILGFfoC$>FfoFap@%Fao-%&evalmG6#FfoC$@$/F5F6>F57
#-%$seqG6$-%$catG6$%#_AGF</F<;F>-&%'linalgG6#%'coldimGF]q-%,Janet/AppOpG6&FfoF5
F[pF5F2F2F2F2
M7R0
I0Janet/Linearizef*6%%"LG'%%ivarG%%listG'%%dvarGF(6%%"iG%.isindnotationG%%DvarG
6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C&>8%%%t
rueG>8$"""?(F1F8F8F13F41F7-%%nopsG6#9&C$@$-%$hasG6$9$-&F?6#F76#-%#opG6#9%>F4%&f
alseG>F7,&F7F8F8F8@%4F4C%@$19#""$-%&ERRORG6#%`oexpecting~list~of~linearized~dep
endent~variables~as~fourth~parameter.G>8&&9"6#""%-%/Janet/Ind2DiffG6%-%,Janet/j
jlinG6&-%/Janet/Diff2IndG6&FEFMF?FhnFMF?FhnFM7$-FKF>-FK6#Fhn-Fao6#FjnF1F1F1F1
M7R0
I/Janet/jind2revf*6#%$varG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~Al
l~rights~reserved.GF&@'3-%%typeG6$9$%(indexedG-F,6$-%#opG6$""!F.%'symbolG-%$cat
G6%-F36#F.%"_GF2-F,6$F.F6-F86$F<F.-%&ERRORG6$%.cannot~handleGF.F&F&F&F&
M7R0
I9homalg/Janet/Jandepcheckf*6$%#_MG%%ivarG6%%"iG%%dvarG%"MG6#%jnCopyright~(C)~2
004-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C&>8%7#-%$seqG6$-%$catG6$.%#
_dG8$/F:;"""-%%nopsG6#&9$6#F=>8&-%,Janet/AppOpG6&FBF09%F0-%0Janet/jdepcheckG6#F
E-%(convertG6$-%.Janet/Diff2OpG6%%"%GFIF0%)listlistGF-F-F-F-
M7R0
I8Janet/reduce_constcoefff*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%
)rhs_dvarG6,%"aG%"hG%"iG%"jG%"pG%"rG%$divG%#lmG%$mulG%"SG6#%\pCopyright~(C)~200
0-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C(>8%&9$6#;"
""""#>8(&F?6#""$>8)7$%$zedG""!>8+-9&6#&F=6#FB?(F:FBFBF:0&FO6$FCFBFMC'>8*%&false
G>8&FB?(F:FBFBF:31Fhn%)number_tG4Fen@%-%1Janet/inv_divideG6%&%'T_ListG6$FhnFH&F
co6$Fhn""&&FOFTC(>%(_jreducG,&F[pFBFBFB>8-,&&FO6$FBFBFB&Fco6%FhnFHFB!"">8,-%,Ja
net/derivG6'F^p&Fco6$FhnFB9'9%9+>F=7$-%(collectG6%-%'normalG6#,&FSFB-%$mapG6$f*
6#F.F:6$%)operatorG%&arrowGF:*(&T#FXFB&Fco6%T%""'FBFdpF?FBF:F:6&F5FOF0Fhn&FfpFT
FdpF]q%,distributedG-Fbq6%-Feq6#,&&F=6#FCFB*(FWFB&Fco6%FhnFfrFBFdp&FfpF`sFBFdpF
^qFir>FE-%$maxG6$FE,&&Fco6%FhnFBFHFB-%(convertG6$F^p%"+GFB>Fen%%trueG>Fhn,&FhnF
BFBFB@$F]oC$>FJ7$-%'subsopG6$/&FO6$FBFC-Fbq6%-Feq6#,&&&FJFT6#F\uFB*&FWFB&FO6$FC
FCFBFBF]qFirFdu&FJF`s>F=7$-Fit6$/F\u-Fbq6%-Feq6#,&&FSFeuFBFfuFdpF]qFirFSF_s>FOF
P7%FduF_sFEF:6#F[pF:F:
M7R0
I4Janet/Intersection2f*6&%$_R1G%$_R2G'%&ivarsG%%listG'%&dvarsGF)63%"aG%"iG%"jG%
"nG%"vG%%ivarG%%dvarG%&oivarG%&_ivarG%%DvarG%%dopsG%)hom_caseG%#R1G%#R2G%#R0G%(
tmpNuStG%$resG6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserv
ed.G6"C6>8(-%/Janet/get_varsG6$9&9'>8)&FC6#""">8*&FC6#""#>8,&FC6#"")>8+&-%/Jane
t/get_optsG6$FJ&9"6#;""&9#6#""$>80-%0Janet/get_inputG6*9$FJFOFYFT7"Ffo%&falseG>
8/&FaoF^o>8.&Fao6#""%>Fao&FaoFL>81-Fco6*9%FJFOFYFTFfoFfoFgo>Fio3Fio&FcpF^o@$0&F
cpF^pF\p-%&ERRORG6#%doexpecting~two~systems~of~linear~PDEs~with~the~same~indepe
ndent~variables.G>Fcp&FcpFL>8'-%%nopsG6#FO@%FioC$>8-7$-%$mapG6$f*6#F-F@6$%)oper
atorG%&arrowGF@-%$catG6$Feo.FMF@F@F@FO-F^r6$f*FarF@FbrF@-Ffr6$Feo.FRF@F@F@FO>82
7$-%#opG6#-%.Janet/conv2eqG6(-F^r6$f*FarF@FbrF@7$7$-Fcs6#&FeoFLF]t""!F@F@F@FaoF
\pFJ-F^r6$FcsF[rFTFY-Fcs6#-Ffs6(-F^r6$f*FarF@FbrF@7$7$F]t-%"$G6$F`tT#F`tF@F@6$F
0FdqFcpF\pFJFatFTFYC$>F[r7$7$-Fcs6#-F^r6$f*FarF@FbrF@FerF@F@F@FO%%_XI1G7$-Fcs6#
-F^r6$f*FarF@FbrF@F\sF@F@F@FO%%_XI2G>F`s7$-Fcs6#-Ffs6(-F^r6$f*FarF@FbrF@7$7&F]t
&FeoFQF]tF]wF`tF@F@F@FaoF\pFJFatFTFY-Fcs6#-Ffs6(-F^r6$f*FarF@FbrF@7$7&F]tF]wF\u
F`tF`tF@F@F`uFcpF\pFJFatFTFY-%1Janet/JanetBasisG6&F`sFGF[rFhn-%1Janet/updateNuS
tG6#-F^r6$f*FarF@FbrF@-%%subsG6$-%$zipG6%f*6$F.F/F@FbrF@/FeoFfpF@F@F@F_uT%-%&nu
merG6#&&Feo6#""'FLF@F@6&F5FTF2FJ%'T_ListG>83%&Nu_StG@%Fio>84-F^r6$f*FarF@FbrF@@
$/&&F_tFL6#;FMF_u7#F\u-Ffs6(7$&F_z6#;,&F_uFMFMFM,$F_uFRF`tFixT'T)T+T-F@[email protected]
qF7F\pF2FJF3FOF5FTF4FYFby>Fhy-F^r6$f*FarF@FbrF@@$/&F_z6#;FMFiz7$F\uF`t-Ffs6(7$&
F_z6#;,&F_uFMFRFM,&F_uFRFMFM&F_z6#,&F_uFRFRFMFixF[[lF\[lF][lF^[lF@F@F_[lFby@%/F
hyFfo7%F`tFGFHC&>Fhy-Fhw6$Fhy&Fin6#;F_oF]o-F[x6#Fdy-F[x6#-F^r6$f*FarF@FbrF@-Fax
6$-Fdx6%f*FgxF@FbrF@FhxF@F@F@F_uFixF]yF@F@FayFbyFhyF@6#FeyF@F@
M7R0
I7Janet/deglex_deg_blockf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%jnCopyright~(C)~20
04-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C'>8%-%%nopsG6#&9$6#""">8&,&-
%$addG6$*&&F56#8$F8&%)_jvardegGFAF8/FB;F8F1F8&%)_jtupdegG6#&F66#""#F8>8',&-F=6$
*&&&9%F7FAF8FCF8FEF8&FH6#&FUFKF8@'2F:FN-%'RETURNG6#%%trueG2FNF:-Ffn6#%&falseGC%
>F:F<>FNFP@'FZFenFinFjn?(FBF8F8F1Fhn@&2FSF@[email protected].
M7R0
I8Janet/ShorterResolutionf*6%'%"FG%%listG'%&ivarsGF'%&dvarsG6'%"iG%"jG%"lG%"vG%
%betaG6#%\pCopyright~(C)~2004-2010~by~Alban~Quadrat~and~Daniel~Robertz.~All~rig
hts~reserved.G6"C&>8'-%*substringG6$-%(convertG6$-%+kerneloptsG6#%(versionG%'st
ringG;""""")@$45-%%typeG6$9$-F'6#%'matrixG330F6Q)Maple~V,F30F6Q)Maple~6.F3-FI6$
FK-F'6#%'MatrixG-%&ERRORG6#%]oexpecting~a~free~resolution~as~list~of~matrices~a
s~first~argument.G>8&-%%nopsG6#FK@%1FinFCFKC$>8(-%3Janet/RightInverseG6$&FK6#FC
&9"6#;""#!""@%/Fao%%FAILGFK@%/FinF[p7#-%-Janet/jmkmatG6#-%$zipG6%f*6$F,F-F36$%)
operatorG%&arrowGF37$-%#opGF\o-F`q6#9%F3F3F3-F;6$&FK6#F[p%)listlistG-F;6$FaoFhq
7%-Fdp6#-Fgp6%f*FjpF3F[qF3F^qF3F3F3FdqFiq-Fdp6#7$-F`q6#-F;6$&FK6#""$Fhq-%"$G6$7
#-F\s6$""!-&%'linalgG6#%'coldimG6#Fhr-Fcs6#Fao-%$seqG6$-%%copyG6#&FK6#8$/Fbt;""
%FinF3F3F3F3
M7R0
I9Janet/ShortestResolutionf*6%%"RG'%&ivarsG%%listG%&dvarsG6%%"FG%"SG%"vG6#%\pCo
pyright~(C)~2004-2010~by~Alban~Quadrat~and~Daniel~Robertz.~All~rights~reserved.
G6"C'>8&-%*substringG6$-%(convertG6$-%+kerneloptsG6#%(versionG%'stringG;""""")@
%34-%%typeG6$9$-F(6#%'matrixG330F3Q)Maple~V,F00F3Q)Maple~6.F04-FF6$FH-F(6#%'Mat
rixG>8$-%1Janet/ResolutionG6&FH9%9&Q$CGTF0>FYFH>8%-%8Janet/ShorterResolutionG6$
FY&9"6#;""#!""?(F0F@F@F00-%%nopsG6#F\o-Fio6#FYC$>FY-%%copyGFjo>F\oF]oF_pF0F0F0F
0
M7R0
IBJanet/degrevlex_deg_lc_dvar_blockf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%enCopyr
ight~(C)~2010~by~Daniel~Robertz.~All~rights~reserved.G6"C+@&2&%,_dvarblocksG6#&
9$6#""#&F36#&9%F7-%'RETURNG6#%&falseG2F9F2-F>6#%%trueG>8%-%%nopsG6#&F66#""">8&-
%$addG6$*&&FJ6#8$FL&%)_jvardegGFTFL/FU;FLFF>8'-FP6$*&&&F<FKFTFLFVFLFX@'2FNFenFB
2FenFNF=?(FUFF!""FLFD@&2FinFSFB2FSFinF=>FN-%(convertG6$&&F66#""$FK%"+G>Fen-Feo6
$&&F<FioFKF[p@'F\oFBF]oF=?(FU-FH6#FgoF_oFLFD@&2&F_pFT&FgoFTFB2FhpFgpF=@%2F5F;F@
FDF.F.F.F.
M7R0
I;Janet/block_ord_dvar_blockf*6&%"aG%"bG%$sepG%+termordersG6#%"iG6#%jnCopyright
~(C)~2006-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$@&2&%,_dvarblocksG6#
&9$6#""#&F26#&9%F6-%'RETURNG6#%&falseG2F8F1-F=6#%%trueG@'4-&9'6#"""6$7$&&F5FI6#
;FJ&9&FIF47$&&F;FIFOF:F?/FMFTC$?(8$F7FJ-%%nopsG6#FRFC@&4-&FH6#FY6$7$&FN6#;,&&FR
6#,&FYFJ!""FJFJFJFJ&FRF[oF47$&FUF_oF:F<0F^oFhoFA@%2F4F:F?FCFCF-F-F-F-
M7R0
I/Janet/get_varsf*6$'%&ivarsG%%listG'%&dvarsGF'60%"aG%"iG%"jG%"vG%%ivarG%%dvarG
%)ivar_ordG%)dvar_ordG%)ivar_degG%)dvar_degG%)dvar_posG%)ideg_ordG%)ddeg_ordG%&
_ivarG6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C@
>8(%%NULLG>8)F?>8*F?>8+F?>8,F?>8-F?>8/F?>80F?>8.7"@$/9$FP-%&ERRORG6#%enexpectin
g~non-empty~list~of~independent~variables~in~ivar.G?(8%"""FZ-%%nopsG6#FS%%trueG
@%-%%typeG6$&FS6#FYF'C)@$/F]oFP-FU6#%fnunexpected~empty~list~in~the~list~of~ind
ependent~variables.G>8'-%$mapG6$f*6#F+F;6$%)operatorG%&arrowGF;@%-F[o6$FS%)equa
tionG7$-%#opG6$FZFS-Fep6$""#FS7$FSFZF;F;F;F]o@$0-Ffn6#-%'selectG6%%(hastypeG-Fh
o6$f*F[pF;F\pF;&FS6#FZF;F;F;Ffo%%nameG-Ffn6#Ffo-FU6#%Lindependent~variables~mus
t~be~of~type~name.G>F>6$F>-Fep6#-Fho6$f*F[pF;F\pF;FfqF;F;F;Ffo>FG6$FG-Fep6#-Fho
6$f*F[pF;F\pF;&FS6#FipF;F;F;Ffo>FC6$FC-Fho6$f*F[pF;F\pF;FfqF;F;F;Ffo>FK6$FK-Fho
6$f*F[pF;F\pF;F\sF;F;F;FfoC$@%-F[o6$F]oFbp>8&-Fep6$FZF]o>F]tF]o@%4-F[o6$F]tFhqF
[rC%@$0FCF?-FU6#%jpivars~must~contain~names~for~independent~variables~or~lists~
of~names~for~independent~variables.G>F>6$F>F]t@%Fjs>FG6$FG-Fep6$FipF]o>FG6$FGFZ
>F>7#F>>FG7#FG@$4-F[o6$FG-F'6#%'posintG-FU6#%gnexpecting~natural~number~as~degr
ee~for~independent~variable.G@$/9%FP-FU6#%Yexpecting~non-empty~list~of~dependen
t~variables~in~dvar.G?(FYFZFZ-Ffn6#FdvFhn@%-F[o6$&FdvF^oF'C+@$/F^wFP-FU6#%Zunex
pected~empty~list~in~the~list~of~dependent~variables.G>Ffo-Fho6$f*F[pF;F\pF;@%F
`pFcp7$FS""!F;F;F;F^w>Ffo-Fho6$f*F[pF;F\pF;@%-F[o6$Ffq%)functionG@%/7#-Fep6#Ffq
T#7$-Fep6$F[xFfqF\s-FU6#%joexpecting~the~dependent~variables~to~depend~on~the~g
iven~independent~variables.GFSF;F;6$F/F>Ffo@$0-Ffn6#-F`q6%Fbq-Fho6$f*F[pF;F\pF;
FfqF;F;F;FfoFhqFiq-FU6#%Jdependent~variables~must~be~of~type~name.G>FA6$FA-Fep6
#-Fho6$f*F[pF;F\pF;FfqF;F;F;Ffo>FI6$FI-Fep6#-Fho6$f*F[pF;F\pF;F\sF;F;F;Ffo>FE6$
FE-Fho6$f*F[pF;F\pF;FfqF;F;F;Ffo>FM6$FM-Fho6$f*F[pF;F\pF;F\sF;F;F;Ffo@%/FOFP>FO
7#Fiq>FO7$-Fep6#FO,&&FO6#!""FZFiqFZC%@%-F[o6$F^wFbp>F]t-Fep6$FZF^w>F]tF^w@$-F[o
6$F]tFcx@%/7#-Fep6#F]tF>>F]t-Fep6$F[xF]tF]y@%FbtFjyC%@$0FEF?-FU6#%fpdvars~must~
contain~names~for~dependent~variables~or~lists~of~names~for~dependent~variables
.G>FA6$FAF]t@%Fc\l>FI6$FI-Fep6$FipF^w>FI6$FIF[x>FA7#FA>FI7#FI>%)_jvardegGFG>%)_
jtupdegGFI@&/FI7#-%"$G6$F[x-Ffn6#FA>FIFP4-F[o6$FI-F'6#%(integerG-FU6#%Texpectin
g~integer~as~degree~for~dependent~variable.G@$Ff[l>FO7#Fb_l>%,_dvarblocksGFP>FY
FZ?(F;FZFZF;1FYFb_lC&>F]tFZ?(F;FZFZF;31F]t-FfnF\\l2&FOF`]lFY>F]t,&F]tFZFZFZ@%Fj
`l>Fb`l7$-Fep6#Fb`lF]t[>FY,&FYFZFZFZ>Fb`l7$Fcal-F`_l6#;FYFb_l>%$nivG-Ffn6#F>>%$
zedGF^_l>81-Fho6$f*6#F,F;F\pF;-%$catG6$%#_xGFSF;F;F;7#-F`_l6#;FZF^bl7+F>FA7#FCF
GFI7#FK7#FMFdblFOF;6'F^blFbblFi^lF[_lFb`lF;F;
M7R0
I0Janet/get_ivarsf*6#'%&ivarsG%%listG6+%"aG%"iG%"jG%"vG%%ivarG%)ivar_ordG%)ivar
_degG%)ideg_ordG%&_ivarG6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~rig
hts~reserved.G6"C/>8(%%NULLG>8)F8>8*F8>8+F8@$/9$7"-%&ERRORG6#%enexpecting~non-e
mpty~list~of~independent~variables~in~ivar.G?(8%"""FI-%%nopsG6#FA%%trueG@%-%%ty
peG6$&FA6#FHF'C(>8'-%$mapG6$f*6#F)F46$%)operatorG%&arrowGF4@%-FP6$FA%)equationG
7$-%#opG6$FIFA-F_o6$""#FA7$FAFIF4F4F4FR@$0-FK6#-%'selectG6%%(hastypeG-FX6$f*Fen
F4FfnF4&FA6#FIF4F4F4FV%%nameG-FK6#FV-FD6#%Lindependent~variables~must~be~of~typ
e~name.G>F76$F7-F_o6#-FX6$f*FenF4FfnF4F`pF4F4F4FV>F<6$F<-F_o6#-FX6$f*FenF4FfnF4
&FA6#FcoF4F4F4FV>F:6$F:-FX6$f*FenF4FfnF4F`pF4F4F4FV>F>6$F>-FX6$f*FenF4FfnF4FfqF
4F4F4FVC$@%-FP6$FRF\o>8&-F_o6$FIFR>FgrFR@%4-FP6$FgrFbpFepC%@$0F:F8-FD6#%jpivars
~must~contain~names~for~independent~variables~or~lists~of~names~for~independent
~variables.G>F76$F7Fgr@%Fdr>F<6$F<-F_o6$FcoFR>F<6$F<FI>F77#F7>F<7#F<@$4-FP6$F<-
F'6#%'posintG-FD6#%gnexpecting~natural~number~as~degree~for~independent~variabl
e.G>%)_jvardegGF<>%$nivG-FK6#F7>8,-FX6$f*6#F*F4FfnF4-%$catG6$%#_xGFAF4F4F47#-%"
$G6#;FIF_u7'F77#F:F<7#F>FcuF46$F_uF]uF4F4
M7R0
I1Janet/transfer_Tf*6$%&m_ordG%&N_OrdG6&%"iG%"kG%"JG%$ndvG6#%jnCopyright~(C)~20
00-2010~by~Daniel~Robertz.~All~rights~reserved.G6"@$2"""%)number_tGC(@$309$F10F
7""$>%'T_ListG-%%sortG6$F;%,Janet/plex3G>8'-%%nopsG6#&F;6%F1F1F1>8&7#-%"$G6$7"F
A?(8$F1F1-FC6#F;%%trueGC$>8%&F;6%FOF9""#>FH-%'subsopG6$/FU7$-%#opG6#&FH6#FUFOFH
-%$mapG6$f*6#F(F.6$%)operatorG%&arrowGF.-%/Janet/update_TG6#&T#6#F7F.F.6$F*FH7#
-FK6#;F1FA>F;-F=6$F;9%F.FQF.F.
M7R0
I/Janet/mult_varf*6$'%"aG%%listG'%%ivarGF'6$%"iG%"bG6#%\pCopyright~(C)~2000-201
0~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C%>8%%%NULLG?(8$"
""F6%$nivG%%trueG@%/&9$6#F5""!>F26$F2%"*G@%%0Janet/janetlikeG>F26$F2)&9%F=F;>F2
6$F2FG-%'RETURNG6#7#F2F/F/F/F/
M7R0
I-Janet/jjsimpf*6$%%exprG%%dvarG6%%$cmdG%$indG%%_indG6#%[oCopyright~(C)~2000-20
02~by~Mohamed~Barakat.~All~rights~reserved.G6"C&@%2""#9#>8$&9"6#""$>F4%)simplif
yG>8%-%/Janet/jgetindsG6$9$9%>8&-%$mapG6%%(convertGF<%'symbolG-%%subsG6$-%,Jane
t/jezipG6$FCF<-F46#-FJ6$-FM6$F<FCF@F-F-F-F-
M7R0
I/Janet/AppOpIndf*6%%%operG%&lexprG%%ivarG6$%"vG%%dvarG6#%[oCopyright~(C)~2000-
2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C'>8$-%*substringG6$-%(convertG
6$-%+kerneloptsG6#%(versionG%'stringG;""""")@$45-%%typeG6$9$<&%'matrixG%&arrayG
%)listlistG%%listG330F0Q)Maple~V,F-0F0Q)Maple~6.F--FC6$FE%'MatrixG-%&ERRORG6#%e
nexpecting~a~list~(of~lists)~or~a~matrix~as~first~argument.G@%2""$9#>8%&9"6#""%
>Fgn7"@'-%.Janet/jchkdopG6#FE-F"6&7#7#FE9%9&Fgn3-FC6$FEFJ0FEF]o-%.Janet/jappmat
G6$-%$mapG6&%.Janet/jdiffopG-%-Janet/jmkmatGFaoFgoFgnFfoF\p@%-FC6$Ffo<$FHFJ%"%G
-%#opG6#FipF-F-F-F-
M7R0
I.Janet/jgetposf*6$%$lstG'%$varG%%listG6#%#poG6#%[oCopyright~(C)~2000-2002~by~M
ohamed~Barakat.~All~rights~reserved.G6"-%$mapG6$f*6#%"aGF-F-F-C%>T#%%NULLG-%'me
mberG6%9$T&.F6F6F-F-6&F*8$F'9%F;F-F-F-F-
M7R0
I3Janet/JanetOptionsf*6#%"aG6#%)oldvalueG6#%jnCopyright~(C)~2000-2010~by~Daniel
~Robertz.~All~rights~reserved.G6"C%>8$%%NULLG@%-%%typeG6$9$%'stringG@//F3Q$getF
*-%'RETURNG6#-%&tableG6#7&/Q-coefficientsF*%3Janet/coefficientsG/Q'matrixF*%1Ja
net/matrixtypeG/Q*janetlikeF*%0Janet/janetlikeG/Q)criteriaF*%.Janet/invcritG/F3
Q$setF*@%32"""9#-F16$&9"6#""#F<C&@%5/&FT6#F@Q(jreduceF*/FfnQ(diffalgF*>FAFfn-%&
ERRORG6#%Einvalid~table~entry:~"coefficients".G@%5/&FT6#FC%'matrixG/Fco%'Matrix
G>FDFco-F]o6#%?invalid~table~entry:~"matrix".G@%-F16$&FT6#FF%(booleanG>FGF_p-F]
o6#%Binvalid~table~entry:~"janetlike".G@%54-F16$&FT6#FI-%%listG6#%'posintG0-%'r
emoveG6%%$hasGF[q7&FPFW""$""%7"-F]o6#%Ainvalid~table~entry:~"criteria".G>FJF[q-
F]o6#%Gexpecting~a~table~as~second~parameter.G/F3Q*JanetLikeF*C$>F-FG@$FO@%-F16
$FTFap>FGFT-F]o6#%Mexpecting~boolean~value~as~second~parameter.G5/F3Q-Coefficie
ntsF*/F3F@C$>F-FA@$FO@%5/FTFhn/FTFjn>FAFT-F]o6#%gnexpecting~either~"jreduce"~or
~"diffalg"~as~second~parameter.G5/F3Q)CriteriaF*/F3FIC$>F-FJ@$FO@%54-F16$FTF]q0
-Fcq6%FeqFTFfqFiq-F]o6#%jnexpecting~list~of~integers~between~1~and~4~as~second~
parameter.G>FJ-%%sortG6#FT5/-%*substringG6$F3;FP""'Q'MatrixF*/FduFCC$>F-FD@$FO@
%5/FTFeo/FTFgo>FDFT-F]o6#%Texpecting~'matrix'~or~'Matrix'~as~second~parameter.G
-F]o6#%Cinvalid~option;~see~?JanetOptions.G-F]o6#%Yexpecting~a~string~as~first~
argument;~see~?JanetOptions.GF-F*6&FGFJFAFDF*F*
M7R0
I-Janet/Defectf*6%%#R1G%#R0G'%%ivarG%%listG6%%"nG%$RR1G%%dvarG6#%^pCopyright~(C
)~2000-2010~by~Mohamed~Barakat~and~Daniel~Robertz.~All~rights~reserved.G6"C&>8$
-&%'linalgG6#%'coldimG6#9$@%32""$9#-%%typeG6$&9"6#""%F)C$>8&FC@$0-%%nopsG6#FIF3
-%&ERRORG6#%hoThe~number~of~dependent~variables~should~coincide~with~the~number
~of~columns!G>FI-%$mapG6$f*6#%"aGF06$%)operatorG%&arrowGF0-%$catG6$%#_XGF:F0F0F
07#-%"$G6#;"""F3>8%-%,Janet/SyzOpG6$9%9&-%0Janet/SubFactorG6&FboF:FgoFIF0F0F0F0
M7R0
I6Janet/Parametrizationf*6%%$_R1G'%&ivarsG%%listG'%&dvarsGF(6-%"iG%"pG%"rG%$AR0
G%$AR1G%#R0G%#R1G%%ivarG%%dvarG%&oivarG%%optsG6#%^pCopyright~(C)~2000-2010~by~M
ohamed~Barakat~and~Daniel~Robertz.~All~rights~reserved.G6"C+>8%%$phiG>8.%%NULLG
@%329#""$-%%typeG6$9$%'matrixGC&>8+-%/Janet/get_varsG6$9%7#-%$seqG6$-%$catG6$%#
_rG8$/FZ;"""-&%'linalgG6#%'coldimG6#FI>8,&FM6#""#>FM&FM6#Fgn>8-F@C+>FM-FO6$FQ9&
>F_oF`o>FMFdo>8&-%/Janet/get_optsG6$FM&9"6#;""%FD@$0&F`p6#Fhp7">F?6$F?/Q)coeffe
qsF9F[q@$0&F`p6#""&F]q>F?6$F?/Q*coeffdvarF9Fdq?&FZ&F`pFeo%%trueG@%3-FG6$FZ%)equ
ationG/-%#opG6$FgnFZQ+parametersF9@%5-FG6$-Fer6$FboFZ%%nameG-FG6$F\s-F(6#F^s>F<
F\s-%&ERRORG6#%^oexpecting~a~name~or~list~of~names~as~value~for~option~"paramet
ers".G-Fes6#%0invalid~option.G>Fgo&F`p6#FE@$/FgoFM>FgoF@@%FF>8(FI>Fct-%.Janet/D
iff2OpG6%FIFMF_o>8*-%/Janet/JAdjointG6$FctFM>8'-%,Janet/SyzOpG6%FitFMF?>F`p-&Fj
n6#%'rowdimG6#F^u>8)-F[u6$F^uFM@%FF-%&evalmG6#Fiu@%4-FG6$F<F(@%/F`pFgn-%,Janet/
AppOpG6&Fiu7#F<FMFivC$>F<7#-FT6$-FW6$F<FZ/FZ;FgnF`p-Fgv6&FiuF<FMF<FcwF9F9F9F9
M7R0
I.Janet/jcflistf*6$%%vconG%$varG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barak
at.~All~rights~reserved.GF'-%$mapG6$f*6#%"aGF'6$%)operatorG%&arrowGF'&9$6#"""F'
F'F'-%/Janet/jsortconG6$F49%F'F'F'F'
M7R0
I.Janet/jjet2jDf*6$%$jetG'%%IvarG%%listG6#%'lstDerG6%%XCopyright~(C)~2005~by~Ar
ne~Lorenz.~All~rights~reserved.G%'systemG%)rememberG6"@%/-%%typeG6$9$%(indexedG
%%trueGC$>8$7#-%#opG6#F5-%%_jjDG6%-F=6$""!F5F:-%$mapG6$f*6#%"aGF/6$%)operatorG%
&arrowGF/@$/-%'memberG6$F5T#%&falseGF5F/F/6$F*F:9%-F@6%F57"FVF/F/F/F/
M7R0
I>homalg/Janet/JanHilbertCartanf*6$%#_MG%%ivarG6*%"iG%"vG%%dvarG%%tvarG%"MG%"NG
%#N1G%#N2G6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserved.G
6"C%>8(-%6homalg/NormalizeInputG6$9$%&JanetG@%2""#9#>8%&9"6#""$>F@.%"sG@%-%%typ
eG6$F5-%%listG6#%"=GC*>8&7#-%$seqG6$-%$catG6$.%#_dG8$/Ffn;"""-%%nopsG6#-%$lhsG6
#&F56#Fin>8'7#-FU6$-FX6$.%#_TGFfn/Ffn;Fin-F[o6#-%$rhsGF_o>F5-%$mapG6$f*6#%"aGF2
6$%)operatorG%&arrowGF27$-%#opG6#-F^o6#F9-F]q6#-Fcp6$f*6#%"bGF2FhpF2,$F9!""F2F2
F2-F`pF`qF2F2F2F5>F5-%,Janet/AppOpG6&F57$-F]q6#FR-F]q6#Fco9%F_r>8)&-%1Janet/Jan
etBasisG6%F5FdrFRFao>8*-%(convertG6$-%.Janet/Diff2OpG6%FfrFdrFR%)listlistG>8+-F
^s6$-Fas6%,$FfrFiqFdrFcoFcs6$-%4Janet/HilbertSeriesG6#F@-%6Janet/CartanCharacte
rG6#7#-%"$G6#;Fin-F[o6#FdrC&>FR7#-FU6$FW/Ffn;Fin-F[oF_o>F5-F]r6&F5FRFdrFR>FfrFg
rF[tF2F2F2F2
M7R0
I6homalg/Janet/Jacobsonf*6&%"AG%%ivarG%"UG%"VG6$%"EG%$_DtG6#%jnCopyright~(C)~20
04-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%>8$-%9Janet/ElementaryDivis
orsG6%-%'matrixG6#9$9%7#8%@&/9#""$-%'assignG6$9&-%+Janet/D2OpG6%&F16#"""F:F92F?
F>C$F@-FA6$9'-FE6%&F16#F?F:F9-%'RETURNG6#-FE6%&F16#""#F:F9F.F.F.F.
M7R0
IDJanet/diff_normalform_constcoeff_ldf*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"
JG%'nlvarsG%)rhs_dvarG6&%"aG%"lG%"rG%$conG6#%jnCopyright~(C)~2000-2010~by~Danie
l~Robertz.~All~rights~reserved.G6"C(>%)_jnnformG,&F7"""F9F9>8&-%;Janet/reduce_c
onstcoeff_ldG6#9"@$/F;7"-%'RETURNG6#7$&9$6#F97$&FH6#""$&FH6#""'>8%&F;6#""#>F;&F
;FI@%/FW%$zedG@%0FS""!C$-%2Janet/updateCOMPAG6$7#FS9'7$-%'subsopG6$/FUFgnF;FR7$
F;FRC%>8'-%0Janet/comfactorG6$FW9%@$30&FfoFIFgn50F^pF90&FfoFTF9C$>F;7%-%$mapG6$
f*6#F.F46$%)operatorG%&arrowGF4-%(collectG6%-%'normalG6#*(FHF9&T#FTF9&FfqFI!""T
&%,distributedGF4F46&F1FfoF&FjoFW-F_q6%-Fbq6#*(FSF9FbpF9F^pFhq9+Fjq&F;FL>&FR6$F
UF9-Fbq6#*(FdrF9FbpF9F^pFhqFcoF46#F7F4F4
M7R0
I<Janet/deglex_deg_dvar_blockf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%jnCopyright~(
C)~2006-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C(@&2&%,_dvarblocksG6#&9
$6#""#&F36#&9%F7-%'RETURNG6#%&falseG2F9F2-F>6#%%trueG>8%-%%nopsG6#&F66#""">8&-%
$addG6$*&&FJ6#8$FL&%)_jvardegGFTFL/FU;FLFF>8'-FP6$*&&&F<FKFTFLFVFLFX@'2FNFenFB2
FenFNF=?(FUFLFLFFFD@&2FinFSF=2FSFinFB@%2F5F;[email protected].
M7R0
I0Janet/countplusf*6#%"aG6"6#%jnCopyright~(C)~2009-2010~by~Daniel~Robertz.~All~
rights~reserved.GF&@)-%%typeG6$9$%"+G,(-%%nopsG6#F-"""!""F3-%(convertG6$-%$mapG
6$F"7#-%#opGF2F.F3-F+6$F-%"*GF5-F+6$F-%"^G-F"6#-F=6$F3F-""!F&F&F&F&
M7R0
I8Janet/deglex_deg_lc_POTf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%enCopyright~(C)~2
010~by~Daniel~Robertz.~All~rights~reserved.G6"C+@&2&9$6#""#&9%F4-%'RETURNG6#%&f
alseG2F6F2-F96#%%trueG>8%-%%nopsG6#&F36#""">8&-%$addG6$*&&FE6#8$FG&%)_jvardegGF
OFG/FP;FGFA>8'-FK6$*&&&F7FFFOFGFQFGFS@'2FIFVF=2FVFIF8?(FPFGFGFAF?@&2FZFNF82FNFZ
F=>FI-%(convertG6$&&F36#""$FF%"+G>FV-F_o6$&&F7FcoFFFeo@'FgnF=FhnF8?(FP-FC6#Fao!
""FGF?@&2&FioFO&FaoFOF=2FcpFbpF8F?F.F.F.F.
M7R0
I3Janet/LeadingDerivf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6;%"aG%"iG%"kG%"lG%#lcG%
"FG%#LMG%%dopsG%%ivarG%%dvarG%)dops_ordG%)ivar_degG%)dvar_degG%)dvar_posG%)ideg
_ordG%)ddeg_ordG%&_ivarG%&oivarG%&m_ordG%'ldprocG%)dvar_cmpG%$ndvG%*want_simpG%
+force_simpG%+constcoeffG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~ri
ghts~reserved.G6"C@>8,-%/Janet/get_varsG6$9%9&>8-&FJ6#""#>8.&FJ6#""$>8/&FJ6#""%
>80&FJ6#""&>82&FJ6#""'>83&FJ6#""(>84&FJ6#"")>81&FJ6#""*>FJ&FJ6#""">89-%%nopsG6#
FQ>8(%&falseG>85-%/Janet/get_optsG6$FJ&9"6#;Fhn9#>86&F_qFS?&8%&F_qFdp%%trueG@%-
%%typeG6$F\r%'stringG?(8&FepFep-%'lengthG6#F\rF^r@&/&F\r6#FerQ"CFG>F\qF^r0F[sQ!
FG-%&ERRORG6#%0invalid~option.GFas>8:&F_qF`p>F_q&F_qFX>8)-%0Janet/get_inputG6*9
$FJFQF_qFio7"F`tF]q>8+&F[tFgn>8;5Ffs&F[tF\o>8<&F[tFao>F[t&F[tFdp>FV-%%subsG6$-%
,Janet/jezipG6$FJFbtFV>8'-%.Janet/get_ordG6,FiqFbtFQFVFenFjnF_oFdoF^p34FetFit>8
7&FeuFdp@$&FeuFgn>F^pF`t>88&FeuF\o>8*-%$mapG6$f*6#F-FG6$%)operatorG%&arrowGFG-%
1Janet/lead_derivG6*&F_tFdpT#T%T'T)T+T-T/FGFG60FAFgpF3FbtF?F\vF9F^pF7FenF8FjnF@
FbvF[t@%F\q@'Fit>Fev-%.Janet/conv2eqG6(-Fgv6$f*6#F,FGF[wFG7$-%'subsopG6$/&F_t6$
FepFT*&&F_t6$FTFepFep&F_t6$FTFTFep%$zedG""!FGFGFGFevFbtFJFQFioF_qFet>Fev-F^x6(-
Fgv6$f*FcxFGF[wFG7$-Ffx6$/Fix*&-%)simplifyG6#F\yFepF^yFepF`yFayFGFGFGFevFbtFJFQ
FioF_q>Fev-F^x6(-Fgv6$f*FcxFGF[wFG7$-Ffx6$/Fix*&-%'normalGF_zFepF^yFepF`yFayFGF
GFGFevFbtFJFQFioF_q>Fev-Fgv6$f*FcxFGF[wFG@%/F\yFayFay-F^x6(7$-Ffx6$/FixF^yF`yFa
yFbwFcwFdwFewFfwFGFG6,F3FbtF4FJF5FQF<FioF=F_qFev@%4-Far6$F_tF(-%#opG6#FevFevFGF
GFGFG
M7R0
I4Janet/binary_insertf*6)%"aG%"FG%"sG%"nG%"lG%&N_OrdG%#eqG6%%"iG%"jG%"pG6#%\pCo
pyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.
G6"C'@$/9(""!-%'RETURNG6#7#9$@$3/9&"""/9'F6@$-9)6$F<&9%6#FA@%-9*FG-F96#FI-F96#-
%'subsopG6$/FAFGFI@$/F@FC-F96#-FS6$/F@6$&FI6#F@F<FI>8&-%%iquoG6$,(F@FAFCFAFAFA"
"#@%-FF6$F<&FI6#F[o@%-FMFcoFI-F"6)F<FIF@,&F[oFA!""FAF6FFFM-F"6)F<FIF[oFCF6FFFMF
2F2F2F2
M7R0
I.Janet/jmklistf*6#%"LG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~r
ights~reserved.GF&@)-%%typeG6$9$%%listGF--F+6$F-%$setG-%(convertGF,-F+6$F-%&arr
ayG-F36$F-%)listlistG7#F-F&F&F&F&
M7R0
I/Janet/jcoltermf*6#%%lgrpG6(%#iiG%$lDIG%%tgrpG%&grpDIG%$temG%%tsumG6#%>Copyrig
ht~(c)~1997~by~Khai~VuG6"C(@$/-%%nopsG6#9$""!-%'RETURNGF5>8&-%(convertG6$F6%$se
tG>8$F7>8%-%&tableGF/?(F/"""FGF/0F;<"C'>FA,&FAFGFGFG>8'-%#opG6$FGF;>F;-%'subsop
G6$/FG%%NULLGF;>8(-%'selectG6%f*6$%%gdi1G%%gdi2GF/F/F/@%/&F66#FG&9%F^o%%trueG%&
falseGF/F/F/F;FN@%/FYFI>&FC6#FAFNC%>8),&-F=6$-%$mapG6$f*6#%$gdiGF/F/F/&F66#""#F
/F/F/FY%"+GFG&FNFepFG>Ffo7$&FNF^oFjo>F;-%&minusG6$F;FY-F=6$FC%%listGF/F/F/F/
M7R0
I-Janet/Diff2Df*6&%"LG'%%DvarG%%listG'%%ivarGF('%%dvarGF(6#%#LDG6#%jnCopyright~
(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C&>8$-%.Janet/Diff2OpG6
%9$9&9'@$/F4""!-%'RETURNG6#F=>F4-%+Janet/Op2DG6%F49%F9@%3-%%typeG6$F8F(/-%%nops
G6#F:"""-%$mapG6$%#opGF4F4F1F1F1F1
M7R0
I.Janet/max_degf*6#%"TG6%%"aG%"vG%#mdG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.
~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C%>8&""!@%%0Janet/janetlikeG?&8
%9$%%trueGC$>8$,&-%(convertG6$&F46$""$"""%"+GFA-F<6$-%%subsG6$/%)infinityGF0&F4
6#""&FBFA@$2F/F9>F/F9?&F4F5F6C$>F9F;@$FN>F/F9-%'RETURNG6#F/F,F,F,F,
M7R0
I6Janet/CartanCharacterf*6#%$indG6+%"iG%"qG%"nG%"sG%"AG%"BG%"CG%"HG%&R_q_1G6#%i
nCopyright~(C)~2000-2010~by~Carlos~F.~Cid.~All~rights~reserved.G6"C+>8%-%.Janet
/max_degG6#%'T_ListG>8&-%%nopsG6#&F96%"""""$FA>8+-%)Janet/HPG6#8'>8,-%)Janet/HF
G6#,&F5FA!""FA>8(-%'matrixG6#-%$mapG6$f*6#%"aGF26$%)operatorG%&arrowGF2-FV6$f*6
#%"bGF2FenF2-%)binomialG6$,(T$FA9$FAT%FOFboF2F26&FZFboF(Fco7#-%"$G6#;FAT#F2F26&
F)F;F(F57#-Fgo6#;F5,(F5FAF;FAFOFA>8)-%'vectorG6#-FV6$f*FYF2FenF2,&-%%evalG6$Fjo
/FcoFboFAT'FOF2F26(F.FDF*FHF/FJF\p>8*-&%'linalgG6#%)linsolveG6$FQFbp>Faq-%&eval
mG6#Faq@)32""!9#-%%typeG6$Fbo%'stringG?(8$FAFAF;%%trueG-%'printfG6&Q3alpha(%d,%
d)~=~%a|+F2F5Ffr&Faq6#Ffr3F^r-Fbr6$Fbo%(integerGC$@$2F;Fbo-%&ERRORG6&%.index~in
validGFbo%6~greatest~valid~indexGF;&Faq6#Fbo3F^r-Fbr6$Fbo%%listG-FV6$f*6#F'F2Fe
nF2&FjoF[tF2F26$F-FaqFboC$-Fir6$Q=Cartan~Character~for~q~=~%d|+F2F5-%(convertG6
$FaqF_tF2F2F2F2
M7R0
I-Janet/jinfinf*6'%%funcG%#xiG%$etaG%%ivarG%%dvarG6)%#iiG%'resultG%)zeta_km1G%&
fnameG%%lvarG%&ldvarG%#poG6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~
rights~reserved.G6"C$>8(-%-Janet/jgendlG6$9'9(@'4-%%typeG6$9$%(indexedG@&-%'mem
berG6%FBF;.8*&9%6#FI-FF6%FBF<FH&9&FL/-%%nopsG6#FB"""C'>8'-%#opG6$""!FB-FF6%FXF<
FH>8)7#-FZFT>8%-%'expandG6#-%$addG6$*&-%%diffG6$-FX6#-FZ6#F;&F;6#8$FU-Fgo6$&FKF
^pF\oFU/F_p;FU-FSF\p,&-Fgo6$FOF\oFUF^o!""C'>FXFY>FjnF[o>8&-F"6'-%'subsopG6$/FU%
%NULLGFBFKFPF;F<>F^o-Fco6$*&-Fgo6$Fio-FZ6#-Fbq6$/FUF]pFjnFU-Fgo6$Fbp-FZ6$FUFjnF
UFcp,&-Fgo6$F^qFcrFUF^oFipF4F4F4F4
M7R0
I.Janet/jmulconf*6%%%scalG%$vecG%%ivarG6#%%dvarG6#%[oCopyright~(C)~2000-2002~by
~Mohamed~Barakat.~All~rights~reserved.G6"C%@$55/9$""!/9%F3/F57"-%'RETURNG6#F3@%
2""$9#>8$&9"6#""%>F@%%NULLG-%0Janet/jgcollectG6%-%$mapG6$f*6#%"xGF,6$%)operator
G%&arrowGF,7$*&T$"""&F26#FVFV&F26#""#F,F,6$F%F2F59&F@F,F,F,F,
M7R0
I.Janet/jjD2indf*6%%%exprG%%ivarG%%dvarG6#%&lstjDG6#%XCopyright~(C)~2005~by~Arn
e~Lorenz.~All~rights~reserved.G6"C$>8$-%$mapG6$f*6#%"aGF,6$%)operatorG%&arrowGF
,/9$-%.Janet/jjD2jetG6$-%#opG6$"""F:7#-%/Janet/jsortvarG6$-F?6$""#F:T$F,F,6$F&9
%-%'indetsG6$F:.-%)specfuncG6$%)anythingG%%_jjDG-%%subsG6$F/F:F,F,F,F,
M7R0
I7Janet/reduce_pseudo_ldf*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%)
rhs_dvarG60%"aG%"bG%"hG%"iG%"jG%"pG%$divG%#lmG%&lmredG%$mulG%$su1G%$su2G%"SG%&r
educG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C.@
$-%)assignedG6#%-JPRINTpseudoG-%&printG6#Q7start~reduce_pseudo_ldF>>8&&&9$6#"""
6#;FO""#>8+7$&FM6#""$&FM6#""'>8)&FLFW>8.-%$zipG6%f*6$F1F2F>6$%)operatorG%&arrow
GF>/FM9%F>F>F>9'9(>8/-F\o6%f*F_oF>F`oF>FcoF>F>F>FfoFeo>8*%%trueG>81%&falseG@$09
)7"@&/%3Janet/coefficientsGQ(jreduceF>C'>F]pF^p@$-FB6#%.JPRINTjreduceG-FF6#Q7re
duce_ld:~start~whileF>?(F>FOFOF>3F]p0&FT6$FRFO""!C(>F]pFap@$F]q-FF6#/Q2reduce_l
d:~vorherF>Ffq>8,-%/Janet/jjreduceG6&Fdp-%/Janet/Diff2IndG6%-%%subsG6$Fjn-%&num
erG6#FfqFfo9*FfoF^s>Far*&-Fir6$Fho-%/Janet/Ind2DiffG6%FarFfoF^sFO-%&denomGF]s!"
"@$F]q-FF6#/Q3reduce_ld:~nachherF>Far@$0-%'normalG6#,&FarFOFfqFhsFhqC&>F]pF^p>F
J7$-%'subsopG6$/&FT6$FOFR-%(collectG6%,&&&FJFN6#F\uFO*&FctFO&FT6$FRFRFOFOFdo%,d
istributedGFcu&FJ6#FR>F`pF^p>FT-9&6#Fcu@$F]q-FF6#Q5reduce_ld:~end~whileF>>F]pF^
p/FhpQ(diffalgF>?(F>FOFOF>3Feq-%3diffalg/belongs_toG6$-Fir6$Fjn-%(convertG6$F[s
%%diffGFdpC%>FJ7$-Fit6$/F\u-F_u6%,&FbuFO*&FfqFOFfuFOFhsFdoFhuFcuFiu>F`pF^p>FTF]
v?(F>FOFOF>FdqC'@$-FB6#%)JPRINTldG-FF6$Q$lm2F>FT>F]pFap>8'FO?(F>FOFOF>31Fix%)nu
mber_tG4F]pC$@$-%1Janet/inv_divideG6%&%'T_ListG6$FixFX&Fey6$Fix""&&FTFNC)>%(_jr
educG,&F]zFOFOFO>80,&&FT6$FOFOFO&Fey6%FixFXFOFhs>8--%,Janet/derivG6'F`z&Fey6$Fi
xFOFeoFdo9+>FJ7$-F\o6%f*6$F.F/F>F`oF>-%3Janet/normalcoeffsG6$-F_u6%,&*&&Fey6%T#
FenFOFOFMFOFO*&&T%FgqFOFdoFOFhsT(FhuFa\lF>F>6(F1FixF5FTF&FdoFcu&FgzFN-Fe[l6$-F_
u6%,&*&&Fey6%FixFenFOFOFiuFOFO*&FfqFO&FgzFjuFOFhsF][lFhuF][l>Fgn-%$maxG6$Fgn,&&
Fey6%FixFOFXFO-F_w6$F`z%"+GFO>F]pF^p>F`pF^p>Fix,&FixFOFOFO@$F]pC$>FTF]v@$Fcp@&F
gpC&@$F]qF`q?(F>FOFOF>FdqC(>F]pFap@$F]qF\r>FarFbr>FarF`s@$F]qFjs@$F_tC%>F]pF^p>
FJFgt>FTF]v@$F]qFav>F]pF^pFev?(F>FOFOF>FhvC$>FJFdw>FTF]v@$FA-FF6#Q:finished~red
uce_pseudo_ldF>@%F`p7$7$-%#opG6#FJFgnFTFepF>6#F]zF>F>
M7R0
I:Janet/ElementaryDivisors1f*6%'%"TG<$%'matrixG%%listG'%&ivarsGF)'%&dvarsGF)6=%
"aG%"bG%"cG%"dG%"hG%"iG%"jG%"kG%"mG%"nG%"rG%"tG%%DvarG%#DtG%$conG%%degtG%$denG%
&gammaG%$numG%"GG%"MG%#M0G%"PG%"UG%"VG%&trafoG%*nopreprocG6#%jnCopyright~(C)~20
04-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C1@'-%%typeG6$9$F(C$>809&@%5-
%(hastypeG6$FRF)3-FP6$FR%'symbolG-FZ6$-%&evalmG6#FRF)>88-F(6#-%+Janet/Op2DG6%FR
FU9%>F`o-%%copyGF^o-FP6$FR%)listlistGC$>FUFV>F`o-F(F^oC$>FU7#-%$seqG6$-%$catG6$
%#_DG8)/F[q;"""-%%nopsG6#Ffo>F`o-F(6#-%-Janet/Diff2DG6&FRFUFfoFV>8=%%trueG>8>Fj
q?(F[q""%F^q9#Fjq@%-FP6$&9"6#F[q%)equationG@'/-%#opG6$F^qFcrQ.preprocessingFL@%
-FP6$-Fjr6$""#Fcr%(booleanG>F\r4F`s-%&ERRORG6#%Texpecting~boolean~value~for~opt
ion~"preprocessing".G/FirQ&trafoFL@%F^s>FiqF`s-Fgs6#%Lexpecting~boolean~value~f
or~option~"trafo".G-Fgs6#%0invalid~option.GFat@$-%)assignedG6#%*JCHECK_EDG>89-F
io6#F`o>8/&Ffo6#F^q>81&FUF`u>8+-&%'linalgG6#%'rowdimGF\u>8--&Fhu6#%'coldimGF\u@
$FiqC$>8;7">8<Fev@$4F\r?(F[qF^qF^qFeuFjqC&>84F^q>86""!?(8*F^qF^qF\vFjq@$0&F`o6$
F[qFbwF`wC%>82-%(contentG6$FewFbu>F]w-%$lcmG6$F]w-%&denomG6#Fiw>F_w-%$gcdG6$F_w
-%&numerGFcx@$50F]wF^q0F_wF^qC&@$-Fft6#%2JPRINT_ED_CONTENTG-%&printG6$Q2multipl
iziere~mitFL7$F]wF_w>87-&Fhu6#%%diagG6#-Fjr6#-%'subsopG6$/F[q*&F]wF^qF_w!""7#-%
"$G6$F^qFeu>F`o-%+Janet/CmpDG6&F`oFiyFUFfo@$Fiq>Fdv7$-Fjr6#Fdv-Fio6#Fiy>8(F^q>8
3F`w?(FLF^qF^qFL1Fg[l-%$minG6$FeuF\vC%>85F^q?(FLF^qF^qFL0Fa\lF`wC7>8,Ffz>F]wF^q
>F_wF`w?(F[qFg[lF^qFeuFjq?(FbwFg[lF^qF\vFjq@$FdwC'>FiwFjw>F]wF^x>F_wFex>8'-%'de
greeGF\x@$5/Ff\lFfz2Fa]lFf\lC%>Ff\lFa]l>8.F[q>8&Fbw@$Ff]l@%Fiq-%'RETURNG6#7%-F]
oFc[l-F]oF\u-F]o6#Fgv-Fa^l6#Fe^l@$-Fft6#%*JPRINT_EDGC%-Fdy6#Q4vor~Multiplikatio
n:FL-Fdy6$Q"MFLFe^l@$Fiq-Fdy6$Q"UFLFd^l@$F[_lC$-Fdy6$Q&GradeFL-%(convertG6$-%$m
apG6%Fc]lF`oFbuF\pFcy@$F[yC%>Fiy-F[z6$-Fiz6$F^q,&Fg[lF^qFfzF^q-Fiz6$Fez,(FeuF^q
Fg[lFfzF^qF^q>F`o-F][l6&FiyF`oFUFfo@$Fiq>Fdv7$Fd[lFb[l@$3Fet4-&Fhu6#%'iszeroG6#
-%)simplifyG6#-F]o6#,&-F][l6&-F][l6&FdvFjtFUFfoFgvFUFfoF^qF`oFfz-Fgs6#%)falsch5
.G@$-Fft6#%/JPRINT_ED_SWAPGC&-Fdy6#Q%swapFL-Fdy6$Q"hFLFg[l-Fdy6$Q"rFLF[^l-Fdy6$
Q"cFLF]^l>F`o-&Fhu6#%(swaprowG6%-&Fhu6#%(swapcolG6%F`oFg[lF]^lFg[lF[^l@$FiqC%%5
PermutationsmatrizenG>Fgv-Fbdl6%FgvFg[lF]^l>Fdv-F]dl6%FdvFg[lF[^l>F[q,&Fg[lF^qF
^qF^q>Fa\lF`w?(FLF^qF^qFL31F[qFeu/Fa\lF`wC*>Fa\l-%2Janet/DleftdivideG6&&F`o6$F[
qFg[l&F`o6$Fg[lFg[lFUFfo@$3Fet0-F^bl6#,(F[flF^q-F][l6&&Fa\lF`uF]flFUFfoFfz&Fa\l
6#FbsFfzF`w-Fgs6#%)falsch1.G>F[flFhfl?(FbwF`elF^qF\vFjqC$>8:-F][l6&Fgfl&F`o6$Fg
[lFbwFUFfo@%3-FP6$Few%(polynomG-FP6$FaglFjgl>Few-%(collectG6%,&FewF^qFaglFfzFU%
,distributedGC$>FaglFahl>Few-%4Janet/normalizeWeylG6$FaglFU@$FiqC$%@elementareT
ransformationsmatrixG?(FbwF^qF^qFeuFjqC$>Fagl-F][l6&Fgfl&FdvFeglFUFfo@%3-FP6$&F
dvFfwFjglF[hl>Ffil-F_hl6%,&FfilF^qFaglFfzFUFbhlC$>FaglFjil>FfilFfhl@$FfalC&Fbcl
-Fdy6$Q"iFLF[q-Fdy6$Q"kFLFeu-Fgs6#%*falsch2.1G>Fa\lFhfl>F[q,&F[qF^qF^qF^q@$F[_l
-Fdy6#Q1nach~left~divideFL@$Ffal-Fgs6#%)falsch2.G>F[qF`el?(FLF^qF^qFL31F[qF\vFe
elC*>Fa\l-%3Janet/DrightdivideG6&&F`o6$Fg[lF[qF]flFUFfo@$3Fet0-F^bl6#,(F]\mF^q-
F][l6&F]flFgflFUFfoFfzFhflFfzF`w-Fgs6#%)falsch3.G>F]\mFhfl@$-Fft6#%/JPRINT_ED_M
OREGC$F`jl-Fdy6$Q&gammaFLFa\l?(FbwF`elF^qFeuFjqC'@$F\]m-Fdy6$Q'M[j,h]FL&F`o6$Fb
wFg[l>Fagl-F][l6&Fi]mFgflFUFfo@$F\]m-Fdy6$Q"PFLFagl@%3-FP6$&F`o6$FbwF[qFjglF[hl
>Ff^m-F_hl6%,&Ff^mF^qFaglFfzFUFbhl>Ff^m-Fghl6$F[_mFU@$F\]m-Fdy6$Q'M[j,i]FLFf^m@
$FiqC$%6TransformationsmatrixG?(FbwF^qF^qF\vFjqC'@$F\]m-Fdy6$Q'V[j,h]FL&FgvFj]m
>Fagl-F][l6&F\`mFgflFUFfo@$F\]mF_^m@%3-FP6$&FgvFg^mFjglF[hl>Fe`m-F_hl6%,&Fe`mF^
qFaglFfzFUFbhl>Fe`m-Fghl6$Fi`mFU@$F\]m-Fdy6$Q'V[j,i]FLFe`m>Fa\lFhfl>F[qF[[m@$F[
_l-Fdy6#Q2nach~right~divideFL@$Ffal-Fgs6#%)falsch4.G@%/Ff\lF`wC&@$FiqC$%'Matrix
G?(FbwF^qF^qFeuFjq>Fail-F][l6&*$F]flFfzFailFUFfo>F]flF^q>Fg[lF`el>Fi[lF`wC'>Ff\
lFfz>F]wF^q>F_wF`w?(F[qF`elF^qFeuFjq?(FbwF`elF^qF\vFjq@$FdwC'>FiwFjw>F]wF^x>F_w
Fex>Fa]lFb]l@$Fe]lC%>Ff\lFa]l>F[^lF[q>F]^lFbw@%0Ff\lFfzC&@$F[yC%>Fiy-F[z6$-Fiz6
$F^qFg[l-Fiz6$Fez,&FeuF^qFg[lFfz>F`oF`al@$Fiq>FdvFdal>Fi[l,&Fi[lF^qF^qF^q?(FbwF
`elF^qFeuFjq>Fi]m-Fghl6$,&Fi]mF^q-F][l6&&F`o6$FbwF]^l)F^uFi[lFUFfoF^qFU@$FiqC$F
e_m?(FbwF^qF^qF\vFjq>F\`m-Fghl6$,&F\`mF^q-F][l6&&FgvFdemFeemFUFfoF^qFUC&>Fa\l-%
&coeffG6$F]fl)Fbu-Fc]l6$F]flFbu@$FiqC$Fe_m?(FbwF^qF^qFeuFjq>Fail-Fghl6$-F][l6&*
$Fa\lFfzFailFUFfoFU>F]fl-Fghl6$-F][l6&F`gmF]flFUFfoFU@%FiqF`^lFh^l@%FiqFc^lFe^l
FLFLFLFL
M7R0
I3Janet/block_ord_lcf*6&%"aG%"bG%$sepG%+termordersG6%%"iG%$tdaG%$tdbG6#%enCopyr
ight~(C)~2010~by~Daniel~Robertz.~All~rights~reserved.G6"@'4-&9'6#"""6$7$&&9$F56
#;F6&9&F5&F;6#""#7$&&9%F5F<&FFFA%&falseG/F9FDC'?(8$FBF6-%%nopsG6#F?%%trueG@&4-&
F46#FL6$7$&F:6#;,&&F?6#,&FLF6!""F6F6F6F6&F?FUF@7$&FEFYFG-%'RETURNG6#FH0FXF\o-F^
o6#FP>8%-%(convertG6$&&F;6#""$F5%"+G>8&-Ffo6$&&FFFjoF5F\p@'2FdoF^pFao2F^pFdoF]o
?(FL-FN6#FhoFinF6FP@&2&FapFU&FhoFUFao2F\qF[qF]o@%2F@FGFHFPFPF/F/F/F/
M7R0
I.Janet1/homalg=6"%&falseGE\[l2%$OneG7#7$"""7"%'IsUnitG%4homalg/Janet/IsUnitG%(
ComposeG%,Janet/CmpOpG%'ReduceG%8homalg/Janet/InvoReduceG%.IsRingElementGf*6#%"
aGF$F$F$-%.Janet/jchkdopG6$9$Q!F$F$F$F$%*BestBasisG%6homalg/Janet/JacobsonG%1Pr
esentationInfoG%>homalg/Janet/JanHilbertCartanG%'matrixG%-Janet/jmkmatG%'SubMat
G%,Janet/SubOpG%3SyzygiesGeneratorsG%6homalg/Janet/SyzygiesG%&MinusG%.Janet/jsu
bconG%'AddMatG%,Janet/AddOpG%-DivideByUnitG%4Janet/jdividebyunitG%'MulMatG%.Jan
et/jmulmatG%.SimplifyBasisG%9homalg/Janet/JandepcheckG%+InvolutionG%8homalg/Jan
et/InvolutionG%.BasisOfModuleG%4homalg/Janet/JBasisGF$
M7R0
I4Janet/get_termorderf*6)%&m_ordG%%seqvG%%dvarG%(var_degG%(tup_degG%)dvar_posG%
/default_lmprocG60%#_aG%#_bG%#_cG%$cmpG%'lmprocG%&B_OrdG%,B_Ord_blockG%&N_OrdG%
,N_Ord_blockG%$POTG%"sG%.str_testorderG%-str_leadtermG%)str_seqvG6#%jnCopyright
~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C'>81-%$catG6$-%#opG6#
-%$mapG6$f*6#F7F=6$%)operatorG%&arrowGF=-FB6$-%(convertG6$9$%'stringGQ",F=F=F=F
=&9%6#;"""!"#-FR6$&FX6#!""FU>8.-FR6$-%+kerneloptsG6#%(versionGFU@'5555/-%*subst
ringG6$F]o;Fen""(Q(Maple~VF=/FjoQ(Maple~6F=/FjoQ(Maple~7F=/FjoQ(Maple~8F=/-F[p6
$F]o;Fen""*Q*Maple~9.5F=C$>8/QD(_a,_b)->Groebner[testorder](_a,_b,F=>80Q:_a->Gr
oebner[leadmon](_a,F=/FgpQ*Maple~9.0F=C$>F^qQD(_a,_b)->Groebner:-testorder(_a,_
b,F=>FaqQ:_a->Groebner:-leadmon(_a,F=C$>F^qQD(_a,_b)->Groebner[TestOrder](_a,_b
,F=>FaqQ>_a->Groebner[LeadingTerm](_a,F=@//FTFenC)>8-%%trueG>8'-%&parseG6#-FB6&
F^qQ&plex(F=F@Q#))F=@%9*>8(-Fhr6#-FB6&FaqF\sF@F]s>Fas-Fhr6#-FB6)Q9_c->`Janet/le
ad_mon`(_c,F=-FR6$FXFUFVF^qF\sF@Q$)))F=>8)%0Janet/jplex_POTG>8+%,Janet/jplexG>8
*%2Janet/jplex_blockG>8,Fgt/FT""#C$>FcrFdr@%09'7#-%"$G6$Fen-%%nopsG6#FXC(>Ffr-F
hr6#-FB6(F^qQ&wdeg(F=-FR6$F`uFUFVF\tF]s@%F_s>Fas-Fhr6#-FB6(FaqF^vF_vFVF\tF]s>Fa
s-Fhr6#-FB6+F[tF\tFVF^qF^vF_vFVF\tF^t>F`t%8Janet/degrevlex_deg_POTG>Fct%4Janet/
degrevlex_degG>Fft%:Janet/degrevlex_deg_blockG>FitFawC%>Ffr-Fhr6#-FB6&F^qQ&tdeg
(F=F@F]s@%F_s>Fas-Fhr6#-FB6&FaqFiwF@F]s>Fas-Fhr6#-FB6)F[tF\tFVF^qFiwF@F^t@%09(7
"C&>F`tF]w>FctF_w>FftFaw>FitFawC&>F`t%4Janet/degrevlex_POTG>Fct%0Janet/degrevle
xG>Fft%6Janet/degrevlex_blockG>FitFdy/FT""$C(>Fcr%&falseG>FfrFgr@%F_s>FasFbs>Fa
sFgs@%3/-Ffu6#9)Fen/&Fdz6#Fen-Ffu6#9&C$>F`tFdt>FctFdtC$>F`t%7Janet/jplex_dvar_b
lockG>FctFdt>FftFgt>FitFgt/FT""%C$>FcrFjy@%F_uC'>FfrFju@%F_s>FasFcv>FasFhv@%F`z
C$>F`tF_w>FctF_wC$>F`t%?Janet/degrevlex_deg_dvar_blockG>FctF_w>FftFaw>FitFawC%>
FfrFew@%F_s>FasF\x>FasFax@%FfxC%@%F`zC$>F`tF_w>FctF_wC$>F`tFd\l>FctF_w>FftFaw>F
itFawC%@%F`zC$>F`tFby>FctFbyC$>F`t%;Janet/degrevlex_dvar_blockG>FctFby>FftFdy>F
itFdy/FT""&C$>FcrFdr@%F_u-%&ERRORG6#%5not~implemented~yet.GC%>FfrFew@%F_s>FasF\
x>FasFax@%FfxFh^lC&>F`t%1Janet/deglex_POTG>Fct%-Janet/deglexG>Fft%3Janet/deglex
_blockG>FitFh_l/FT""'C$>FcrFjy@%F_uFh^lC%>FfrFew@%F_s>FasF\x>FasFax@%FfxFh^lC%@
%F`zC$>F`tFf_l>FctFf_lC$>F`t%8Janet/deglex_dvar_blockG>FctFf_l>FftFh_l>FitFh_l-
Fi^l6#%4invalid~term~order.G7)-%%evalG6#FasFctFitF`tFftFcr-Feal6#FfrF=F=F=F=
M7R0
I,Janet/derivf*6'%"AG%"BG%&_ivarG%%dopsG%)rhs_dvarG6&%"iG%"jG%"rG%"sG6%%\pCopyr
ight~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G%'
systemG%)rememberG6"@%/<#-%#opG6#9$<#""!9%C&>8&&F=6#""">8'&F=6#""#?&8$7#-%$seqG
6$-%"$G6$8%&F:6#FR/FR;FC%$nivG%%trueGC$>F@-%$mapG6$f*6#%"aGF36$%)operatorG%&arr
owGF3,&*&F:FC&T$6#T%FCFC*&%#_hGFC-%%diffG6$F:&T(FboFCFCF3F36(F(9'F+FJF'9&F@>FE*
&FeoFC-Fgo6$FE&F]p6#FJFC7$-%(collectG6%F@F\p%,distributedG-Ffp6%FE9(FhpF3F3F3F3
M7R0
I-Janet/reducef*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%)rhs_dvarG%
)coeff_ptG60%"aG%"hG%"iG%"jG%"pG%"rG%$denG%$divG%#lmG%&lmredG%$mulG%$su1G%$su2G
%"SG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~right
s~reserved.G6"C*>8%&9$6#;"""""#>8(&FD6#""$>8)7$%$zedG""!>8/-%$zipG6%f*6$F1F2F?6
$%)operatorG%&arrowGF?/FD9%F?F?F?9'9(>80-FV6%f*FYF?FZF?FgnF?F?F?FjnFin>8,-9&6#&
FB6#FG?(F?FGFGF?0&Fao6$FHFGFRC&@$-%)assignedG6#%)JPRINTldG-%&printG6$Q$lm1F?Fao
>8+%&falseG@$09)7"@&/%3Janet/coefficientsGQ(jreduceF?C(@$-F^p6#%.JPRINTjreduceG
-Fbp6#/Q/reduce:~vorherF?Fio>8--%/Janet/jjreduceG6&Fjp-%/Janet/Diff2IndG6%-%%su
bsG6$FT-%&numerG6#FioFjn9*FjnFgr>Fjq*&-Fbr6$F\o-%/Janet/Ind2DiffG6%FjqFjnFgrFG-
%&denomGFfr!""@$Fbq-Fbp6#/Q0reduce:~nachherF?Fjq>FB7$-%'subsopG6$/&Fao6$FGFH-%(
collectG6%,&&Feo6#F]tFG*&,&FjqFGFioFasFG&Fao6$FHFHFGFGFhn%,distributedGFeo&FB6#
FH>FioFjq/F^qQ(diffalgF?C$@$-F^p6#%.JPRINTdiffalgG-Fbp6$Q,belongs_to?F?-Fbr6$FT
-%(convertG6$Fdr%%diffG@$-%3diffalg/belongs_toG6$FguFjpC%@$Fau-Fbp6$Q+belongs_t
oF?%%trueG>FB7$-Fjs6$/F]t-F`t6%,&FctFG*&FioFGFgtFGFasFhnFitFeoFjt>FioFR@$FhoC&>
8&FG?(F?FGFGF?31Fdw%)number_tG4Ffp@%-%1Janet/inv_divideG6%&%'T_ListG6$FdwFM&F_x
6$Fdw""&&FaoFfoC+>%(_jreducG,&FgxFGFGFG>81,&&Fao6$FGFGFG&F_x6%FdwFMFGFas>8.-%,J
anet/derivG6'Fjx&F_x6$FdwFGFinFhn9+>8**&&F_x6%Fdw""'FGFG-F`s6#F[zFG@$09,F[q-Fbp
6$Q)red~subsF?-%%evalG6#-Fbr6$FbzFiy-%1Janet/updateNuStG6#7#Fiy>FB7$-F`t6%-%'no
rmalG6#,&FeoFG-%$mapG6$f*6#F/F?FZF?*(&T#FjoFG&F_x6%T%F]zFGFasFDFGF?F?6&F7FaoF1F
dw&FayFfoFasFhnFit-F`t6%-Fd[l6#,&FjtFG*(FioFGF[zFas&FayF[uFGFasFgyFit>FJ-%$maxG
6$FJ,&&F_x6%FdwFGFMFG-Fju6$Fjx%"+GFG>FfpFfv>Fdw,&FdwFGFGFG@$FiwC$>FO7$-Fjs6$/F]
t-F`t6%-Fd[l6#,&&&FOFfoFdtFGF_wFGFhnFitFe^l&FOF[u>FB7$-Fjs6$/F]t-F`t6%-Fd[l6#F^
wFhnFitFeoFjt>FaoFbo7%Fe^lFjtFJF?6#FgxF?F?
M7R0
I/Janet/ZeroSetsf*6#'%%ivarG%%listG6,%"aG%"iG%"jG%"vG%"FG%"LG%"ZG%+find_zerosG%
&_ivarG%+save_Nu_StG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Ro
bertz.~All~rights~reserved.G6"C.@$4-%)assignedG6#%&Nu_StG-%&ERRORG6#%Gno~denomi
nators;~run~JanetBasis~first.G@$-%(hastypeG6$9$%)equationG-F>6#%Zno~equation~al
lowed~in~the~list~of~independent~variables.G>8'%%NULLG>8(%&falseG>8+FO?(8%""#""
"9#%%trueG@'-%%typeG6$&9"6#FS%%nameG>FKFfn-FZ6$Ffn%'stringG@'/FfnQ"FF5>FNFW/Ffn
Q"ZF5>FQFW-F>6#%@expecting~string~"Z"~as~option.G-F>6#%0invalid~option.G>8,-%$m
apG6$f*6#F*F56$%)operatorG%&arrowGF5-%$catG6$%#_xGFEF5F5F57#-%"$G6#;FU-%%nopsG6
#FE>8-F<-%1Janet/updateNuStG6#-F^p6$f*6#F)F5FbpF5-%%subsG6$-%$zipG6%f*6$F*F+F5F
bpF5/FE9%F5F5F5T#T&-%&numerG6#&&FE6#""'6#FUF5F56&F1F\pF&FE%'T_ListG@%4FQ@%FN>8*
-F^p6$%'factorGF<>FdsF<C%>Fds-F^p6$f*FiqF5FbpF57$FE-%&solveG6$FE<#-%#opG6#T$F5F
56$F&FEF<?(FSFUFU-F_q6#FdsFWC%>8)<"?(8&FTFU-F_q6#&FdsFhnFW>F]u-%&unionG6$F]u&Fd
s6$FSF`u>Fds-%'subsopG6$/FS7$&Fds6$FSFU-%&minusG6$F]u-F^p6$f*FiqF5FbpF5/FEFEF5F
5F5<#-FdtF`qFds@$0FKFL@%4-%'memberG6$FKFE-F>6#%2invalid~variable.GC$?(FSFUFUFit
FWC%>F]uFL?&F`u&Fds6$FSFTFW@$/-Fdt6$FUF`uFK>F]u6$F]uF`u>Fds-F\v6$/FS-F\v6$/FT<#
F]uFcuFds?(FSFit!""FUFW@$3/FjwF^u4-%$hasG6$F`vFK>Fds-F\v6$/FSFLFds>F<FbqFdsF5F;
F5F5
M7R0
I0Janet/jmultinomf*6%%#IIG%#JJG%%ivarG6$%"iG%#reG6#%inCopyright~(C)~2000-2002~b
y~Gehrt~Hartjen.~All~rights~reserved.G6"@%/9$9%"""C$>8%-%.Janet/jremainG6$F0F1@
%/F57"""!*&-%$mulG6$-%*factorialG6#8$/FD7#-%0Janet/jind2multG6$F09&F2-F?6$FA/FD
7$-FH6$F1FJ-FH6$F5FJ!""F-F-F-F-
M7R0
I/Janet/jmap2indf*6$%$derG%%ivarG6(%&livarG%%funcG%'lindexG%%lvarG%#iiG%&sivarG
6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C%@-/-%
#opG6#9$F7-%'RETURNGF6/-F56$""!F7%%diffGC'>8$%%NULLG>8%F7?(F0"""FFF0/-F56$F=FDF
>C$>FA6$FA-F56$""#FD>FD-F56$FFFD>8'-F56#FD>FDFH-%%typeG6$7#-F56#-F56$7$F=F=F7-%
%listG6#%'posintGC&>8&Fen>FTF4>FA-%$seqG6$&7#FT6#&Fao6#8(/F\p;FF-%%nopsG6#Fao>F
D-F56#F;/Fhn%"DGC&>FTF4@$2FF-F`p6#Fho-%&ERRORG6$%GD~applies~to~unary~functions,
~but~got:GF7>FAFT>FDFcp3/-F56$7%F=F=FFF7Ffp-FY6$-F56$7%F=F=FOF7%(integerGC&>FTF
4@$Fjp-F^q6&%BD~applies~to~unary~functions,~butGF7%+depends~onGFho>FA-%"$G6$FTF
jq>FDFcp-F^q6$%.cannot~handleGF7@%2FF9#>8)-%/Janet/jsortvarG6$7#FA9%>FasFA@)0-F
`p6#7#Fas-F`p6#Fes-F^q6(%.The~variablesG-%&minusG6$<#FA<#Fas%;are~not~contained
~in~ivar:G&9"6#FO%-appearing~inGF7/FasFBFD2F_s""$&FD6#Fas*&-%(convertG6$-%$mapG
6$f*6#%"aGF06$%)operatorG%&arrowGF0)&Ffp6#&F76#FF&F7FjtF0F0F0-%1Janet/jcollecte
dG6#-%.Janet/jgetposG6$F\tFfs%"*GFFFDFFF0F0F0F0
M7R0
I.Janet/Pol2Indf*6$%$polG%&_ivarG6$%%ivarG%"dG6#%[oCopyright~(C)~2000-2002~by~M
ohamed~Barakat.~All~rights~reserved.G6"C'>8$-%.Janet/jmklistG6#9%@%2""#9#>8%-F1
6#&9"6#""$>F97#.%"uG@&333-%%typeG6$9$%%listG4-FI6$FK%)listlistG0-%%nopsG6#F9"""
/-FS6#FKFR-%'RETURNG6#-%(convertG6$-%$mapG6$f*6#%"aGF,6$%)operatorG%&arrowGF,-F
"6%&T$FXT%&T'FXF,F,6(F%FKF(F/F)F97#-%"$G6#;FUFR%"+G-FI6$FK<$%$setGFL-FZ6#-Fjn6&
F"FKF/F9>F9&F96#FU-Fgn6$-%$zipG6%f*6$F^o%"bGF,F,F,C$-%0Janet/jmult2indG6$-Fjn6$
f*6#%"iGF,F_oF,-%'degreeG6$FeoFKF,F,6$FbqF3T#F`r@%0%"%G%%NULLG*&FKFU&Ffo6#FcrFU
*&FKFUFfoFUF,F,6&F(F/F)F97#-%'coeffsG6%-%(collectG6%-%'expandGFXF/%,distributed
GF/.%$_t_G7#FesF_pF,F,F,F,
M7R0
I+Janet/Ext1f*6%%%_AR1G'%%ivarG%%listG'%%dvarGF(60%"dG%"iG%"sG%$AR0G%$AR1G%"GG%
"KG%#J1G%#R0G%#R1G%$RR1G%%tvarG%(tmpNuStG%%optsG6#%^pCopyright~(C)~2000-2010~by
~Mohamed~Barakat~and~Daniel~Robertz.~All~rights~reserved.G6"CB>8&%%NULLG>81F@?(
8%""%"""9#%%trueG@%-%%typeG6$&9"6#FD%'symbolG>F?FM>FB6$FBFM@%-FK6$9$F(>8(-%.Jan
et/Diff2OpG6%FW9%9&>FY-%%copyG6#FW>%&Nu_StG.F^o>8--%/Janet/JAdjointG6$FYFgn@$-%
)assignedG6#%*JPRINTdimGC$-%&printG6%Q#R1F<-&%'linalgG6#%'rowdimG6#Fao-&Fap6#%'
coldimGFdp-F\p6%Q$AR1F<-F`p6#FY-FfpF]q>8'-%,Janet/SyzOpG6%FYFgnFB@$Ffo-F\p6%Q$A
R0F<-F`p6#F`q-FfpFiq>8,-Fco6$F`qFgn@$Ffo-F\p6%Q#R0F<-F`p6#F\r-FfpFdr>8.-Fbq6%F\
rFgnFB@$Ffo-F\p6%Q$RR1F<-F`p6#Fgr-FfpF_s>8*-%,Janet/AppOpG6&FgrFhnFgnFhn>80F^o>
8+-%1Janet/JanetBasisG6&-Fds6&FaoFhnFgnFhnFgnFhnFB-%1Janet/updateNuStG6#Fgs>Fbs
-%0Janet/InvReduceG6%FbsFisFB?(FDFFFF-%%nopsG6#FbsFHC$>8$-%&denomG6#&FbsFO@$4-F
K6$F\u%)constantGC$-F`t6#7#F\u>Fbs-%'subsopG6$/FD-%'expandG6#-%&numerGF_uFbs>Fb
s-%0Janet/jdepcheckG6#-F`vFit@$/Fbs7">Fbs7#""!>8/7#-%$seqG6$-%$catG6$%#_TGFD/FD
;FFFgt>8)-%-Janet/AffEqnG6&FbsFgnF`wQ!F<>Fbs-F^x6%FbsFgnF`w>FgsF^o-F[t6&7$-%#op
G6#&Fis6#FF-FixFitFgnFhnFBF_t>Fbs-%/Janet/CompCondGFfx>FgsF^o-F[t6&FbsFgnF`wFBF
_t7%F\xFbs-%4Janet/HilbertSeriesG6#F?F<6#F^oF<F<
M7R0
I.Janet/Autonomf*6%%"LG'%%ivarG%%listG'%%dvarGF(6"6#%jnCopyright~(C)~2000-2010~
by~Daniel~Robertz.~All~rights~reserved.GF+-%.Janet/TorsionG6%9$9%9&F+F+F+F+
M7R0
I0Janet/jfuncnamef*6#%%funcG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~
All~rights~reserved.GF&@%-%%typeG6$9$%)functionG-%#opG6$""!F-F-F&F&F&F&
M7R0
I.Janet/jsubmatf*6%'%%mat1G%'matrixG'%%mat2GF'%%ivarG6'%"AG%#rmG%#cmG%"iG%"jG6#
%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C(>8%-%#o
pG6$7$"""""#7#-F86$F<-%%evalG6#9$>8&-F86$7$F<F<F=@$50-F86$F:7#-F86$F<-FA6#9%F60
-F86$FHFNFE-%&ERRORG6#%LThe~matrices~must~have~the~same~dimensions!G>8$-F'6$F6F
E@%2""$9#?(8'F;F;F6%%trueG?(8(F;F;FEF_o>&Ffn6$F^oFao-%.Janet/jsubconG6&&FCFdo&F
SFdo9&&9"6#""%?(F^oF;F;F6F_o?(FaoF;F;FEF_o>Fco-Ffo6%FhoFioFjo-%%copyG6#FfnF3F3F
3F3
M7R0
I2Janet/setupT_Listf*6.%"LG%%ivarG%%dvarG%&_ivarG%&oivarG%%dopsG%'ldprocG%&B_Or
dG%)dvar_posG%)ivar_degG%)dvar_degG%)dvar_cmpG60%"aG%"iG%"jG%"kG%"lG%"nG%#ldG%#
suG%$conG%"FG%"GG%"JG%$ndvG%(allmultG6#%jnCopyright~(C)~2000-2010~by~Daniel~Rob
ertz.~All~rights~reserved.G6"C3>8-9$>817#-%"$G6$%)infinityG%$nivG>80-%%nopsG6#9
&>%)number_tG-FR6#FE>%'T_ListG7">8/7#-FK6$FenFP?(8%"""F]oFV%%trueGC%>8*-%1Janet
/lead_derivG6*&FE6$F\oF]oFP9)9*9,9-9.9/>8'&Fao6$F]o""#>Fgn-%'subsopG6$/F^p7$-%#
opG6#&Fgn6#F^p7)&FE6#F\o&Fao6#F]oF`q7#-FK6$""!FNFH&Fao6#FapFenFgn?(F^pF]oF]oFPF
^oC%>FEF[q>8)FW@$2FeqF\rC&>FE-%%sortG6$FE%,Janet/plex3G>FE-Fdp6$/F\r7)&FE6$F\rF
]o&FE6$F\rFap&FE6$F\r""$FbqFH&FE6$F\r""'FenFE?(F\o,&F\rF]o!""F]oFfsF]oF^oC(>8+F
H>8,&FE6$F\o""%>8&F]o?(FBF]oF]oFB31F`tFN/,&&FE6&,&F\oF]oF]oF]oF`sF]oF`tF]o&FE6&
F\oF`sF]oF`tFfsFeqC%>Fis-Fdp6$/F`t&FE6%Fht""&F`tFis@%2&Fis6#F`tFM>F[t-Fdp6$/F`t
,&FeuF]oF]oF]oF[t>F[t-Fdp6$/F`tFeqF[t>F`t,&F`tF]oF]oF]o@$FctC$@%%0Janet/janetli
keGC%>8(Fet>Fis-Fdp6$/F`t,&FhvF]oFfsF]oFis>F[t-Fdp6$/F`tFhvF[tC$>Fis-Fdp6$F_vFi
s>F[t-Fdp6$/F`tF]oF[t>F[t-Fdp6$-%$seqG6$/FhvFeq/Fhv;FavFNF[t>FE-Fdp6$/F\o-Fdp6$
/F^tF[t-Fdp6$/FbuFisF^qFE>FZ7$-Fip6#FZ-FipFX>FZ-Fbr6$FZ9+>8.-%.Janet/conv2eqG6(
-%$mapG6$f*6#F2FB6$%)operatorG%&arrowGFB&&FFFaq6#;F]oFapFBFBFBFZFgo9%FT9'9(@$2F
]o-FR6#FgyC$>F\oF]o?(FBF]oF]oFB1F\oF\[l@%/&FgyF_qFeqC%>Fgy-Fdp6$/F\o%%NULLGFgy>
FZ-Fdp6$Fi[lFZ>FV,&FVF]oFfsF]o>F\oFht@%/FizFgz>Fgy7%FgyFgzFT>Fgy7&FgyFgzFTFiz>%
(Tab_VarG7#-F^x6$7%&Fgy6$F]oF\o-%/Janet/mult_varG6$-F\z6$f*6#%"bGFBF`zFB&FZ6%T#
Fbu-%0Janet/posmemberG6$FFT&FBFB6&F3F\oF)FizFgzFgz-Fiy6(7$-Fdp6$/&FZ6%F\oF`sFap
*&&FZ6%F\oFcsF]oF]o&FZ6%F\oFcsFapF]o%$zedGFeqFgoFgzFTFhzFiz/F\o;F]oFV>%&Nu_StGF
en>%&COMPAGFen>%)Glob_SOLG.Fd_lFgyFB6)FVFZFh\lFb_lFd_lFNF`_lFBFB
M7R0
I3Janet/deglex_blockf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%jnCopyright~(C)~2004-2010~
by~Daniel~Robertz.~All~rights~reserved.G6"C&>8%-%(convertG6$&9$6#"""%"+G>8&-F26
$&9%F6F8@'2F0F:-%'RETURNG6#%%trueG2F:F0-FB6#%&falseG?(8$F7F7-%%nopsG6#F4FD@&2&F
=6#FJ&F4FQFF2FRFPFAFDF-F-F-F-
M7R0
I0Janet/block_cmpf*6&%#_aG%#_bG%(var_ordG%%cmpsG6(%"aG%"bG%#apG%#bpG%"iG%"vG6#%
jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C&>8$9$>8%9
%?(8("""F<-%%nopsG6#9'%%trueGC&@$4-&F@6#F;6$F5F8-%'RETURNG6#%&falseG@'-%%typeG6
$F5%"*G>8&-%'selectG6%%$hasGF5&9&FG-FO6$F5%"^G@%4-%'memberG6$-%#opG6$F<F5FX>FSF
<>FSF5@%4-Fjn6$F5FX>FSF<>FSF5@'-FO6$F8FQ>8'-FU6%FWF8FX-FO6$F8Ffn@%4-Fjn6$-F]o6$
F<F8FX>F[pF<>F[pF8@%4-Fjn6$F8FX>F[pF<>F[pF8@$0FSF[p-FJ6#FAF`qF2F2F2F2
M7R0
I7Janet/jnonmult_prolongf*6%'%"aG%%listG%"dG'%"bGF'6#%"iG6#%jnCopyright~(C)~200
5-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C'@$0&9$6#""#&9&F5-%'RETURNG6#
%&falseG?(8$"""F?%$nivG%%trueG@(2&F86$F?F>&F4FEF9/,&FFF?F?F?FD@%2""!&9%6#F>F9[2
FFFDF9>F>,&F>F?F?F??(F/F?F?F/31F>F@/FFFD>F>FR-%&evalbG6#2F@F>F/F/F/F/
M7R0
I5Janet/is_indnotationf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6#%"lG6#%jnCopyright~(
C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"@+-%%typeG6$9$F(@%/F47"%
&falseG-%&evalbG6#/-%(convertG6$-%$mapG6&F"F49%9&%$setG<#%%trueG5-F26$F4%"+G-F2
6$F4%"*G4-%$hasG6$-FA6&F"-F>F3FCFDF8-F26$F4%"^G-F"6%-%#opG6$"""F4FCFD-F26$F4%)f
unctionGC%>8$F4?(F/FhnFhnF//-Ffn6$""!F^o%%diffG>F^o-Ffn6$FhnF^o@%-%'memberG6$Fa
oFDF8FGFGF/F/F/F/
M7R0
I/Janet/get_optsf*6#%%ivarG61%"aG%"iG%&m_ordG%&oivarG%"JG%'nlvarsG%+time_boundG
%.head_red_percG%)rhs_dvarG%%optsG%*want_simpG%/tail_reductionG%+no_contentG%#G
BG%)coeff_ptG6#%jnCopyright~(C)~2005-2010~by~Daniel~Robertz.~All~rights~reserve
d.G6"C2>8'9$>8(7">8)F?>8&""%>8*""!>8+"$+">8,F?>8.%&falseG>8/%%trueG>80FO>81FO>8
2F?>8-F??(8%""#"""9#FR@+-%%typeG6$&9"6#Ffn%%listG@%5-%(hastypeG6$F^o%'symbolG-F
eo6$F^o%(indexedG>F;F^o>FCF^o-F\o6$F^o%)equationG@5/-%#opG6$FhnF^oQ)coeffeqsF8>
F>-Fcp6$FgnF^o/FbpQ*coeffdvarF8>FAFgp/FbpQ*coeffringF8>FAFgp/FbpQ(rhsdvarF8>FLF
gp/FbpQ%timeF8C$@$4-F\o6$Fgp%*nonnegintG-%&ERRORG6#%Sexpecting~time~bound~in~se
conds~for~option~"time".G>FFFgp/FbpQ)GroebnerF8C$@$4-F\o6$Fgp%(booleanG-F[r6#%O
expecting~boolean~value~for~option~"Groebner".G>FVFgp/FbpQ(percentF8>FIFgp/FbpQ
.tailreductionF8C$@$Fcr-F[r6#%Texpecting~boolean~value~for~option~"tailreductio
n".G>FQFgp/FbpQ+localcoeffF8C$@$4-F\o6$Fgp-Fao6#%)realconsG-F[r6#%ioexpecting~l
ist~of~real~constants~representing~a~point~for~option~"localcoeff".G>FXFgp>FZ7$
-Fcp6#FZF^o-F\o6$F^o%'stringG@'/F^oQ"NF8>FTFR/F^oQ"SF8>FNFR>FZFet-F\o6$F^o%(int
egerG>FCF^o>FZFet@$0F>F?@&/%3Janet/coefficientsGQ(jreduceF8@%0FAF?C$@%-Feo6$F>F
_p@$53-F\o6$&F>6#FhnF_p4-%5Janet/is_indnotationG6%-Fcp6$FhnFivF<FA4-F]w6%FivF<F
A>F>-%$mapG6$f*6#F'F86$%)operatorG%&arrowGF8@%-F\o6$F<F_p/-%/Janet/Diff2IndG6%-
Fcp6$FhnF<T$T%-Fbx6%-Fcp6$FgnF<FfxFgx/-Fbx6%F<FfxFgxFGF8F86&F%F<F,FAF>C$@$4-F]w
6%F>F<FA>F>-FbxFdy>F>-Ffw6$f*FiwF8FjwF8@%F^xF</F<FGF8F8F8F>@$-%$hasG6$-Ffw6$f*F
iwF8FjwF8-F\o6$-%$lhsG6#F<%%nameGF8F8F8F>FO-F[r6#%`oexpecting~each~nonlinear~eq
uation~to~be~solved~for~some~jet~variable.G-F[r6#%gpthe~dependent~variables~for
~the~coefficients~must~be~specified~using~the~option~"coeffdvar".G/F\vQ(diffalg
F8@%F_v@$32FG-%%nopsG6#F>4-F\o6$Fiv%&tableG-F[r6#%aoexpecting~output~of~Rosenfe
ld_Groebner~as~value~for~option~"coeffeqs".G-F[r6#%gqthe~differential~polynomia
l~ring~containing~the~coefficients~must~be~specified~using~the~option~"coeffrin
g".G7/FZFCF;F>FAFFFIFLFNFQFTFVFXF8F8F8F8
M7R0
I5Janet/diffalg_reducef*6%%"pG%"PG%%dvarG6%%"dG%"iG%"qG6#%jnCopyright~(C)~2005-
2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%>8$-%'degreeG6$9$<#-%#opG6#9&?
&8%9%%%trueGC$>8&-&%(diffalgG6#%-reduced_formG6$F5F<@$2-F36$FAF6F1-%'RETURNG6#F
AFLF.F.F.F.
M7R0
I,Janet/Dlclmf*6&%#_pG%#_qG'%&ivarsG%%listG'%&dvarsGF)67%"aG%"bG%$cp1G%$cp2G%$c
q1G%$cq2G%%cq1nG%%cq2nG%#dpG%#dqG%$dqnG%"iG%"lG%"pG%"qG%#qnG%"sG%#DtG%"PG%"QG%$
opsG6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C2>8
19$>829%@$5/FG""!/FJFO-%'RETURNG6#7$"""FU>8&FU>8'FO>8(FO>8)FU>8/FU>8,FO>8-FO?(F
DFUFUFD331Fin-%%nopsG6#9'/F[oFO/F]oFOC'>85&Feo6#Fin>F[o-%'degreeG6$FGFjo>F]o-F_
p6$FJFjo@$5/F[o%%FAILG/F]oFgp-%&ERRORG6#%gnexpecting~differential~operators~wit
h~rational~coefficients.G>Fin,&FinFUFUFU@$3FfoFgoC$>80-%$lcmG6$FGFJ-FR6#7$-%)si
mplifyG6#*&FcqFUFG!"",$-F[r6#*&FcqFUFJF^rF^r>88-%$zipG6%f*6$F8%"jGFD6$%)operato
rG%&arrowGFD-%&parseG6#-%$catG6%Q-_a->diff(_a,FD-%(convertG6$FH%'stringGQ")FDFD
FDFD9&Feo@%2F[oF]oC)>84%%trueG>FcqFG>FGFJ>FJFcq>FcqF[o>F[oF]o>F]oFcq>F_t%&false
G?(FDFUFUFD0FJFOC0@%Ffo>8$FG>F^u-%&coeffG6$FG)FjoF[o@%Fgo>8%FJ>Ffu-Fau6$FJ)FjoF
]o@%435-%$hasG6$F^uFjs-F`v6$FfuFjs5-F`v6$F^uFeo-F`v6$FfuFeoC%>Fcq-Feq6$F^uFfu>F
^u-F[r6#*&FcqFUF^uF^r>Ffu,$-F[r6#*&FcqFUFfuF^rF^rC%>Fcq-F"6&F^uFfuFjsFeo>F^u&Fc
q6#FU>Ffu&Fcq6#""#>86-%,Janet/dmultG6'F^uFGFjsFeoFdr>87-Fdx6'Ffu-Fdx6')Fjo,&F[o
FUF]oF^rFJFjsFeoFdrFjsFeoFdr@%3-%%typeG6$Fbx%(polynomG-Fay6$FgxFcy>83-%(collect
G6%,&FbxFUFgxFUFjo%,distributedG>Fgy-%4Janet/normalizeWeylG6$F[zFeo>Fbx-Fdx6'F^
uFWFjsFeoFdr>Fgx-Fdx6'Ffu-Fdx6'F\yFenFjsFeoFdrFjsFeoFdr@%F_y>8*Fhy>F[[lF^z>Fbx-
Fdx6'F^uFYFjsFeoFdr>Fgx-Fdx6'Ffu-Fdx6'F\yFgnFjsFeoFdrFjsFeoFdr@%F_y>8+Fhy>Fg[lF
^z>8.-F_p6$FgyFjo@%2F]oFj[lC&>FGFgy>F[oFj[l>FWF[[l>FYFg[lC*>FGFJ>FJFgy>F[oF]o>F
]oFj[l>FWFen>FenF[[l>FYFgn>FgnFg[l@%F_t7$FgnFen7$FenFgnFDFDFDFD
M7R0
I2Janet/janet_separf*6'%&_ivarG%%dopsG%)rhs_dvarG%&m_ordG%&N_OrdG6)%"iG%"jG%"kG
%"JG%"QG%"SG%$ndvG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robe
rtz.~All~rights~reserved.G6"C-@$/%)number_tG"""-%'RETURNG6#7">8*-%%nopsG6#&%'T_
ListG6%F9F9F9@$309'F90FI""$>FD-%%sortG6$FD%,Janet/plex3G>8'7#-%"$G6$F=F??(8$F9F
9F8%%trueGC$>8&&FD6%FXFK""#>FR-%'subsopG6$/Ffn7$-%#opG6#&FR6#Ffn&FD6#FXFR>8(F=>
FDF=?(8%F9F9F?FYC%>8)-%0Janet/janet_divG6&&FR6#F[p9$9%9&>Fho7$-Fao6#Fho-Fao6#&F
^p6#Fin>FD7$-Fao6#FD-Fao6#&F^p6#F9>F8-FAFbq>FD-FN6$FD9(-F;FjpF46$FDF8F4F4
M7R0
I0Janet/Pres2Difff*6%'%"PG%%listG'%%ivarGF''%%dvarGF'6%%"aG%"iG%"gG6#%jnCopyrig
ht~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%@$52-%%nopsG6#9$""
$0&F:6#F;Q-PresentationF2-%&ERRORG6#%Rexpecting~homalg~presentation~as~first~pa
rameter.G@%2F;9#@&-%%typeG6$&9"6#""%F'>8&FK5-FI6$FK%'symbolG-FI6$FK%(indexedG>F
P7#-%$seqG6$-%$catG6$FK8%/Fjn;"""-F86#&F:6#F]o>FP7#-Fen6$-Fhn6$%#_TGFjnF[o@%/F^
oF]o@%-%.Janet/jchkdopG6#-%$rhsG6#&F`oFao7%-%$mapG6$f*6#F-F26$%)operatorG%&arro
wGF2/&-%,Janet/AppOpG6&-%-Janet/jmkmatG6#7#7#-%$lhsGF9T'T&FhqFao&-F_q6&-Fbq6#7#
7#-F`pF9T$FiqFbrFaoF2F26(F+9&F)9%F/FPF`o-Fep6$f*FhpF2FipF2&-F_q6&-Fbq6#7#7#F:T#
FiqF`sFaoF2F26&F/FPF)Fer&F:6#""#-%#opG6#&F:6#;F;!""7%-Fep6$f*FhpF2FipF2/F]q&-F_
q6&-Fbq6#F`rFbrFiqFbrFaoF2F2FcrF`o-Fep6$f*FhpF2FipF2FirF2F2FasFbsFes@%F\p7%-Fep
6$f*FhpF2FipF2/&-F_q6&-Fbq6#FeqFhqFiqFhqFaoFjqF2F2FcrF`o-Fep6$f*FhpF2FipF2&-F_q
6&-Fbq6#F_sF`sFiqF`sFaoF2F2FasFbsFes7%-Fep6$f*FhpF2FipF2/F_uFatF2F2FcrF`o-Fep6$
f*FhpF2FipF2FguF2F2FasFbsFesF2F2F2F2
M7R0
I4Janet/CompCondBasisf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(68%"aG%"iG%"nG%"rG%#L2G
%"MG%#R0G%#R1G%#R2G%"SG%%ivarG%%dvarG%%DvarG%%dopsG%&_ivarG%&m_ordG%&oivarG%&Oi
varG%$fmtG%%rvarG%%optsG%'methodG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz
.~All~rights~reserved.G6"C7>8.-%/Janet/get_varsG6$9%9&>8/&FG6#""#>82&FG6#"")>FG
&FG6#""">84-%/Janet/get_optsG6$FG&9"6#;""%9#>83&FfnFP>88%%NULLG@$0&Ffn6#F^o7">F
do6$Fdo/Q)coeffeqsFDFho@$0&Ffn6#""&Fjo>Fdo6$Fdo/Q*coeffdvarFDFap@$0&FfnFUFjo>Fd
o6$Fdo/Q(rhsdvarFDFjp@%/-%%nopsG6#FNFZ>89FZ>Feq""$>8)Fjo?&8%&FfnFY%%trueG@%-%%t
ypeG6$F[r%)equationG@'/-%#opG6$FZF[rQ$modFDC$@$4-F`r6$-Ffr6$FQF[rF(-%&ERRORG6#%
Vexpecting~a~list~as~right~hand~side~for~option~"mod".G>FiqF^s/FerQ'methodFDC$@
$4-F`r6$F^s%'stringG-Fas6#%enexpecting~a~string~as~right~hand~side~for~option~"
method".G@)/F^sQ$POTFD>FeqFZ/F^sQ&blockFD>FeqFQ/F^sQ)SyzygiesFD>FeqFgq-Fas6#%2u
ndefined~method.G>Fdo6$FdoF[r>FdoF^u>Ffn&Ffn6#Fgq@%/FfnFG>85Feo>FfuFfn>8+-%0Jan
et/get_inputG6*9$FGFNFfnFSFjoFjo%&falseG>86&FiuFP@$1F^oF`v-Fas6#%_pdifferential
~equations~are~expected~to~be~given~as~list~of~differential~expressions.G@$4&Fi
uFbu-Fas6#%Aexpecting~homogeneous~equations.G>81&FiuFio@'5/FeqFZ/FeqFQC/>8'-Fbq
6#&FiuFY>877#-%$seqG6$-%$catG6$%#_cGF[r/F[r;FZFfw>8,-F[v6*FiqFGFNFfnFSFjoFjoF^v
@$1F^o&FgxFPFdv@$4&FgxFbuFjv@$0&FgxFioF^w-Fas6#%gqexpecting~differential~equati
ons~given~in~option~"mod"~to~be~written~in~the~same~independent~variables~as~L.
G>8&Faq>807$-FfrFcq-Ffr6#F[x@%/&FgxFYFjo>8*-%.Janet/conv2eqG6(7#-F^x6$7$7$-Ffr6
#&&Fiw6#F[rFY-Ffr6#-%'subsopG6$/F[rFZ7#-%"$G6$""!FfwFj[lFdxF^wFGFiyFSFfn>Fbz7$-
Ffr6#Fcz-Ffr6#-Fdz6(-%$mapG6$f*6#F,FD6$%)operatorG%&arrowGFD7$7$-Ffr6#&F]vFY-Fh
[l6$Fj[lT#Fj[lFDFD6$F/FfwF`zF^wFGFiyFSFfn@%Fbw-%1Janet/JanetBasisG6'FbzFKFiyFQF
do-Ff]l6&FbzFK7$FNF[xFdo-%1Janet/updateNuStG6#-Fd\l6$f*Fg\lFDFh\lFD-%%subsG6$-%
$zipG6%f*6$F-%"jGFDFh\lFD/F]vFKFDFDFDFb]lT%-%&numerG6#&&F]v6#""'FYFDFD6&F:FSF6F
G%'T_ListG>8--Fd\l6$f*Fg\lFDFh\lFD@$/&&F_]lFY6#;FZFb]l7#F`]l-Fdz6(7$&F]`l6#;,&F
b]lFZFZFZ,&Fb]lFZF[_lFZFj[lT'T)T+T-T/FDFD60F.FgyF/FfwF9F^wF6FGF?F[xF:FSF<FfnFd_
l@%/Ff_lFjo@%/F`vFQ-%.Janet/Diff2OpG6%7#Fj[lFKF[x-Ff]l6(FfalFKF[xFfuFaoFdoC$>Fi
u-Ff]l6(Ff_lFKF[xFfuFaoFdo@%Fbal-Fdal6#-Ffr6#FiuFiu/FeqFgqC'>F[x7#-F^x6$F`x/F[r
;FZFgw@%Fbal>8(-%-Janet/AffEqnG6%-%,Janet/AppOpG6&F]vFNFGFNFGF[x>F\cl-F^cl6%F]v
FGF[x@%0FiqFjo-Ff]l6(7$-Ffr6#F\cl-Ffr6#FiqFKFLFfuFaoFdo-Ff]l6(F\clFKFLFfuFaoFdo
>Ff_l-%/Janet/CompCondGF`dl@%F`al@%FbalFcalFgalC$>FiuF[bl@%FbalF^blFiuFjtFDFDFD
FD
M7R0
I-Janet/AffEqnf*6%'%"LG%%listG'%%ivarGF''%%_rhsGF'6$%"iG%#L2G6#%jnCopyright~(C)
~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%@$0-%%nopsG6#9$-F66#9&-%
&ERRORG6#%apexpecting~the~length~of~the~third~list~to~be~the~same~as~the~length
~of~the~first~list.G@%32""$9#-%%typeG6$&9"6#""%%'stringGC$>8%%%NULLG?(8$"""FSF5
%%trueG@%3-FF6$&F;6#FR%%nameG4-%'memberG6$FY9%>FO6$FO/-FY6#-%#opG6#Fjn&F8FZ>FO6
$FO/FYFcoC$>FOFP?(FRFSFSF5FT@%FV>FO6$FO,&FcoFSF^o!"">FO6$FO,&FcoFSFYF^p7#FOF1F1
F1F1
M7R0
I6Janet/HilbertFunctionf*6#%"lG6(%"iG%"jG%"qG%"nG%"sG%#_sG6#%\pCopyright~(C)~20
00-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C&@%2""!9#>
8(9$>F6.F6>8'-%%nopsG6#&%'T_ListG6%"""""$FB>8&-%.Janet/max_degG6#F@@)-%%typeG6$
F6%'stringGC$?(8$F3FB,&FEFB!""FB%%trueG-%'printfG6%Q0Dim(M.%d)~=~%a|+F/FP-F"6#F
P-FU6%Q;Dim(M.s)~=~%a,~for~s~>=~%dF/-%%subsG6$/8)F9-%8Janet/HilbertPolynomialG6
#F[oFE3-FK6$F6%(numericG/F6F3-%)Janet/HFG6#F6F`o-%)simplifyG6#,&FdoFB-Feo6#,&F6
FBFRFBFRF"F/F/F/F/
M7R0
I3Janet/Denominatorsf*6#'%%ivarG%%listG6"6#%jnCopyright~(C)~2000-2010~by~Daniel
~Robertz.~All~rights~reserved.GF(C$@$4-%)assignedG6#%&Nu_StG-%&ERRORG6#%Gno~den
ominators;~run~JanetBasis~first.GF1F(F(F(F(
M7R0
I0Janet/InvReducef*6$%"fG'%#JBG%%listG6N%"aG%"cG%"hG%"iG%"jG%"kG%"lG%"rG%"FG%"G
G%#G1G%%ivarG%%dvarG%)dops_ordG%)ivar_degG%)dvar_degG%)dvar_posG%)ideg_ordG%)dd
eg_ordG%&_ivarG%&oivarG%&m_ordG%"JG%'nlvarsG%%dopsG%'ldprocG%$ndvG%)dvar_cmpG%.
return_coeffsG%$divG%#lmG%&lmredG%"SG%$mulG%$conG%$su1G%$su2G%)rhs_dvarG%&B_Ord
G%$fmtG%*want_simpG%+force_simpG%+constcoeffG%/tail_reductionG6#%\pCopyright~(C
)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"CR@$0%2
Janet/initializedG.%%trueG-%+Janet/initGFX@$52-%%nopsG6#9%""$2""&F^o-%&ERRORG6#
%Yexpecting~second~argument~JB~to~be~output~of~JanetBasis.G>8/-%/Janet/get_vars
G6$&Fao6#""#&Fao6#Fbo>80&FjoF_p>81&FjoFbp>82&Fjo6#""%>83&Fjo6#Fdo>85&Fjo6#""'>8
6&Fjo6#""(>87&Fjo6#"")>84&Fjo6#""*>Fjo&Fjo6#""">8>-F_o6#Fdp>8@%&falseG>88-%/Jan
et/get_optsG6%Fjo-%#opG6#-%'subsopG6&/Fir%%NULLG/F`pF]t/FboF]tFao&9"6#;Fbo9#>89
&FbsF_p>8:&FbsF\q>8;&FbsFaq>8I&FbsF_r>8L&FbsFdr>8O&Fbs6#"#5?&8'&FbsFhrFhn@%-%%t
ypeG6$Fju%'stringG?(8)FirFir-%'lengthG6#FjuFhn@&/&Fju6#FbvQ"CFX>F_sFhn0FhvQ!FX-
Ffo6#%0invalid~option.GF^w>Fbs&FbsFbp>8<7#-%$seqG6$&%"DG6#&FbsFev/Fju;Fir-F_o6#
Fjo>8G-%$zipG6%f*6$F-F.FX6$%)operatorG%&arrowGFX/9$FaoFXFXFXF]rFbs>8H-Fdx6%f*Fg
xFXFhxFXF[yFXFXFXFbsF]r>8,-%0Janet/get_inputG6*F\yFjoFdpFbsF]r7"FgyF`s>8M5Fbu&F
cyFaq>8N&FcyFeq>Fcy&FcyFhr>8--Fey6*&FaoFhrFjoFdpFbsF]rFgyFgyF`s>8K&FbzF_p@$1F]q
Fgz-Ffo6#%_pdifferential~equations~are~expected~to~be~given~as~list~of~differen
tial~expressions.G>Fdw&FbzF\q>Fiy5Fiy&FbzFaq>F]z3F]z&FbzFeq>Fbz&FbzFhr>Fgp-%%su
bsG6$-%,Janet/jezipG6$FjoFdwFgp>8*-%.Janet/get_ordG6,FftFdwFdpFgpFjpF_qFcqFhqFb
r34FiyF]z>8=&F`\lFhr>8J&F`\lFbp@$&F`\lF\q>FbrFgy>8?&F`\lFaq@$4-%)assignedG6#%#_
hG>Fg]lFir@%33-F^v6$%'T_ListG%)listlistG/-F_o6#F^^l-F_o6#Fg[l/-F_o6#&&&F^^lFhrF
hrFhrF\sC$>8.-%.Janet/conv2eqG6(-%$mapG6$f*6#F*FXFhxFX&&F\yFhr6#;FirF`pFXFXFXF^
^lFdwFjoFdpF]rFbs@$4-&%'linalgG6#%'iszeroG6#-%)simplifyG6#,&F]_lFirFg[l!""-%2Ja
net/setupT_ListG6.FbzFjoFdpF]rFbsFdwFg\lFj\lFbrFjpF_qF`]lFg`l@$/&F^^l6%FirFfqFi
r""!-%'RETURNG6#F\y?(FbvFirFir-F_o6#FcyFhnC)>8&-%(convertG6$&&FcyFivFh_l%%diffG
>8+7$%$zedGF^al>8%7#-%"$G6$Fgy%)number_tG>8B-%1Janet/lead_derivG6*&FgalFhrF[sFd
wFg\lFbrFjpF_qF`]l?(FXFirFirFX0&Fjbl6$F`pFirF^alC%>8AF`s@$0FitFgy@&/%3Janet/coe
fficientsGQ(jreduceFXC)@$-Fe]l6#%.JPRINTjreduceG-%&printG6#/Q2InvReduce:~vorher
FXFacl@%Fiy>8C-Fc`l6#-%/Janet/jjreduceG6&Fit-%/Janet/Diff2IndG6%-Fj[l6$Fbx-%&nu
merG6#FaclFbsF\uFbsF\u>FhdlF[el>Fhdl*&-Fj[l6$F^y-%/Janet/Ind2DiffG6%FhdlFbsF\uF
ir-%&denomGFeelFf`l@$F^dl-Fbdl6#/Q3InvReduce:~nachherFXFhdl>Fgal7$-Fjs6$/&Fjbl6
$FirF`p-%(collectG6%,&&F^cl6#FjflFir*&,&FhdlFirFaclFf`lFir&Fjbl6$F`pF`pFirFirFd
w%,distributedGF^cl&FgalF_p>FaclFhdl@$F^dl-Fbdl6#/Q1InvReduce:~h~neuFXFgal/Fjcl
Q(diffalgFXC$@$-Fe]l6#%.JPRINTdiffalgG-Fbdl6$Q,belongs_to?FX-Fj[l6$Fbx-Fial6$Fc
elF]bl@$-%3diffalg/belongs_toG6$FhhlFitC%@$Fbhl-Fbdl6$Q+belongs_toFXFhn>Fgal7$-
Fjs6$/Fjfl-F]gl6%,&F`glFir*&FaclFirFdglFirFf`lFdwFfglF^clFggl>FaclF^al@$F`clC&>
FjuFir?(FXFirFirFX31FjuFhbl4Fecl@%-%1Janet/inv_divideG6%&F^^l6$FjuFbo&F^^l6$Fju
Fdo&FjblFhrC(>8D,&&Fjbl6$FirFirFir&F^^l6%FjuFboFirFf`l>8E-%,Janet/derivG6'Fa[m&
F^^l6$FjuFirF]rFdwF_u>8F*&&F^^l6%FjuFfqFirFir-F_fl6#Fa\mFir-%1Janet/updateNuStG
6#7#F_\m@%Fiy>Fgal7$-F]gl6%-Fc`l6#,&F^clFir-Fb_l6$f*Fe_lFXFhxFX*(&T#FbclFir&F^^
l6%T%FfqFirFf`lF\yFirFXFX6&FHFjblF-Fju&Fh[mFhrFf`lFdwFfgl-Fc`l6#,&FgglFir*(Facl
FirFa\mFf`l&Fh[mF_pFirFf`l>Fgal7$-F]gl6%-%'normalG6#,&F^clFir-Fb_l6$f*Fe_lFXFhx
FXFd]mFXFXFj]mF[^mFf`lFdwFfgl-Ff^mF]^m>FeclFhn>Fju,&FjuFirFirFir@%Fejl@%FiyC$>F
_bl7$-Fjs6$/Fjfl-F]gl6%-Fc`l6#,&&&F_blFhrFaglFirF]jlFirFdwFfglF^`m&F_blF_p>Fgal
7$-Fjs6$/Fjfl-F]gl6%-Fc`l6#F\jlFdwFfglF^clFgglC$>F_bl7$-Fjs6$/Fjfl-F]gl6%-Ff^mF
[`mFdwFfglF^`mF_`m>Fgal7$-Fjs6$/Fjfl-F]gl6%-Ff^mFh`mFdwFfglF^clFggl@$F_s>Fcbl-F
js6$/Fju7$-Fgs6#&FcblFev7$*&FaclFirFa\mFf`l7#-Fgw6$-Ffbl6$&Fjo6#8(&Fa[mF[cm/F\c
mF^xFcbl>FjblF[cl@%/F^`mFabl>F_bl-Fj[l6$FbxFgglC%>F_bl-F__l6(7$F^`mFgglFdwFjoFd
pF]rFbs>Fgal-Fial6$F_blF]bl@$4-%$hasG6$Fgal%'&whereG>F_blFgal@%F_s>Fcy-Fjs6$/Fb
v7$F_bl-%1Janet/matrixtypeG6%FirFhblf*FgxFXFhxFX@%/&Ff]mF`oFgyF^al-Fj[l6$Fi]mF`
emFXFX6&F+FcblFMFbxFcy>Fcy-Fjs6$/FbvF_blFcy@%-F^v6$F\yF(Fcy-FgsFdalFXFf]lFXFX
M7R0
I1Janet/updateNuStf*6#'%%NuStG%%listG6(%"jG%"nG%"pG%"qG%"rG%$redG6#%jnCopyright
~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"?&8%9$%%trueG@$4-%%typ
eG6$F3%)constantGC&>8&F3>8$"""?(F1FAFAF131F@-%%nopsG6#%&Nu_StG4-F96$F>F;C'>8)%&
falseG>8'-%'normalG6#*&F>FA&FH6#F@!""?(F1FAFAF134-F96$FQF;-F96$-%&denomG6#FQF;C
%>FNF5>8(FQ>FQ-FS6#*&FQFAFVFX@&Fhn>F>FQFN>F>F`o>F@,&F@FAFAFA@$FIC'>F>-%)simplif
yG6#F>?(F1FAFAF13-F96$F>%"*G-F96$-%#opG6$FAF>F;>F>*&F>FAFgpFX>F@FA?(F1FAFAF1FDC
&>FNFO>FQ-FS6#*&FVFAF>FX?(F1FAFAF1FZC%>FNF5>F`oFQ>FQ-FS6#*&FQFAF>FX@'Ffn>FH-%'s
ubsopG6$/F@%%NULLGFHFNC$>FH-F_r6$/F@F`oFH>F@Fio>F@Fio>FH7$-FhpFGF>F1FGF1F1
M7R0
I2Janet/updateCOMPAf*6$'%"cG%%listG'%$varGF'6$%"iG%"jG6#%jnCopyright~(C)~2000-2
010~by~Daniel~Robertz.~All~rights~reserved.G6"?&8$9$%%trueGC%>8%-%&numerG6#F1?(
F/"""F;F/3-%%typeG6$F6%"*G-F>6$-%#opG6$F;F6%)constantG>F6*&F6F;FC!""@$4-%/Janet
/mem_multG6%F6%&COMPAG9%>FO7$-FD6#FOF6F/FTF/F/
M7R0
I.Janet/jremainf*6$%#IIG%#JJG6%%"iG%#KKG%#poG6#%inCopyright~(C)~2000-2002~by~Ge
hrt~Hartjen.~All~rights~reserved.G6"C%>8%9$?&8$9%%%trueG@%-%'memberG6%F3F0.8&>F
0-%'subsopG6$/F;%%NULLGF0-%'RETURNG6#7"F0F-F-F-F-
M7R0
I.Janet/PolySolf*6$%#JBG%$degG6<%"aG%"cG%"iG%"rG%$rnzG%$posG%&c_posG%"AG%"BG%"C
G%#EqG%#GJG%%ivarG%%dvarG%&oivarG%%SolSG%'SubSolG%$SOLG%#SCG%%ConsG%(Cons_eqG%%
BASEG%%optsG%&c_argG%&n_argG%,assign_BASEG6#%\pCopyright~(C)~2000-2010~by~Carlo
s~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C6@$52-%%nopsG6#9$""$2""&FI
-%&ERRORG6#%Yexpecting~first~argument~to~be~the~output~of~JanetBasis.G>80-%/Jan
et/get_varsG6$&FL6#""#&FL6#FM>81&FUFZ>FU&FU6#"""@%32FMFI-%%typeG6$&FL6#""%%%lis
tG>82Feo>FjoFU>8;""!>8<F^p>8=F^p?(8&FMF^o9#%%trueG@)33-Fco6$&9"6#FdpFho4-Fco6$F
\q%)listlistG4-%$hasG6$F\qFU@%/F]pF^pC$@$0-FJ6#F\q-FJ6#FU@%2F\r"#5-FQ6#-%$catG6
%%Ccannot~assign~centre~of~expansion~G-%(convertG6$F\q%'stringG%;~to~independen
t~variables.G-FQ6#%fncannot~assign~centre~of~expansion~to~independent~variables
.G>F]pFdp-FQ6#%Scannot~determine~which~centre~of~expansion~to~use.G-Fco6$F\q%'s
ymbolG>FbpFdp-Fco6$F\q%)equationG@%/-%#opG6$F^oF\qQ*constnameFD@%/F`pF^p>F`pFdp
-FQ6#%Rcannot~determine~which~name~to~use~for~constants.G-FQ6#%0invalid~option.
GFht>8:%%NULLG@$2F^pF]p>F\u6$F\u&F]q6#F]p@$2F^pF`p>F\u6$F\u&F]q6#F`p>837#-%0Jan
et/SolSeriesG6%FL9%F\u>84-%$mapG6$f*6#F(FD6$%)operatorG%&arrowGFD@%/FLF^pF]u-%(
collectG6%FLT#%,distributedGFDFD6$F4FU-%)simplifyG6#-%-Janet/jesubsG6$&F[vF]o&F
LF]o>8.-Fdv6%%/Janet/jjcoeffsGFbvFU>87&F[vFZ>89F]u@%0F\x7"C$>8+-%1Janet/jlinmat
rixG6&F\xFax.8-Q!FD@%/F_yFgxC$-%&printG6#-Ffr6%%NThere~is~no~polynomial~solutio
n~up~to~degree~G-Fjr6$-F_t6#F`vF\s%".G-%'RETURNG6#F]uC/>F_y-&%'linalgG6#%'matri
xG6%-FJ6#F_yF^oF_y>8/-&Ffz6#%*gaussjordG6#Fjx>8'-&Ffz6#%'rowdimG6#F][l>8%-&Ffz6
#%'coldimGFi[l>Fjx-&Ffz6#%*submatrixG6%F][l;F^oFd[l;F^o,&F[\lF^o!""F^o@$0-&Ffz6
#%%rankGFb[l-F]]lFi[lC$FdyF_z>8,-Fb\l6%F][lFf\l;F[\lF[\l>Fc]l-&Ffz6#%'mataddG6$
-&Ffz6#%)multiplyG6$FjxF_yFc]l>86F]u>FdpF^o>8(Ffp?(FDF^oF^oFD31FdpFd[lFf^lC%>8)
-%0Janet/posmatrixG6$FjxFdp@%0F\_lF^pC%>Fc^l6$Fc^l/&F_y6$F\_lF^o-%&solveG6$&Fc]
l6$FdpF^oFf_l-%'memberG6%Ff_lFax.8*>Fax-%'subsopG6$/Fa`lF]uFax>Ff^l%&falseG>Fdp
,&FdpF^oF^oF^o>85-Fdv6$f*FgvFDFhvFDF]wFDFDFbw-Fdw6#-%%subsG6$7#Fc^lFiw>F\al-Fdv
6$f*FgvFDFhvFDF]wFDFDFbw-Fdw6#Fiw@$2F^pFbpC&>88-Fdv6$f*FgvFDFhvFDF\wFDFDFDFax@%
-%7Janet/is_inhomogeneousG6&FjwFUFinFjo>Fdx-%'expandG6#-Fcal6$F`blF\al>FdxF]u?(
FdpF^oF^o-FJ6#FaxFfp>Fdx6$Fdx-Fcal6$-Fd`l6$/Fdp/-F_t6$F^o&F`blF^qF^oF`blF\al-%'
assignG6$&F]q6#Fbp7#Fdx-F`z6$F\alFaxFDFDFDFD
M7R0
I/Janet/jgetindsf*6$%%_eqnG%%dvarG6#%$eqnG6#%[oCopyright~(C)~2000-2002~by~Moham
ed~Barakat.~All~rights~reserved.G6"C$@%-%%typeG6$9$%&arrayG>8$-%.Janet/jmklistG
6#F1>F4F1@'/9%7"F<32""#9#-F/6$&9"6#""$%'stringG7$-%#opG6#-%'selectG6$f*6#%"xGF+
6$%)operatorG%&arrowGF+-%'memberG6$F1T$F+F+6$F&F;-%'indetsG6$F4%'symbolG-FJ6#-F
"6$F4F;-%(convertG6$-FM6$f*FPF+FRF+-FV6$-FJ6$""!F1FXF+F+FY-Fen6$F4%(indexedG%%l
istGF+F+F+F+
M7R0
I0Janet/SubFactorf*6%%%_RR1G%$_R1G'%%ivarG%%listG6,%$RR1G%#R1G%"nG%%dvarG%"KG%"
LG%#J1G%%tvarG%"iG%"GG6#%^pCopyright~(C)~2000-2010~by~Mohamed~Barakat~and~Danie
l~Robertz.~All~rights~reserved.G6"C4>8$-%-Janet/jmkmatG6#9$>8%-F<6#9%>8&-&%'lin
algG6#%'coldimG6#F:@$0FE-FG6#F@-%&ERRORG6#%`rexpecting~both~modules~to~be~submo
dules~of~the~same~free~module~(both~matrices~must~have~the~same~number~of~colum
ns).G@%32""$9#-%%typeG6$&9"6#""%F)C$>8'Ffn@$0-%%nopsG6#F\oFE-FQ6#%fothe~number~
of~dependent~variables~must~coincide~with~the~number~of~columns.G>F\o-%$mapG6$f
*6#%"aGF76$%)operatorG%&arrowGF7-%$catG6$%#_XGF>F7F7F77#-%"$G6#;"""FE>8(-%,Jane
t/AppOpG6&F:F\o9&F\o>8)-F\q6&F@F\oF^qF\o>8*-%1Janet/JanetBasisG6%F`qF^qF\o>Fjp-
%0Janet/InvReduceG6$FjpFdq>Fjp-%0Janet/jdepcheckG6#-%'expandG6#Fjp@$/Fjp7">Fjp7
#""!>8+7#-%$seqG6$-F`p6$%#_TG8,/Fbs;Fhp-F`oFbr>8--%-Janet/AffEqnG6&FjpF^qFjrQ!F
7>Fjp-Fis6%FjpF^qFjr-Ffq6%7$-%#opG6#&Fdq6#Fhp-FctFbrF^qF\o>Fjp-%/Janet/CompCond
GF`t>Fjp&-FfqF^tFft7&FgsFjp-%4Janet/HilbertSeriesGF7-%6Janet/CartanCharacterG6#
7#-Fep6#;Fhp-F`o6#F^qF7F7F7F7
M7R0
I0Janet/jfrechetcf*6%%%leqnG%%ivarG%%dvarG6)%&_leqnG%"AG%"mG%"nG%"iG%"jG%"kG6#%
[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C(>8$-%.Ja
net/jmklistG6#9$>8&-%%nopsG6#F5>8'-F=6#9&>8%-%'matrixG6$F;F@?(8("""FKF;%%trueG?
(8)FKFKF@FLC%>&FE6$FJFN7$-%/Janet/jpartderG6&&F56#FJ7#&FC6#FN9%FC7"?&8*-%/Janet
/jgetindsG6$FWFYFL>FQ6$FQ7$-FU6&FWFinFfnFC7#-%#opG6#Fin>FQ-%0Janet/jgcollectG6$
7#FQFfn@%34-%%typeG6$F9%%listG/FAFK&FE6$FKFK-%%copyG6#FEF2F2F2F2
M7R0
I-Janet/jdprodf*6$%"aG%"bG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~Al
l~rights~reserved.GF'@%0-%%nopsG6#9$-F-6#9%-%&ERRORG6#%EThe~two~lists~have~diff
erent~length!G-%'expandG6#-%(convertG6$-%$zipG6%f*6$%"xG%"yGF'6$%)operatorG%&ar
rowGF'*&F/"""F2FHF'F'F'F/F2%"+GF'F'F'F'
M7R0
I8homalg/Janet/Involutionf*6$%"MG%$varG6"6#%jnCopyright~(C)~2004-2010~by~Daniel
~Robertz.~All~rights~reserved.GF'-%/Janet/JAdjointG6$9$9%F'F'F'F'
M7R0
I3Janet/PDEFactorizef*6&%$_R1G%$_R2G'%&ivarsG%%listG%&dvarsG6,%"iG%"FG%#JBG%"NG
%#R1G%#R2G%&rvarsG%%dvarG%"JG%'nlvarsG6#%enCopyright~(C)~2010~by~Daniel~Robertz
.~All~rights~reserved.G6"C->8*%%NULLG>8,F<>8-F<?(8$""%"""9#%%trueG@'-%%typeG6$&
9"6#FBF)@$1""&FB@%5-%(hastypeG6$FK%'symbolG-FT6$FK%(indexedG>F;FK-%&ERRORG6#%0i
nvalid~option.G-FI6$FK%)equationG@'/-%#opG6$FDFKQ)coeffeqsF8>F>FK/F^oQ*coeffdva
rF8>F@FKFenFen@%-FI6$9$%'matrixGC$>8+7#-%$seqG6$-%$catG6$%#_uGFB/FB;FD-&%'linal
gG6#%'coldimG6#Fio>8(-%,Janet/AppOpG6&FioF]p9&F]pC%@$4-FI6$9'F)-Ffn6#%Zexpectin
g~list~of~dependent~variables~as~fourth~argument.G>F]pFiq>F_qFio@%-FI6$9%FjoC$@
$0-Fip6#Fbr-%%nopsG6#F]p-Ffn6#%inexpecting~the~two~matrices~to~have~the~same~nu
mber~of~columns.G>8)-Faq6&FbrF]pFcqF]p>F_sFbr@$/F;F<>F;7#-F`p6$-Fcp6$%#_AGFB/FB
;FD-Fir6#F_s>8&-%'subsopG6$/""$7$F]pF;-%1Janet/JanetBasisG6'-%-Janet/AffEqnG6%F
_sFcqF;FcqFgtF>F@>8%7"?(FBFDFD-Fir6#F_qFFC%>8'-%0Janet/InvReduceG6&&F_qFMFatF>F
@@$-%$hasG6$FfuF]p-%'RETURNG6#%%FAILG>F_u7$-F_o6#F_uFfu@%5FgoF`r-%.Janet/Diff2O
pG6%F_uFcqF;F_uF8F8F8F8
M7R0
I6Janet/copyright_Janetf*6"F$6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~
Daniel~Robertz.~All~rights~reserved.GF$C)-%&printG6#%6Janet~(2000-2010)~(C)G-F)
6#%inCopyright~(C)~(2000-2010)~by~Carlos~F.~Cid~and~Daniel~Robertz.G-F)6#%5All~
rights~reserved.G-F)6#%YThis~software~should~be~referenced~if~it~is~used~in~wor
kG-F)6#%>eventuating~in~a~publication.G-F)6#%GUsers~are~free~to~modify~this~pro
gram,G-F)6#%Tbut~it~is~not~to~be~redistributed~in~modified~form.GF$F$F$F$
M7R0
I:Janet/degrevlex_deg_blockf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%jnCopyright~(C)
~2004-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C&>8%-%%nopsG6#&9$6#""">8&
,&-%$addG6$*&&F56#8$F8&%)_jvardegGFAF8/FB;F8F1F8&%)_jtupdegG6#&F66#""#F8>8',&-F
=6$*&&&9%F7FAF8FCF8FEF8&FH6#&FUFKF8@'2F:FN%%trueG2FNF:%&falseGC&>F:F<>FNFP@'FZ-
%'RETURNG6#FenFfn-F]o6#Fgn?(FBF1!""F8Fen@&2FSF@F\o2F@FSF_oFenF.F.F.F.
M7R0
I6Janet/diff_normalformf*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%)r
hs_dvarG%)coeff_ptG6%%"aG%"rG%$conG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Ci
d~and~Daniel~Robertz.~All~rights~reserved.G6"C%>%)_jnnformG,&F7"""F9F9>8%-%-Jan
et/reduceG6#9"@%/&F;6#F9%$zedG@%0&F;6#""#""!C$-%2Janet/updateCOMPAG6$7#FG9'-%'s
ubsopG6$/FIFJF;F;C&>8&-%0Janet/comfactorG6$FB9%@$09,7">&FWFC-%5Janet/invertible
partG6$F[oFhn-%1Janet/updateNuStG6#7#F[o@%30F[oFJ50F[oF90&FWFHF97%-%$mapG6$f*6#
F/F46$%)operatorG%&arrowGF4-%(collectG6%-%'normalG6#*(9$F9&T#FHF9&F\qFC!""T&%,d
istributedGF4F46&F1FWF&FenFB-Fdp6%-Fgp6#*(FGF9FioF9F[oF^q9+F`q&F;6#""$F;F46#F7F
4F4
M7R0
I+Janet/jlcmf*6$%"aG%"bG6$%"iG%"LG6#%inCopyright~(C)~2000-2002~by~Carlos~F.~Cid
.~All~rights~reserved.G6"C%@$0&9$6#""#&9%F2-%&ERRORG6#%Xinput~for~jlcm~must~be~
from~the~same~dependent~variableG>8%7#-%$seqG6$-%$maxG6$&F16$"""8$&F5FD/FF;FE%$
nivG-%'RETURNG6#7$F;F0F,F,F,F,
M7R0
I0Janet/jcolbylstf*6$'%$lstG%%listG%$refG6'%$colG%$celG%$resG%"iG%#poG6#%[oCopy
right~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C'>8$-%1Janet/jc
ollectedG6#9$>8%-%$mapG6$f*6#%"aGF16$%)operatorG%&arrowGF1&F86#"""F1F1F1F4>8&%%
NULLG?&8'9%%%trueG@%-%'memberG6%FKF:.8(>FH6$FH&F46#FS>FH6$FH7$FK""!7#FHF1F1F1F1
M7R0
I,Janet/SyzOpf*6$%#_dG'%%ivarG%%listG6+%"dG%"aG%"iG%"LG%%dvarG%%rvarG%(tmpNuStG
%"JG%'nlvarsG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserve
d.G6"C'>8$-%-Janet/jmkmatG6#9$>8(7#-%$seqG6$-%$catG6$%#_uG8&/FG;"""-&%'linalgG6
#%'coldimG6#F8>8'-%/Janet/Ind2DiffG6%-%/Janet/AppOpIndG6&F8F>9%F>FYF>>8)7#-FA6$
-FD6$%#_AGFG/FG;FJ-%%nopsG6#FR@%/FR7#-%"$G6$""!F^o-%0Janet/jfrechetcG6%FenFYFen
C,>8+%%NULLG>8,F^p?(FG""$FJ9#%%trueG@$-%%typeG6$&9"6#FG%)equationG@'/-%#opG6$FJ
FipQ)coeffeqsF5>F]pFip/F_qQ*coeffdvarF5>F`pFip-%&ERRORG6#%0invalid~option.G>FR7
#-FA6$,&&FRF[qFJ-Fin6#-F`q6#FY!""F\o@%4-%)assignedG6#%&Nu_StG>8*7">F]sF[s-%1Jan
et/JanetBasisG6(FRFYF>F]pF`p/Q(rhsdvarF5Fen-%1Janet/updateNuStG6#F]s>FR-%/Janet
/Diff2IndG6%-%/Janet/CompCondGFbsFYFen@$/FRF^s>FR7#Fgo-Fio6%FRFYFenF5F5F5F5
M7R0
I/Janet/red2listf*6%%%reduG%"MG%$varG6*%"iG%"vG%"wG%#w1G%"tG%&foundG%"JG%"LG6#%
\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reser
ved.G6"C&@%-%%typeG6$9$%"+G>8+-%(convertG6$F9%%listG>F<7#F9>8*%%NULLG?&8%F<%%tr
ueG@%-F76$FG%"*GC'>8&7#-%#opG6#FG>8$""">8)%&falseG?(F3FVFVF331FU-%%nopsG6#FO4FX
C$@&-%'memberG6$&FO6#FU9%C$>FD6$FD7%-%)simplifyG6#*&FGFVF`o!""F`oF`o>FXFH33-F76
$F`o%(indexedG4F]o-F^o6$-FR6$FVF`o9&C$>FD6$FD7%FgoF`o-FR6$""!F`o>FXFH>FU,&FUFVF
VFV@$Fjn>FD6$FD7%FVFGFG@%3-F76$FGFap4-F^o6$FGFbo>FD6$FD7%FVFG-FR6$F^qFG>FDFdq-%
'RETURNG6#7#FDF3F3F3F3
M7R0
I0Janet/jind2multf*6$%"JG%%ivarG6&%"iG%"jG%$mulG%&multiG6#%inCopyright~(C)~2000
-2002~by~Gehrt~Hartjen.~All~rights~reserved.G6"C$>8'%%NULLG?&8$9%%%trueGC%>8&""
!?&8%9$F6@$/F<F4>F9,&F9"""FBFB>F16$F1F9F.F.F.F.
M7R0
I1Janet/jfind2multf*6%%%funcG%%ivarG%%dvarG6$%#poG%$resG6#%[oCopyright~(C)~2000
-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C%@'-%'memberG6%-%#opG6$""!9$9
&8$>8%-%0Janet/jind2multG6$7#-F46#F79%-F16%F7F8F9>F;-F=6$7"FBC$>F9F6>F;F7@$2""$
9#-%'assignG6$&9"6#""%F9F;F-F-F-F-
M7R0
I/Janet/Ind2Difff*6%%$eqnG%%ivarG%%dvarG6#%%jvarG6#%[oCopyright~(C)~2000-2002~b
y~Mohamed~Barakat.~All~rights~reserved.G6"C$@%2""$9#>8$&9"6#""%>F3-%/Janet/jget
indsG6$9$9&-%%subsG6&-%$mapG6$f*6#%"xGF,6$%)operatorG%&arrowGF,/F<-%(convertG6$
F<%'symbolGF,F,F,F3-FB6$f*FEF,FGF,/F<-F<6#-%#opG6#T$F,F,6$F&9%F=-FB6$f*FEF,FGF,
/FK-%/Janet/jind2mapG6$F<FXF,F,FYF3F<F,F,F,F,
M7R0
I1Janet/FlatOutputf*6%%#_RG'%&ivarsG%%listG'%&dvarsGF(6+%"iG%"rG%"LG%"PG%"RG%%i
varG%%dvarG%&oivarG%%optsG6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~r
ights~reserved.G6"C(>8,%%NULLG@%329#""$-%%typeG6$9$%'matrixGC&>8)-%/Janet/get_v
arsG6$9%7#-%$seqG6$-%$catG6$%#_rG8$/FU;"""-&%'linalgG6#%'coldimG6#FD>8*&FH6#""#
>FH&FH6#FX>8+F;C*>FH-FJ6$FL9&>FjnF[o>FHF_o>8%-%/Janet/get_optsG6$FH&9"6#;""%F?@
$0&F[p6#Fcp7">F:6$F:/Q)coeffeqsF7Ffp@$0&F[p6#""&Fhp>F:6$F:/Q*coeffdvarF7F_q>Fbo
&F[p6#F@@$/FboFH>FboF;@%FA>8(FD>F^r-%.Janet/Diff2OpG6%FDFHFjn@%F>>8'-%6Janet/Pa
rametrizationG6$F^rFH>Fer-Fgr6&F^rFHFjnF:>8&-%2Janet/LeftInverseG6%FerFHF:@'/F]
s%%FAILGFcsFAF]s-%,Janet/AppOpG6&F]sFjnFHFjnF7F7F7F7
M7R0
I7Janet/PDEHilbertSeriesf*6"6&%"iG%"sG%/args_without_sG%$resG6#%jnCopyright~(C)
~2007-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C(>8%%%NULLG>8&F/@%/9#"""C
$@%3-%%typeG6$&9"6#F5%)equationG5/-%#opG6$F5F<Q$varF$/FBQ%subsF$>F.-FC6$""#F<>F
.F<@$4-F:6$F.%%nameG-%&ERRORG6#%_oexpecting~an~indeterminate~for~the~Hilbert~se
ries~as~first~argument.G?(8$F5F5F4%%trueG@'-F:6$&F=6#FWFQ@%/F.F/>F.Ffn-FS6#%Qca
nnot~determine~which~indeterminate~to~plug~in.G3-F:6$FfnF?5/-FC6$F5FfnFE/FcoFGC
$@%Fin>F.-FC6$FKFfnF[o@$FN-FS6#%Sexpecting~an~indeterminate~for~the~Hilbert~ser
ies.G>F16$F1Ffn@$Fin>F..F.@%1F4F5C$@$4-%)assignedG6#%'T_ListG-FS6#%Pmissing~inv
olutive~basis;~run~JanetBasis~first.G>8'-%/Janet/PDEBasisG6%7#-%$seqG6$-%$catG6
$%#_xGFW/FW;F5-%%nopsG6#&F\q6%F5""$F57#-Fgq6$-Fjq6$%#_uGFW/FW;F5-F`r6#&F\q6%F5F
5F5/FGF.>Faq-Fcq6$F1Fas@%-F:6$Faq%%listG-%(convertG6$Faq%"+GFaqF$F$F$F$
M7R0
I/Janet/DAdjointf*6%%"MG'%%DvarG%%listG'%%ivarGF(6&%"iG%"jG%"vG%$opsG6#%jnCopyr
ight~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%>8&-%*substringG
6$-%(convertG6$-%+kerneloptsG6#%(versionG%'stringG;""""")>8'-%$zipG6%f*6$F,F-F2
6$%)operatorG%&arrowGF2-%&parseG6#-%$catG6%Q-_a->diff(_a,F2-F:6$9$F@Q")F2F2F2F2
9&9%@'-%%typeG6$FW%'matrixG-&%'linalgG6#%*transposeG6#-%$mapG6$f*6#F,F2FKF2-%/J
anet/dadjointG6&FWT$T&T'F2F26(F*FYF'FZF/FEFW330F5Q)Maple~V,F20F5Q)Maple~6.F2-Fg
n6$FW%'MatrixG-&%.LinearAlgebraG6#%*TransposeG6#-Fao6$f*FdoF2FKF2FeoF2F2F[pFW-%
&ERRORG6#%Fexpecting~a~matrix~as~first~argument.GF2F2F2F2
M7R0
I.Janet/deglex3f*6$%"aG%"bG6"6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~Al
l~rights~reserved.GF'-%-Janet/deglexG6$&9$6#""$&9%F/F'F'F'F'
M7R0
I.Janet/get_ordf*6,%&m_ordG%%dopsG%%dvarG%)dops_ordG%)ivar_degG%)dvar_degG%)ide
g_ordG%)ddeg_ordG%)dvar_posG%/default_lmprocG6*%#_aG%#_bG%#_cG%"aG%$sepG%&B_Ord
G%&N_OrdG%"TG6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserve
d.G6"C$@$553/9'7"-%%typeG6$9$%%listG30FAFB-FD6$FF%(integerG33-FD6$FAFGFC0-%%nop
sG6#FA-FS6#FF-%&ERRORG6#%[tthe~term~order~must~be~specified~by~a~list~of~intege
rs~whose~number~of~elements~equals~the~number~of~lists~in~the~list~of~independe
nt~variables.G@'FJC&@$4-%'memberG6$FF7#-%"$G6#;"""""%-FX6#%]pinvalid~term~order
;~valid~parameters~are~the~integers~1,~2,~3,~4;~see~?JanetBasis.G@$3509(7#-F^o6
$Fao-FS6#Fjo09)7#-F^o6$""!-FS6#Fap/-%$modG6$FF""#Fao-FX6#%_oassigning~degrees~t
o~variables~is~not~allowed~in~the~pure~lex.~case.G>8+-%4Janet/get_termorderG6)F
F9%9&FjoFap9,9--%'RETURNG6#7'&Faq6#Fao-%&parseG6#-%$catG6%Q+(_a,_b)->`F:-%(conv
ertG6$&Faq6#F\q%'stringGQ/`(_a[3],_b[3])F:-F`r6#-Fcr6%Fer-Fgr6$&Faq6#FboF[sF\s&
Faq6#""'&Faq6#""(FCC)@$Fho-FX6#%_oassigning~degrees~to~variables~is~not~support
ed~for~block~orderings.G>Faq7#-%$seqG6$-Fcq6)&FF6#8'&FAFhtFfq&9*FhtFapFgqFhq/Fi
t;FaoFU@$2Fao-FS6#<#-%#opG6#-%$mapG6$f*6#F3F:6$%)operatorG%&arrowGF:&FFFfsF:F:F
:Faq-FX6#%_oterm~orders~of~type~POT~and~TOP~cannot~be~composed~to~a~block~order
.G?(FitFaoFaoFU%%trueG@%/FitFao>8(7#-FS6#&FAF^r>Fhv7$-Feu6#Fhv,&&Fhv6#!""Fao-FS
6#FjtFao@%&F]rFfs>8)-F`r6#-Fcr6'QL(_a,_b)->`Janet/block_ord_POT`(_a[3],_b[3],F:
-Fgr6$FhvF[sQ",F:-Fgr6$-Fhu6$f*F[vF:F\vF:&FF6#""&F:F:F:FaqF[sQ")F:>Fjw-F`r6#-Fc
r6'QH(_a,_b)->`Janet/block_ord`(_a[3],_b[3],F:F`xFbx-Fgr6$-Fhu6$f*F[vF:F\vF:Fhx
F:F:F:FaqF[sF[y>8*-F`r6#-Fcr6'FayF`xFbx-Fgr6$-Fhu6$f*F[vF:F\vF:&FF6#""$F:F:F:Fa
qF[sF[y-Fjq6#7'-F`r6#-Fcr6)Q9_c->`Janet/lead_mon`(_c,F:-Fgr6$FeqF[sQC,(_a,_b)->
`Janet/block_cmp`(_a,_b,F:-Fgr6$FAF[sFbx-Fgr6$-Fhu6$f*F[vF:F\vF:&FFFisF:F:F:Faq
F[sQ#))F:-%%evalG6#Fhy-Fj[l6#FjwFhw-F`r6#-Fcr6'QB(_a,_b)->`Janet/block_cmp`(_a,
_b,F:F`[lFbx-Fgr6$-Fhu6$f*F[vF:F\vF:Fg[lF:F:F:FaqF[sF[y-FX6#%ioexpecting~an~int
eger~or~a~list~of~integers~as~specification~of~the~term~order.GF:F:F:F:
M7R0
I9Janet/diff_normalform_ldf*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG
%)rhs_dvarG%)coeff_ptG6&%"aG%"lG%"rG%$conG6#%jnCopyright~(C)~2000-2010~by~Danie
l~Robertz.~All~rights~reserved.G6"C(>%)_jnnformG,&F8"""F:F:>8&-%0Janet/reduce_l
dG6#9"@$/F<7"-%'RETURNG6#7$&9$6#F:7$&FI6#""$&FI6#""'>8%&F<6#""#>F<&F<FJ@%/FX%$z
edG@%0FT""!C$-%2Janet/updateCOMPAG6$7#FT9'7$-%'subsopG6$/FVFhnF<FS7$F<FSC'>8'-%
0Janet/comfactorG6$FX9%@$09,FC>&FgoFJ-%5Janet/invertiblepartG6$F`pF^p-%1Janet/u
pdateNuStG6#7#F`p@$30F`pFhn50F`pF:0&FgoFUF:C$>F<7%-%$mapG6$f*6#F/F56$%)operator
G%&arrowGF5-%(collectG6%-%'normalG6#*(FIF:&T#FUF:&FbrFJ!""T&%,distributedGF5F56
&F2FgoF&F[pFX-F[r6%-F^r6#*(FTF:F^qF:F`pFdr9+Ffr&F<FM>&FS6$FVF:-F^r6#*(F`sF:F^qF
:F`pFdrFdoF56#F8F5F5
M7R0
I0Janet/posmemberf*6$%%elemG%"LG6#%$posG6#%inCopyright~(C)~2000-2002~by~Carlos~
F.~Cid.~All~rights~reserved.G6"@%/-%'memberG6%9$9%.8$%%trueG-%'RETURNG6#F4-F76#
""!F+F+F+F+
M7R0
I.Janet/jiorderf*6%%"aG%"bG%%ivarG6$%"pG%"qG6#%inCopyright~(C)~2000-2002~by~Geh
rt~Hartjen.~All~rights~reserved.G6"C%-%'memberG6%9$9&.8$-F06%9%F3.8%@%1F5F:-%'R
ETURNG6#%%trueG-F>6#%&falseGF-F-F-F-
M7R0
I.Janet/jappmatf*6$'%%operG<&%'matrixG%&arrayG%)listlistG%%listG%&lexprG6&%&_op
erG%'_lexprG%#rmG%#cmG6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~righ
ts~reserved.G6"C(>8$-%-Janet/jmkmatG6#9$>8%-%.Janet/jmklistG6#9%>8&-%#opG6$7$""
"""#7#-FE6$FI-%%evalG6#F7>8'-FE6$7$FIFIFJ@$0FQ-%%nopsG6#F=-%&ERRORG6#%\oThe~mat
rix~must~have~as~many~columns~as~the~elements~of~the~list!G-%$mapG6$f*6#%"iGF46
$%)operatorG%&arrowGF4-%(convertG6$-Fin6$f*6#%"jGF4F^oF4-&T%6$T(F;6#&T#F:F4F46(
F/F[pF.T'F]oF;7#-%"$G6#;FHF`p%"+GF4F46(F1FQF/F=F.F77#-Fep6#;FHFCF4F4F4F4
M7R0
I.Janet/Torsionf*6%%"LG'%%ivarG%%listG'%%dvarGF(6$%$AR1G%#R1G6#%^pCopyright~(C)
~2000-2010~by~Mohamed~Barakat~and~Daniel~Robertz.~All~rights~reserved.G6"C&@%-%
%typeG6$9$%'matrixG>8%F6>F9-%.Janet/Diff2OpG6%F69%9&@$-%$hasG6$-%$mapG6%FB-%&ev
almG6#F9F?%%trueG-%&ERRORG6#%5system~is~nonlinear!G>8$-%/Janet/JAdjointG6$F9F>-
%+Janet/Ext1G6$FP&9"6#;""#!""F0F0F0F0
M7R0
I8homalg/Janet/InvoReducef*6%%#_LG%#_MG%%ivarG6*%"iG%%dvarG%%tvarG%"LG%"MG%"NG%
#N1G%#N2G6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserved.G6
"C$>8(-%6homalg/NormalizeInputG6$9%%&JanetG@%-%%typeG6$9$-%%listG6#%"=GC,>8%7#-
%$seqG6$-%$catG6$.%#_dG8$/FQ;"""-%%nopsG6#-%$lhsG6#&F@6#FT>8&7#-FJ6$-FM6$.%#_TG
FQ/FQ;FT-FV6#-%$rhsGFZ>8'-%$mapG6$f*6#%"aGF36$%)operatorG%&arrowGF37$-%#opG6#-F
Y6#F@-Fcp6#-Fio6$f*6#%"bGF3F^pF3,$F@!""F3F3F3-FeoFfpF3F3F3F@>F6-Fio6$f*F\pF3F^p
F37$Fbp-Fcp6#-Fio6$f*F\qF3F^pF3F^qF3F3F3F`qF3F3F3F6>Fgo-%,Janet/AppOpG6&Fgo7$-F
cp6#FG-Fcp6#Fhn9&F_r>F6-F]r6&F6F_rFdrF_r>8)-%0Janet/InvReduceG6$Fgo7%F6FdrFG>8*
-%(convertG6$-%.Janet/Diff2OpG6%FirFdrFG%)listlistG>8+-Fas6$-Fds6%,$FirF_qFdrFh
nFfs-%$zipG6%f*6$F]pF]qF3F^pF3/F@F:F3F3F3F_sFhsC'>FG7#-FJ6$FL/FQ;FT-FVFZ>Fgo-F]
r6&F@FGFdrFG>F6-F]r6&F6FGFdrFG>FirFjr-Fas6$-Fds6%%"%GFdrFGFfsF3F3F3F3
M7R0
I6homalg/Janet/Syzygiesf*6%%$_M1G%$_M2G%%ivarG6(%"iG%%dvarG%%tvarG%#M1G%#M2G%"M
G6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C*>8%7#
-%$seqG6$-%$catG6$.%#_dG8$/F>;"""-%%nopsG6#&9$6#FA>8&7#-F76$-F:6$.%#_TGF>/F>;FA
-FC6#FF>8'-%,Janet/AppOpG6&FFF49&F4@%09%7">8(-FX6&FgnF4FZF4>FjnFhn>8)-%-Janet/A
ffEqnG6%FVFZFI-%1Janet/JanetBasisG6%7$-%#opG6#F_o-Fho6#FjnFZF4-%/Janet/CompCond
GFeo-%(convertG6$-%.Janet/Diff2OpG6%%"%GFZFI%)listlistGF1F1F1F1
M7R0
I+Janet/initf*6"6$%*ini_printG%"vG6#%jnCopyright~(C)~2002-2010~by~Daniel~Robert
z.~All~rights~reserved.GF$@$50%2Janet/initializedG.%%trueG32""!9#-%%typeG6$&9"6
#""".%%listGC)>8$f*F$F$F$F$@$0%1_Env_Janet_printG%&falseG-%&printG6#F8F$F$F$>%0
Janet/janetlikeGFD>%3Janet/coefficientsGQ(jreduceF$>%.Janet/invcritG7$""#""$>8%
-%*substringG6$-%(convertG6$-%+kerneloptsG6#%(versionG%'stringG;F:"")@%30FSQ)Ma
ple~V,F$0FSQ)Maple~6.F$>%1Janet/matrixtypeG%'MatrixG>Fbo%'matrixG>F-F.F$6'F-FIF
KFNFboF$F$
M7R0
I,Janet/PDEHPf*6"6B%"bG%"dG%"iG%"jG%"lG%"nG%"pG%"sG%&n_mulG%,given_basisG%"FG%$
resG%0tmp_T_List_dataG%%ivarG%%dvarG%)dops_ordG%)ivar_degG%)dvar_degG%)ideg_ord
G%)ddeg_ordG%&_ivarG%)dvar_posG%&oivarG%&m_ordG%$fmtG%%dopsG%'ldprocG%&B_OrdG%)
dvar_cmpG%*want_simpG%+force_simpG%+constcoeffG6#%jnCopyright~(C)~2007-2010~by~
Daniel~Robertz.~All~rights~reserved.GF$C*>8+%%NULLG>8;""%@%519#""#32FSFR555-%%t
ypeG6$&9"6#""$%)equationG-FZ6$Ffn%(integerG-FZ6$Ffn-%%listG6#F]o-FZ6$Ffn%'strin
gG>8-%&falseG>Fgo%%trueG@%FgoC@>807+%'T_ListG%)number_tG%(Tab_VarG%$nivG%$zedG%
&Nu_StG%&COMPAG%)Glob_SOLG%-_jforce_simpG>81-%/Janet/get_varsG6$&Fgn6#FSFfn>82&
FjpF_q>83&FjpFhn>84&Fjp6#FN>85&Fjp6#""&>86&Fjp6#""'>87&Fjp6#""(>88&Fjp6#"")>89&
Fjp6#""*>Fjp&Fjp6#""">8:-%/Janet/get_optsG6$Fjp&Fgn6#;FNFR>FM&FhsF_q>8A&FhsFas?
&8&&FhsFesFjo@'-FZ6$Fet%%nameG@%/FJFK>FJFet-%&ERRORG6#%Qcannot~determine~which~
indeterminate~to~plug~in.G3-FZ6$FetFjn/-%#opG6$FfsFetQ$varF$@%F\u>FJ-Fgu6$FSFet
F^u-F_u6#%0invalid~option.G>Fhs&FhsFhn>8.-%0Janet/get_inputG6*&FgnFesFjpFaqFhsF
jr7"FivFho>8<&FdvF_q@$1FNF[w-F_u6#%_pdifferential~equations~are~expected~to~be~
given~as~list~of~differential~expressions.G>8=&FdvFiq>8B5Fbt&FdvF]r>8C&FdvFbr>F
dv&FdvFes>Fdq-%%subsG6$-%,Janet/jezipG6$FjpFcwFdq>8(-%.Janet/get_ordG6,FMFcwFaq
FdqFgqF[rF`rFerF_s34FfwFjw>8>&FfxFes>8?&FfxFhn@$&FfxFiq>F_sFiv>8@&FfxF]r-%2Jane
t/setupT_ListG6.FdvFjpFaqFjrFhsFcwF]yF`yF_sFgqF[rFfyC$@$4-%)assignedG6#F`p-F_u6
#%Pmissing~involutive~basis;~run~JanetBasis~first.G?&FetFgnFjo@)-FZ6$Fet%*nonne
gintG>FJFetFht@%F\u>FJFetF^uFbu@%F\u>FJF\vF^uF^v@$F\u>FJ.FJ@%/&F`p6%FfsFcrFfs""
!>8/Fe[l@%%0Janet/janetlikeGC%>Fg[lFe[l>8)-%%nopsG6#&F`p6%FfsFinFfs?&FetF`pFjoC
$>8,-%*numboccurG6$&FetF]r%)infinityG@%/Ff\lF]\l>Fg[l,&Fg[lFfs-%)binomialG6$,(F
JFfs-%(convertG6$&Fet6$FinFfs%"+G!""Ff\lFfsFf\lFfsC(>8%Fd]l>8$-F`x6$/F[]lFe[lFj
\l>8*7#-%"$G6$Fe[lF]\l>Fg[l,&Fg[lFfs-Fa]l6$,(FJFfsF]^lFj]lFf\lFfsFf\lFfs>Fd^l-%
.Janet/nextmonG6$Fd^lF_^l?(F$FfsFfsF$0Fd^lFe^lC$>Fg[l,&Fg[lFfs-Fa]l6$,*FJFfsF]^
lFj]l-Fe]l6$Fd^lFi]lFj]lFf\lFfsFf\lFfs>Fd^lF__l>Fg[l-%$addG6$-Fa]l6$,(-Fh\l6$&F
`p6$FetF^rF[]lFfsFJFfs-Fe]l6$&F`p6%FetFinFfsFi]lFj]lFd`l/Fet;Ffs-F_\lF`z@$Fgo-%
4Janet/restoreT_ListG6#F^p-%'expandG6#Fg[lF$F$F$F$
M7R0
I3Janet/Intersectionf*6&%$_R1G%$_R2G'%&ivarsG%%listG'%&dvarsGF)63%"aG%"iG%"jG%"
nG%"vG%%ivarG%%dvarG%&oivarG%&_ivarG%%DvarG%%dopsG%)hom_caseG%#R1G%#R2G%#R0G%(t
mpNuStG%$resG6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserve
d.G6"C6>8(-%/Janet/get_varsG6$9&9'>8)&FC6#""">8*&FC6#""#>8,&FC6#"")>8+&-%/Janet
/get_optsG6$FJ&9"6#;""&9#6#""$>80-%0Janet/get_inputG6*9$FJFOFYFT7"Ffo%&falseG>8
/&FaoF^o>8.&Fao6#""%>Fao&FaoFL>81-Fco6*9%FJFOFYFTFfoFfoFgo>Fio3Fio&FcpF^o@$0&Fc
pF^pF\p-%&ERRORG6#%doexpecting~two~systems~of~linear~PDEs~with~the~same~indepen
dent~variables.G>Fcp&FcpFL>8'-%%nopsG6#FO@%FioC$>8-7$-%#opG6#-%$mapG6$f*6#F-F@6
$%)operatorG%&arrowGF@-%$catG6$Feo.FMF@F@F@FO-F^r6#-Far6$f*FdrF@FerF@-Fir6$Feo.
FRF@F@F@FO>827$-F^r6#-%.Janet/conv2eqG6(-Far6$f*FdrF@FerF@7$7$-F^r6#&FeoFLFat""
!F@F@F@FaoF\pFJF[rFTFY-F^r6#-Fjs6(-Far6$f*FdrF@FerF@7$7$Fat-%"$G6$FdtT#FdtF@F@6
$F0FdqFcpF\pFJF[rFTFYC$>F[r7&-F^r6#-Far6$f*FdrF@FerF@FhrF@F@F@FO%%_XI1G-F^r6#-F
ar6$f*FdrF@FerF@FasF@F@F@FO%%_XI2G>Fes7$-F^r6#-Fjs6(-Far6$f*FdrF@FerF@7$7&Fat&F
eoFQFatF]wFdtF@F@F@FaoF\pFJF[rFTFY-F^r6#-Fjs6(-Far6$f*FdrF@FerF@7$7&FatF]wF^uFd
tFdtF@F@FbuFcpF\pFJF[rFTFY-%1Janet/JanetBasisG6'FesFGF[rFRFhn-%1Janet/updateNuS
tG6#-Far6$f*FdrF@FerF@-%%subsG6$-%$zipG6%f*6$F.F/F@FerF@/FeoFfpF@F@F@FauT%-%&nu
merG6#&&Feo6#""'FLF@F@6&F5FTF2FJ%'T_ListG>83%&Nu_StG@%Fio>84-Far6$f*FdrF@FerF@@
$/&&FctFL6#;FMFau7#F^u-Fjs6(7$&F_z6#;,&FauFMFMFM,$FauFRFdtFixT'T)T+T-F@[email protected]
qF7F\pF2FJF3FOF5FTF4FYFby>Fhy-Far6$f*FdrF@FerF@@$/&F_z6#;FMFiz7$F^uFdt-Fjs6(7$&
F_z6#;,&FauFMFRFM,&FauFRFMFM&F_z6#,&FauFRFRFMFixF[[lF\[lF][lF^[lF@F@F_[lFby@%/F
hyFfo7%FdtFGFHC&>Fhy-Fhw6$Fhy&Fin6#;F_oF]o-F[x6#Fdy-F[x6#-Far6$f*FdrF@FerF@-Fax
6$-Fdx6%f*FgxF@FerF@FhxF@F@F@FauFixF]yF@F@FayFbyFhyF@6#FeyF@F@
M7R0
I=Janet/diff_normalform_pseudof*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlv
arsG%)rhs_dvarG6%%"aG%"rG%$conG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~an
d~Daniel~Robertz.~All~rights~reserved.G6"C%>%)_jnnformG,&F6"""F8F8>8%-%4Janet/r
educe_pseudoG6#9"@%/&F:6#F8%$zedG@%0&F:6#""#""!C$-%2Janet/updateCOMPAG6$7#FF9'-
%'subsopG6$/FHFIF:F:C%>8&-%0Janet/comfactorG6$FA9%@$-%)assignedG6#%0JPRINTcomfa
ctorG-%&printG6$Q$conF3FV@%30&FVFBFI50FaoF80&FVFGF8C$-%1Janet/updateNuStG6#7#Fa
o7%-%$mapG6$f*6#F.F36$%)operatorG%&arrowGF3-%(collectG6%-%'normalG6#*(9$F8&T#FG
F8&F]qFB!""T&%,distributedGF3F36&F0FVF&FZFA-Fep6%-Fhp6#*(FFF8FeoF8FaoF_q9+Faq&F
:6#""$F:F36#F6F3F3
M7R0
I@Janet/diff_normalform_pseudo_ldf*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'
nlvarsG%)rhs_dvarG6&%"aG%"lG%"rG%$conG6#%jnCopyright~(C)~2000-2010~by~Daniel~Ro
bertz.~All~rights~reserved.G6"C(>%)_jnnformG,&F7"""F9F9>8&-%7Janet/reduce_pseud
o_ldG6#9"@$/F;7"-%'RETURNG6#7$&9$6#F97$&FH6#""$&FH6#""'>8%&F;6#""#>F;&F;FI@%/FW
%$zedG@%0FS""!C$-%2Janet/updateCOMPAG6$7#FS9'7$-%'subsopG6$/FUFgnF;FR7$F;FRC&>8
'-%0Janet/comfactorG6$FW9%@$-%)assignedG6#%0JPRINTcomfactorG-%&printG6$Q$conF4F
fo@$30&FfoFIFgn50FgpF90&FfoFTF9C%-%1Janet/updateNuStG6#7#Fgp>F;7%-%$mapG6$f*6#F
.F46$%)operatorG%&arrowGF4-%(collectG6%-%'normalG6#*(FHF9&T#FTF9&FcrFI!""T&%,di
stributedGF4F46&F1FfoF&FjoFW-F\r6%-F_r6#*(FSF9F[qF9FgpFer9+Fgr&F;FL>&FR6$FUF9-F
_r6#*(FasF9F[qF9FgpFerFcoF46#F7F4F4
M7R0
I1Janet/deglex_POTf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%jnCopyright~(C)~2004-2010~by
~Daniel~Robertz.~All~rights~reserved.G6"C'@&2&9$6#""#&9%F3-%'RETURNG6#%&falseG2
F5F1-F86#%%trueG>8%-%(convertG6$&F26#"""%"+G>8&-FB6$&F6FEFG@'2F@FIF<2FIF@F7?(8$
FFFF-%%nopsG6#FDF>@&2&FL6#FQ&FDFXF72FYFWF<F>F-F-F-F-
M7R0
I9Janet/AnnihilatingSystemf*6'%#_UG'%%ivarG%%listG'%%unknGF('%%dvarGF(%$derG6A%
"dG%"iG%"jG%"kG%"mG%"rG%"sG%$cmpG%'colPOTG%#dUG%"BG%#COG%"JG%"KG%#_LG%"MG%#_PG%
"RG%$as1G%$as2G%&exindG%$indG%(indsortG%#ddG%&lastjG%$monG%%newMG%'rowrelG%)str
_ivarG%+simpsincosG%.str_testorderG6#%jnCopyright~(C)~2009-2010~by~Daniel~Rober
tz.~All~rights~reserved.G6"C<>8@-%$catG6$-%#opG6#-%$mapG6$f*6#F5FP6$%)operatorG
%&arrowGFP-FU6$-%(convertG6$9$%'stringGQ",FPFPFPFP&9%6#;"""!"#-F_o6$&Feo6#!""Fb
o>8*-F_o6$-%+kerneloptsG6#%(versionGFbo@'5555/-%*substringG6$F`p;Fho""(Q(Maple~
VFP/F]qQ(Maple~6FP/F]qQ(Maple~7FP/F]qQ(Maple~8FP/-F^q6$F`p;Fho""*Q*Maple~9.5FP>
8BQD(_a,_b)->Groebner[testorder](_a,_b,FP/FjqQ*Maple~9.0FP>F`rQD(_a,_b)->Groebn
er:-testorder(_a,_b,FP>F`rQD(_a,_b)->Groebner[TestOrder](_a,_b,FP>8+-%&parseG6#
-FU6&F`rQ&tdeg(FPFSQ#))FP@$50-%%nopsG6#9'Fho4-%%typeG6$&Fgs6#Fho%%nameG-%&ERROR
G6#%fnexpecting~a~list~consisting~of~one~name~as~fourth~argument.G@$29#""&-F`t6
#%eoexpecting~a~list~of~monomials~or~a~non-negative~integer~as~fifth~argument.G
@%-Fjs6$9(F(>8(F]u>F_u-%%sortG6$-F_o6$-%(mtaylorG6%-%$mulG6$*$,&FhoFho&Feo6#8%F
^pF^p/F`v;Fho-Fes6#FeoFeoF]uF(Fir@%/F_u7"-%'RETURNG6#-%'MatrixG6$""!-Fes6#9&>F_
u7#-%$seqG6$-%'selectG6$f*6#F0FPFinFP/-%'degreeG6$Fao<#-FX6#T&T#FPFP6&F18&F'Feo
F_u/Ffx;F^w-F^x6$&F_uF]p<#-FXFdv>88<">86F^w>87F^w>8,%&falseG>8AFgy?(F`v""'FhoFe
t%%trueG@+-Fjs6$&9"F_v%)equationG@%/-FX6$FhoF`zQ(columnsFP@'/-FX6$""#F`zQ$TOPFP
>FfyFgy/FjzQ$POTFP>FfyF\z-F`t6#%coexpecting~either~"TOP"~or~"POT"~as~right~hand
~side~for~option~"columns".G-F`t6#%0invalid~option.G-Fjs6$F`zFbo@%/F`zQ.trigono
metricFP>FiyF\zFe[l-Fjs6$F`zF^t@%/FbyF^w>FbyF`v>FdyF`v-Fjs6$F`z%$setG>F_yF`zFe[
l@%Ffy>8:f*6$%#_aG%#_bG6)%"aG%"bGF0%%posaG%%posbG%%sumaG%%sumbGFPFPC%@%-%$hasG6
$Fao%"DGC$-%'memberG6%-FX6$Fho-FX6$F^wFaoT$.8'@'-Fjs6$-FX6$F^wFb^l%(indexedGC$>
8$7#-FX6#Fj^l>F__l-Fen6$f*F[xFPFinFP-%*numboccurG6$FaoFdxFPFP6$F`]lF__l7#-%"$G6
#;Fho-Fes6#Fao-Fjs6$Fj^l%#@@G>F__l7#-FX6$F\[lFj^l>F__l7#FhoC$-F^^l6%Fb^lFd^lFe^
l>F__l7#F^w@%-Fi]l6$FeoF[^lC$-F^^l6%-FX6$Fho-FX6$F^wFeoFd^l.F_u@'-Fjs6$-FX6$F^w
FhalF\_lC$>F`v7#-FX6#F^bl>F`v-Fen6$f*F[xFPFinFPFg_lFPFP6$Fa]lF`v7#-F]`l6#Fbv-Fj
s6$F^blFd`l>F`v7#-FX6$F\[lF^bl>F`vFj`lC$-F^^l6%FhalFd^lFjal>F`vF_al@'2Ff^lF_uF\
z/Ff^lF_uC%>8)-F_o6$F__l%"+G>F`p-F_o6$F`vF`dl@'2F]dlF`pF\z/F]dlF`pC%>FfxFho?(FP
FhoFhoFP331Ffx-Fes6#F__l1Ffx-FesF_v/&F__l6#Ffx&F`vFcel>Ffx,&FfxFhoFhoFho@%F[el-
%&evalbG6#1FbelFdelF\zFgyFgyFPFP6$F*Faw>Fj\lf*F\]lF_]lFPFPC'@%Fh]lC$F]^l@'Fh^lC
$>F__lF`_l>F__l-Fen6$f*F[xFPFinFPFg_lFPFPFj_lF[`lFb`l>F__lFf`l>F__lFj`lC$F\al>F
__lF_al@%FaalC$Fdal@'F\blC$>F`vFbbl>F`v-Fen6$f*F[xFPFinFPFg_lFPFPFiblFjblF]cl>F
`vF`cl>F`vFj`lC$Fecl>F`vF_al>F]dlF^dl>F`pFbdl@'FedlF\zFfdl@%0F]elF`el-Fiel6#1Ff
^lF_uC%>FfxFho?(FPFhoFhoFP3F\elFael>FfxFfel@%F\elFhelF_hlFgyFPFPF\fl>807%F_alFe
oFgs>83Fgv>8;Fgv>8-Fgv>89Fgv>8<F^w>FfxFho?(FPFhoFhoFP1Ffx-Fes6#F_uC$@%0&F_uFcel
FgvC.@$55-%)assignedG6#%+JPRINT_ANNG-Fcjl6#%2JPRINT_ANN_MATRIXG-Fcjl6#%1JPRINT_
ANN_JANETG-%&printG6$Q3differential~orderFP,&FfxFhoF^pFho@%/FdilF^wC%>F__l-%.Ja
net/Pol2IndG6%F]jlFeoFgs>8/-Fen6$f*F[xFPFinFP-%)simplifyG6#-F_o6$-%-Janet/jjsub
sG6&/&FcxF]tFd^lFaoT(FcxF[^lFPFP6(F%FaoF,FgsF'FeoF__l@$Fiy>Fi[m-Fen6$%5Janet/Si
mplifySinCosGFi[mC&>8=-Fen6$f*6#F2FPFinFP-Fhw6$f*F[xFPFinFP-%'divideG6$Fd^l&&T%
6#T'Fa`lFPFP6(F2FaoF3FdxFGF]^m7#-F]`l6#;Fho-Fes6#&Fdx6#F]^mFPFP6&F3F_uFGFdilF]j
l>F__l-Ff[m6%-Fen6$f*F[xFPFinFP*&&FdxFa`lFho&Fg^m6#&&F_^mFa`lF]tF^pFPFP6(F3F_uF
GFdilFHF`]m7#-F]`l6#;Fho-Fes6#F]jlFeoFgs>Fi[m-Fen6$f*F[xFPFinFP-F^\m6#-F_o6$-Fc
\m6&/&T*F]tFb_m&T+Fa`lT.Fi`mF[^lFPFP6.F8F`ilFGFdilFHF`]mF,FgsF/F__lF'Feo7#-F]`l
6#;FhoF]el@$Fiy>Fi[mF[]m>Fbil7$-FX6#Fbil-Fbu6$7#-FX6#-%&minusG6$-Fhw6%Fi]l-Fhw6
$f*F[xFPFinFP-Fjs6$Fao%)functionGFPFPFP-F^bm6$-%'indetsG6#Fi[mF\yFawF_yFj\l@$/&
FbilF]pFgv-F`t6#%Rgiven~linear~expression~has~wrong~indeterminates.G>F_y-%&unio
nG6$F_y<#-FX6#F_cm>F`il7$-FX6#F`ilFi[m@%Fiy>8>-Fen6$f*Fd]mFPFinFP-F]]m6#-F^\m6#
-F\w6%-Fes6#FdxF``lf*6$F0F1FPFinFP-%&coeffG6$Fa_m&FcxFdvFPFP6&F:FdxF2FaoFPFP6$F
:Fi[mFbil>F`dm-Fen6$f*Fd]mFPFinFP-F^\m6#-F\w6%FjdmF``lf*F]emFPFinFPF^emFPFPFbem
FPFPFcemFbil@$Ffjl-F][m6#F`dm>8?-&%.LinearAlgebraG6#%*NullSpaceG6#-&Fdfm6#%*Tra
nsposeG6#&F`dmF]p@$0FafmF`yC/>81-Fifm6#-F\w6#7#-FX6#Fafm@$Fbjl-F][m6$Q*nullspac
eFPFbgm>8.-&Fdfm6#%)MultiplyG6$Fbgm-F\w6#-Fen6$f*F[xFPFinFP7#FaoFPFPFPF__l>85-F
\w6#7#-Few6$7#-F\w6#7$&F\ilF_v-F\w6%-&Fdfm6#%-RowDimensionG6#Ffim-F_o6$-Fen6$Fe
s&Fbil6#;,&F`vFhoFhoFhoF`[mF`dlF^w/F`v;FhoF`[m@$Fbjl-F][m6$Q-Gauss~reduceFP-F\w
6#7$7#F\im7#-Fahm6$Fbgm-F\w6#&F`dmFfo>F]dl-&Fdfm6#%0ColumnDimensionG6#F\im>6%84
82F\im-&Fdfm6#%0LUDecompositionG6%F\[n/%'methodG.%4GaussianEliminationG/%'outpu
tG7%.%"PG.%"LG.%"UG@$Fbjl-F][m6&Q'resultFPF^\nF_\nF\im>F_\n-Fahm6$-Fahm6$*$F_\n
F^p*$F^\nF^p-F\w6#7$7#-F\w6#-Fen6$f*F[xFPFinFPFjhmFPFPFPF^il7#F_hm@$Fbjl-F][m6$
Q.row~relationsFPF_\n>F\im-F_o6$F\im%)listlistG>Fafm-Fen6$f*F[xFPFinFP&Fdx6$Fao
FhoFPFP6$F=F_\n-Fhw6$f*F[xFPFinFP/&F]^mFa`l7#-F]`l6$F^wFdxFPFP6&F4F]dlF@F\im7#-
F]`l6#;Fho-FesF[\n@$0FafmFgvC%>Fihl-%1Janet/JanetBasisG6%7$-FX6#&FihlF]t-FX6#-%
/Janet/Ind2DiffG6%FafmFeoFgsFeoFgs@$Fijl-F][m6$Q,Janet~basisFPFihl@$2FfxFhilC%@
$Fijl-F][m6$Q@change~next~partial~derivativesFP&F_u6#Ffel>F_u-%'subsopG6$/Ffel-
Fhw6$f*F[xFPFinFPF\xFPFPFex-F_o6$-Fgu6%-%1Janet/ParamDerivG6$FeoFgsFeoFfelF(F_u
@$Fijl-F][m6$Q#toFPF_bn>F\il7$-FX6#F\il-F\wF_fm>F^il7$-FX6#F^il-FXF^elC$>F`il7$
F\dmFgv>F\il7$Ffcn-F\w6$F^wF^w>FfxFfel@$0FbyF^w-%'assignG6$&Faz6#FbyF_u@$0FdyF^
w-Fidn6$&Faz6#FdyFbilFihlFPFPFPFP
M7R0
I7Janet/degrevlex_lc_POTf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~2010~b
y~Daniel~Robertz.~All~rights~reserved.G6"C*@&2&9$6#""#&9%F3-%'RETURNG6#%&falseG
2F5F1-F86#%%trueG>8%-%(convertG6$&F26#"""%"+G>8&-FB6$&F6FEFG@'2F@FIF<2FIF@F7?(8
$-%%nopsG6#FD!""FFF>@&2&FL6#FQ&FDFYF<2FZFXF7>F@-FB6$&&F26#""$FEFG>FI-FB6$&&F6F[
oFEFG@'FNF<FOF7?(FQ-FS6#FinFUFFF>@&2&F`oFY&FinFYF<2FioFhoF7F>F-F-F-F-
M7R0
I4Janet/degrevlex_degf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%\pCopyright~(C)~2000-
2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C'>8%-%%nopsG6
#&9$6#""">8&,&-%$addG6$*&&F56#8$F8&%)_jvardegGFAF8/FB;F8F1F8&%)_jtupdegG6#&F66#
""#F8>8',&-F=6$*&&&9%F7FAF8FCF8FEF8&FH6#&FUFKF8@'2F:FN-%'RETURNG6#%%trueG2FNF:-
Ffn6#%&falseGC%>F:F<>FNFP@'FZFenFinFjn?(FBF1!""F8Fhn@&2FSF@Fen2F@FSFjn@%2FJFXF\
oFhnF.F.F.F.
M7R0
I3Janet/Drightdividef*6&%"pG%"qG'%&dvarsG%%listG'%&ivarsGF)6(%"aG%#dpG%#dqG%#Dt
G%"LG%$opsG6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~reserved.
G6"C/@$/9$""!-%'RETURNG6#7$F:F9>8$""">8%F:?(F5FAFAF531F@-%%nopsG6#9&/FCF:C&>8'&
FJ6#F@>FC-%'degreeG6$F9FN@$/FC%%FAILG-%&ERRORG6#%gnexpecting~differential~opera
tors~with~rational~coefficients.G>F@,&F@FAFAFA>8&-FS6$9%FN@$/FinFWFX@$2FCFinF;@
$/FinF:-F<6#7$*&F9FAF\o!""F:>8)-%$zipG6%f*6$%"iG%"jGF56$%)operatorG%&arrowGF5-%
&parseG6#-%$catG6%Q-_a->diff(_a,F5-%(convertG6$F9%'stringGQ")F5F5F5F59'FJ-%/Jan
et/dadjointG6&F9F`qFJFio-Fbq6&F\oF`qFJFio>8(-%2Janet/DleftdivideG6&FaqFdqFJF`q-
%$mapG6$f*6#F-F5FapF5-Fbq6&F9T$T&T'F5F56(F+F`qF(FJF2FioFgqF5F5F5F5
M7R0
I/Janet/update_Tf*6#%"LG6)%"iG%"jG%"lG%"nG%"vG%$conG%(allmultG6#%jnCopyright~(C
)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$>8'-%%nopsG6#9$@$2""!F3
C&>8*7#-%"$G6$%)infinityG%$nivG>%'T_ListG-%'subsopG6$/&F76#F37)&&FE6#FJ6#"""&FN
6#""#&FN6#""$7#-F@6$F:FCF=&FN6#""'7"FE>8(FQ?(8$,&F3FQ!""FQF^oFQ%%trueGC'>8%FQ?(
F0FQFQF031FboFC/&FE6&&F76#,&F\oFQFQFQFWFQFbo&FE6&&F76#F\oFWFQFbo>Fbo,&FboFQFQFQ
>8)-FG6$-%$seqG6$/8&F:/Fjp;FapFC&&FE6#F^p6#""%@$3/FboFjn/F\pF:>Fjn,&FjnFQFQFQ>F
E-FG6$/F^p-FG6$/FaqFcpF^qFEF06#FEF0F0
M7R0
I/Janet/CompCondf*6%'%"LG%%listG'%&ivarsGF''%&dvarsGF'6F%"aG%"iG%"jG%"lG%"vG%"F
G%"QG%%ivarG%%dvarG%)dops_ordG%)ivar_degG%)dvar_degG%)dvar_posG%$ndvG%)ideg_ord
G%)ddeg_ordG%&_ivarG%&oivarG%&m_ordG%"JG%'nlvarsG%$fmtG%%dopsG%'ldprocG%&N_OrdG
%)dvar_cmpG%*old_COMPAG%*tmp_COMPAG%'N_FormG%$su1G%$su2G%*want_simpG%+force_sim
pG%+constcoeffG%)rhs_dvarG%/tail_reductionG6#%jnCopyright~(C)~2000-2010~by~Dani
el~Robertz.~All~rights~reserved.G6"Cen@$0%2Janet/initializedG.%%trueG-%+Janet/i
nitGFS@$4-%)assignedG6#%&COMPAG-%&ERRORG6#%Pmissing~involutive~basis;~run~Janet
Basis~first.G>8+-%/Janet/get_varsG6$9%9&>8,&Fao6#""#>8-&Fao6#""$>8.&Fao6#""%>8/
&Fao6#""&>82&Fao6#""'>83&Fao6#""(>84&Fao6#"")>80&Fao6#""*>Fao&Fao6#""">81-%%nop
sG6#Fho>85-%/Janet/get_optsG6$Fao&9"6#;Fep9#>86&FirFjo>87&FirFdp>88&FirFip>8F&F
irFhq>8C&FirF]r>8G&Fir6#"#5>Fir&FirF_p>8A-%$zipG6%f*6$F.F/FS6$%)operatorG%&arro
wGFS/9$FeoFSFSFSFfqFir>8B-F[u6%f*F^uFSF_uFSFbuFSFSFSFirFfq>8)-%0Janet/get_input
G6*FcuFaoFhoFirFfqFfsFisFY>89&FjuFjo@$1FepF_v-F]o6#%_pdifferential~equations~ar
e~expected~to~be~given~as~list~of~differential~expressions.G@$&FjuF_p-F]o6#%Cex
pecting~inhomogeneous~equations.G>8:&FjuFdp>8D5F_t&FjuFip>8E&FjuF^q>Fju&FjuFar>
F]p-%%subsG6$-%,Janet/jezipG6$FaoF\wF]p>8(-%(convertG6$-%+kerneloptsG6#%(versio
nG%'stringG>8'-%.Janet/get_ordG6,FcsF\wFhoF]pFbpFgpF\qFaqF[r34F_wFcw>8;&FixFar>
8<&FixFjo@$&FixFdp>F[r7">8=&FixFip>F`y-%&parseG6#-%$catG61Q;_p->`Janet/lead_der
iv`(_p,FS-Fax6$FdrFgxQ",FS-Fax6$F\wFgxFfz-Fax6$-%%evalG6#F`yFgxFfz-Fax6$F[rFgxF
fz-Fax6$FbpFgxFfz-Fax6$FgpFgxFfz-Fax6$-F\[l6#FjyFgxQ")FS@%F_w>8@-F^z6#-Faz61QE_
p->`Janet/diff_normalform_simp`(_p,FSFgzFfzFizFfz-Fax6$FfqFgxFfz-Fax6$FirFgxFfz
-Fax6$FfsFgxFfz-Fax6$FisFgxFfz-Fax6$F\tFgxQ%,[])FS>F[\l-F^z6#-Faz61Q@_p->`Janet
/diff_normalform`(_p,FSFgzFfzFizFfzFa\lFfzFc\lFfzFe\lFfzFg\lFfzFi\lF[]l>%&Nu_St
G-Fiw6$FeuFc]l>8>F[o>8?-Fiw6$FeuF[o>F[oFhy?(8%FbrFbr-Ffr6#FjuFY@$0&-F[\l6#&Fju6
#F^^l6#;FbrF[p7$%$zedG""!C%>Fc]l-Fiw6$FitFc]l>F[o-Fiw6$FitF[o-F]o6#%eninput~is~
not~a~generating~set~for~the~current~Janet~basis.G?(F^^lFbrFbr-Ffr6#Fi]lFY@$4-%
/Janet/mem_multG6%&Fi]lFg^lF[o7$-%#opG6#Ffq-Fb`lFgr>F[o7$F_`l-Fb`lFjn>Fi]lF[o>F
[oFhy?(F^^lFbrFbr%)number_tGFY>&%'T_ListG6$F^^lFep7#-%"$G6$F\_l%$nivG>8*-%2Jane
t/janet_separG6'FfqF\wF\tFcsFcy?(F^^lFbrFbr-Ffr6#FfalFY@$0&-F[\l6#&Ffal6$F^^lFb
rFh^lFj^lC%>Fc]lF__l>F[oFb_lFd_l?(F^^lFbrFbrFh_lFY@$F[`l>F[oFf`l>F[oFb_l>Fc]lF_
_l>Fi]lF[o>F[oFg]l-%'RETURNGFi_lFS6%F^alFc]lF[oFSFS
M7R0
I)Janet/HPf*6#%"lG6,%"aG%"bG%"dG%"iG%"nG%"mG%"pG%"sG%%termG%&n_mulG6#%\pCopyrig
ht~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C)
@$4-%)assignedG6#%'T_ListG-%&ERRORG6#%Pmissing~involutive~basis;~run~JanetBasis
~first.G@%2""!9#>8+9$>FD.FD>8)-%%nopsG6#&F:6%"""FOFO>8(-FK6#&F:6%FO""$FO>8,*&FI
FO-%)binomialG6$,&FQFOFDFOFDFO@$0&F:6%FO""'FOFA@%%0Janet/janetlikeG?&8$F:%%true
GC$>8--%*numboccurG6$&F`o6#""&%)infinityG@%/FdoFQ>FX,&FXFO-Fen6$,(FDFO-%(conver
tG6$&F`o6$FVFO%"+G!""FdoFOFdoFipC(>8&Fcp>8%-%%subsG6$/F[pFAFho>8*7#-%"$G6$FAFQ>
FX,&FXFO-Fen6$,(FDFOF\qFipFdoFOFdoFip>Fdq-%.Janet/nextmonG6$FdqF^q?(F3FOFOF30Fd
qFeqC$>FX,&FXFO-Fen6$,*FDFOF\qFip-Fdp6$FdqFhpFipFdoFOFdoFip>FdqF_r?&F`oF:FaoC$>
FdoFeo>FXF_p-%'expandG6#FXF3F3F3F3
M7R0
I1Janet/PrincDerivf*6"F$6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rig
hts~reserved.GF$-%-Janet/TabVarGF$F$F$F$F$
M7R0
I3Janet/jcoeffmatrixf*6#%%_resG6/%$resG%"mG%"nG%#baG%#KMG%#KLG%#reG%#cvG%"rG%"c
G%#vaG%"pG%"lG6#%\pCopyright~(C)~2000-2010~by~Gehrt~Hartjen~and~Daniel~Robertz.
~All~rights~reserved.G6"C->8$-%.Janet/jmklistG6#9$@$/F97"-%'RETURNG6#-%'matrixG
6$""!FG>8%-%%nopsG6#F9@'-%%typeG6$F9%)listlistGC$>8&-FK6#&F96#""">F9-%$mapG6$%#
opGF9-FO6$FW%%listGC$@$2FY-FK6#<#-Fhn6#-Ffn6$FKF9-%&ERRORG6#%NYour~list~contain
s~lists~of~different~length!G>FTFG>FTFG>8)%%NULLG>8'F^p?&8*-%'expandGFL%%trueGC
&@%-FO6$Fbp%"+G>Fbp-%(convertG6$FbpF[o>Fbp7#Fbp>8+7#-%"$G6$FG-FK6#7#F`p@$0Fbp7#
FG?&8,FbpFepC%>8--%'coeffsG6#F^r>8.*&F^rFYFar!""@%-%'memberG6%FfrFiq.8/>Fbq-%'s
ubsopG6$/F^sFarFbqC$>F`p6$F`pFfr>Fbq7$-Fhn6#FbqFar>F]p6$F]pFbq>80-FKFjs@%/F^tFG
>F]p7#F]p>F]p-Fas6$-Fhn6#-Ffn6$f*6#%"iGF66$%)operatorG%&arrowGF6/F=7$-Fhn6#&T#F
<-Feq6$FG,&T%FY-FKFduFhrF6F66&F,F]pF3F^t7#-Feq6#;FY-FK6#FctFct@$2FY9#-%'assignG
6$&9"6#""#Fiq@%/FTFG-%%copyG6#-F]q6$F]pFE-FE6%FI*&FTFYF^tFY-Ffn6$FhnF]pF6F6F6F6
M7R0
I1Janet/jlinmatrixf*6$%$resG%"bG6+%#KMG%#KLG%#baG%#reG%#cvG%"rG%"nG%"iG%#zcG6#%
inCopyright~(C)~2000-2003~by~Gehrt~Hartjen.~All~rights~reserved.G6"C+>8$-&%'lin
algG6#%'matrixG6$""!F=>8&9%>8%%%NULLG?&8'9$%%trueGC'@%-%%typeG6$FE%"+G>FE-%(con
vertG6$FE%%listG>FE7#FE>8*-%%nopsG6#F?>8(7#-%"$G6$F=,&FV"""F[oF[o?&8)FEFGC%>8+F
[o?(F3F[oF[oF331F`oFV4-%$hasG6$F]o&F?6#F`o>F`o,&F`oF[oF[oF[o@%Fco>Fen-%'subsopG
6$/F`o-%)simplifyG6#*&F]oF[oFho!""Fen>Fen-F_p6$/Fjn-Fcp6#,&&Fen6#FjnF[oF]oF[oFe
n>FB6$FBFen>F6-FP6$7#FBF;>8,-%/Janet/jzerocolG6#F6?(F`oF[oF[o-FX6#FgqFG@$1&Fgq6
#,$F`oFfpFWC$@$-FK6$&9"6#Ffp%'stringG>F6-&F96#%(delcolsG6$F6;F`rF`r>F?-F_p6$/F`
rFCF?@$32""#9#4-FK6$&Fhr6#""$Fjr-%'assignG6$F^tF?-%%copyGFjqF3F3F3F3
M7R0
I:Janet/ExpressInFlatOutputf*6'%#_vG%#_yG%#_RG'%%ivarG%%listG'%%dvarGF*6*%"iG%"
lG%"vG%"yG%"EG%"JG%"RG%(flatvarG6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.
~All~rights~reserved.G6"C,@%-%%typeG6$9$F*C$@$0-%*intersectG6$<#-%#opG6#F><#-FG
6#9(FE-%&ERRORG6#%jnexpecting~(sublist~of)~dependent~variable(s)~as~first~argum
ent.G>8&F>C$@$4-%$hasG6$FLF>FM>FR7#F>@%-F<6$9&%'matrixG>8*-%,Janet/AppOpG6&FhnF
L9'FL>F[oFhn@'-F<6$9%Fin>8'-F]o6&FdoFLF_oFL-F<6$FdoF*>FfoFdo>Ffo7#Fdo@%2""&9#C$
@%-F<6$&9"6#""'F*>8+Ffp>F[q7#Ffp@$0-%%nopsG6#F[q-Faq6#Ffo-FN6#%Iexpecting~as~ma
ny~names~as~flat~outputs.G>F[q7#-%$seqG6$-%$catG6$%#_YG8$/Far;"""Fcq>F[o7$-FG6#
F[o-F[r6$,&-&F[q6#Far6#-FG6#F_oFdr&FfoF^s!""Fbr>8)&-%1Janet/JanetBasisG6&F[oF_o
7$FJ-FGFbq""#6#Fdr>8(7"?(FarFdrFdr-Faq6#FR%%trueGC%>8%-%&solveG6$<#-FG6#-%'sele
ctG6%FWFes&FRF^s-FauF_s@$/Fgt%%NULLG-FN6#%Jexpecting~flat~output~as~second~argu
ment.G>F_t7$-FG6#F_t-FG6#Fgt@$4F;>F_tF[v-%'RETURNGF\vF8F8F8F8
M7R0
I-Janet/jgendlf*6$%%ivarG%%dvarG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barak
at.~All~rights~reserved.GF'6$-%#opG6#9$-F,6#-%$mapG6$f*6#%"xGF'6$%)operatorG%&a
rrowGF'-F.6#-F,6#T$F'F'6$F%F.9%F'F'F'F'
M7R0
I.Janet/jaddconf*6%%%vec1G%%vec2G%%ivarG6#%%dvarG6#%[oCopyright~(C)~2000-2002~b
y~Mohamed~Barakat.~All~rights~reserved.G6"C%@&5/9$""!/F17"-%'RETURNG6#9%5/F8F2/
F8F4-F66#F1@%2""$9#>8$&9"6#""%>FC%%NULLG-%0Janet/jgcollectG6%7$-%#opGF=-FOF79&F
CF,F,F,F,
M7R0
IAJanet/diff_normalform_constcoefff*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%
'nlvarsG%)rhs_dvarG6%%"aG%"rG%$conG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Ci
d~and~Daniel~Robertz.~All~rights~reserved.G6"C%>%)_jnnformG,&F6"""F8F8>8%-%8Jan
et/reduce_constcoeffG6#9"@%/&F:6#F8%$zedG@%0&F:6#""#""!C$-%2Janet/updateCOMPAG6
$7#FF9'-%'subsopG6$/FHFIF:F:C$>8&-%0Janet/comfactorG6$FA9%@%30&FVFBFI50FhnF80&F
VFGF87%-%$mapG6$f*6#F.F36$%)operatorG%&arrowGF3-%(collectG6%-%'normalG6#*(9$F8&
T#FGF8&F_pFB!""T&%,distributedGF3F36&F0FVF&FZFA-Fgo6%-Fjo6#*(FFF8F\oF8FhnFap9+F
cp&F:6#""$F:F36#F6F3F3
M7R0
I,Janet/SubOpf*6%'%%mat1G%'matrixG'%%mat2GF'%%ivarG6'%"AG%#rmG%#cmG%"iG%"jG6#%[
oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C(>8%-%#opG
6$7$"""""#7#-F86$F<-%%evalG6#9$>8&-F86$7$F<F<F=@$50-F86$F:7#-F86$F<-FA6#9%F60-F
86$FHFNFE-%&ERRORG6#%LThe~matrices~must~have~the~same~dimensions!G>8$-F'6$F6FE@
%2""$9#?(8'F;F;F6%%trueG?(8(F;F;FEF_o>&Ffn6$F^oFao-%.Janet/jsubconG6&&FCFdo&FSF
do9&&9"6#""%?(F^oF;F;F6F_o?(FaoF;F;FEF_o>Fco-Ffo6%FhoFioFjo-%%copyG6#FfnF3F3F3F
3
M7R0
I8Janet/CoefficientMatrixf*6&%"UG'%%ivarG%%listG'%%unknGF(%$derG62%"dG%"iG%"jG%
"mG%"sG%#_uG%$cmpG%'colPOTG%#COG%$indG%&exindG%$as1G%$as2G%)str_ivarG%+simpsinc
osG%.str_testorderG6#%jnCopyright~(C)~2009-2010~by~Daniel~Robertz.~All~rights~r
eserved.G6"C5>81-%$catG6$-%#opG6#-%$mapG6$f*6#F1F?6$%)operatorG%&arrowGF?-FD6$-
%(convertG6$9$%'stringGQ",F?F?F?F?&9%6#;"""!"#-FT6$&FZ6#!""FW>8(-FT6$-%+kernelo
ptsG6#%(versionGFW@'5555/-%*substringG6$F_o;Fgn""(Q(Maple~VF?/F\pQ(Maple~6F?/F\
pQ(Maple~7F?/F\pQ(Maple~8F?/-F]p6$F_o;Fgn""*Q*Maple~9.5F?>83QD(_a,_b)->Groebner
[testorder](_a,_b,F?/FipQ*Maple~9.0F?>F_qQD(_a,_b)->Groebner:-testorder(_a,_b,F
?>F_qQD(_a,_b)->Groebner[TestOrder](_a,_b,F?>8*-%&parseG6#-FD6&F_qQ&tdeg(F?FBQ#
))F?@$29#""%-%&ERRORG6#%foexpecting~a~list~of~monomials~or~a~non-negative~integ
er~as~fourth~argument.G@%-%%typeG6$9'F(>8'F\s>F^s-%%sortG6$-FT6$-%(mtaylorG6%-%
$mulG6$*$,&FgnFgn&FZ6#8%F]oF]o/F_t;Fgn-%%nopsG6#FZFZF\sF(Fhq>8.<">8/""!>80Fjt>8
+%&falseG>82F_u?(F_t""&FgnFbr%%trueG@+-Fjr6$&9"F^t%)equationG@%/-FG6$FgnFhuQ(co
lumnsF?@'/-FG6$""#FhuQ$TOPF?>F^uF_u/FbvQ$POTF?>F^uFdu-Fer6#%coexpecting~either~
"TOP"~or~"POT"~as~right~hand~side~for~option~"columns".G-Fer6#%0invalid~option.
G-Fjr6$FhuFW@%/FhuQ.trigonometricF?>FauFduF]w-Fjr6$Fhu%%nameG@%/FitFjt>FitF_t>F
\uF_t-Fjr6$Fhu%$setG>FftFhuF]w>8$-%.Janet/Pol2IndG6%F^sFZ7#8)>8,-FJ6$f*6#F.F?FN
F?-FT6$-%-Janet/jjsubsG6&/T%T$FVT(7#Fdy%"DGF?F?6(F%FVF2FgxF'FZFbx>8-7#-FG6#-%&m
inusG6$-%'selectG6%%$hasG-Fcz6$f*F]yF?FNF?-Fjr6$FV%)functionGF?F?F?-F`z6$-%'ind
etsG6#Fix<#-FGFdt9&Fft@%F^u>F[z-Fas6$F[zf*6$%#_aG%#_bG6)%"aG%"bGF.%%posaG%%posb
G%%sumaG%%sumbGF?F?C%@%-Fez6$FVFhyC$-%'memberG6%-FG6$Fgn-FG6$FjtFVFey.F^s@'-Fjr
6$-FG6$FjtF]]l%(indexedGC$>Fbx7#-FG6#Fc]l>Fbx-FJ6$f*F]yF?FNF?-%*numboccurG6$FVT
#F?F?6$F]\lFbx7#-%"$G6#;Fgn-Fct6#FV-Fjr6$Fc]l%#@@G>Fbx7#-FG6$FdvFc]l>Fbx7#FgnC$
-Fi\l6%F]]lFeyF_]l>Fbx7#Fjt@%-Fez6$FZFhyC$-Fi\l6%-FG6$Fgn-FG6$FjtFZFey.F_o@'-Fj
r6$-FG6$FjtFa`lFe]lC$>F_t7#-FG6#Fg`l>F_t-FJ6$f*F]yF?FNF?F_^lF?F?6$F^\lF_t7#-Ff^
l6#Fat-Fjr6$Fg`lF]_l>F_t7#-FG6$FdvFg`l>F_tFc_lC$-Fi\l6%Fa`lFeyFc`l>F_tFh_l@'2F^
sF_oFdu/F^sF_oC%>Fgx-FT6$Fbx%"+G>Fhq-FT6$F_tFhbl@'2FgxFhqFdu/FgxFhqC%>8&Fgn?(F?
FgnFgnF?331Facl-Fct6#Fbx1Facl-FctF^t/&Fbx6#Facl&F_tF\dl>Facl,&FaclFgnFgnFgn@%Fd
cl-%&evalbG6#1F[dlF]dlFduF_uF_uF?F?6$F*Fc[l>F[z-Fas6$F[zf*Fi[lF\\lF?F?C'@%Fe\lC
$Fh\l@'Fa]lC$>FbxFh]l>Fbx-FJ6$f*F]yF?FNF?F_^lF?F?Fc^lFd^lF[_l>FbxF__l>FbxFc_lC$
Fe_l>FbxFh_l@%Fj_lC$F]`l@'Fe`lC$>F_tF[al>F_t-FJ6$f*F]yF?FNF?F_^lF?F?FbalFcalFfa
l>F_tFial>F_tFc_lC$F^bl>F_tFh_l>FgxFfbl>FhqFjbl@'F]clFduF^cl@%0FfclFicl-Fbdl6#1
F^sF_oC%>FaclFgn?(F?FgnFgnF?3FeclFjcl>FaclF_dl@%FeclFadlFjflF_uF?F?Fedl@$0FitFj
t-%'assignG6$&Fiu6#FitF^s@$0F\uFjt-Ffgl6$&Fiu6#F\uF[z@%Fau-%5Janet/SimplifySinC
osG6#-%)simplifyG6#-%'MatrixG6%-FctF`[l-Fct6#F[zf*6$F.F/F?FNF?-%&coeffG6$&Fb^lF
j^l&FdyFdtF?F?6&F5FixF6F[z-Fehl6#-Fhhl6%FjhlF[ilf*F^ilF?FNF?F_ilF?F?FdilF?F?F?F
?
M7R0
I>Janet/block_ord_lc_dvar_blockf*6&%"aG%"bG%$sepG%+termordersG6%%"iG%$tdaG%$tdb
G6#%enCopyright~(C)~2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$@&2&%,_dva
rblocksG6#&9$6#""#&F46#&9%F8-%'RETURNG6#%&falseG2F:F3-F?6#%%trueG@'4-&9'6#"""6$
7$&&F7FK6#;FL&9&FKF67$&&F=FKFQF<FA/FOFVC'?(8$F9FL-%%nopsG6#FTFE@&4-&FJ6#Fen6$7$
&FP6#;,&&FT6#,&FenFL!""FLFLFLFL&FTF]oF67$&FWFaoF<F>0F`oFjoFC>8%-%(convertG6$&&F
76#""$FK%"+G>8&-F_p6$&&F=FcpFKFep@'2F]pFgpFC2FgpF]pF>?(Fen-Fgn6#FapFgoFLFE@&2&F
jpF]o&FapF]oFC2FeqFdqF>@%2F6F<FAFEFEF/F/F/F/
M7R0
I,Janet/jplexf*6$%"aG%"bG6#%"iG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~an
d~Daniel~Robertz.~All~rights~reserved.G6"C$?(8$"""F/-%%nopsG6#&9$6#F/%%trueG@&2
&F36#F.&&9%F5F:-%'RETURNG6#F62F;F9-F?6#%&falseG@%2&F46#""#&F=FHFDF6F+F+F+F+
M7R0
I7Janet/jplex_dvar_blockf*6$%"aG%"bG6#%"iG6#%jnCopyright~(C)~2006-2010~by~Danie
l~Robertz.~All~rights~reserved.G6"C%@&2&%,_dvarblocksG6#&9$6#""#&F06#&9%F4-%'RE
TURNG6#%&falseG2F6F/-F;6#%%trueG?(8$"""FD-%%nopsG6#&F36#FDFA@&2&FH6#FC&&F9FIFMF
?2FNFLF:@%2F2F8F=FAF+F+F+F+
M7R0
I/Janet/lead_monf*6%%"pG%%dopsG%$cmpG6(%"iG%"jG%"nG%"rG%"CG%"LG6#%\pCopyright~(
C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C*>8'-
%(collectG6%-%)simplifyG6#9$9%%,distributedG>8(7#-%'coeffsG6%F4F<.8)>8&-%%nopsG
6#F?@$/FG"""-%'RETURNG6$&F?6#FMFE>FE7#FE>8%FM?(8$""#FMFG%%trueG@$-9&6$&FE6#FV&F
E6#FX>FVFX-FO6$-F96#&F?FjnFinF1F1F1F1
M7R0
I0Janet/comfactorf*6$'%"LG%%listG'%%varsGF'6(%"aG%"cG%"dG%#g1G%#g2G%"iG6#%jnCop
yright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C,>8%-%$mapG6%%'
coeffsG9$9%>8&-F86$%&numerGF6>8'""!>8)"""?(F3FGFGF330FCFG1FF-%%nopsG6#F>C$>FC-%
$gcdG6$FC&F>6#FF>FF,&FFFGFGFG>F>-F86$f*6#F+F36$%)operatorG%&arrowGF3@$0F;FD-%&d
enomG6#F;F3F3F3F6>8(FD>FFFG?(F3FGFGF330F`oFGFKC$>F`o-FR6$F`oFT>FFFW7$FCF`oF3F3F
3F3
M7R0
I1Janet/criterion2f*6#'%"qG%%listG6#%"iG6#%\pCopyright~(C)~2000-2010~by~Carlos~
F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C%@$/&9$6#""#&F16#""$-%'RETUR
NG6#%&falseG?(8$"""F=%)number_tG%%trueG@$-%1Janet/inv_divideG6%&%'T_ListG6$F<F6
&FE6$F<""&F4C$@$0-%+Janet/jlcmG6$F0&FE6$F<F3F4C$>%(_jcrit2G,&FTF=F=F=-F86#F?F7F
:F,6#FTF,F,
M7R0
I1Janet/criteria23f*6#'%"qG%%listG6(%"iG%"jG%"lG%"dG%#hgG%#hpG6#%jnCopyright~(C
)~2005-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%@$/&9$6#""#&F66#""$-%'R
ETURNG6#%&falseG?(8$"""FB%)number_tG%%trueG@$-%1Janet/inv_divideG6%&%'T_ListG6$
FAF;&FJ6$FA""&F9C(>8&-%+Janet/jlcmG6$F5&FJ6$FAF8@$0FQF9C$>%(_jcrit2G,&FenFBFBFB
-F=6#FD>8'-%(convertG6$&FQ6#FB%"+G>8%FB?(F1FBFBF131FboFC2-F\o6$&FJ6%FboF;FBF`oF
jnC$@$/&FJ6%FboF;F8&F66$F;F8C%>8)-FS6$&FJ6$FboF;F5>8(-FS6$FgpFU@$333-%1Janet/cd
ivisibleG6$FdpFQ0-F\o6$&FdpF_oF`oFjn-Fbq6$FjpFQ0-F\o6$&FjpF_oF`oFjnC$>%(_jcrit3
G,&F`rFBFBFBFgn>Fbo,&FboFBFBFBF<F?F16$FenF`rF1F1
M7R0
I0Janet/jroporderf*6%%"aG%"bG%%ivarG6%%"iG%"pG%"qG6#%inCopyright~(C)~2000-2002~
by~Gehrt~Hartjen.~All~rights~reserved.G6"@'2-%%nopsG6#&9%6#""#-F26#&9$F6-%'RETU
RNG6#%%trueG2F8F1-F=6#%&falseGC$?(8$"""FGF8F?C&-%'memberG6%&F;6$F7FF9&.8%-FJ6%&
F5FMFN.8&@$2FPFUF<@$2FUFPFAF<F.F.F.F.
M7R0
I-Janet/jjsubsf*6&%$relG%%exprG%%ivarG%%dvarG6(%#reG%#exG%#lsG%#rsG%#slG%"pG6#%
inCopyright~(C)~2000-2002~by~Gehrt~Hartjen.~All~rights~reserved.G6"C%>8%9%?&8$-
%.Janet/jmklistG6#9$%%trueG@'3-%%typeG6$-%$lhsG6#F8%(indexedG-%'memberG6$-%#opG
6$""!FC9'C&>8&FJ>8(7#-FK6#FC>8'-%$rhsGFE>F5-%%subsG6$-%$mapG6$f*6#%"rGF26$%)ope
ratorG%&arrowGF2/F<-%0Janet/jtotalderG6&T#-%.Janet/jremainG6$7#-FKF;T%T(T*F2F26
*F-FXF.FSF'9&F(FN-Fjn6$f*6#%"aGF2F_oF2@%-%/Janet/jsublistG6$FfoFjoF<%%NULLGF2F2
6$F.FS-%/Janet/jgetindsG6$F57#FQF5-FH6%FCFN.8)>F5-%-Janet/jQsubsG6&-%'subsopG6$
/FcqFYFNF5F`pFN-%&ERRORG6#%_oOnly~jet~variables~can~be~substituted~here,~please
~check~your~input!G-%-Janet/jjsimpG6%F5FN-%"@G6$%)simplifyG%%evalGF2F2F2F2
M7R0
I/Janet/jprd2eqnf*6%%$prdG%%ivarG%%dvarG62%%_prdG%"pG%$eqnG%#zzG%&_ivarG%&_dvar
G%'ivdvarG%"nG%"mG%"iG%"jG%"kG%&seq_dG%"CG%$terG%$mulG6#%[oCopyright~(C)~2000-2
002~by~Mohamed~Barakat.~All~rights~reserved.G6"C/@%-%%typeG6$9$%)listlistG>8$FA
>FD7#FA>8%-%%nopsG6#FD>8&7#-%"$G6$""!FH>8+-FJ6#9%>8,-FJ6#9&>80-%$seqG6$&%"DG6#8
-/F_o;"""FT>8'7#-FP6$FRFZ>8)Fdo>8*Fdo@%32""$9#4-F?6$&9"6#""%%'stringG>8(Fdp>Fjp
FW?(F_oFboFboFZ%%trueG@%-F?6$&FfnF^o%)functionGC%>Fio-%'subsopG6$/F_o-%#opG6$FR
FaqFio>F[p-Ffq6$/F_o7#-Fjq6#FaqF[p@'32-FJ6#&F[pF^o-FJ6#Fjp-%/Janet/jsublistG6$F
hrFjpF;3/FfrFirF[sF;-%&ERRORG6$Faq%9has~the~wrong~variables!GC$>Fio-Ffq6$/F_oFa
qFio>F[p-Ffq6$/F_oFWF[p?(8/FboFboFHF]qC$?(8.FboFboFYF]q@$0&&FD6$F^tFbo6#FatFRC%
>817#-%'coeffsG6%-%(collectG6%Fdt7#Fhn%,distributedGFbu.82>Feu7#Feu?(F_oFboFbo-
FJ6#FjtF]q@%/&FeuF^oFbo>FM-Ffq6$/F^t,&&FM6#F^tFbo*&&FjtF^oFbo-&FioFgt6#-Fjq6#&F
[pFgtFboFboFMC$>837#-%0Janet/jmult2indG6$-%$mapG6$f*6#%"aGF;6$%)operatorG%&arro
wGF;-%'degreeG6$&T#6#T%FAF;F;6&F7FeuF2F_oFbuFjp>FM-Ffq6$/F^t,&FcvFbo*&FfvFbo-%%
diffG6$FgvF_wFboFboFM>FM-Ffq6$/F^t,&FcvFbo&FD6$F^t""#FboFM@%-F?6$&Fep6#F`pFhp@%
F]p7&FMFWFfnFjp7%FMFWFfn@%F>FM-Fjq6#FMF;F;F;F;
M7R0
I1Janet/JanetBasisf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6fn%"aG%"bG%"gG%"hG%"iG%"j
G%"kG%"lG%"mG%"rG%"vG%#ldG%%ivarG%%dvarG%)dops_ordG%)ivar_degG%)dvar_degG%)dvar
_posG%)ideg_ordG%)ddeg_ordG%&_ivarG%&oivarG%$ndvG%%dopsG%&m_ordG%$fmtG%"JG%'nlv
arsG%'ldprocG%&B_OrdG%&N_OrdG%&Q_OrdG%$POTG%)dvar_cmpG%"FG%"QG%#Q2G%"GG%#GBG%(a
llmultG%'N_FormG%*N_Form_lmG%,no_transferG%&ib_gbG%#eqG%#suG%+time_boundG%.head
_red_percG%)critprocG%+start_timeG%)rhs_dvarG%*want_simpG%+force_simpG%+constco
effG%.last_was_zeroG%/tail_reductionG%+no_contentG%)coeff_ptG6#%\pCopyright~(C)
~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"Cbp@$0%2
Janet/initializedG.%%trueG-%+Janet/initGFbo>%&Nu_StG7">80-%/Janet/get_varsG6$9%
9&>81&F_p6#""#>82&F_p6#""$>83&F_p6#""%>84&F_p6#""&>86&F_p6#""'>87&F_p6#""(>88&F
_p6#"")>85&F_p6#""*>F_p&F_p6#""">8:-%%nopsG6#Ffp>89-%/Janet/get_optsG6$F_p&9"6#
;Fcq9#>8<&FgsFhp>8>&FgsFbq>8?&FgsFgq>8R&FgsF\r>8S&FgsFar>8V&FgsFfr>8W&FgsF[s>8e
n&Fgs6#"#5>8fn&Fgs6#"#6>8J&Fgs6#"#7>8gn&Fgs6#"#8@$0FevF]pC$@$0-Fds6#Fev-Fds6#F_
p-%&ERRORG6#%hnlist~specifying~point~for~local~computation~has~wrong~length.G>F
ev-%,Janet/jezipG6$FdrFev>Fgs&FgsF]q>8F-%0Janet/get_inputG6*9$F_pFfpFgsFdrFdtFg
tFho>8=&F]xFhp@$1FcqFcx-Fcw6#%_pdifferential~equations~are~expected~to~be~given
~as~list~of~differential~expressions.G>8;&F]xFbq>8X5Fcu&F]xFgq>8Y&F]xF\r>F]x&F]
xF_s>F[q-%%subsG6$-Fhw6$F_pF[yF[q>8.-%(convertG6$-%+kerneloptsG6#%(versionG%'st
ringG>8+-%.Janet/get_ordG6,FatF[yFfpF[qF`qFeqFjqF_rFir34F^yFby>8@&FgzF_s>8B&Fgz
Fhp>8A&FgzF]q>8D&FgzFbq@$Fg[l>FirF]p>8E&FgzFgq@$4-%)assignedG6#%#_hG>Fc\lF`s>%&
COMPAGF]p>%)Glob_SOLG.Fh\l>8K7#-%"$G6$%)infinityG%$nivG>%)_jnnformG""!>%(_jredu
cGFd]l>%(_jcrit2GFd]l>%(_jcrit3GFd]l>%(_jcrit4GFd]l>8NFd]l>F^[l-%&parseG6#-%$ca
tG61Q;_p->`Janet/lead_deriv`(_p,Fbo-F_z6$FbsFezQ",Fbo-F_z6$F[yFezFi^l-F_z6$-%%e
valG6#F^[lFezFi^l-F_z6$FirFezFi^l-F_z6$F`qFezFi^l-F_z6$FeqFezFi^l-F_z6$-F__l6#F
\\lFezQ")Fbo@'F^yC$>8L-Fa^l6#-Fd^l63QE_p->`Janet/diff_normalform_simp`(_p,FboFj
^lFi^lF\_lFi^l-F_z6$FdrFezFi^l-F_z6$FgsFezFi^l-F_z6$FdtFezFi^l-F_z6$FgtFezFi^l-
F_z6$F`uFezFi^l-F_z6$FevFezF[`l>8M-Fa^l6#-Fd^l63QH_p->`Janet/diff_normalform_si
mp_ld`(_p,FboFj^lFi^lF\_lFi^lFe`lFi^lFg`lFi^lFi`lFi^lF[alFi^lF]alFi^lF_alF[`lFb
yC$>F_`l-Fa^l6#-Fd^l61QK_p->`Janet/diff_normalform_constcoeff`(_p,FboFj^lFi^lF\
_lFi^lFe`lFi^lFg`lFi^lFi`lFi^lF[alFi^lF]alF[`l>Fbal-Fa^l6#-Fd^l61QN_p->`Janet/d
iff_normalform_constcoeff_ld`(_p,FboFj^lFi^lF\_lFi^lFe`lFi^lFg`lFi^lFi`lFi^lF[a
lFi^lF]alF[`lC$>F_`l-Fa^l6#-Fd^l63Q@_p->`Janet/diff_normalform`(_p,FboFj^lFi^lF
\_lFi^lFe`lFi^lFg`lFi^lFi`lFi^lF[alFi^lF]alFi^lF_alF[`l>Fbal-Fa^l6#-Fd^l63QC_p-
>`Janet/diff_normalform_ld`(_p,FboFj^lFi^lF\_lFi^lFe`lFi^lFg`lFi^lFi`lFi^lF[alF
i^lF]alFi^lF_alF[`l>8Pf*6$F,F-FboFboFbo-%&evalbG6#/&Fax6#;F`sFip&FcpF[dlFboFboF
bo>8Cf*6$%#_aG%#_bG6%F2%#n1G%#n2GFboFbo@%/&FaxF]q&FcpF]q@'30&FaxFhpFidl/&FcpFhp
FjdlFho3/F^elFidl0F`elFjdl%&falseGC%>8%-%'lengthG6#&&FaxF_sF_s>8&-Fiel6#&&FcpF_
sF_s@'2FgelF^flFho2F^flFgelFdelC%>Fgel-%*numboccurG6$F[flFd]l>F^fl-Fifl6$FaflFd
]l@%FeflFhoFdel-T#6$FaxFcpFboFbo6$FJFa[l@+/%.Janet/invcritGF]p>8Tf*FboFboFboFbo
FdelFboFboFbo/Fegl7#Fip>Fggl%1Janet/criterion2G/Fegl7$FipF^q>Fggl%1Janet/criter
ia23G/Fegl7%FipF^qFcq>Fggl%2Janet/criteria234G-Fcw6#%?undefined~involutive~crit
eria.G>8U-%%timeGFbo>8GF]p>%)number_qGFd]l?(8(F`sF`s-Fds6#F]xFho@&0&F]x6$FailF`
s%$zedGC(>8*-%0Janet/comfactorG6$FfilF[y@$4FbyC$@$Fjv>&F[jlF_s-%5Janet/invertib
lepartG6$FdjlFev-%1Janet/updateNuStG6#7#Fdjl@%50FdjlF`s0&F[jlFhpF`s>8'7%-%$mapG
6$f*6#F,Fbo6$%)operatorG%&arrowGFbo-%(collectG6%-%'normalG6#*(FaxF`s&F`glFhpF`s
&F`glF_s!""T%%,distributedGFboFbo6&F2F[jlFCF[yFfil-F]\m6%-F`\m6#*(&F]x6$FailFip
F`sF`[mF`sFdjlFe\mF`uFg\m&F]x6$FailF^q>Fb[m&F]x6#Fail>8/-F^[l6#&Fb[mF_s>F]il-%4
Janet/binary_insertG6)7)Fb[m&Ff]mF_sF_^m7#-F^]l6$Fd]lFa]lF[]l&Ff]mFhpF]pF]ilF`s
F_ilF_ilF_dlFccl>F_il-Fds6#F]il0F^]mFd]l-%2Janet/updateCOMPAG6$7#-F]\m6%F^]mF`u
Fg\mFdr@$/F_ilFd]lC)>Ff\l-Fhy6$-Fhw6$FdrFgsFf\l>%'T_ListG7#7)7%7#-F^]l6$Fd]lFbs
Fd]lFd]l7$F`^mF`sF^`mF`^mF[]l7$Fd]lF`sF]p>%(Tab_VarG7#7%Fd]l-%/Janet/mult_varG6
$F[]lF_pFd]l>%)number_tGF`s>%-_jforce_simpGF^y>%)_JStatssG7*Fc]lFf]lFd]lFh]lFj]
lF\^lF`sF^^l@%/FcxFip-%'RETURNG6#-%.Janet/Diff2OpG6%7#Fd]lF_pFfp-Faam6#7%FfamF_
pFfp>Fg_m7#&F]ilF_s>F]il-%'subsopG6$/F`s%%NULLGF]il>F_il,&F_ilF`sFe\mF`s>Fh`mF`
s?(FboF`sF`sFbo30F]ilF]p5/FjtFd]l2,&FjhlF`sFihlFe\mFjtC,@$-Fa\l6#%*JPRINTnoTG-%
&printG6$Q##TFbo-Fds6#Fg_m@$-Fa\l6#%(JPRINTTG?(FailFfcmFe\mF`sFhoC%@$-Fa\l6#%,J
PRINTfullTG-Fccm6#&Fg_mFd]m@%-Fa\l6#%*JPRINTTldG@%0&Fg_m6%FailFipF`s&Fg_m6%Fail
F^qF`s-Fccm6'&Fg_mFa]mF[em&Fg_m6$FailFcq&Fg_m6$FailFhq&Fg_m6$FailF]r-Fccm6&Faem
FbemFdemFfem@%Fjdm-Fccm6&FaemF[emFbemFdem-Fccm6%FaemFbemFdem@$-Fa\l6#%+JPRINTTd
enGC%>F[jlF`s?(8)F`sF`s-Fds6#&Fg_m6%FailF`sF`sFho>F[jl*&F[jlF`s-%&denomG6#&Fg_m
6&FailF`sF`sFffmF`s-Fccm6$Q&denomFboF[jl@$-Fa\l6#%*JPRINTnoQG-Fccm6$Q##QFboFe^m
@$-Fa\l6#%(JPRINTQG?(FailFe^mFe\mF`sFhoC%@$-Fa\l6#%,JPRINTfullQG-Fccm6#&F]ilFd]
m@%-Fa\l6#%*JPRINTQldG@%0&F]ilF\em&F]ilF^em-Fccm6&&F]ilFa]mF_im&F]ilFcem&F]ilFg
em-Fccm6%FcimFdimFeim@%F^im-Fccm6%FcimF_imFdim-Fccm6$FcimFdim@$-Fa\l6#%+JPRINTQ
denGC%>F[jlF`s?(FffmF`sF`s-Fds6#&F]ilFjfmFho>F[jl*&F[jlF`s-F^gm6#&F]ilFagmF`sFb
gm>FailF`s>8,-%$maxG6$-%&truncG6#,$*&F]uF`sF_ilF`s#F`s"$+"F`s>8ZFdel>8HF]p?(Fbo
F`sF`sFbo3Fhbm5Fj[n1FailF^[nC'>F^flF\bm>F]ilF^bm>F_ilFdbm@%-Fggl6$F^flFg_m>Fj[n
FhoC&>Fb[m-Fbal6#F^fl>Ff]m&Fb[mFhp>Fb[mFi]m@%/Fi]mFhil>Fj[nFhoC$@%0F_^m&F^flF]q
>F\\n-F\^m6)F^^mF\\nF`s-Fds6#F\\nFj]nF_dlFccl>F\\n-F\^m6)F^flF\\nF`sFj]nFj]nF_d
lFccl>Fj[nFdel>Fail,&FailF`sF`sF`s@$0F\\nF]pC*>F^fl&F\\nF_s>F\\n-F_bm6$FabmF\\n
@$-Fa\l6#%(JPRINTgG-Fccm6$Q"gFbo&F^flF_s@%Ffu>Fb[m-F_`l6#Fa_n>Fb[mFa_n@$-Fa\l6#
%(JPRINThG-Fccm6$Q"hFboFb[m>Ff]mFg]m@'/Fh`mFd]lC&>Fg_m7#7)Fb[m&F^flFhpF_^mF`^mF
[]lFc^mF]p>Fh`m,&Fh`mF`sF`sF`s>F\\n7$-%#opGF[^n-F[an6#-%2Janet/janet_separG6'Fd
rF[yF`uFatFa[l?&FffmF\\nFhoC$>F]il-F\^m6)FffmF]ilF`sF_ilF_ilF_dlFccl>F_ilFe^m/F
e`nF_^mC&>6$Fg_mF[jl-%8Janet/binary_insert_posG6)7)Fb[mFe`nF_^m&F^flFbqF[]lFc^m
F]pFg_mF`sFh`mFh`mFa[lFccl@%2F[jlFfcmC'?(Fffm,&F[jlF`sF`sF`sF`sFfcmFhoC$>F]il-F
\^m6)&Fg_m6#FffmF]ilF`sF_ilF_ilF_dlFccl>F_ilFe^m>Fg_m&Fg_m6#;F`sF[jl>Fh`mF[jl>F
^^l,&F^^lF`sF`sF`s-%1Janet/transfer_TG6$FatFa[l>Fh`mFfcm>F\\nFi`n?&FffmF\\nFhoC
$>F]ilFdan>F_ilFe^mC&>Fg_m-F\^m6)Fd`nFg_mF`sFh`mFh`mFa[lFccl>Fh`mFg`n>F\\nFi`n?
&FffmF\\nFhoC$>F]ilFdan>F_ilFe^m@$/Fh`mFbsC%>FailF`s?(FboF`sF`sFbo31FailFh`m/F]
em7#-F^]l6$Fd]lF`w>FailFa^n@$2Fh`mFail>F]ilF]p@$32Fd]lFjt1FjtF\cm-%(WARNINGG6#%
[ocomputation~of~involutive~basis~stopped~due~to~time~restriction.G>Ff\lFb_m@$3
2F`sFh`mFfu-%5Janet/jautoreductionG6$F_`lF^[l@$Fg[l>Fg_m-%%sortG6$Fg_mFd[l@$4F[
v?(FailF`sF`sFh`mFhoC$>F^fl-%/Janet/jcontentG6$&Fg_m6%FailF]rF`sFdr@$30F^flFd]l
0F^flF`s>Fg_m-F_bm6$/Fail7(7%-Fe[m6$f*6#F-FboFi[mFbo-F`\m6#*&FaxF`sF`glFe\mFboF
bo6$F.F^flFifm-F`\m6#*&&Fg_m6%FailF`sFipF`sF^flFe\m&Fg_m6%FailF`sF^q&Fg_mF_]mFa
emFbemFdem7%-F`\m6#*&FagnF`sF^flFe\m&Fg_m6%FailF]rFip&Fg_m6$FailFbrFg_m>8I-%.Ja
net/conv2eqG6(-Fe[m6$f*Fh[mFboFi[mFbo&F\flF[dlFboFboFboFg_mF[yF_pFfpFdrFgs>Fail
F`s?(FboF`sF`sFbo1Fail-Fds6#Ffin@%/&FfinFd]mFd]lC%>Ffin-F_bm6$/FailFbbmFfin>Fg_
m-F_bm6$FjjnFg_m>Fh`m,&Fh`mF`sFe\mF`s>FailFa^n>Fa`m7#-%$seqG6$7%Fejn-Fe`m6$-Fe[
m6$f*F`hnFboFi[mFbo&Fg_m6%F`glFhq-%0Janet/posmemberG6$FaxFf\mFboFbo6&F0FailFAFg
sF_pF_p-Fhin6(7$-F_bm6$/&Fg_m6%FailF^qFip*&FagnF`sFainF`sFhilFd]lF[yF_pFfpFdrFg
s/Fail;F`sFh`m>FailF`s?(FboF`sF`sFbo3F\en/F\inFaem>FailFa^n@%/FailFg`n>8OF`s>Fe
]oFd]l@$3F`v/Fe]oFd]l>Ffin-Fhin6(-Fe[m6$f*Fh[mFboFi[mFbo@$FbelF]jnFboFboFboFg_m
F[yF_pFfpFdrFgs@%/FgsF_p>Ffin7%FfinF_pFfp>Ffin7&FfinF_pFfpFgs>F\am7*Fc]lFf]lFd]
lFh]lFj]lF\^lFe]oF^^l>F\p-Fhy6$Fd_mF\p>Fj`mF^y@%F_am-Fdam6%&FfinF_sF_pFfpFfinFb
o61Fa`mFg_mF_ilFh`mF\pFf\lFh\lFc\lFc]lFf]lFj`mFh]lFj]lF\^lF\amFboFbo
M7R0
I1Janet/cdivisiblef*6$'%"aG%%listG'%"bGF'6#%"iG6#%inCopyright~(C)~2000-2002~by~
Carlos~F.~Cid.~All~rights~reserved.G6"C%@$0&9$6#""#&9%F4-%&ERRORG6#%Rinput~must
~belong~to~the~same~dependent~variable.G?(8$"""F>-%%nopsG6#&F36#F>%%trueG@$2&F7
6$F>F=&F3FH-%'RETURNG6#%&falseGFDF.F.F.F.
M7R0
I/Janet/jsortconf*6$%%vconG%%lvarG6&%&nlvarG%$vecG%"iG%$posG6#%[pCopyright~(C)~
2000-2005~by~Mohamed~Barakat~and~Arne~Lorenz.~All~rights~reserved.G6"C'@$5/9$""
!/F37"-%'RETURNG6#-%$mapG6$f*6#%"aGF.6$%)operatorG%&arrowGF.7$F47#F3F.F.F.9%>8$
-%%nopsG6#FE>8%-%&arrayG6$;"""FG7#-%"$G6$F4FG?(8&FQFQ-FI6#F3%%trueG@$-%'memberG
6%-%#opG6#&F36$FW""#FE.8'>&FL6#F`o,&FboFQ&F36$FWFQFQ-F;6$f*6#F*[email protected]$&T#FY7#&
T&FYF.F.6&F)FLF&FE7#-FT6#FPF.F.F.F.
M7R0
I,Janet/jjlinf*6%%%leqnG%%ivarG%%dvarG6#%&_dvarG6#%[oCopyright~(C)~2000-2002~by
~Mohamed~Barakat.~All~rights~reserved.G6"C%@%2""$9#C$>8$-%.Janet/jmklistG6#&9"6
#""%@$0-%%nopsG6#F4-F?6#-F66#9&-%&ERRORG6#%[pThe~number~of~linearizing~coordina
tes~must~coincide~with~that~of~dependent~ones!G>F4-%$mapG6$%/Janet/jind2revGFC-
FL6$f*6#%"aGF,6$%)operatorG%&arrowGF,-%#opG6#-%/Janet/AppOpIndG6&9$T#T&7$-FX6#T
(-FX6#FhnF,F,6(F)F4F&9%F'FE-FL6$f*FRF,FTF,-%0Janet/jfrechetcG6%7#FgnT$FinF,F,6&
F&FaoF'FE-F66#Fgn@%-%%typeG6$Fgn%%listG%"%G-FX6#FbpF,F,F,F,
M7R0
I*diff/_jjDf*6"6$%'lstDerG%)lstDummyG6%%XCopyright~(C)~2005~by~Arne~Lorenz.~All
~rights~reserved.G%'systemG%)rememberGF$C&>8$7$-%#opG6#&9"6#""#-F16#&F46#;""%!"
">8%&F46#""$>F?-%$mapG6$f*6#%"aGF$6$%)operatorG%&arrowGF$@$/-%'memberG6$9$T#%&f
alseGFRF$F$6$F&F.F?-%%_jjDG6%&F46#"""F.F?F$F$F$F$
M7R0
I4Janet/IsTorsionBasef*6$%$genG%$_JBG6)%#JBG%%ivarG%%dvarG%#PDG%#pdG%$_pdG%"MG6
#%ioCopyright~(C)~2003~by~Mohamed~Barakat~and~Anna~Fabianska.~All~rights~reserv
ed.G6"C,>8$-%(convertG6$9%%%diffG>8%&F46#""#>8&&F46#""$-%7Janet/AssertJanetBasi
sG6#-%#opG6#F4>8'-%1Janet/ParamDerivG6$F;F@>8(-%$mapG6&%/Janet/Diff2IndGFKF;F@>
8)-FR6$%/Janet/jind2subGFP-%1Janet/jlinmatrixG6$-%%subsG6$-%,Janet/jezipG6$FKFV
-FR6%%0Janet/InvReduceG9$F4FV-%)simplifyG6#-&%'linalgG6#%(delcolsG6$%"%G;,&-%%n
opsG6#FP"""F`pF`pF\p@%/-Fbo6#-&Ffo6#%$detG6#Fjo""!%&falseG%%trueGF1F1F1F1
M7R0
I,JanetA/initf*6"F$6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~r
eserved.GF$-%+Janet/initG6#9"F$F$F$F$
M7R0
I1Janet/multcoeffsf*6%%"pG%%varsG%"mG6'%"aG%"cG%"iG%"jG%"tG6#%jnCopyright~(C)~2
008-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$>8%-%'coeffsG6%9$9%.8(-%(c
onvertG6$-%$zipG6%f*6$F+F,F06$%)operatorG%&arrowGF0*&F7"""F8FGF0F0F0-%$mapG6$f*
6#F)F0FCF0-%'normalG6#*&T$FGF7FGF0F06$F'9&7#F37#F:%"+GF0F0F0F0
M7R0
I>Janet/degrevlex_lc_dvar_blockf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)
~2010~by~Daniel~Robertz.~All~rights~reserved.G6"C*@&2&%,_dvarblocksG6#&9$6#""#&
F26#&9%F6-%'RETURNG6#%&falseG2F8F1-F=6#%%trueG>8%-%(convertG6$&F56#"""%"+G>8&-F
G6$&F;FJFL@'2FEFNFA2FNFEF<?(8$-%%nopsG6#FI!""FKFC@&2&FQ6#FV&FIFhnFA2FinFgnF<>FE
-FG6$&&F56#""$FJFL>FN-FG6$&&F;F`oFJFL@'FSFAFTF<?(FV-FX6#F^oFZFKFC@&2&FeoFhn&F^o
FhnFA2F^pF]pF<@%2F4F:F?FCF-F-F-F-
M7R0
I1Janet/lead_derivf*6*%"aG%$ndvG%%dopsG%'lmprocG%)dvar_posG%)ivar_degG%)dvar_de
gG%)dvar_cmpG6*%"iG%"jG%"kG%"lG%#lmG%"LG%"dG%#d2G6#%jnCopyright~(C)~2000-2010~b
y~Daniel~Robertz.~All~rights~reserved.G6"C'>8$""">8&F<>8)7"?(F8F<F<F83/F@FA1F>-
%%nopsG6#9(C$?(F8F<F<F81F;&FI6#F>C%>8(7#-9'6#&9$6#F;@$0&FQ6#F<""!@%FDC$>F@7$7$7
#-%$seqG6$-%'degreeG6$&FQ6#""#&9&6#8%/Fjo;F<%$nivGF;FQ@$09*FA>8*,&-%$addG6$*&&F
@6%F<F<FjoF<&9)FioF<F[pF<&F`p6#&F@6$F<FfoF<C$>8'F[o@&F_pC$>8+,&-Fep6$*&&FbqFipF
<FjpF<F[pF<&F`p6#&FbqF_qF<@$52FbpFfq3/FfqFbp4-9+6$&Fbq6$FfoFfo&F@FirC$>F@Fbq>Fb
pFfqFdr>F@Fbq>F;,&F;F<F<F<>F>,&F>F<F<F<@%0F@FAF@C$?(F8F<F<F81F;9%C%>FQFR@$FZ-%'
RETURNG6#F[o>F;F`s7$7$7#-%"$G6$FgnFhsFhs7$FgnF<F8F8F8F8
M7R0
I5Janet/reduce_simp_ldf*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%)rh
s_dvarG%)coeff_ptG60%"aG%"hG%"iG%"jG%"pG%$denG%$divG%#lmG%&lmredG%$mulG%$su1G%$
su2G%"SG%&reducG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~rese
rved.G6"C,>8%&&9$6#"""6#;FG""#>8+7$&FE6#""$&FE6#""'>8(&FDFO>8.-%$zipG6%f*6$F1F2
F?6$%)operatorG%&arrowGF?/FE9%F?F?F?9'9(>8/-FZ6%f*FgnF?FhnF?F[oF?F?F?F^oF]o>8*%
%trueG>81%&falseG@$09)7"@&/%3Janet/coefficientsGQ(jreduceF?C'>FeoFfo@$-%)assign
edG6#%.JPRINTjreduceG-%&printG6#Q<reduce_simp_ld:~start~whileF??(F?FGFGF?3Feo0&
FL6$FJFG""!C(>FeoFio@$Fep-Fjp6#/Q7reduce_simp_ld:~vorherF?F`q>8,-%)simplifyG6#-
%/Janet/jjreduceG6&F\p-%/Janet/Diff2IndG6%-%%subsG6$FX-%&numerG6#F`qF^o9*F^oF[s
>F[r*&-Ffr6$F`o-%/Janet/Ind2DiffG6%F[rF^oF[sFG-%&denomGFjr!""@$Fep-Fjp6#/Q8redu
ce_simp_ld:~nachherF?F[r@$0-F]r6#,&F[rFGF`qFesFbqC&>FeoFfo>FB7$-%'subsopG6$/&FL
6$FGFJ-%(collectG6%,&&&FBFF6#FhtFG*&F_tFG&FL6$FJFJFGFGF\o%,distributedGF_u&FB6#
FJ>FhoFfo>FL-9&6#F_u@$Fep-Fjp6#Q:reduce_simp_ld:~end~whileF?>FeoFfo/F`pQ(diffal
gF??(F?FGFGF?3F_q-%3diffalg/belongs_toG6$-Ffr6$FX-%(convertG6$Fhr%%diffGF\pC%>F
B7$-Fet6$/Fht-F[u6%,&F^uFG*&F`qFGFbuFGFesF\oFduF_uFeu>FhoFfo>FLFiu?(F?FGFGF?F^q
C&>FeoFio>8&FG?(F?FGFGF?31F^x%)number_tG4FeoC$@$-%1Janet/inv_divideG6%&%'T_List
G6$F^xFP&Fjx6$F^x""&&FLFFC,>%(_jreducG,&FbyFGFGFG>80,&&FL6$FGFGFG&Fjx6%F^xFPFGF
es>8--%,Janet/derivG6'Fey&Fjx6$F^xFGF]oF\o9+>8)*&&Fjx6%F^xFSFGFG-Fds6#FfzFG@$09
,F]p-Fjp6$Q)red~subsF?-%%evalG6#-Ffr6$F\[lFdz-%1Janet/updateNuStG6#7#Fdz>FB7$-F
[u6%-F]r6#,&F_uFG-%$mapG6$f*6#F/F?FhnF?*(&T#FaqFG&Fjx6%T%FSFGFesFEFGF?F?6&F6FLF
1F^x&F\zFFFesF\oFdu-F[u6%-F]r6#,&FeuFG*(F`qFGFfzFes&F\zFfuFGFesFbzFdu>FU-%$maxG
6$FU,&&Fjx6%F^xFGFPFG-F[w6$Fey%"+GFG>FeoFfo>FhoFfo>F^x,&F^xFGFGFG@$FeoC$>FLFiu@
$F[p@&F_pC&@$FepFip?(F?FGFGF?F^qC(>FeoFio@$FepFfq>F[rF_r>F[rF]s@$FepFgs@$F\tC%>
FeoFfo>FBFct>FLFiu@$FepF]v>FeoFfoFav?(F?FGFGF?FdvC$>FBF`w>FLFiu@%Fho7$7$-%#opG6
#FBFUFLF]pF?6#FbyF?F?
M7R0
I/Janet/mem_multf*6%%"aG'%"LG%%listG'%%varsGF(6%%"bG%"fG%"iG6#%jnCopyright~(C)~
2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"@%09$""!C$?&8$9%%%trueGC$>8
%-%)simplifyG6#*&F8"""F4!""@$4-%$hasG6$F=9&-%'RETURNG6#F:%&falseG-%'memberG6$F5
F9F1F1F1F1
M7R0
I/Janet/joporderf*6%%"aG%"bG%%ivarG6%%"iG%"pG%"qG6#%inCopyright~(C)~2000-2002~b
y~Gehrt~Hartjen.~All~rights~reserved.G6"@'2-%%nopsG6#&9$6#""#-F26#&9%F6-%'RETUR
NG6#%%trueG2F8F1-F=6#%&falseGC$?(8$"""FGF1F?C&-%'memberG6%&F56$F7FF9&.8%-FJ6%&F
;FMFN.8&@$2FPFUF<@$2FUFPFAF<F.F.F.F.
M7R0
I.Janet/jsumsepf*6$%$eqnG%$varG6$%%numeG%%denoG6#%>Copyright~(c)~1997~by~Khai~V
uG6"C%>8%-%.Janet/jfacsepG6$-%&denomG6#9$9%>8$-%'expandG6#-%&numerGF5@%-%%typeG
6$F9%"+GC%>F9-%$mapG6%F1-%(convertG6$F9%%listGF7>F9-%/Janet/jcoltermG6#F9-FG6%f
*6$%$numG%$denGF,6$%)operatorG%&arrowGF,7$*&&F66#"""Fhn&F7Fgn!""*&&F66#""#Fhn&F
7F]oFjnF,F,F,F9F/C$>F9-F16$F9F77#7$*&&F9FgnFhn&F/FgnFjn*&&F9F]oFhn&F/F]oFjnF,F,
F,F,
M7R0
I.Janet/Diff2Opf*6%%"LG%&ivarsG%&dvarsG6$%%ivarG%%dvarG6#%jnCopyright~(C)~2002-
2010~by~Daniel~Robertz.~All~rights~reserved.G6"C&>8$-%/Janet/get_varsG6$9%9&>8%
&F06#""#>F0&F06#"""@%4-%%typeG6$9$%%listG-%0Janet/jfrechetcG6%-%/Janet/Diff2Ind
G6%7#FDF0F7F0F7-FG6%-FJ6%FDF0F7F0F7F-F-F-F-
M7R0
I-Janet/D2Difff*6&%"LG'%%DvarG%%listG'%%ivarGF('%%dvarGF(6%%"iG%%tvarG%#_tG6#%j
nCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$>8%7#-%$se
qG6$&8&6#8$/F>;"""-%%nopsG6#9%@%-%%typeG6$9$%'matrixG-%%subsG6$7#-F96$/F;&9&F=/
F>;FA-FC6#FT-%/Janet/Pol2DiffG6%-FM6$7#-F96$/&FEF=F;F?-%&evalmG6#FJF69'-FM6$FO-
FZ6%-FM6$FhnFJF6F`oF3F3F3F3
M7R0
I8Janet/DiffGroebnerBasisf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6"6#%jnCopyright~(C
)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.GF+-%1Janet/JanetBasisG6$9"/
Q)GroebnerF+%%trueGF+F+F+F+
M7R0
I1Janet/JanetStatsf*6"F$6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Danie
l~Robertz.~All~rights~reserved.GF$C+@$43-%)assignedG6#%)_JStatssG-F,6#%'T_ListG
-%&ERRORG6#%Ono~statistics~available;~run~JanetBasis~first.G-%&printG6$%GNumber
~of~elements~of~involutive~basisG-%%nopsGF0-F76$%=Use~of~normal~form~procedureG
&F.6#"""-F76$%?Number~of~reductions~performedG&F.6#""#-F76$%4Number~of~transfer
sG&F.6#"")-F76$%8Use~of~second~criterionG&F.6#""%-F76$%7Use~of~third~criterionG
&F.6#""&-F76$%8Use~of~fourth~criterionG&F.6#""'@$/&F.6#""(FA-F76#%WThe~involuti
ve~basis~is~also~a~reduced~Groebner~basis.GF$F$F$F$
M7R0
I8Janet/HilbertPolynomialf*6#%"lG6#%"sG6#%\pCopyright~(C)~2000-2010~by~Carlos~F
.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C$@%2""!9#>8$9$>F1.F1@%3-%%typ
eG6$F1%(numericG/F1F.-%)Janet/HPG6#F1-%)simplifyG6#,&F<"""-F=6#,&F1FC!""FCFGF*F
*F*F*
M7R0
I/Janet/Diff2Polf*6%%"LG'%%ivarG%%listG'%%dvarGF(6)%"iG%"jG%"kG%"rG%#suG%"FG%%r
varG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C->8
)-%/Janet/jeqn2prdG6'-%.Janet/jmklistG6#9$9%9&F@Q!F5>8*<"?(8$"""FH-%%nopsG6#F8%
%trueG>FD-%&unionG6$FD-%&minusG6$-%'indetsG6#&F86$FG""#-%(convertG6$F@%$setG>FD
-Fen6$FDF(>8%FH?(F5FHFHF51F\o-FJ6#FDC$>8&&FD6#F\o@%/-%#opG6$""!Fco%%diffGC%>FD-
%'subsopG6$/F\o%%NULLGFD?(F5FHFHF5Fgo>Fco-Fio6$FHFco@$4-%'memberG6$FcoFDC$>FD7$
Fco-FioF`o>F\o,&F\oFHFHFH>F\oFbq?(F\oFHFHF_oFL@$4-%%typeG6$Fdo%)functionG-%&ERR
ORG6$%Ocannot~handle~indeterminate~in~right~hand~sideGFdo@$2F[pF_o>FD-%$mapG6$f
*6#F.F56$%)operatorG%&arrowGF5-Fio6$F[pF?F5F5F5FD?(FGFHFHFIFLC&@$-%$hasG6$&F86$
FGFHF@-F\r6#%inexpecting~differential~expressions~with~constant~coefficients.G>
8'-%'expandGFV@(-Fhq6$Fhs%"+G?&F\oFhsFL@&-Fhq6$F\o%"*G?&FcoF\oFL@$45-Fhq6$Fco%)
constantG-Fhq6$FcoFjq-F\r6#-%$catG6%%0cannot~convert~G-Fen6$Fco%'stringG%5~to~r
ight~hand~side.G45-Fhq6$F\oFjt-Fhq6$F\oFjq-F\r6#-F`u6%Fbu-Fen6$F\oFeuFfu-Fhq6$F
hsFct?&FcoFhsFL@$Fft-F\r6#-F`u6%FbuFcu%4~to~right~hand~sideG45-Fhq6$FhsFjt-Fhq6
$FhsFjq-F\r6#-F`u6%Fbu-Fen6$FhsFeuFfu@%0FhsF[pC$@$F`rC%>Fhs-F:6'-F=6#FhsF@FDF@F
B@$0&Fhs6$FHFYF[p-F\r6#-F`u6%Fbu-Fen6$FdxFeuFfu@$/F_oFH>Fhs-FioFax@%/-FJ6#FAFH>
F8-F`p6$/FG/-Fio6#Fbs-Fjs6#,$&Fhs6$FHFH!""F8>F8-F`p6$/FG/FbsF[zF8@%Fay>F8-F`p6$
/FGFiyF8>F8-F`p6$/FGFbsF8>8(7#-%$seqG6$/&%"DG6#FG&F@Fh[l/FG;FH-FJ6#F@@%4-Fhq6$F
?F(-%'RETURNG6#-Fio6#-Fcr6$f*6#%"aGF5FgrF5-%%subsG6$T#F?F5F56$F0F`[lF8-Fc\l6#-F
cr6$f*Fj\lF5FgrF5F\]lF5F5F`]lF8F5F5F5F5
M7R0
I,Janet/CmpOpf*6'%%dop1G%%dop2G%%ivarG%&dvar1G%&dvar2G6%%"vG%%ism1G%%ism2G6#%jn
Copyright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"@%5/9$""!/9%F
5F5C&>8$-%*substringG6$-%(convertG6$-%+kerneloptsG6#%(versionG%'stringG;""""")>
8%-%&evalbG6#5-%%typeG6$F4<&%'matrixG%&arrayG%)listlistG%%listG330F:Q)Maple~V,F
00F:Q)Maple~6.F0-FP6$F4%'MatrixG>8&-FL6#5-FP6$F7FR3FX-FP6$F7Fin@%FJ@%F[o-%.Jane
t/jcmpdopG6%F4F79&-Fgo6%F4-%.Janet/Diff2OpG6%F7Fio9(Fio@%F[o-Fgo6%-F]p6%F4Fio9'
F7Fio-%,Janet/AppOpG6&-Fgo6%FcpF\pFioF_pFioF_pF0F0F0F0
M7R0
I.Janet/jmulmatf*6%%%scalG%$matG%%ivarG6'%"AG%#rmG%#cmG%"iG%"jG6#%[oCopyright~(
C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C'@$4-%%typeG6$9%<$%'ma
trixG%)listlistG@%-F56$F7%%listG-%'RETURNG6#-%$mapG6$f*6#F,F06$%)operatorG%&arr
owGF0*&T$"""9$FLF0F06$F%FMF7-F@6#*&FMFLF7FL@%-F56$F7F:C$>8%-%%nopsG6#F7>8&-FY6#
&F76#FLC$>FW-%#opG6$7$FL""#7#-F^o6$Fao-%%evalGFZ>Ffn-F^o6$7$FaoFaoFbo>8$-F96$FW
Ffn@%2""$9#?(8'FLFLFW%%trueG?(8(FLFLFfnFep>&F\p6$FdpFgp-%.Janet/jmulconG6&FM&F7
Fjp9&&9"6#""%?(FdpFLFLFWFep?(FgpFLFLFfnFep>Fip-F\q6%FMF^qF_q-%%copyG6#F\pF0F0F0
F0
M7R0
I/Janet/GenCoefff*6&%%exprG'%"uG%%listG'%$basGF(%$_JBG6,%#JBG%%ivarG%%dvarG%#nu
G%%nbasG%#LuG%$JLuG%$redG%$LnuG%%JLnuG6#%ioCopyright~(C)~2003~by~Mohamed~Baraka
t~and~Anna~Fabianska.~All~rights~reserved.G6"C1>8$-%(convertG6$9'%%diffG>8%&F<6
#""#>8&&F<6#""$@%32""%9#4-%%typeG6$&9"6#""&%'stringGC$>8'FU@$0-%%nopsG6#9%-Fjn6
#Ffn-%&ERRORG6#%hnThere~must~be~as~many~generator~names~as~generating~elements!
G>Ffn-%$mapG6$f*6#%"aGF96$%)operatorG%&arrowGF9--%$catG6$%#_UG9$6#-%#opG6#T#F9F
96$F.FC7#-%"$G6#;"""Fin@%32FXFP4-FS6$&FV6#""'FYC$>8(-%.Janet/jmklistG6#Feq@$0-F
jn6#9&-Fjn6#Fjq-F`o6#%UThere~must~be~as~many~basis~names~as~basis~elements!G>Fj
q-Feo6$f*FhoF9FjoF9--F_p6$%#_XGFbpFcpF9F9Fhp7#-F[q6#;F^qF`r@$-FS6$Fbp<%%$setG%&
arrayGF(C$-Feo6*F"FbpF\oFbrF<FfnFjqQ!F9@%-FS6$&FV6#!""FY-%'RETURNG6#%"%G-Fet6%F
gt-%,Janet/jezipG6$FfnF\o-F[u6$FjqFbr@%0Fbr7"C%>8)7$-Fep6#&F<6#F^q-FepF[o>8*-%1
Janet/JanetBasisG6%FduFCFH>8+-%.Janet/BaseChgG6'FbpFbrF\vFjqF]t>Fav""!>8,7$Ffu-
Fep6#-%$zipG6%f*6$Fio%"bGF9FjoF9,&FbpF^qF\oFctF9F9F9F\oFfn>8--F^v6%FhvFCFH>Fdw-
F>6$FdwFA-%7Janet/AssertJanetBasisG6#-Fep6#Fdw-%0Janet/InvReduceG6$,&FbpF^q-%%s
ubsG6$F]uFavFctFdw-%(collectG6$-F>6$FgtFAFfn,&FavF^qFgtF^q@%F_tFgtFitF9F9F9F9
M7R0
I4homalg/Janet/JBasisf*6$%#_MG%%ivarG6-%"iG%%dvarG%%tvarG%"MG%"NG%#N1G%#N2G%"oG
%$ordG%%elimG%$POTG6#%jnCopyright~(C)~2004-2010~by~Daniel~Robertz.~All~rights~r
eserved.G6"C(>8-%&falseG>8.F9?(8+""$"""9#%%trueG@%-%%typeG6$&9"6#F=%)equationG@
'/-%$lhsG6#FFQ3POSITION_OVER_TERMF5@%-FD6$-%$rhsGFN%(booleanG>F;FS-%&ERRORG6#%Y
expecting~boolean~value~for~"POSITION_OVER_TERM"~option.G/FLQ,ELIMINATIONF5@%FQ
>F8FS-FX6#%Rexpecting~boolean~value~for~"ELIMINATION"~option.G-FX6#%0unknown~op
tion.G-FX6#%0invalid~option.G@%F;>8,F?>FdoF>@$4F8>Fdo,&FdoF?F?F?@%-FD6$9$-%%lis
tG6#%"=GC+@$/F]p7"-FX6#%/invalid~input.G@%-%.Janet/jchkdopG6#-FM6#&F]p6#F?>8%7#
.%#_dG>Fbq7#-%$seqG6$-%$catG6$Fdq8$/F^r;F?-%%nopsGF\q@%-F[q6#-FTF^q>8&7#.%#_TG>
Fhr7#-Fiq6$-F\r6$FjrF^r/F^r;F?-FbrFer>8'-%$mapG6$f*6#%"aGF56$%)operatorG%&arrow
GF57$-%#opG6#-FM6#F]p-Fbt6#-Fhs6$f*6#%"bGF5F]tF5,$F]p!""F5F5F5-FTFetF5F5F5F]p>F
fs-%,Janet/AppOpG6&Ffs7$-Fbt6#Fbq-Fbt6#Fhr9%Fdu>8(&-%1Janet/JanetBasisG6&FfsFiu
FbqFdoF`q@%/-FbrFfuF?>8)-Fhs6$Fbt-%(convertG6$-%.Janet/Diff2OpG6%F[vFiuFbq%)lis
tlistG>FdvFgv@%/-FbrFhuF?>8*-Fhs6$Fbt-Fhv6$-F[w6%,$F[vF^uFiuFhrF]w>FcwFfw-%$zip
G6%f*6$F\tF\uF5F]tF5/F]pFiuF5F5F5FdvFcwC&@%-FD6$F]pF_pC$@$5Fdp4-FD6$F_qF_pFfp@%
-F[qF^q>FbqFcq>Fbq7#-Fiq6$F[r/F^r;F?-FbrF^q>Fbq7#-Fiq6$F[r/F^r;F?-&%'linalgG6#%
'coldimGFet>Ffs-Fbu6&F]pFbqFiuFbq>F[vF\v@%FavFevFgvF5F5F5F5
M7R0
I;Janet/PDEHilbertPolynomialf*6"6C%"bG%"dG%#dpG%"iG%"jG%"lG%"nG%"pG%"sG%&n_mulG
%,given_basisG%"FG%$resG%0tmp_T_List_dataG%%ivarG%%dvarG%)dops_ordG%)ivar_degG%
)dvar_degG%)ideg_ordG%)ddeg_ordG%&_ivarG%)dvar_posG%&oivarG%&m_ordG%$fmtG%%dops
G%'ldprocG%&B_OrdG%)dvar_cmpG%*want_simpG%+force_simpG%+constcoeffG6#%jnCopyrig
ht~(C)~2007-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C*>8,%%NULLG>8<""%@%
519#""#32FTFS555-%%typeG6$&9"6#""$%)equationG-Fen6$Fgn%(integerG-Fen6$Fgn-%%lis
tG6#F^o-Fen6$Fgn%'stringG>8.%&falseG>Fho%%trueG@%FhoC@>817+%'T_ListG%)number_tG
%(Tab_VarG%$nivG%$zedG%&Nu_StG%&COMPAG%)Glob_SOLG%-_jforce_simpG>82-%/Janet/get
_varsG6$&Fhn6#FTFgn>83&F[qF`q>84&F[qFin>85&F[q6#FO>86&F[q6#""&>87&F[q6#""'>88&F
[q6#""(>89&F[q6#"")>8:&F[q6#""*>F[q&F[q6#""">8;-%/Janet/get_optsG6$F[q&Fhn6#;FO
FS>FN&FisF`q>8B&FisFbs?&8'&FisFfsF[p@'-Fen6$Fft%%nameG@%/FKFL>FKFft-%&ERRORG6#%
Qcannot~determine~which~indeterminate~to~plug~in.G3-Fen6$FftF[o/-%#opG6$FgsFftQ
$varF$@%F]u>FK-Fhu6$FTFftF_u-F`u6#%0invalid~option.G>Fis&FisFin>8/-%0Janet/get_
inputG6*&FhnFfsF[qFbqFisF[s7"FjvFio>8=&FevF`q@$1FOF\w-F`u6#%_pdifferential~equa
tions~are~expected~to~be~given~as~list~of~differential~expressions.G>8>&FevFjq>
8C5Fct&FevF^r>8D&FevFcr>Fev&FevFfs>Feq-%%subsG6$-%,Janet/jezipG6$F[qFdwFeq>8)-%
.Janet/get_ordG6,FNFdwFbqFeqFhqF\rFarFfrF`s34FgwF[x>8?&FgxFfs>8@&FgxFin@$&FgxFj
q>F`sFjv>8A&FgxF^r-%2Janet/setupT_ListG6.FevF[qFbqF[sFisFdwF^yFayF`sFhqF\rFgyC$
@$4-%)assignedG6#Fap-F`u6#%Pmissing~involutive~basis;~run~JanetBasis~first.G?&F
ftFhnF[p@)-Fen6$Fft%*nonnegintG>FKFftFit@%F]u>FKFftF_uFcu@%F]u>FKF]vF_uF_v@$F]u
>FK.FK@%/&Fap6%FgsFdrFgs""!>80Ff[l@%%0Janet/janetlikeGC%>Fh[lFf[l>8*-%%nopsG6#&
Fap6%FgsFjnFgs?&FftFapF[pC%>8--%*numboccurG6$&FftF^r%)infinityG>8%-%(convertG6$
&Fft6$FjnFgs%"+G@%/Fg\lF^\l>Fh[l,&Fh[lFgs-%)binomialG6$,*Fg\lFgsFKFgsF^]l!""F]^
lFgs,&Fg\lFgsF]^lFgsFgsC'>8$-Fax6$/F\]lFf[lF[]l>8+7#-%"$G6$Ff[lF^\l>Fh[lFh]l>Ff
^l-%.Janet/nextmonG6$Ff^lFa^l?(F$FgsFgsF$0Ff^lFg^lC%>8&-F`]l6$Ff^lFd]l>Fh[l,&Fh
[lFgs-Fj]l6$,,Fg\lFgsFKFgsF^]lF]^lFd_lF]^lF]^lFgsF^^lFgs>Ff^lF]_l>Fh[l-%$addG6$
-Fj]l6$,*-Fi\l6$&Fap6$FftF_rF\]lFgsFKFgs-F`]l6$&Fap6%FftFjnFgsFd]lF]^lF]^lFgs,&
Fd`lFgsF]^lFgs/Fft;Fgs-F`\lFaz@$Fho-%4Janet/restoreT_ListG6#F_p-%'expandG6#Fh[l
F$F$F$F$
M7R0
I-Janet/deglexf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%jnCopyright~(C)~2000-2010~by~Dan
iel~Robertz.~All~rights~reserved.G6"C&>8%-%(convertG6$&9$6#"""%"+G>8&-F26$&9%F6
F8@'2F0F:-%'RETURNG6#%%trueG2F:F0-FB6#%&falseG?(8$F7F7-%%nopsG6#F4FD@&2&F=6#FJ&
F4FQFF2FRFPFA@%2&F56#""#&F>FWFHFDF-F-F-F-
M7R0
I5Janet/SimplifySinCosf*6#%#_aG6*%"aG%"eG%"iG%"vG%'sincosG%%candG%#l1G%#l2G6#%j
nCopyright~(C)~2009-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$>8'-%*subs
tringG6$-%(convertG6$-%+kerneloptsG6#%(versionG%'stringG;""""")@%5-%%typeG6$9$<
&%'matrixG%&arrayG%)listlistG%%listG330F4Q)Maple~V,F10F4Q)Maple~6.F1-FF6$FH%'Ma
trixG-%$mapG6$F"FHC'>8$FH>8*-%'lengthG6#Ffn>8(-%'selectG6$f*6#F)F16$%)operatorG
%&arrowGF15/-%#opG6$""!FH%$sinG/Fho%$cosGF1F1F1-%'indetsGF[o?&8%F]o%%trueGC%@%/
-Fio6$F[pFbpF\p>8)-%'normalG6#-%(algsubsG6$/*$Fbp""#,&FAFA*$-F^p6#-Fio6$FAFbpFc
q!""Ffn>Fjp-F\q6#-F_q6$/Fbq,&FAFA*$-F\pFgqFcqFjqFfn>8+-Fjn6#Fjp@&2FerFhnC$>FfnF
jp>FhnFin/FerFhn@$2-%0Janet/countplusGFgr-FasF[oC$>FfnFjp>FhnFinFfnF1F1F1F1
M7R0
I3Janet/jplex_lc_POTf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~2010~by~Da
niel~Robertz.~All~rights~reserved.G6"C(@&2&9$6#""#&9%F3-%'RETURNG6#%&falseG2F5F
1-F86#%%trueG?(8$"""FA-%%nopsG6#&F26#FAF>@&2&FE6#F@&&F6FFFJF<2FKFIF7>8%-%(conve
rtG6$&&F26#""$FF%"+G>8&-FQ6$&&F6FUFFFW@'2FOFYF<2FYFOF7?(F@-FC6#FS!""FAF>@&2&Ffn
FJ&FSFJF<2FboFaoF7F>F-F-F-F-
M7R0
I4Janet/deglex_lc_POTf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~2010~by~D
aniel~Robertz.~All~rights~reserved.G6"C*@&2&9$6#""#&9%F3-%'RETURNG6#%&falseG2F5
F1-F86#%%trueG>8%-%(convertG6$&F26#"""%"+G>8&-FB6$&F6FEFG@'2F@FIF<2FIF@F7?(8$FF
FF-%%nopsG6#FDF>@&2&FL6#FQ&FDFXF72FYFWF<>F@-FB6$&&F26#""$FEFG>FI-FB6$&&F6FjnFEF
G@'FNF<FOF7?(FQ-FS6#Fhn!""FFF>@&2&F_oFX&FhnFXF<2FioFhoF7F>F-F-F-F-
M7R0
I?Janet/deglex_deg_lc_dvar_blockf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%enCopyrigh
t~(C)~2010~by~Daniel~Robertz.~All~rights~reserved.G6"C+@&2&%,_dvarblocksG6#&9$6
#""#&F36#&9%F7-%'RETURNG6#%&falseG2F9F2-F>6#%%trueG>8%-%%nopsG6#&F66#""">8&-%$a
ddG6$*&&FJ6#8$FL&%)_jvardegGFTFL/FU;FLFF>8'-FP6$*&&&F<FKFTFLFVFLFX@'2FNFenFB2Fe
nFNF=?(FUFLFLFFFD@&2FinFSF=2FSFinFB>FN-%(convertG6$&&F66#""$FK%"+G>Fen-Fdo6$&&F
<FhoFKFjo@'F\oFBF]oF=?(FU-FH6#Ffo!""FLFD@&2&F^pFT&FfoFTFB2FhpFgpF=@%2F5F;F@FDF.
F.F.F.
M7R0
I7Janet/block_ord_lc_POTf*6&%"aG%"bG%$sepG%+termordersG6%%"iG%$tdaG%$tdbG6#%enC
opyright~(C)~2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$@&2&9$6#""#&9%F5-
%'RETURNG6#%&falseG2F7F3-F:6#%%trueG@'4-&9'6#"""6$7$&&F4FF6#;FG&9&FFF37$&&F8FFF
LF7F</FJFQC'?(8$F6FG-%%nopsG6#FOF@@&4-&FE6#FV6$7$&FK6#;,&&FO6#,&FVFG!""FGFGFGFG
&FOFhnF37$&FRF\oF7F90F[oFeoF>>8%-%(convertG6$&&F46#""$FF%"+G>8&-Fjo6$&&F8F^pFFF
`p@'2FhoFbpF>2FbpFhoF9?(FV-FX6#F\pFboFGF@@&2&FepFhn&F\pFhnF>2F`qF_qF9F@F@F/F/F/
F/
M7R0
I6Janet/degrevlex_blockf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%jnCopyright~(C)~2004-20
10~by~Daniel~Robertz.~All~rights~reserved.G6"C%>8%-%(convertG6$&9$6#"""%"+G>8&-
F26$&9%F6F8@'2F0F:%%trueG2F:F0%&falseGC$?(8$-%%nopsG6#F4!""F7FA@&2&F=6#FF&F4FN-
%'RETURNG6#FA2FOFM-FQ6#FCFAF-F-F-F-
M7R0
I8Janet/degrevlex_deg_POTf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%jnCopyright~(C)~2
000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C'@&2&9$6#""#&9%F4-%'RETURNG
6#%&falseG2F6F2-F96#%%trueG>8%-%%nopsG6#&F36#""">8&-%$addG6$*&&FE6#8$FG&%)_jvar
degGFOFG/FP;FGFA>8'-FK6$*&&&F7FFFOFGFQFGFS@'2FIFVF?2FVFIF;C$?(FPFA!""FGF?@&2FZF
NF=2FNFZF8F?F.F.F.F.
M7R0
I1Janet/Dresultantf*6&%"TG%"LG%&ivarsG%&dvarsG62%"aG%"bG%"dG%"iG%"jG%"mG%"nG%"x
G%$indG%"GG%"SG%#T1G%#L1G%%ivarG%%dvarG%&oivarG6#%jnCopyright~(C)~2004-2010~by~
Daniel~Robertz.~All~rights~reserved.G6"C.@%-%%typeG6$9$%%listGC.>81-%/Janet/get
_varsG6$9&9'>82&FF6#""#>FF&FF6#""">83&-%/Janet/get_optsG6$FF&9"6#;""&9#6#""$>8-
-%0Janet/get_inputG6*FBFFFMFVFV7"Fbo%&falseG@$0-%%nopsG6#&F^oFSFT-%&ERRORG6#%fn
expecting~(a~list~of)~one~ordinary~differential~expression.G>8/&&&FioFSFSFS>F^o
-F`o6*9%FFFMFVFVFboFboFco@$FeoFjo>80F`p>8,&%"DG6#FR>8+FRC&@%-F@6$FJFC>F`q&FJFS>
F`qFJ@%-F@6$FKFC>F[q&FKFS>F[qFK>F_pFB>FipFfp@$5/F_p""!/FipFcr-%'RETURNG6#Fcr>8)
-%'degreeG6$F_pF[q>8*-F[s6$FipF[q@&/F^sFcr-Ffr6#)FipFir/FirFcr-Ffr6#)F_pF^s>&8$
Fgr-%%subsG6$/F[qFcrF_p?(8'FTFTFir%%trueG>&F\t6#Fbt-%&coeffG6$F_p)F[qFbt>&8%Fgr
-F^t6$F`tFip?(FbtFTFTF^sFct>&F]uFft-Fht6$FipFjt>8&f*6$F-F.F<6$%)operatorG%&arro
wGF<@'2FfpFcrFcr/FfpFcrFB-%%diffG6$FB-%"$G6$T#FfpF<F<6$F1F`q>8.-%'matrixG6%,&F^
sFTFirFTF\wf*6$F.F-6#%"kGF<F<@%1FBFev-%$addG6$*&-%)binomialG6$,&FBFT!""FT,(FfpF
TF[xFTF\tF[xFT-T'6$&T%6#F\t,(FBFTFfpF[xF\tFTFT/F\t;FcrT)-Fdw6$*&-Fhw6$,(FBFTF[x
FTFevF[xF\xFT-F^x6$&T+Fbx,*FBFTFevF[xFfpF[xF\tFTFT/F\t;FcrFevF<F<6,F0F^sF*F\tF,
FfuF/FirF+F]u-&%'linalgG6#%$detG6#FhvF<F<F<F<
M7R0
I0Janet/janet_divf*6&%"LG%&_ivarG%%dopsG%)rhs_dvarG62%"aG%"eG%"iG%"jG%"gG%"lG%"
pG%"FG%"QG%"kG%"nG%#suG%$conG%#ldG%#lmG%(allmultG6#%\pCopyright~(C)~2000-2010~b
y~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C*>8.-%%nopsG6#9$@$/
F?""!-%'RETURNG6#7$FC7">837#-%"$G6$%)infinityG%$nivG>8+FC>8,FK>FU-%'subsopG6$/F
?7)&FU6$F?"""&FU6$F?""#&FU6$F?""$7#-FP6$FFFSFM&FU6$F?""'FKFU?(8&,&F?Fjn!""FjnFj
oFjn%%trueGC(>8/FM>80&FU6$Fho""%>8'Fjn?(F<FjnFjnF<31FepFS/&FU6&,&FhoFjnFjnFjnF`
oFjnFep&FU6&FhoF`oFjnFepC%>F^p-FZ6$/Fep&FU6%F\q""&FepF^p@%2&F^p6#FepFR@$0&F`pFj
q,&FiqFjnFjnFjnC)>8(7$-%#opG6#-%,Janet/derivG6'-FZ6$/FepF^rFao&FU6$FhoFjn9%9&9'
,(&FU6%FhoFjnF`oFjnFiqFjnFjnFjn>81-FZ6$/Fep,(F]qFjnFiqFjnFjnFjn&FU6%FhoF`oFjn>8
2-%$mulG6$)&F_s6#8$&FesFct/Fdt;FjnFS>8-7#-%'coeffsG6%&Far6$Fjn&FU6%FhoF`oF]oF_s
.8)-%'memberG6%F]t7#Fcu.8*>FW7$-Fdr6#FW7)Far&FU6$FhoF]o7$FesF`uFaoFM7$&Fit6#Fiu
F]t&FU6$FhoF`o>F`p-FZ6$F[sF`p>F`p-FZ6$/FepFFF`p>Fep,&FepFjnFjnFjn@$FhpC$@%%0Jan
et/janetlikeGC%>8%,&FjpFjnF]qFjo>F^p-FZ6$/Fep,&FfwFjnFjoFjnF^p@$0F]rFfwC)>Far7$
-Fdr6#-Fgr6'-FZ6$/FepFfwFaoF\sF^sF_sF`s,&FbsFjnFfwFjn>Fes-FZ6$/Fep,&F]qFjnFfwFj
nFjs>F]tF^t>FitFjtFdu>FWF[v>F`p-FZ6$FhxF`pC$>F^p-FZ6$F]wF^p@$/F]rFFC)>Far7$-Fdr
6#-Fgr6'-FZ6$/FepFjnFaoF\sF^sF_sF`s,&FbsFjnFjnFjn>Fes-FZ6$/Fep,&F]qFjnFjnFjnFjs
>F]tF^t>FitFjtFdu>FWF[v>F`p-FZ6$FdzF`p>F`p-FZ6$-%$seqG6$/FitFF/Fit;F_wFSF`p>FU-
FZ6$/Fho-FZ6$/FcpF`p-FZ6$/FfqF^p&FU6#FhoFU7$FUFWF<F<F<F<
M7R0
I0Janet/jrepljetsf*6$%$numG%$varG6$%"iG%%nvarG6#%[oCopyright~(C)~2000-2002~by~M
ohamed~Barakat.~All~rights~reserved.G6"C$>8%7#-%#opG6$"""-%(unapplyG6$%$_XXG-F2
6#9%7#-%$seqG6$&F/6#8$/FB;,&9$F4F4F4-%%nopsGF:F,F,F,F,
M7R0
I-Janet/Pol2Opf*6$%"LG'%%ivarG%%listG6$%"iG%%dvarG6#%jnCopyright~(C)~2002-2010~
by~Daniel~Robertz.~All~rights~reserved.G6"C$@%2""#9#>8%&9"6#""$@'-%%typeG6$9$%'
matrixG>F57#-%$seqG6$-%$catG6$%#_XG8$/FI;"""-&%'linalgG6#%'coldimG6#F>-F<6$F>F(
@'-F<6$&F>6#FL%)equationG@%-F<6$-%$lhsG6#FXF(>F57#-FC6$FE/FI;FL-%%nopsG6#Fhn>F5
7#FH-F<6$FXF(>F57#-FC6$FE/FI;FL-FboFjn>F5Feo>F5Feo@%-%(hastypeG6$F>FZ@%FS-%.Jan
et/Diff2OpG6%-%/Janet/Pol2DiffG6%-%$mapG6$f*6#F*F.6$%)operatorG%&arrowGF.@%-F<F
dp-FinFRF>F.F.F.F>9%F5FgqF5-Fgp6%-Fjp6%FfqFgqF5FgqF5-Fgp6%-Fjp6%F>FgqF5FgqF5F.F
.F.F.
M7R0
I3Janet/coord_reducef*6$%"LG'%"GG%%listG6=%"hG%"iG%"lG%"rG%"FG%%ivarG%%dvarG%)d
ops_ordG%)ivar_degG%)dvar_degG%)ideg_ordG%)ddeg_ordG%)dvar_posG%&_ivarG%&oivarG
%&m_ordG%"JG%'nlvarsG%%dopsG%'ldprocG%$ndvG%)dvar_cmpG%$RedG%#_LG%)rhs_dvarG%*w
ant_simpG%/tail_reductionG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Dan
iel~Robertz.~All~rights~reserved.G6"CC@$52-%%nopsG6#9%""$2""&FL-%&ERRORG6#%fnse
cond~argument~is~expected~to~be~the~output~of~JanetBasis.G>8)-%/Janet/get_varsG
6$&FO6#""#&FO6#FP>8*&FXFgn>8+&FXFjn>8,&FX6#""%>8-&FX6#FR>8.&FX6#""'>8/&FX6#""(>
81&FX6#"")>80&FX6#""*>FX&FX6#""">88-FM6#F\o>82-%/Janet/get_optsG6%FX-%#opG6#-%'
subsopG6&/Faq%%NULLG/FhnFbr/FPFbrFO&9"6#;FP9#>83&FgqFgn>84&FgqFdo>85&FgqFio>8<&
FgqFgp>8=&FgqF\q>8>&Fgq6#"#5>Fgq&FgqFjn>867#-%$seqG6$&%"DG6#&Fgq6#8%/F[u;Faq-FM
6#FX>F_o-%%subsG6$-%,Janet/jezipG6$FXFatF_o>8&-%.Janet/get_ordG6,F[sFatF\oF_oFb
oFgoF[pF`pFjp%&falseG>87&FhuF`q@$&FhuFdo>Fjp7">89&FhuFio>F^v-%&parseG6#-%$catG6
1Q9h->`Janet/lead_deriv`(h,FG-%(convertG6$Fcq%'stringGQ",FG-F`w6$FatFbwFcw-F`w6
$-%%evalG6#F^vFbwFcw-F`w6$FjpFbwFcw-F`w6$FboFbwFcw-F`w6$FgoFbwFcw-F`w6$-Fiw6#Fe
vFbwQ")FG>8:Fbr@%/FgqFX>8;-%/Janet/jeqn2prdG6&-%.Janet/jmklistG6#9$FXF\oQ!FG>F[
y-F]y6'F_yFXF\oFgqFcy>F[y-Fbu6$-Feu6$FgqFepF[y>F[y-%,Janet/subsDG6%F[y7#-Fdt6$&
FgtFjt/F[u;Faq%$nivGFat?&8$F[y%%trueGC%>8'-%-Janet/reduceG6+7$-F\r6#Fhz""!FatF^
vFepFgqF^sFasFcvFcv>&F\[lFgn-F`w6$Fe[lFgt@%/&F\[lF`q%$zedG>Fgx6$Fgx-Fbu6$-Feu6$
FepFgqFe[lC&>F\[l7$-%$mapG6$f*6#%"aGFG6$%)operatorG%&arrowGFG-%(collectG6%-%)si
mplifyGFayT#%,distributedGFGFG6$F<FatFj[lFe[l>F\[l-Fbu6$F`\l-Fbu6$-Feu6$FatF`zF
\[l@%Fix>F\[l-%/Janet/jprd2eqnG6&F\[lFXF\oFcy>F\[l-F`^l6'F\[lFXF\oFgqFcy>Fgx6$F
gx-F\r6#Fj[l-%'RETURNG6#7#FgxFGFGFGFG
M7R0
I.Janet/jjD2jetf*6"F$6%%XCopyright~(C)~2005~by~Arne~Lorenz.~All~rights~reserved
.G%'systemG%)rememberGF$@%/&9"6#""#7"&F,6#"""&F06#-%#opG6#F+F$F$F$F$
M7R0
I.Janet/BaseChgf*6%%%exprG'%$basG%%listG%$_JBG6%%#JBG%%nbasG%%SUBSG6#%ioCopyrig
ht~(C)~2003~by~Mohamed~Barakat~and~Anna~Fabianska.~All~rights~reserved.G6"C*>8$
-%(convertG6$9&%%diffG@%32""$9#4-%%typeG6$&9"6#""%%'stringGC$>8%-%.Janet/jmklis
tG6#FB@$0-%%nopsG6#9%-FP6#FI-%&ERRORG6#%UThere~must~be~as~many~basis~names~as~b
asis~elements!G>FI-%$mapG6$f*6#%"aGF06$%)operatorG%&arrowGF0--%$catG6$%#_XG9$6#
-%#opG6#%%ivarGF0F0F07#-%"$G6#;"""FO@$-F@6$Fbo<%%$setG%&arrayGF(-%'RETURNG6#-Fe
n6&F"FboFRF3>8&-%3Janet/ParamBaseChgG6&FRF3FIQ!F0-%7Janet/AssertJanetBasisG6#-F
eo6#F3-F56$-%)simplifyG6#-%%subsG6$Fjp-%0Janet/InvReduceG6$FboF3F8-%(collectG6$
%"%GFI@%-F@6$&FC6#!""FFFbr6$Fbr-%,Janet/jezipG6$FIFRF0F0F0F0
M7R0
I4Janet/restoreT_Listf*6#%%dataG6"6#%jnCopyright~(C)~2006-2010~by~Daniel~Robert
z.~All~rights~reserved.GF&@$09$7"C+>%'T_ListG&F+6#""">%)number_tG&F+6#""#>%(Tab
_VarG&F+6#""$>%$nivG&F+6#""%>%$zedG&F+6#""&>%&Nu_StG&F+6#""'>%&COMPAG&F+6#""(>%
)Glob_SOLG&F+6#"")>%-_jforce_simpG&F+6#""*F&6+F>FCF/F4F9FHFMFRFWF&F&
M7R0
I/Janet/PDEBasisf*6"6B%"bG%"iG%"jG%"lG%"pG%"sG%,given_basisG%$fmtG%&m_ordG%"FG%
0tmp_T_List_dataG%%ivarG%%dvarG%%dopsG%)dops_ordG%)ivar_degG%)dvar_degG%)ideg_o
rdG%)ddeg_ordG%&_ivarG%)dvar_posG%&oivarG%$ndvG%'ldprocG%&B_OrdG%)dvar_cmpG%#su
G%#lmG%*want_simpG%+force_simpG%+constcoeffG%$resG6#%jnCopyright~(C)~2007-2010~
by~Daniel~Robertz.~All~rights~reserved.GF$C+>8,""%>8>%%NULLG@'5/9#""#32FSFR5555
-%%typeG6$&9"6#""$%)equationG-Fen6$Fgn%(integerG-Fen6$Fgn-%%listG6#F^o-Fen6$Fgn
%'stringG333-Fen6$&Fhn6#FSFbo-Fen6$FgnFbo-%$hasG6$&Fhn6#"""Fgn4-Fap6$FcpF\p>8*%
&falseGFU>Fjp%%trueG-%&ERRORG6#%crexpecting~argument~sequence~to~begin~either~w
ith~a~Janet~basis~or~with~the~lists~of~independent~and~dependent~variables.G@%F
jpC?>8.7+%'T_ListG%)number_tG%(Tab_VarG%$nivG%$zedG%&Nu_StG%&COMPAG%)Glob_SOLG%
-_jforce_simpG>8/-%/Janet/get_varsG6$F\pFgn>80&FarF]p>8:-%%nopsG6#Ffr>82&FarFin
>83&Far6#FK>84&Far6#""&>85&Far6#""'>86&Far6#""(>87&Far6#"")>88&Far6#""*>Far&Far
Fdp>89-%/Janet/get_optsG6$Far&Fhn6#;FKFR>FJ&F`uF]p>8@&F`uF[u>8--%0Janet/get_inp
utG6*FcpFarFfr&F`uFinFdt7"FbvF[q>8+&F]vF]p@$1FKFdv-F_q6#%_pdifferential~equatio
ns~are~expected~to~be~given~as~list~of~differential~expressions.G>81&F]vFcs>8A5
Fju&F]vFgs>8B&F]vF\t>F]v&F]vFdp>F^s-%%subsG6$-%,Janet/jezipG6$FarF\wF^s>8'-%.Ja
net/get_ordG6,FJF\wFfrF^sFasFesFjsF_tFit34F_wFcw>8;&F_xFdp>8<&F_xFin@$&F_xFcs>F
itFbv>8=&F_xFgs-%2Janet/setupT_ListG6.F]vFarFfrFdtFavF\wFfxFixFitFasFesF_yC*@$4
-%)assignedG6#Fgq-F_q6#%Pmissing~involutive~basis;~run~JanetBasis~first.G>Fir-F
[s6#&Fgq6%FepFepFep>Far-FcrFhp>FfrFgr>FarF^u@$0-F[s6#Far-F[s6#&Fgq6%FepFjnFep-F
_q6#%Gwrong~number~of~independent~variables.G@$0FjrFir-F_q6#%Ewrong~number~of~d
ependent~variables.G>F`u-Fbu6$Far&Fhn6#;FjnFR?&8%&F`uFdpF]q@%3-Fen6$F]\lF[o/-%#
opG6$FepF]\lQ%subsF$C$@$-Fen6$-Fe\l6$FSF]\lFbo-F_q6#%Hexpecting~expression~for~
option~"subs".G>FMF\]l-F_q6#%0invalid~option.G>F`uFav@%/&Fgq6%FepF]tFep""!@%/Fi
rFep>8CFj]l>F^^l7#-%"$G6$Fj]lFir@%F\^l@%%0Janet/janetlikeGC$>F^^lFj]l?&F]\lFgqF
]q@%/&F]\lFgs7#-Fb^l6$%)infinityGFjq>F^^l,&F^^lFep*&-%$mulG6$)&F`u6#8&&F]\l6%Fj
nFepFj_l/Fj_l;FepFjqFep-Fe_l6$,&FepFepFh_l!""F]`lFb`lFepC)>8$-Fiw6$/F`_lFj]lF\_
l>8(7#-Fb^l6$Fj]lFjq>8?Fd_l?(Fj_lFepFepFjqF]q@$/&F]\l6$FhsFj_lF`_l>F_al*&F_alFe
pFa`lFb`l>F^^l,&F^^lFepF_alFep>Fj`l-%.Janet/nextmonG6$Fj`lFe`l?(F$FepFepF$0Fj`l
F[alC$>F^^l,&F^^lFep*&F_alFep-Fe_l6$)Fh_l&Fj`lFi_lF]`lFepFep>Fj`lFjal>F^^l-%$ad
dG6$*&-Fe_l6$)Fh_l&&Fgq6#F]\lF\`lF]`lFep-Fe_l6$)Fa`l-Fiw6$/F`_lFep&FaclFdalF]`l
Fb`l/F]\l;Fep-F[sFiyC$>8)F`^l@%Ff^lC$>F^^lF_dl?&F]\lFgqF]q@%F[_l>F^^l-%'expandG
6#,&F^^lFep-%'subsopG6$/&F]\l6$FjnFSFc_lF_dlFepC)>Fe`lFf`l>Fj`lF[al>F_alFd_l?(F
j_lFepFepFjqF]q@$Fbal>F_alFfal>F^^l-Fgdl6#,&F^^lFep-F[el6$/F^elF_alF_dlFep>Fj`l
Fjal?(F$FepFepF$F^blC$>F^^l-Fgdl6#,&F^^lFep-F[el6$/F^elFbblF_dlFep>Fj`lFjal>F^^
l-Fgdl6#-Fjbl6$-F[el6$/&Fgq6%F]\lFjnFSF\clF_dlFjcl@$Fjp-%4Janet/restoreT_ListG6
#Feq@%0FMFN-Fiw6$-%$mapG6$f*6#F'F$6$%)operatorG%&arrowGF$/9$T#F$F$6$F@FMF`uF^^l
F^^lF$F$F$F$
M7R0
I3Janet/degrevlex_lcf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~2010~by~Da
niel~Robertz.~All~rights~reserved.G6"C)>8%-%(convertG6$&9$6#"""%"+G>8&-F26$&9%F
6F8@'2F0F:-%'RETURNG6#%%trueG2F:F0-FB6#%&falseG?(8$-%%nopsG6#F4!""F7FD@&2&F=6#F
J&F4FRFA2FSFQFF>F0-F26$&&F56#""$F6F8>F:-F26$&&F>FZF6F8@'F@FAFEFF?(FJ-FL6#FXFNF7
FD@&2&FinFR&FXFRFA2FboFaoFF@%2&F56#""#&F>FgoFHFDF-F-F-F-
M7R0
I0Janet/deglex_lcf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~2010~by~Danie
l~Robertz.~All~rights~reserved.G6"C)>8%-%(convertG6$&9$6#"""%"+G>8&-F26$&9%F6F8
@'2F0F:-%'RETURNG6#%%trueG2F:F0-FB6#%&falseG?(8$F7F7-%%nopsG6#F4FD@&2&F=6#FJ&F4
FQFF2FRFPFA>F0-F26$&&F56#""$F6F8>F:-F26$&&F>FYF6F8@'F@FAFEFF?(FJ-FL6#FW!""F7FD@
&2&FhnFQ&FWFQFA2FboFaoFF@%2&F56#""#&F>FgoFHFDF-F-F-F-
M7R0
I;Janet/deglex_lc_dvar_blockf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~20
10~by~Daniel~Robertz.~All~rights~reserved.G6"C*@&2&%,_dvarblocksG6#&9$6#""#&F26
#&9%F6-%'RETURNG6#%&falseG2F8F1-F=6#%%trueG>8%-%(convertG6$&F56#"""%"+G>8&-FG6$
&F;FJFL@'2FEFNFA2FNFEF<?(8$FKFK-%%nopsG6#FIFC@&2&FQ6#FV&FIFgnF<2FhnFfnFA>FE-FG6
$&&F56#""$FJFL>FN-FG6$&&F;F_oFJFL@'FSFAFTF<?(FV-FX6#F]o!""FKFC@&2&FdoFgn&F]oFgn
FA2F^pF]pF<@%2F4F:F?FCF-F-F-F-
M7R0
I.Janet/versionQ)13.12.106"F$
M7R0
I0Janet/degrevlexf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%\pCopyright~(C)~2000-2010~by~
Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C&>8%-%(convertG6$&9$6
#"""%"+G>8&-F26$&9%F6F8@'2F0F:-%'RETURNG6#%%trueG2F:F0-FB6#%&falseG?(8$-%%nopsG
6#F4!""F7FD@&2&F=6#FJ&F4FRFA2FSFQFF@%2&F56#""#&F>FXFHFDF-F-F-F-
M7R0
I;Janet/degrevlex_dvar_blockf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%jnCopyright~(C)~20
06-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C'@&2&%,_dvarblocksG6#&9$6#""
#&F26#&9%F6-%'RETURNG6#%&falseG2F8F1-F=6#%%trueG>8%-%(convertG6$&F56#"""%"+G>8&
-FG6$&F;FJFL@'2FEFNFA2FNFEF<?(8$-%%nopsG6#FI!""FKFC@&2&FQ6#FV&FIFhnFA2FinFgnF<@
%2F4F:F?FCF-F-F-F-
M7R0
I4Janet/block_ord_POTf*6&%"aG%"bG%$sepG%+termordersG6#%"iG6#%jnCopyright~(C)~20
04-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$@&2&9$6#""#&9%F3-%'RETURNG6
#%&falseG2F5F1-F86#%%trueG@'4-&9'6#"""6$7$&&F2FD6#;FE&9&FDF17$&&F6FDFJF5F:/FHFO
C$?(8$F4FE-%%nopsG6#FMF>@&4-&FC6#FT6$7$&FI6#;,&&FM6#,&FTFE!""FEFEFEFE&FMFfnF17$
&FPFjnF5F70FinFcoF<F>F>F-F-F-F-
M7R0
I,Janet/dmultf*6'%#_pG%"qG%%ivarG%&opvarG%$opsG6/%#dpG%#dqG%#ipG%#iqG%#npG%#nqG
%"iG%"jG%"pG%"rG%"zG%%fconG%$fopG6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz
.~All~rights~reserved.G6"C)@$5/9$""!/9%F@-%'RETURNG6#F@@$/F?"""-FD6#FB@$/FBFH-F
D6#F?@$/-%*intersectG6$-%'indetsGFJ<#-%#opG6#9&<"C$>8-*&F?FHFBFH-FD6#-%4Janet/n
ormalizeWeylG6$Fhn9'@%-%%typeG6$F?%"+G>8,-%(collectG6%F?F_o%,distributedG>FfoF?
@%-Fbo6$FfoFdoC%>8.-%%subsG6$-%$mapG6$f*6#F1F:6$%)operatorG%&arrowGF:F>F:F:F:F_
oFfo>Ffo-Fho6%,&FfoFHFap!""F_oFjo@%F]p>Fhn,&*&FapFHFBFHFH-Ffp6(F"FfoFBFZF_o9(FH
>Fhn,&FeqFH-F"6'FfoFBFZF_oFhqFHC'>6$8(8$-%1Janet/numerdenomG6#Ffo>8%-%&denomGFJ
>8&-FU6#F`r>8'-FU6#Ffr@%5/-FR6$Fjr<$FW-FX6#F_oFen/-FR6$F^s<#FgsFen@)-Fbo6$Ffo%"
^G@%-%$hasG6$FfoF_o@%-Fbo6$-FX6$""#Ffo%*nonnegintGC$>FhnFB?(8*FHFHFht%%trueG>Fh
n-F"6'-FX6$FHFfoFhnFZF_oFhq@%0-FR6$F^sFVFen>Fhn*&-F"6'*$FfoFaqFfrFZF_oFhqFH-%&n
umerGFJFH>Fhn*&FfoFHFBFH>FhnFbv-Fbo6$Ffo%"*GC(>8/%%NULLG>807"?&F_uFfoF`u@%-Fct6
$F_uF_o@%3-Fbo6$F_uFdo1FH-%%nopsG6#F\w-%&ERRORG6#/%Lexpecting~expanded~differen
tial~operator,~pGFfo>F\w7$-FXFiwF_u>Fiv6$FivF_u>FhnFB?&F_uF\wF`u@%-%'memberG6%F
_uF_o.8+>Fhn,&*&FhnFHF_uFHFH-&Fhq6#F[y6#FhnFH>Fhn-F"6'F_uFhnFZF_oFhq>Fhn*&-Ffv6
#FivFHFhnFH-Fhx6%FfoF_o.F_u>Fhn,&FbvFH-&Fhq6#F_uFJFHC$@$Fbt-F[x6#/%Bunable~to~m
ultiply~p~and~q,~(p,q)G6$FfoFB>FhnFbvC$>Fhn-%,Janet/DlclmG6&FfrF`rFZF_o@%0-FR6$
-FU6#FarF\tFen>Fhn,$*(-F"6'Far&Fhn6#FjtFZF_oFhqFaq&Fhn6#FHFHF_vFHFaq>Fhn,$**Far
Faq-F`v6#Fj[lFaqF\\lFHF_vFHFaqF\oF:F:F:F:
M7R0
I/Janet/jcontentf*6$%"fG'%%ivarG%%listG6&%$indG%"cG%"gG%"iG6#%jnCopyright~(C)~2
000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C*@$45-%%typeG6$9$%"+G-F66$F
8%"*G@%-%$hasG6$F89%-%'RETURNG6#"""-FC6#F8>8$-%'selectG6%F?7#-%#opG6#-%&minusG6
$-%'indetsGFG<#-FO6#FAFA>FI-%%sortG6$FIf*6$%#aaG%#bbG6&%"aG%"bGF-%"jGF0F0C)>FIF
8>8&""!?(F0FEFEF0/-FO6$FcoFI%%diffGC$>Fbo,&FboFEFEFE>FI-FO6$FEFI>8%FA>8'Fco?(F0
FEFEF0/-FO6$FcoF`pFhoC$>Fbp,&FbpFEFEFE>F`p-FO6$FEF`p-%&evalbG6#2FbpFboF0F0F0>FI
7$-FO6#FIFW>FboF8?(FbpFEFE-%%nopsGFdq%%trueG>Fbo-%%subsG6$/&FI6#Fbp-%$catG6$%#_
XGFbpFbo@%-F66$FboF9C$>F`p,$-%(contentG6$Fbo7#-%$seqG6$Far/Fbp;FEFgq!""?&FbpFbo
Fiq@$53-F66$Fbp%(numericG2FcoFbp3-F66$FbpF<2Fco-FK6%F6FbpF[tC$>F`p,$F`pFds[>F`p
-%'removeG6%F?FboF^sF`pF0F0F0F0
M7R0
I2Janet/criteria234f*6#'%"qG%%listG6(%"iG%"jG%"lG%"dG%#hgG%#hpG6#%jnCopyright~(
C)~2005-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%@$/&9$6#""#&F66#""$-%'
RETURNG6#%&falseG?(8$"""FB%)number_tG%%trueG@$-%1Janet/inv_divideG6%&%'T_ListG6
$FAF;&FJ6$FA""&F9C)>8&-%+Janet/jlcmG6$F5&FJ6$FAF8@$0FQF9C$>%(_jcrit2G,&FenFBFBF
B-F=6#FD>8'-%(convertG6$&FQ6#FB%"+G>8%FB?(F1FBFBF131FboFC2-F\o6$&FJ6%FboF;FBF`o
FjnC$@$/&FJ6%FboF;F8&F66$F;F8C%>8)-FS6$&FJ6$FboF;F5>8(-FS6$FgpFU@$333-%1Janet/c
divisibleG6$FdpFQ0-F\o6$&FdpF_oF`oFjn-Fbq6$FjpFQ0-F\o6$&FjpF_oF`oFjnC$>%(_jcrit
3G,&F`rFBFBFBFgn>Fbo,&FboFBFBFB@$0&F66#""(7"C%>Fjn-F\o6$&F9F_oF`o>FboFB?(F1FBFB
F13Feo4-%0Janet/degrevlexG6$FfrFgpC$@$-%7Janet/jnonmult_prolongG6%Fgp&FJ6$FboFN
F9C$>Fdp-FS6$&FJ6$FboF8F5@$3-Fbq6$FdpF9FdqC$>%(_jcrit4G,&FitFBFBFBFgn>FboFcrF<F
?F16%FenF`rFitF1F1
M7R0
I,Janet/jrestf*6$%#IIG%#JJG6%%"iG%#KKG%#poG6#%[oCopyright~(C)~2000-2002~by~Moha
med~Barakat.~All~rights~reserved.G6"C%>8%9$?&8$9%%%trueG@&-%'memberG6%F3F0.8&>F
0-%'subsopG6$/F;%%NULLGF05/F07"2""#9#-%'RETURNG6#FDF0F-F-F-F-
M7R0
I/Janet/jsortderf*6#%%lderG6&%(num_derG%%lordG%#iiG%%num_G6#%[oCopyright~(C)~20
00-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C)>8$-%%nopsG6#9$@$2F0""#-%'
RETURNGF3>8')"#5-%'lengthG6#F0>8%7#-%$seqG6$,&*&-%.Janet/jorderdG6#&F46#8&"""F;
FOFOFNFO/FN;FOF0>FB-%%sortG6#FB>FB-%$mapG6%f*6$%"aG%"bGF-F-F--%%iremG6$F49%F-F-
F-FBF;@%32FO9#/&9"6#F7!""7#-FE6$&F46#&FB6#,&F0FOFNFdo/FN;""!,&F0FOFdoFO7#-FE6$&
F46#&FBFMFPF-F-F-F-
M7R0
I/Janet/jjcoeffsf*6$%%exprG%%lvarG6#%$resG6#%[oCopyright~(C)~2000-2002~by~Moham
ed~Barakat.~All~rights~reserved.G6"C%>8$-%.Janet/jsumsepG6$9$-%.Janet/jmklistG6
#9%@$32""#9#-%%typeG6$&9"6#""$%'symbolG-%'assignG6$F?-%#opG6#-%$mapG6$f*6#%"aGF
+6$%)operatorG%&arrowGF+&F26#"""F+F+F+F.-FH6#-FK6$f*FNF+FPF+&F26#F:F+F+F+F.F+F+
F+F+
M7R0
I,Janet/AppOpf*6&%%operG%"eG%&ivarsG%&dvarsG6&%"iG%"vG%%ivarG%%dvarG6#%jnCopyri
ght~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%>8%-%*substringG6
$-%(convertG6$-%+kerneloptsG6#%(versionG%'stringG;""""")@$45-%%typeG6$9$<&%'mat
rixG%&arrayG%)listlistG%%listG330F3Q)Maple~V,F00F3Q)Maple~6.F0-FF6$FH%'MatrixG-
%&ERRORG6#%enexpecting~a~list~(of~lists)~or~a~matrix~as~first~argument.G@%/9#""
$C$>8&&-%0Janet/get_ivarsG6#9&6#F@@%33-FF6$FHFM0FH7"-%.Janet/jchkdopG6#&FHFao-%
/Janet/AppOpIndG6%-%-Janet/jmkmatG6#-%$mapG6$f*6#F*F06$%)operatorG%&arrowGF07#F
HF0F0F0FH9%F[o-F^p6%-Fap6#FHF\qF[oC&>F[o-%/Janet/get_varsG6$F`o9'>8'&F[o6#""#>F
[o&F[oFao@%Fco-%/Janet/Ind2DiffG6%-F^p6&-Fap6#-Fdp6$f*FgpF0FhpF0F[qF0F0F0FH-%/J
anet/Diff2IndG6%F\qF[oFhqF[oFhqF[oFhq-F`r6%-F^p6&F_qFirF[oFhqF[oFhqF0F0F0F0
M7R0
I1Janet/ParamDerivf*6$'%&ivarsG%%listG'%&dvarsGF'66%"dG%"iG%"jG%"kG%"mG%"sG%"tG
%"MG%"PG%%ivarG%%dvarG%&oivarG%$ndvG%'p_listG%.mult_var_listG%&monomG%)last_var
G%*sort_funcG%(genfuncG%1onlyconeverticesG6#%jnCopyright~(C)~2000-2010~by~Danie
l~Robertz.~All~rights~reserved.G6"C/@$4-%)assignedG6#%'T_ListG-%&ERRORG6#%Pmiss
ing~involutive~basis;~run~JanetBasis~first.G>80-%%nopsG6#&FH6%"""FTFT>8--%/Jane
t/get_varsG6$9$9%>8*&-%.Janet/get_ordG6,""%&FV6#FT&FV6#""#&FV6#""$&FV6#F\o&FV6#
""&&FV6#""'&FV6#""(&FV6#""*%&falseGFho>8.F_o>FVF]o@$0-FP6#FV-FP6#&FH6%FTFdoFT-F
J6#%Gwrong~number~of~independent~variables.G@$0-FP6#FepFN-FJ6#%Ewrong~number~of
~dependent~variables.G>8/FV>87Fcp>86Fcp?(8%FdoFT9#%%trueG@'-%%typeG6$&9"6#F`rF'
>FjqFgr-Fer6$Fgr%'stringGC$>8+Fgr?(8'FTFT-%'lengthG6#F`sFbr@(/&F`s6#FbsQ"CFA>F\
rFbr/FhsQ"GFA>F^rFbr0FhsQ!FA-FJ6#%0invalid~option.GFat@%5F^r4-Fer6$-%4Janet/Hil
bertSeriesGFA%(polynomGC&>817#-%$seqG6$7$7$7#-%"$G6$""!%$nivGF`r7#-Fgu6$%)infin
ityGFju/F`r;FTFN@$0&FH6%FTF\pFTFiuC'>8,-%%sortG6$FH%,Janet/plex3G>F`r-FPFG>F`s&
Fgv6$F`rFdo@$%0Janet/janetlikeGC$>8$-%%subsG6$/F^vFiu&Fgv6$F`rFio>FbsFeu?(FAFTF
TFA1FTF`rC,>8&FT?(FAFTFTFA31Fax-FP6#F^u4-%1Janet/inv_divideG6%&F^u6$FaxFT&F^u6$
FaxFaoF`s>Fax,&FaxFTFTFT@$2FexFax-FJ6#%cqthe~given~list~is~not~an~involutive~ba
sis~w.r.t.~the~given~variables.~You~have~to~call~JanetBasis~again.G>8(&F^u6%Fax
FTFT>82F]y>F^u-%'subsopG6$/Fax%%NULLGF^u>FaxFT?(FAFTFTFA31FaxFju/&Fgy6#Fax&F`s6
$FTFax>FaxF`y@$FezC%>F[z-F^z6$/FaxFiuF[z>F^u7$-%#opGFfx-Fau6$7$7$-F^z6$/Fax,&Fg
zFT8)FTFgy&F`sF`oF[z/F^\l;Fiu,(FizFTFgz!""Fc\lFT>Fgy-F^z6$/FaxFizFgy@%0Fgy&F`sF
^o>F^u7$Fd[l7$7$FgyF_\l-F^z6$/FaxF^vF[z@%FbwC$>Fbs-%.Janet/nextmonG6$FbsFew@%/F
bsFeuC$>F`r,&F`rFTFc\lFT@$F^xC$>F`sF_w@$FbwC$>FewFfw>FbsFeu>F`s7$,&&Fgv6%F`rFdo
FTFTFbsFTF_\lC$>F`rF\^l@$F^x>F`sF_w@$F\rC&>Fgv7#-Fau6$7$-%$mulG6$)&FjqFhz&F^u6&
F`rFTFTFax/Fax;FTFju&F^u6%F`rFTFao/F`r;FTFex>85f*6$%#t1G%#t2GFAFAFA@'2&FZF`o&Fe
nF`oFcp2Fj`lFi`lFbr-T#6$&FZF^o&FenF^oFAFA6$F1Fgn>Fgv-Fiv6$FgvFb`l-%'RETURNG6#7#
-Fau6$-%/Janet/Ind2DiffG6%-%.Janet/Pol2IndG6%&FgvF\yFjq7#&Fep6#&FgvF^yFjqFbbl/F
ax;FT-FP6#Fgv@%/FNFT-%$addG6$*&Fd_lFT-Fe_l6$),&FTFTFh_lFc\l-Fgw6$/F^vFT&F^u6%F`
rFaoFaxF[`lFc\lF_`lC$>F^\l7#-Fgu6$FiuFN-%'expandG6#-F]cl6$-F^z6$/F]`lF_clF^\lF_
`lC(>84&Fjq6#-FP6#Fjq>F`sFaz?(F`rFTFTF]wFbr@$/-%*numboccurG6$&FHF[xF^vFTC&>Fgy&
FHFh^l>83-Fe_l6$)Fh_lFgzF[`l?(FaxFTFT-%'degreeG6$FielFhdlFbrC$>Fiel*&FielFTFhdl
Fc\l>F`s6$F`s7$*&FielFT-%'coeffsG6#FielFc\l&FH6%F`rFdoFao@$FbwC&>Fbs-Fgw6$FiwFd
el>FgvFeu>Fgv-Ff]l6$FgvFbs?(FAFTFTFA0FgvFeuC%>Fiel-Fe_l6$)Fh_l,&FgzFT&FgvFhzFTF
[`l?(FaxFTFTF^flFbrC$>FielFcfl>F`s6$F`s7$FielF[gl>FgvFdgl>Fb`lf*Fd`lFAFAFA@'Fh`
lFcpF[alFbrF\alFAFAFaal>F`s-Fiv6$7#F`sFb`l7#-Fau6$-F\bl6%-F_bl6%&F`sF\yFV7#&Fep
6#&F`sF^yFVFeil/Fax;FT-FPFesFAFAFAFA
M7R0
I+Janet/factf*6#%"LG6$%"fG%"iG6#%inCopyright~(C)~2000-2002~by~Carlos~F.~Cid.~Al
l~rights~reserved.G6"C%>8$"""?&8%9$%%trueG>F.*&F.F/-%*factorialG6#F1F/-%'RETURN
G6#F.F+F+F+F+
M7R0
I0Janet/conv_prodf*6$%#jcG%%dvarG6"6#%inCopyright~(C)~2000-2002~by~Carlos~F.~Ci
d.~All~rights~reserved.GF'@%-%'memberG6$9$9%"""-%(convertG6$7#-%#opG6#F.%"*GF'F
'F'F'
M7R0
I3Janet/ParamBaseChgf*6$'%$basG%%listG%$_JBG6*%#JBG%%ivarG%%dvarG%%nbasG%#PDG%#
pdG%$_pdG%"MG6#%ioCopyright~(C)~2003~by~Mohamed~Barakat~and~Anna~Fabianska.~All
~rights~reserved.G6"C/>8$-%(convertG6$9%%%diffG>8%&F76#""#>8&&F76#""$@%32FA9#4-
%%typeG6$&9"FE%'stringGC$>8'-%.Janet/jmklistG6#FO@$0-%%nopsG6#9$-Fen6#FT-%&ERRO
RG6#%UThere~must~be~as~many~basis~names~as~basis~elements!G>FT-%$mapG6$f*6#%"aG
F46$%)operatorG%&arrowGF4--%$catG6$%#_XGFgn6#-%#opG6#T#F4F46$F+F>7#-%"$G6#;"""F
Z-%7Janet/AssertJanetBasisG6#-F_p6#F7>8(-%1Janet/ParamDerivG6$F>FC>8)-F`o6&%/Ja
net/Diff2IndGF_qF>FC>8*-F`o6$%/Janet/jind2subGFdq-%1Janet/jlinmatrixG6$-%%subsG
6$-%,Janet/jezipG6$F_qFiq-F`o6%%0Janet/InvReduceGFgnF7Fiq-%)simplifyG6#-&%'lina
lgG6#%(delcolsG6$%"%G;,&-Fen6#FdqFhpFhpFhpFds>8+-FV6#-Fjr6#-&F^s6#%(inverseG6#F
bs-Fdr6$F_q-F`o6$f*FcoF4FeoF4-%-Janet/jdprodG6$FgnFapF4F46$F-FTFhs@%-FM6$&FP6#!
""FQFbs6$Fbs-Fdr6$FTFgnF4F4F4F4
M7R0
I4homalg/Janet/IsUnitf*6$%"MG%$varG6"6#%jnCopyright~(C)~2007-2010~by~Daniel~Rob
ertz.~All~rights~reserved.GF'@%/9$""!%&falseG3/-%%nopsG6#F,"""/-F26#&&F,6#F46#"
"#F-F'F'F'F'
M7R0
I,Janet/PDEHFf*6"6B%"iG%"jG%"lG%#q1G%#q2G%"sG%#_sG%,given_basisG%"FG%/args_with
out_sG%$resG%$NHFG%0tmp_T_List_dataG%%ivarG%%dvarG%)dops_ordG%)ivar_degG%)dvar_
degG%)ideg_ordG%)ddeg_ordG%&_ivarG%)dvar_posG%&oivarG%&m_ordG%$fmtG%%dopsG%'ldp
rocG%&B_OrdG%)dvar_cmpG%*want_simpG%+force_simpG%+constcoeffG6#%jnCopyright~(C)
~2007-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C)>8;""%>8)%%NULLG@%519#""
#32FSFR555-%%typeG6$&9"6#""$%)equationG-FZ6$Ffn%(integerG-FZ6$Ffn-%%listG6#F]o-
FZ6$Ffn%'stringGC$>8+%&falseG>8-FNC%>Fho%%trueG>F[p6%&Fgn6#"""&Fgn6#FSFfn?(8$FK
FcpFRF^p@$5-FZ6$&Fgn6#FgpF]o-FZ6$F\qFao>F[p6$F[pF\q@%FhoC@>807+%'T_ListG%)numbe
r_tG%(Tab_VarG%$nivG%$zedG%&Nu_StG%&COMPAG%)Glob_SOLG%-_jforce_simpG>81-%/Janet
/get_varsG6$FdpFfn>82&FarFep>83&FarFhn>84&Far6#FK>85&Far6#""&>86&Far6#""'>87&Fa
r6#""(>88&Far6#"")>89&Far6#""*>Far&FarFbp>8:-%/Janet/get_optsG6$Far&Fgn6#;FKFR>
FJ&F[uFep>8A&F[uFft?&Fgp&F[uFbpF^p@'55-FZ6$Fgp%%nameG-FZ6$Fgp%(numericG/FgpQ!F$
@%/FMFN>FMFgp-%&ERRORG6#%Zcannot~determine~which~indeterminate~or~value~to~plug
~in.G3-FZ6$FgpFjn/-%#opG6$FcpFgpQ$varF$@%Fev>FM-F`w6$FSFgpFgv-Fhv6#%0invalid~op
tion.G>F[u&F[uFhn>8,-%0Janet/get_inputG6*FapFarFfrF[uF_t7"FaxFio>8<&F]xFep@$1FK
Fcx-Fhv6#%_pdifferential~equations~are~expected~to~be~given~as~list~of~differen
tial~expressions.G>8=&F]xF^s>8B5Feu&F]xFbs>8C&F]xFgs>F]x&F]xFbp>Fir-%%subsG6$-%
,Janet/jezipG6$FarF[yFir>8&-%.Janet/get_ordG6,FJF[yFfrFirF\sF`sFesFjsFdt34F^yFb
y>8>&F^zFbp>8?&F^zFhn@$&F^zF^s>FdtFax>8@&F^zFbs-%2Janet/setupT_ListG6.F]xFarFfr
F_tF[uF[yFezFhzFdtF\sF`sF^[lC$@$4-%)assignedG6#Fgq-Fhv6#%Pmissing~involutive~ba
sis;~run~JanetBasis~first.G?&FgpFgnF^p@'Fju@%Fev>FMFgpFgvF[w@%Fev>FMFewFgvFgw@$
Fev-%'RETURNG6#F">8/f*6#%"rG6,%"aG%"bG%"dG%#dpGF'%"mG%"nG%&n_mulG%"pG%%termGF$F
$C'>FM-%%nopsG6#&Fgq6%FcpFcpFcp>8*-Fh]l6#&Fgq6%FcpFinFcp>F[p""!@$0&Fgq6%FcpFhsF
cpFc^l@%%0Janet/janetlikeG?&FgpFgqF^pC%>Fho-%*numboccurG6$&FgpFbs%)infinityG>F^
z-%(convertG6$&Fgp6$FinFcp%"+G@%/FhoF]^l?(8(F^zFcp9$F^p>F[p,&F[pFcp-%)binomialG
6$,*F\`lFcpF^z!""FhoFcpFd`lFcp,&FhoFcpFd`lFcpFcpC'>8%-Fhy6$/Fa_lFc^lF`_l>F]x7#-
%"$G6$Fc^lF]^l?(F\`lF^zFcpF]`lF^p>F[pF_`l>F]x-%.Janet/nextmonG6$F]xFh`l?(F$FcpF
cpF$0F]xF]alC%>8'-Fd_l6$F]xFh_l?(F\`l,&F^zFcpF[blFcpFcpF]`lF^p>F[p,&F[pFcp-Fa`l
6$,,F\`lFcpF^zFd`lF[blFd`lFhoFcpFd`lFcpFe`lFcp>F]xFdal?&FgpFgqF^pC%>FhoF]_l>F^z
Fc_l?(F\`lF^zFcpF]`lF^p>F[pF_`l-%'expandG6#F[pF$F$F$@'-FZ6$FMFeoC(>6$F[blF\`l-%
1Janet/maxmin_degGFh[l@$2Fc^lF\`l-%'printfG6$Q+s~<~%d:~0|+F$F\`l?(FgpF\`lFcp,&F
[blFcpFd`lFcpF^p-Fjcl6%Q,s~=~%d:~%a|+F$Fgp-Fg\lF]q-Fjcl6%Q-s~>=~%d:~%a~F$F[bl-F
hy6$/F]^l.FM-%,Janet/PDEHPG6#F]^l@$Fho-%4Janet/restoreT_ListG6#Feq-Fd\l6#FN-FZ6
$FMFavC%>8.-Fg\l6#FM@$FhoF^elFgel@%FhoC$F^elf*6#F&F$6$%)operatorG%&arrowGF$-F"6
$T#/FbwF]`lF$F$6$F/F[pf*F^flF$F_flF$-F"6#FeflF$F$F$F$F$F$F$
M7R0
I1Janet/canceltermf*6%%"pG%%varsG%"tG6#%"aG6#%jnCopyright~(C)~2008-2010~by~Dani
el~Robertz.~All~rights~reserved.G6"@%3/-%(convertG6$9&%"+G""!4-%$hasG6$9$9%F5@'
-%%typeG6$F:F4-%$mapG6&F"F:F;F3/-FA6$f*F(F,6$%)operatorG%&arrowGF,-%'degreeG6$T
$F:F,F,6$F%F:F;F3F5F:F,F,F,F,
M7R0
I5Janet/invertiblepartf*6$%"cG%)coeff_ptG6$%"aG%"iG6#%enCopyright~(C)~2010~by~D
aniel~Robertz.~All~rights~reserved.G6"C$>8$-%'factorG6#9$@%-%%typeG6$F/%"*G-%'s
electG6$f*6#F)F,6$%)operatorG%&arrowGF,0-%%evalG6#-%%subsG6$T$F3""!F,F,6$F&9%F/
@%/-FC6#-FF6$FKF/FI"""F/F,F,F,F,
M7R0
I/Janet/jplex_lcf*6$%"aG%"bG6%%"iG%$tdaG%$tdbG6#%enCopyright~(C)~2010~by~Daniel
~Robertz.~All~rights~reserved.G6"C'?(8$"""F1-%%nopsG6#&9$6#F1%%trueG@&2&F56#F0&
&9%F7F<-%'RETURNG6#F82F=F;-FA6#%&falseG>8%-%(convertG6$&&F66#""$F7%"+G>8&-FJ6$&
&F?FNF7FP@'2FHFRF@2FRFHFD?(F0-F36#FL!""F1F8@&2&FUF<&FLF<F@2F[oFjnFD@%2&F66#""#&
F?F`oFFF8F-F-F-F-
M7R0
I2Janet/jplex_blockf*6$%"aG%"bG6#%"iG6#%jnCopyright~(C)~2004-2010~by~Daniel~Rob
ertz.~All~rights~reserved.G6"C$?(8$"""F/-%%nopsG6#&9$6#F/%%trueG@&2&F36#F.&&9%F
5F:-%'RETURNG6#F62F;F9-F?6#%&falseGF6F+F+F+F+
M7R0
I7Janet/is_inhomogeneousf*6&'%"LG%%listG'%%ivarGF''%%dvarGF''%&oivarGF'6$%"iG%"
FG6#%jnCopyright~(C)~2006-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C%@%/9
'9%>8%-%/Janet/jeqn2prdG6&9$F89&Q!F3>F:-F<6'F>F8F?F7F@?(8$"""FF-%%nopsG6#F:%%tr
ueG@$0&F:6$FE""#""!-%'RETURNG6#FJ-FR6#%&falseGF3F3F3F3
M7R0
I0Janet/get_inputf*6*%"LG%%ivarG%%dvarG%&oivarG%&_ivarG%"JG%'nlvarsG%+cleardeno
mG6.%"iG%"jG%"nG%$fmtG%'oivar2G%%dopsG%#suG%"FG%)hom_caseG%+force_simpG%+constc
oeffG%$denG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.
G6"C/>8)7#-%$seqG6$&%"DG6#&9'6#8$/FJ;"""-%%nopsG6#9%>8*-%$zipG6%f*6$F.F/F<6$%)o
peratorG%&arrowGF</9$FQF<F<F<FH9(@%/FHFQ>8(%%NULLG>F\oFH@'-%%typeG6$Fgn%'matrix
GC$>8'""#@%5-%(hastypeG6$Fgn%%listG3-Fao6$Fgn%'symbolG-F[p6$-%&evalmG6#FgnF]p>8
+-%,Janet/AppOpG6&Fgn9&FQF\q>Fhp7#-FB6$-%(convertG6$-&%'linalgG6#%$rowG6$FgnFJF
]p/FJ;FM-&Ffq6#%'rowdimGFfp-FaoF\pC%>Ffo""!>Fhp-%$mapG6$f*6#F.F<FYF<@%-Fao6$Fgn
%)equationG,&-%#opG6$FMFgnFM-F`s6$FgoFgn!""FgnF<F<F<Fgn@$-%5Janet/is_indnotatio
nG6%FhpFQF\q>Fhp-%/Janet/Ind2DiffGFhsC%>Ffo""%>Fhp7#Fgn@$Ffs>FhpFjs@$09)7"@$/%3
Janet/coefficientsGQ(jreduceF<>Fhp-Ffr6$f*FirF<FYF<-F[t6%-%/Janet/jjreduceG6&T$
-%/Janet/Diff2IndG6%FgnT&T(FhuFiuFhuFiuF<F<6(F*FetF(FHF+9*Fhp@%-%$hasG6$Fhp7#-F
B6$&FEFIFKC$>Ffo,&FfoFMFMFM@%-Fao6$&Fhp6#FMF]pC%@$0-FO6#Fjv-FO6#F\q-%&ERRORG6#%
fnnumber~of~dependent~variables~must~match~number~of~columns.G>Fhp-%,Janet/subs
DG6%-%%subsG6$FSFhpF`vF?>Fhp-Ffr6$f*FirF<FYF<7%FgnFcrFcrF<F<F<Fhp@%-F^v6$FhpF\q
C%>Fhp-F\x6$FS-%/Janet/jeqn2prdG6'FhpFQF\qF\oQ!F<>Fhp-Fiw6%FhpF`vF?>Fhp-Ffr6$f*
FirF<FYF<7$-F`sFfpFcrF<F<F<FhpC$>FhpFhw>Fhp-Ffr6$f*FirF<FYF<7%F`tFcrFcrF<F<F<Fh
pC%>8&-FO6#Fhp?(FJFMFMF`z%%trueG@$-Fao6$&FhpFIF]p-Fdw6$%aoexpected~differential
~expression,~but~received~list~in~i-th~entry~of~LG/.FJFJ@%9+C(>8/-Ffr6$%&denomG
Fhp@$-F^v6$Fb[lF\q-Fdw6#%hncannot~process~rational~functions~in~the~dependent~v
ariables.G>Fhp-F\x6$FS-F[y6'7#-FB6$-%'normalG6#*&FhzFM&Fb[lFIFM/FJ;FMF`zFQF\qF\
oF]y>FhpF_y>Fhp-Ffr6$f*FirF<FYF<FeyF<F<F<Fhp-%1Janet/updateNuStG6#-F\x6$FSFb[lC
%>FhpFhx>FhpF_y>Fhp-Ffr6$f*FirF<FYF<FeyF<F<F<Fhp>8--F^v6$Fhp7/%$expG%$sinG%$cos
G%$tanG%$secG%$cscG%$cotG%%sinhG%%coshG%%tanhG%%sechG%%cschG%%cothG@'3Fdt/FitQ(
diffalgF<>Fhp-Ffr6$f*6#%"pG6&%"aG%"bG%"cG%"mGF<F<C$>F`z-Ffr6$f*6#Fi_lF<FYF<-%5J
anet/diffalg_reduceG6%-F\x6$-%,Janet/jezipG6$FduFhuFgnFiuT*F<F<6*F)FhuF(FiuF*F[
alF+T,-%'coeffsG6%FgnT#.Ffo-FU6%f*6$Fi_lFj_lF<FYF<*&FgnFMFQFMF<F<F<F`zFfoF<F<6,
F3F?F)FhnF(FHF*FetF+F[vFhpF]^l>Fhp-%(collectG6%-%)simplifyGFbzF?%,distributedG>
Fhp-Ffr6$f*FirF<FYF<-Fe\lFfpF<F<F<Fhp>8,Fdz>FJFM?(F<FMFMF<31FJFazFfbl@%0&Fhp6$F
JFgoFcr>Ffbl%&falseG>FJ,&FJFMFMFM>8.-%&evalbG6#/-%'indetsGFbz<#-F`s6#F?7(FhpFfo
FfblF?F]^lFdclF<F<F<F<
M7R0
I/Janet/jaffpartf*6$%%exprG%%dvarG6#%$resG6#%[oCopyright~(C)~2000-2003~by~Moham
ed~Barakat.~All~rights~reserved.G6"@'-%%typeG6$9$%"*G@%-%$hasG6$F09%""!F0-%'mem
berGF5F7C$>8$-%'selectG6$f*6#%"aGF+6$%)operatorG%&arrowGF+4-F46$F0T$F+F+6$F&F6F
0@%/F<%%NULLGF7F<F+F+F+F+
M7R0
I.Janet/jorderdf*6#%%funcG6$%(ord_derG%$derG6#%[oCopyright~(C)~2000-2002~by~Moh
amed~Barakat.~All~rights~reserved.G6"@'-%$hasG6$9$%%diffGC&>8$""!>8%F0?(F+"""F9
F+-F.6$F7F1C$>F4,&F4F9F9F9>F7-%#opG6$F9F7F4-F.6$-FA6$F5F0%"DG@'-%%typeG6$-FA6$7
$F5F5F0%(indexedG-%%nopsG6#FL-FJ6$FL%)functionG-FA6$7%F5F5""#F0F9F5F+F+F+F+
M7R0
I)Janet/HFf*6#%"lG6'%$NHFG%"iG%"qG%"sG%#_sG6#%\pCopyright~(C)~2000-2010~by~Carl
os~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C'@$4-%)assignedG6#%'T_Lis
tG-%&ERRORG6#%Pmissing~involutive~basis;~run~JanetBasis~first.G>8$f*6#%"rG6,%"a
G%"bG%"dG%#dpG%"jG%"mG%"nG%&n_mulG%"pG%%termGF.F.C'>8)-%%nopsG6#&F56%"""FRFR>8*
-FN6#&F56%FR""$FR>8-*&FLFR-%)binomialG6$,&FTFR9$FRF[oFR@$0&F56%FR""'FR""!@%%0Ja
net/janetlikeG?&F;F5%%trueGC%>8+-%*numboccurG6$&F;6#""&%)infinityG>8&-%(convert
G6$&F;6$FYFR%"+G@%/FhoFT?(8(FapFRF[oFeo>Fen,&FenFR-Fhn6$,*F[qFRFap!""FhoFRFaqFR
,&FhoFRFaqFRFaqC'>8%-%%subsG6$/F_pFaoF\p>8,7#-%"$G6$FaoFT?(F[qFapFRF[oFeo>FenF]
q>F[r-%.Janet/nextmonG6$F[rFeq?(F.FRFRF.0F[rF\rC%>8'-Fcp6$F[rFgp?(F[q,&FapFRFjr
FRFRF[oFeo>Fen,&FenFR-Fhn6$,,F[qFRFapFaqFjrFaqFhoFRFaqFRFbqFaq>F[rFcr?&F;F5FeoC
%>FhoFio>FapFbp?(F[qFapFRF[oFeo>FenF]q-%'expandG6#FenF.F.F.>Fap-%.Janet/max_deg
GF4@%2Fao9#>FjrF[o>Fjr.Fjr@'-%%typeG6$Fjr%'stringGC$?(FeqFaoFR,&FapFRFaqFRFeo-%
'printfG6%Q,s~=~%d:~%a|+F.Feq-F;6#Feq-F`u6%Q-s~>=~%d:~%a~F.Fap-Fgq6$/F[qFft-%)J
anet/HPG6#F[q-Fit6$Fjr%(numericG-F;6#FjrF"F.F.F.F.
M7R0
I4Janet/HilbertSeriesf*6#%"vG6/%"iG%"jG%"qG%"nG%"sG%"HG%&R_q_1G%"AG%"BG%"CG%#HM
G%$HM1G%$HM2G6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Daniel~Robertz.~
All~rights~reserved.G6"C/@%2""!9#>8(9$>F=.F=>8'-%%nopsG6#&%'T_ListG6%"""""$FI>8
&-%.Janet/max_degG6#FG>8)-%)Janet/HPG6#F=>8*-%)Janet/HFG6#,&FLFI!""FI>8+-%'matr
ixG6#-%$mapG6$f*6#%"aGF66$%)operatorG%&arrowGF6-F\o6$f*6#%"bGF6FaoF6-%)binomial
G6$,(T$FIF>FIT%FenF>F6F66&F`oF>F)F^p7#-%"$G6#;FIT#F6F66&F*FBF)FL7#-Fbp6#;FL,(FL
FIFBFIFenFI>8,-%'vectorG6#-F\o6$f*F_oF6FaoF6,&-%%evalG6$Fep/F^pF>FIT'FenF6F66(F
,FQF+F=F-FVFgp>8--&%'linalgG6#%)linsolveG6$FgnF]q>F\r-%&evalmG6#F\r>8/-%$addG6$
*&-%6Janet/HilbertFunctionG6#8$FI)F=F`sFI/F`s;F:FZ>80*&)F=FLFI-Fjr6$*&&F\r6#8%F
I),&FIFIF=FenF]tFen/F]t;FIFBFI>8.-%(convertG6$7$FhrFes%"+G-%'RETURNG6#FctF6F6F6
F6
M7R0
I.Janet/multcmpf*6%%"aG%"bG%"wG6#%"iG6#%jnCopyright~(C)~2000-2010~by~Daniel~Rob
ertz.~All~rights~reserved.G6"C$?(8$"""F0-%%nopsG6#9$%%trueG@$2&9%6#F/*&&F4F:F0&
9&F:F0-%'RETURNG6#%&falseGF5F,F,F,F,
M7R0
I/Janet/jzerocolf*6#%"MG6#%#ZLG6#%inCopyright~(C)~2000-2002~by~Gehrt~Hartjen.~A
ll~rights~reserved.G6"C$>8$7#-%"$G6$""!-&%'linalgG6#%'rowdimG6#9$-%$mapG6$f*6#%
"iGF*6$%)operatorG%&arrowGF*@%-%&evalbG6#/-%(convertG6$-&F56#%$colG6$T&F9%%list
GT#F9%%NULLGF*F*6&F'F-F%F97#-F06#;"""-&F56#%'coldimGF8F*F*F*F*
M7R0
I/Janet/jgetdrvsf*6$%$eqnG%%dvarG6#%$lfnG6#%[oCopyright~(C)~2000-2002~by~Mohame
d~Barakat.~All~rights~reserved.G6"C$>8$-%'selectG6%%/Janet/jisderivG-%'indetsG6
$9$%)functionG9%-%/Janet/jsortderG6$-%(convertG6$F.%%listG!""F+F+F+F+
M7R0
I1Janet/Resolutionf*6%%"LG'%&ivarsG%%listG'%&dvarsGF(6T%"aG%"iG%"jG%"kG%"lG%#ld
G%"nG%"pG%"rG%"tG%"vG%"FG%"MG%#MsG%#MVG%$MV2G%"BG%#BBG%#JBG%"RG%"SG%#L2G%%ivarG
%%dvarG%)dops_ordG%)ivar_degG%)dvar_degG%)ideg_ordG%)ddeg_ordG%&_ivarG%)dvar_po
sG%&oivarG%&m_ordG%"JG%'nlvarsG%$fmtG%%dopsG%'ldprocG%)dvar_cmpG%&OivarG%%rvarG
%%svarG%)new_varsG%+deg_or_matG%&paramG%#trG%$ndvG%*cmp_basisG%+force_simpG%+co
nstcoeffG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6
"CH@$0%2Janet/initializedG.%%trueG-%+Janet/initGFjn>8:-%/Janet/get_varsG6$9%9&>
8;&Fdo6#""#>8<&Fdo6#""$>8=&Fdo6#""%>8>&Fdo6#""&>8?&Fdo6#""'>8@&Fdo6#""(>8A&Fdo6
#"")>8B&Fdo6#""*>Fdo&Fdo6#""">8OFer>8+""!>8QFjr>8DF^p>8CFdo>8E7">8FFcs>8S%&fals
eG?(8%FhpFer9#F`o@+-%%typeG6$&9"6#FjsF(@%5-%(hastypeG6$F`t%'symbolG-Fft6$F`t%(i
ndexedG>F`sF`t-%&ERRORG6#%0invalid~option.G-F^t6$F`t%)equationG@'/-%#opG6$FerF`
tQ)coeffeqsFjn>Fbs-Fgu6$F^pF`t/FfuQ*coeffdvarFjn>FesF`tF]u-F^t6$F`t%'posintG>F\
sF`t-F^t6$F`t%'stringGC$>88F`t?(8&FerFer-%'lengthG6#FivF`o@0/&Fiv6#F[wQ"CFjn>Fg
sF`o/FawQ"DFjn>FgrFjr/FawQ"GFjnC$>FirF^p>8P-%$catG6$-%*substringG6$Fiv;Fer,&F[w
Fer!""Fer-Fbx6$Fiv;,&F[wFerFerFerF\w/FawQ"MFjn>FgrFer/FawQ"OFjn>FirFer/FawQ"TFj
n>F^sFhp0FawQ!Fjn-F^u6#%aroptions~must~be~given~by~a~string~consisting~of~lette
rs~in~|fr"C",~"D",~"G",~"M",~"O"|hr,~not~containing~both~"D"~and~"M".GF]u@$3/F^
sFhp0FirF^p>FirFcp@%/F`sFdo>8K%%NULLG>FazF`s>8/-%0Janet/get_inputG6*9$FdoF[pF`s
FiqFbsFesFhs>8G&FezF]p@$1FhpF[[l-F^u6#%_pdifferential~equations~are~expected~to
~be~given~as~list~of~differential~expressions.G@$4&FezFbp-F^u6#%Aexpecting~homo
geneous~equations.G>8H&FezFgp>8T&FezF\q>8U&FezFaq>F`p-%%subsG6$-%,Janet/jezipG6
$FdoFi[lF`p>8.-%(convertG6$-%+kerneloptsG6#%(versionGFfv>8(-%.Janet/get_ordG6,F
^sFi[lF[pF`pFepFjpF_qFdqF^r34F\\lF_\l>8I&Fb]lFdr>8J&Fb]lF\q@)/FirFjrC&>84&-%1Ja
net/JanetBasisG6&FizFhoFioF^pFdr@%/FgrFer>817#-%0Janet/jfrechetcG6%-%/Janet/Dif
f2IndG6%Fb^lFdoF[pFdoF[pC%>80Fcs?(FjsFerFer-%%nopsG6#%'T_ListGF`oC$>8)-Fc\l6$7#
-%$seqG6$/&Fi[l6#8')8-&FepFe`l/Ff`l;Fer-Fg_l6#Fdo&Fi_l6%FjsFbqF^p@%/FjpFcs>Fd_l
7$-Fgu6#Fd_l-%'degreeG6$F\`lFh`l>Fd_l7$Fdal,&FfalFer&Fjp6#&Fi_l6%FjsF^pF^pFer>F
j^l7#Fd_l>867&Fb^lFhoFioF^p?(FjnFerFerFjn32Fjr-Fg_l6#Fb^l5/F\sFjr2,&-Fg_l6#Fj^l
FerFfxFerF\sC+>82-%$mapG6$f*6#F,Fjn6$%)operatorG%&arrowGFjn&FizF\qFjnFjnFjnFi_l
>83Fcs>F\`lFcs>89Fcs>8L7#-Fa`l6$-F_x6$%#_rGF[w/F[w;FerFhbl>8NFcs>8MFcs?(FjsFerF
erFhblF`o@$0&FbclFbt7#-%"$G6$%)infinityGF\alC%>F\el7$-Fgu6#F\el-F_x6$FhdlFjs>F^
el7$-Fgu6#F^elFjs?(F[wFerFerF\alF`o@$0&Fbcl6$FjsF[wFgelC(>87-%0Janet/InvReduceG
6%-%%diffG6$&Fb^lFbt-Feel6$&FdoFbw,&FfflFerFerFerFcblFcw@$0&FjflFdrFjr-F^u6#%-w
rong~basis!G>Fiv,&&F]fl6#FbglFer-Fgu6#-%/Janet/AppOpIndG6&&FjflF]pFbdlFdoFbdlFf
x>F`dl7$-Fgu6#F`dlFiv>F]dl7$-Fgu6#F]dl7$-Fgu6#&Fbel6#Fdx-Feel6$Fgel,(F\alFerF[w
FfxFerFer>F\`l7$-Fgu6#F\`l7$7$-%'subsopG6$/F[wFegl7#-Feel6$FjrF\al-Fg_lF\fl7$Fe
r)&Fi[lFbwFegl@%2Fjr-Fg_lFihlC0>F`dl-%/Janet/Ind2DiffG6%F`dlFdoFbdl?(FjsFerFer-
Fg_l6#FbdlF`o@$4-%'memberG6$FjsF^elC$>F\el7$F[fl&FbdlFbt>F^elF`fl>F`dl-%/Janet/
jeqn2prdG6'-%.Janet/jmklistGFihlFdoF\elFazFey>F`dl-Fc\l6$-Ff\l6$F`sFiqF`dl>F`dl
-%,Janet/subsDG6%F`dl7#-Fa`l6$&%"DGFbt/Fjs;Fer%$nivGFi[l>Fi_l7#-Fa`l6$7(7$-Fgu6
#&F`dlFbtFjr&F\`l6$FjsFerF\^m7#-Feel6$FjrFb]m&F]dlFbt&F\`l6$FjsF^p/Fjs;FerFijl>
%)number_tGFf_l>Fi_l-%%sortG6$Fi_l%1Janet/degrevlex3G>Fcbl-Fdcl6$f*FgclFjnFhclF
jn-Fc\l6$-Ff\l6$T#T%-Fc\l6$-Ff\l6$T'7#-Fa`l6$&F_]m6#T)/Fa`mFa]m&FizFdrFjnFjn6*F
IFiqFKF`sFPFi[lF-FjsFi_l>Fcbl-%/Janet/jprd2eqnG6'FcblFdoF\elFazFey>Fb^l&FcblFdr
>8RFcjl>%$zedG7#-Feel6$FjrF\am@%/FgrFjrC%>Fd_lFcs?(FjsFerFerFf_lF`oC'>F[wFer?(F
jnFerFerFjn31F[w-Fg_lFbfl/&Fi_l6&FjsFerFer&F^elFbwFjr>F[wFjx>F\`l-%/Janet/lead_
monG6%F^bmFi[l-%%wdegG6$FepFi[l>F\`l-Fc\l6$F_`l&F\`lF]p>Fd_l7$Fdal,&FfalFer&Fj^
l6$FerF[wFer>Fj^l7$Fd_l-FguF_cl>Fj^l7$-F]_l6%-F`_l6%Fb^lFdoFbdlFdoFbdlFdcm>Fb^l
Fcs/FirFerC*>Fb^l&-%8Janet/DiffGroebnerBasisG6&FizFhoFioFhpFdr>8*Fhbl@%Fh^l>Fj^
lF[_lC(>Fd_lFcs>Fcbl-F^\m6'-Fa\mFiblFhoFioFazFey>Fcbl-Fc\l6$Fe\mFcbl>Fcbl-Fi\m6
%FcblF[]mFi[l?(FjsFerFer-Fg_l6#FcblF`oC&>F\`l-%1Janet/lead_derivG6*&FcblF]^m-Fg
_l6#F[pFi[lFi]lFcsFepFjpF\^l>F[w&F\`l6$FerF^p>F\`l-Fc\l6$F_`l&F\`l6$F^pF^p@%Faa
l>Fd_lFcal>Fd_l7$Fdal,&FfalFer&FjpFbwFer>Fj^lFabl>F`dl7#-Fa`l6$,&FaglFer-F]fl6#
-FguF]alFfx/Fjs;FerFddm>Fbdl7#-Fa`l6$F]flFegm-Fadm6&F`dlFhoFioFhp>Fiv-%/Janet/C
ompCondGF\hm?(FjnFerFerFjn32Fjr-Fg_lF^wFjblC+>Fb^l&-Fadm6&FivFhoFbdlFhpFdr>Fddm
Fhbl@%FcamC(>Fd_lFcs>Fcbl-F^\m6'F\emFhoFbdlFazFey>FcblF^em>FcblFaem?(FjsFerFerF
demF`oC&>F\`l-Fiem6*F[fmF`[mFi[lFi]lFcsFepFcsF\^l>F[wF_fm>F\`lFbfm>Fd_lF^cm>Fj^
lFccmC$>Fd_lFgcm>Fj^l7$-%&evalmGFealFdcm>F`dl-Fc\l6$7#-Fa`l6$/F]fl-F_x6$%#_sGFj
s/Fjs;FerF`[mFb^l>F^el7#-Fa`l6$FhjmF[[n>F`dl7#-Fa`l6$,&F[^mFerFbgmFfxFegm>FbdlF
hgm-Fadm6&F`dlFhoF^elFhp>Fiv-F_hmFh[n/FirF^pC(@%Fh^l>Fj^l7#-F]_l6%-F`_l6%FizFdo
F[pFdoF[pC'>F`dl-F^\m6'FizFdoF[pFazFey>F`dlFh\m>Fd_lFcs?(FjsFerFerFijlF`oC&>F\`
l-Fiem6*&F`dlF]^mF\fmFi[lFi]lFcsFepFjpF\^l>F[wF_fm>F\`lFbfm@%Faal>Fd_lFcal>Fd_l
Fifm>Fj^lFabl>Fbdl7#-Fa`l6$F]fl/Fjs;Fer-Fg_l6#Fiz>F`dl-%-Janet/AffEqnG6%FizFdoF
bdl-Fe^l6&F`dlFhoFioF^s>Fb^l-F_hmFc^n@$0Fb^lFcs@%/F\sFerC%>85&-Fe^l6&Fb^lFdoFbd
lF^sFdr@$54Fgs2-Fg_l6#F\_nFhbl>Fb^lF\_n@%Fh^l>Fj^lFfcmC%>Fd_lFcs?(FjsFerFerFf_l
F`oC'>F[wFer?(FjnFerFerFjn31F[wF`[m/&Fi_l6&FjsFerFerF[wFjr>F[wFjx>F\`l-Fdbm6%Fb
`nFi[lFfbm>F\`lFjbm>Fd_lF^cm>Fj^lFccmC'>Fb^lFbjm>F^elF^[n@$0FgrFer>F^el-%$zipG6
%f*6$F-F.FjnFhclFjn/FizFhoFjnFjnFjnF^el&Fj^lFdr@$2FjrF\s>F]x6$F]x,&F\sFerFfxFer
>Fj^l7$-Fgu6#-F"6&Fb^lFhoF^elF]xFdcmC.>F`dlFiz>Fb^l7#-Fa`l6$Fe[nFd^m>Fb^l&-Fe^l
6&Fb^lFhoFioF^sFdr>FirFhs@$5Fb_n2Fhbl-Fg_l6#&FezFdrC$>FirF`o>F`dl-Fc\l6$7#-Fa`l
6$/FbgmFjrFd^mFb^l@%Fh^l>Fj^l7#-F]_l6%-F`_l6%F`dlFdoF[pFdoF[pC(>Fd_lFcs>Fcbl-F^
\m6'F`\mFhoFioFazFey>FcblF^em>FcblFaem?(FjsFerFerFdemF`oC&>F\`lFhem>F[wF_fm>F\`
lFbfm@%Faal>Fd_lFcal>Fd_lFifm>Fj^lFabl>FddmFijl>F`dlFb[n>FbdlFhgm@$FirFb^n>FivF
e^n?(FjnFerFerFjnFahmC->F`dlFiv>Fb^l7#-Fa`l6$,&F[^mFer-FhjmFcgmFfxFd^m>Fb^l&-Fe
^l6&Fb^lFhoFbdlF^sFdr>FirFhs@$5Fb_n2FhblFijlC$>FirF`o>F`dl-Fc\l6$7#-Fa`l6$/Fafn
FjrFd^mFb^l@%FcamC(>Fd_lFcs>Fcbl-F^\m6'F`\mFhoFbdlFazFey>FcblF^em>FcblFaem?(Fjs
FerFerFdemF`oC&>F\`lFeim>F[wF_fm>F\`lFbfm>Fd_lF^cm>Fj^lFccmC$>Fd_l-F]_l6%-F`_lF
^[mFdoFbdl>Fj^lF^jm>F`dlF]fn@$Fir-Fe^l6&F`dlFhoFbdlF^s>Fiv-F_hmF[in>Fiv-Fc\l6$7
#-Fa`l6$/FhjmF]flFd^mFiv>Fbdl7#-Fa`l6$F]flFd^m>Fi_l.Fi_l>%)_JStatssG.F\jn-%'RET
URNGF_clFjn6&F^amFi_lFg^mF\jnFjnFjn
M7R0
I/Janet/jpartderf*6%%%funcG%%lvarG%%ivarG6,%%dvarG%$varG%&_lvarG%&llvarG%%jvarG
%&jjvarG%&njvarG%#jjG%%jvecG%%xvecG6#%[oCopyright~(C)~2000-2002~by~Mohamed~Bara
kat.~All~rights~reserved.G6"C&@%2""$9#>8$-%.Janet/jmklistG6#&9"6#""%>F<7">8%6$-
%#opG6#9&-FJ6#F<>8&-F>6#9%@%/FPFE9$C*>8(-%/Janet/jgetindsG6$FVF<>8)7$FG-FJ6#FY?
&8+FP%%trueG@$4-%'memberG6$F]oFhn-%'RETURNG6#""!>8*-%0Janet/jrepljetsG6$-%%nops
G6#7#FGFhn>8,-%,Janet/jezipG6$FYFio>8--Fdp6$FioFY>8'-%%subsG6$FbpFP-F]q6$Fgp-%(
convertG6$-%%diffG6$-F]q6$FbpFVF[q%"DGF5F5F5F5
M7R0
I.Janet/jchksclf*6#%$sclG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All
~rights~reserved.GF&@%-%%typeG6$9$<-%#..G%"<G%#<=G%#::G%$setG%*procedureG%&arra
yG%&tableG%%listG%'stringG%'unevalG%&falseG%%trueGF&F&F&F&
M7R0
I.Janet/jcmpdopf*6%%%dop1G%%dop2G%%ivarG6/%%dvarG%&ndvarG%$Z_ZG%#M1G%#M2G%#M3G%
$rd1G%$cd1G%$rd2G%$cd2G%"iG%"jG%"kG6#%[oCopyright~(C)~2000-2002~by~Mohamed~Bara
kat.~All~rights~reserved.G6"C%@%2""$9#>8$-%.Janet/jmklistG6#&9"6#""%>F?7">8%7$-
%#opG6#F?8&@'-%.Janet/jchkdopG6$9$Q!F8@'-FR6$9%FU-%0Janet/jfrechetcG6%--%.Janet
/jdiffopG6%FT9&FJ6#--Fin6%FYF[oFJ6#FOF[o7#FO53-%%typeG6$FY<#%%listG-FR6$&FY6#""
"FU3-Feo6$FY<$%'matrixG%)listlistG-FR6$&FY6$F]pF]pFU-%$mapG6$f*6#%"bGF86$%)oper
atorG%&arrowGF8-F"6&T$FTT&T'F8F86(F%FTF'F[oF)F?FY-%&ERRORG6$/.%(diffop2GFY%4has
~a~wrong~syntax!G53-Feo6$FTFgo-FR6$&FTF\pFU3-Feo6$FTFap-FR6$&FTFgpFU@'FW-Fip6$f
*6#%"aGF8F^qF8-F"6&FTFcqFdqFeqF8F86(F&FYF'F[oF)F?FTF^pC,>8'-%-Janet/jmkmatG6#FT
>8(-Fhs6#FY>8*-&%'linalgG6#%'rowdimG6#Ffs>8+-&Fbt6#%'coldimGFet>8,-Fat6#F[t>8--
FitF_u@$0FgtF]u-Fhq6#%6Matrices~incompatibleG>8)-Fbp6%F_tFau""!?(8.F]pF]pF_t%%t
rueG?(8/F]pF]pFauF_v?(80F]pF]pFgtF_v>&Fiu6$F^vFav-%.Janet/jaddconG6%Fev-F"6&&Ff
s6$F^vFcv&F[t6$FcvFavF[oF?F[o-%%copyG6#FiuFgq-Fhq6$/.%(diffop1GFTF]rF8F8F8F8
M7R0
I/Janet/jjreducef*6&%$redG%%exprG%%ivarG%%dvarG6&%&_exprG%&_indsG%%operG%$cmdG6
#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C'@'-%%t
ypeG6$&9"6#!""%'stringG>8&f*6#%"aGF06$%)operatorG%&arrowGF0-%-Janet/jjsimpG6%9$
T$-%"@G6$%'expandG%&numerGF0F06$F(9'2""%9#C$>8'&F76#""&>F<f*F>F0F@F0-FD6%FFFGT%
F0F06&F(FNF-FT>F<f*F>F0F@F0-FD6%FFFGFKF0F0FM>8$9%>8%-%/Janet/jgetindsG6%F]oFNQ!
F0?(F0"""FfoF00-%-Janet/jjsubsG6&FFF`o9&FNF`oC$>F]o-Fio6&FFF]oF[pFN>F`oFao-F<6#
F]oF0F0F0F0
M7R0
I/Janet/jind2subf*6#%$varG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~Al
l~rights~reserved.GF&@'3-%%typeG6$9$%(indexedG-F,6$-%#opG6$""!F.%'symbolG-%$cat
G6%F2%"_G-F36#F.-F,6$F.F6-F86$F.F:-%&ERRORG6$%.cannot~handleGF.F&F&F&F&
M7R0
I,JanetT/initf*6"F$6#%jnCopyright~(C)~2002-2010~by~Daniel~Robertz.~All~rights~r
eserved.GF$-%+Janet/initG6#9"F$F$F$F$
M7R0
I;Janet/reduce_constcoeff_ldf*6*%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvar
sG%)rhs_dvarG6,%"aG%"hG%"iG%"jG%"pG%$divG%#lmG%$mulG%"SG%&reducG6#%jnCopyright~
(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C)>8%&&9$6#"""6#;FB""#>
8*7$&F@6#""$&F@6#""'>8(&F?FJ>8)%%trueG>8-%&falseG?(F:FBFBF:3FS0&FG6$FEFB""!C&>F
SFW>8&FB?(F:FBFBF:31F[o%)number_tG4FS@%-%1Janet/inv_divideG6%&%'T_ListG6$F[oFK&
Ffo6$F[o""&&FGFAC)>%(_jreducG,&F^pFBFBFB>8,,&&FG6$FBFBFB&Ffo6%F[oFKFB!"">8+-%,J
anet/derivG6'Fap&Ffo6$F[oFB9'9%9+>F=7$-%(collectG6%-%'normalG6#,&&F=FAFB-%$mapG
6$f*6#F.F:6$%)operatorG%&arrowGF:*(&T#FfnFB&Ffo6%T%FNFBFgpF@FBF:F:6&F4FGF0F[o&F
ipFAFgpF`q%,distributedG-Feq6%-Fhq6#,&&F=6#FEFB*(FenFB&Ffo6%F[oFNFBFgp&FipFcsFB
FgpFaqF\s>FP-%$maxG6$FP,&&Ffo6%F[oFBFKFB-%(convertG6$Fap%"+GFB>FSFT>FVFT>F[o,&F
[oFBFBFB@$FS>FG-9&6#F[r@%FV7$7$-%#opG6#F=FPFG7"F:6#F^pF:F:
M7R0
I1Janet/deglex_degf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%jnCopyright~(C)~2000-201
0~by~Daniel~Robertz.~All~rights~reserved.G6"C'>8%-%%nopsG6#&9$6#""">8&,&-%$addG
6$*&&F56#8$F8&%)_jvardegGFAF8/FB;F8F1F8&%)_jtupdegG6#&F66#""#F8>8',&-F=6$*&&&9%
F7FAF8FCF8FEF8&FH6#&FUFKF8@'2F:FN-%'RETURNG6#%%trueG2FNF:-Ffn6#%&falseGC%>F:F<>
FNFP@'FZFenFinFjn?(FBF8F8F1Fhn@&2FSF@Fjn2F@FSFen@%2FJFXF\oFhnF.F.F.F.
M7R0
I7Janet/degrevlex_deg_lcf*6$%"aG%"bG6&%"iG%"nG%$tdaG%$tdbG6#%enCopyright~(C)~20
10~by~Daniel~Robertz.~All~rights~reserved.G6"C*>8%-%%nopsG6#&9$6#""">8&,&-%$add
G6$*&&F56#8$F8&%)_jvardegGFAF8/FB;F8F1F8&%)_jtupdegG6#&F66#""#F8>8',&-F=6$*&&&9
%F7FAF8FCF8FEF8&FH6#&FUFKF8@'2F:FN-%'RETURNG6#%%trueG2FNF:-Ffn6#%&falseGC%>F:F<
>FNFP@'FZFenFinFjn?(FBF1!""F8Fhn@&2FSF@Fen2F@FSFjn>F:-%(convertG6$&&F66#""$F7%"
+G>FN-Fho6$&&FUF\pF7F^p@'FZFenFinFjn?(FB-F36#FjoFboF8Fhn@&2&FbpFA&FjoFAFen2F[qF
jpFjn@%2FJFXF\oFhnF.F.F.F.
M7R0
I&Janet=6"%&falseGE\[l_p%&AddOpGf*F$F$6#%[oCopyright~(C)~2000-2002~by~Mohamed~B
arakat.~All~rights~reserved.GF$C$30%2Janet/initializedG.%%trueG0-%+Janet/initGF
$""!-%,Janet/AddOpG6#9"F$F$F$%0ParametrizationGf*F$F$6#%^pCopyright~(C)~2000-20
10~by~Mohamed~Barakat~and~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%6Janet/P
arametrizationGF7F$F$F$%3ShortestResolutionGf*F$F$6#%\pCopyright~(C)~2004-2010~
by~Alban~Quadrat~and~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%9Janet/Shorte
stResolutionGF7F$F$F$%+JanetStatsGf*F$F$6#%\pCopyright~(C)~2000-2010~by~Carlos~
F.~Cid~and~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%1Janet/JanetStatsGF7F$F
$F$%(Pol2IndGf*F$F$F)F$C$F,-%.Janet/Pol2IndGF7F$F$F$%%Op2DGf*F$F$6#%jnCopyright
~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%+Janet/Op2DGF7F$
F$F$%3PDEHilbertFunctionGf*F$F$6#%jnCopyright~(C)~2007-2010~by~Daniel~Robertz.~
All~rights~reserved.GF$C$F,-%9Janet/PDEHilbertFunctionGF7F$F$F$%*LinearizeGf*F$
F$6#%jnCopyright~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%
0Janet/LinearizeGF7F$F$F$%&PDEHFGf*F$F$FfnF$C$F,-%,Janet/PDEHFGF7F$F$F$%%Ext1Gf
*F$F$F;F$C$F,-%+Janet/Ext1GF7F$F$F$%(BaseChgGf*F$F$6#%ioCopyright~(C)~2003~by~M
ohamed~Barakat~and~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%.Janet/BaseChgG
F7F$F$F$%+ParamDerivGf*F$F$6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~
rights~reserved.GF$C$F,-%1Janet/ParamDerivGF7F$F$F$%.IsTorsionBaseGf*F$F$F^pF$C
$F,-%4Janet/IsTorsionBaseGF7F$F$F$%3ElementaryDivisorsGf*F$F$6#%jnCopyright~(C)
~2004-2010~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%9Janet/ElementaryDiv
isorsGF7F$F$F$%+JanetBasisGf*F$F$FIF$C$F,-%1Janet/JanetBasisGF7F$F$F$%)JAdjoint
Gf*F$F$6#%inCopyright~(C)~2000-2002~by~Gehrt~Hartjen.~All~rights~reserved.GF$C$
F,-%/Janet/JAdjointGF7F$F$F$%%ExtnGf*F$F$FepF$C$F,-%+Janet/ExtnGF7F$F$F$%0Hilbe
rtFunctionGf*F$F$FIF$C$F,-%6Janet/HilbertFunctionGF7F$F$F$%-RightInverseGf*F$F$
F]oF$C$F,-%3Janet/RightInverseGF7F$F$F$%2ShorterResolutionGf*F$F$FBF$C$F,-%8Jan
et/ShorterResolutionGF7F$F$F$%+DresultantGf*F$F$FaqF$C$F,-%1Janet/DresultantGF7
F$F$F$%-DrightdivideGf*F$F$FaqF$C$F,-%3Janet/DrightdivideGF7F$F$F$%-Denominator
sGf*F$F$FepF$C$F,-%3Janet/DenominatorsGF7F$F$F$%%CmpDGf*F$F$F]oF$C$F,-%+Janet/C
mpDGF7F$F$F$%*Pres2DiffGf*F$F$FUF$C$F,-%0Janet/Pres2DiffGF7F$F$F$%%D2OpGf*F$F$F
UF$C$F,-%+Janet/D2OpGF7F$F$F$%)PDEBasisGf*F$F$FfnF$C$F,-%/Janet/PDEBasisGF7F$F$
F$%3AnnihilatingSystemGf*F$F$6#%jnCopyright~(C)~2009-2010~by~Daniel~Robertz.~Al
l~rights~reserved.GF$C$F,-%9Janet/AnnihilatingSystemGF7F$F$F$%-ParamBaseChgGf*F
$F$F^pF$C$F,-%3Janet/ParamBaseChgGF7F$F$F$%*SubFactorGf*F$F$F;F$C$F,-%0Janet/Su
bFactorGF7F$F$F$%)Diff2IndGf*F$F$F;F$C$F,-%/Janet/Diff2IndGF7F$F$F$%-JanetOptio
nsGf*F$F$FepF$C$F,-%3Janet/JanetOptionsGF7F$F$F$%&CmpOpGf*F$F$FUF$C$F,-%,Janet/
CmpOpGF7F$F$F$%)Ind2DiffGf*F$F$F)F$C$F,-%/Janet/Ind2DiffGF7F$F$F$%6WeightedHilb
ertSeriesGf*F$F$FepF$C$F,-%<Janet/WeightedHilbertSeriesGF7F$F$F$%)Pol2DiffGf*F$
F$FepF$C$F,-%/Janet/Pol2DiffGF7F$F$F$%0CartanCharacterGf*F$F$6#%inCopyright~(C)
~2000-2010~by~Carlos~F.~Cid.~All~rights~reserved.GF$C$F,-%6Janet/CartanCharacte
rGF7F$F$F$%'Diff2DGf*F$F$FUF$C$F,-%-Janet/Diff2DGF7F$F$F$%#HFGf*F$F$FIF$C$F,-%)
Janet/HFGF7F$F$F$%+FlatOutputGf*F$F$FUF$C$F,-%1Janet/FlatOutputGF7F$F$F$%2DiffG
roebnerBasisGf*F$F$FepF$C$F,-%8Janet/DiffGroebnerBasisGF7F$F$F$%-LeadingDerivGf
*F$F$FepF$C$F,-%3Janet/LeadingDerivGF7F$F$F$%*EulerCharGf*F$F$FepF$C$F,-%0Janet
/EulerCharGF7F$F$F$%)HomoPolyGf*F$F$6#%inCopyright~(C)~2000-2002~by~Carlos~F.~C
id.~All~rights~reserved.GF$C$F,-%/Janet/HomoPolyGF7F$F$F$%#HPGf*F$F$FIF$C$F,-%)
Janet/HPGF7F$F$F$%)GenCoeffGf*F$F$F^pF$C$F,-%/Janet/GenCoeffGF7F$F$F$%(Diff2OpG
f*F$F$FUF$C$F,-%.Janet/Diff2OpGF7F$F$F$%.HilbertSeriesGf*F$F$FIF$C$F,-%4Janet/H
ilbertSeriesGF7F$F$F$%(PolySolGf*F$F$FIF$C$F,-%.Janet/PolySolGF7F$F$F$%&SubOpGf
*F$F$F)F$C$F,-%,Janet/SubOpGF7F$F$F$%.CompCondBasisGf*F$F$FepF$C$F,-%4Janet/Com
pCondBasisGF7F$F$F$%*InvReduceGf*F$F$FIF$C$F,-%0Janet/InvReduceGF7F$F$F$%2Coeff
icientMatrixGf*F$F$F[vF$C$F,-%8Janet/CoefficientMatrixGF7F$F$F$%0IndexRegularit
yGf*F$F$FIF$C$F,-%6Janet/IndexRegularityGF7F$F$F$%,CoeffReduceGf*F$F$FepF$C$F,-
%2Janet/CoeffReduceGF7F$F$F$%)CompCondGf*F$F$FepF$C$F,-%/Janet/CompCondGF7F$F$F
$%&AppOpGf*F$F$FepF$C$F,-%,Janet/AppOpGF7F$F$F$%'Pol2OpGf*F$F$FUF$C$F,-%-Janet/
Pol2OpGF7F$F$F$%(TorsionGf*F$F$F;F$C$F,-%.Janet/TorsionGF7F$F$F$%'DefectGf*F$F$
F;F$C$F,-%-Janet/DefectGF7F$F$F$%1PDEHilbertSeriesGf*F$F$FfnF$C$F,-%7Janet/PDEH
ilbertSeriesGF7F$F$F$%+ResolutionGf*F$F$FepF$C$F,-%1Janet/ResolutionGF7F$F$F$%)
JpdesolvGf*F$F$6#%jnCopyright~(C)~2000-2002~by~Daniel~Robertz.~All~rights~reser
ved.GF$C$F,-%/Janet/JpdesolvGF7F$F$F$%-PDEFactorizeGf*F$F$6#%enCopyright~(C)~20
10~by~Daniel~Robertz.~All~rights~reserved.GF$C$F,-%3Janet/PDEFactorizeGF7F$F$F$
%1AssertJanetBasisGf*F$F$FepF$C$F,-%7Janet/AssertJanetBasisGF7F$F$F$%&SyzOpGf*F
$F$FepF$C$F,-%,Janet/SyzOpGF7F$F$F$%'D2DiffGf*F$F$FUF$C$F,-%-Janet/D2DiffGF7F$F
$F$%*AutonomEqGf*F$F$FepF$C$F,-%0Janet/AutonomEqGF7F$F$F$%,DleftdivideGf*F$F$Fa
qF$C$F,-%2Janet/DleftdivideGF7F$F$F$%)Diff2PolGf*F$F$FepF$C$F,-%/Janet/Diff2Pol
GF7F$F$F$%-IntersectionGf*F$F$F]oF$C$F,-%3Janet/IntersectionGF7F$F$F$%'TabVarGf
*F$F$FIF$C$F,-%-Janet/TabVarGF7F$F$F$%,LeftInverseGf*F$F$F]oF$C$F,-%2Janet/Left
InverseGF7F$F$F$%)AppOpIndGf*F$F$F)F$C$F,-%/Janet/AppOpIndGF7F$F$F$%4ExpressInF
latOutputGf*F$F$FUF$C$F,-%:Janet/ExpressInFlatOutputGF7F$F$F$%&PDEHPGf*F$F$FfnF
$C$F,-%,Janet/PDEHPGF7F$F$F$%2HilbertPolynomialGf*F$F$FIF$C$F,-%8Janet/HilbertP
olynomialGF7F$F$F$%(AutonomGf*F$F$FepF$C$F,-%.Janet/AutonomGF7F$F$F$%)ZeroSetsG
f*F$F$FIF$C$F,-%/Janet/ZeroSetsGF7F$F$F$%5PDEHilbertPolynomialGf*F$F$FfnF$C$F,-
%;Janet/PDEHilbertPolynomialGF7F$F$F$%+PrincDerivGf*F$F$FepF$C$F,-%1Janet/Princ
DerivGF7F$F$F$%'AffEqnGf*F$F$FepF$C$F,-%-Janet/AffEqnGF7F$F$F$%.ResolutionDimGf
*F$F$FepF$C$F,-%4Janet/ResolutionDimGF7F$F$F$%*SolSeriesGf*F$F$FIF$C$F,-%0Janet
/SolSeriesGF7F$F$F$F$
M7R0
I,Janet/plex3f*6$%"aG%"bG6"6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~Cid~and~Da
niel~Robertz.~All~rights~reserved.GF'-%,Janet/jplexG6$&9$6#""$&9%F/F'F'F'F'
M7R0
I1Janet/inv_dividef*6%'%"aG%%listG%"dG'%"bGF'6#%"iG6#%\pCopyright~(C)~2000-2010
~by~Carlos~F.~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"C%@$0&9$6#""#&9&F5
-%'RETURNG6#%&falseG?(8$"""F?%$nivG%%trueG@$52&F86$F?F>&F4FF2&9%6#F>,&FEF?FG!""
F9FAF/F/F/F/
M7R0
I.Janet/conv2eqf*6(%"pG'%&dops2G%%listG'%%ivarGF('%%dvarGF('%&_ivarGF('%&oivarG
F(6%%"iG%"nG%"qG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~rese
rved.G6"C'>8%-%%nopsG6#9&>8&-%%subsG6$7#-%$seqG6$/&%"DG6#8$&FJ6#-%$catG6$%#_yGF
L/FL;"""F:9$>F@-FB6$-%,Janet/jezipG6$9(9)-FB6$-Fen6$9%7#-FF6$FIFSF@@%0FhnF>>F@-
%/Janet/jprd2eqnG6&F@F>9'Fhn>F@-Feo6%F@F>Fgo-FB6$7#-FF6$/FMFIFSF@F7F7F7F7
M7R0
I-Janet/dualopf*6&%"pG%%ivarG%&opvarG%$opsG6'%"iG%"fG%$fopG%"nG%"rG6#%jnCopyrig
ht~(C)~2003-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$@+-%%typeG6$9$%"^G
@%-%$hasG6$F79&@%-F56$-%#opG6$""#F7%*nonnegintG@%-%'memberG6$-FB6$"""F7F=>8(F7-
%&ERRORG6#/%Lexpecting~expanded~differential~operator,~pGF7-FP6#%^pcan~only~rai
se~differential~operator~to~a~power~whose~exponent~is~a~natural~number.G>FNF7-F
56$F7%"*GC'>8%FL>8&FL>8'""!?&8$F7%%trueG@%-F;6$F^oF=@%3-F56$F^o%"+G1FLF[oFOC$>F
in*&FinFLF^oFL>F[o,&F[oFLFLFL>Fgn*&FgnFLF^oFL@%4-F;6$Fin9%>FN-%,Janet/dmultG6'F
inFgnFdpF=-%$mapG6$f*6#F*F16$%)operatorG%&arrowGF1,$F7!""F1F1F19'>FN-Fgp6'-F"6&
FinFdpF=FcqFgnFdpF=-Fjp6$f*F]qF1F^qF1FaqF1F1F1Fcq-F56$F7FgoC$>FN-%(collectG6%F7
F=%,distributedG@'-F56$FNFgo>FN-Fjp6'F"FNFdpF=Fcq-F56$FNFZC'>FgnFL>FinFL>F[oF\o
?&F^oFNF_o@%Fao@%Fdo-FP6#/FSFNC$>FinF[p>F[oF]p>FgnF_p@%Fap>FN-Fgp6'FinFgnFdpF=-
Fjp6$f*F]qF1F^qF1FaqF1F1F1Fcq>FN-Fgp6'FgqFgnFdpF=-Fjp6$f*F]qF1F^qF1FaqF1F1F1Fcq
-FP6#/%Eunable~to~compute~dual~operator~of~pGFN-FHF<>FNF7C$@$F:-FP6#/FjtF7>FNF7
-%4Janet/normalizeWeylG6$FNF=F1F1F1F1
M7R0
I0Janet/reduce_ldf*6+%"fG%%dopsG%'ldprocG%&_ivarG%&oivarG%"JG%'nlvarsG%)rhs_dva
rG%)coeff_ptG60%"aG%"hG%"iG%"jG%"pG%$denG%$divG%#lmG%&lmredG%$mulG%$su1G%$su2G%
"SG%&reducG6#%jnCopyright~(C)~2000-2010~by~Daniel~Robertz.~All~rights~reserved.
G6"C,>8%&&9$6#"""6#;FG""#>8+7$&FE6#""$&FE6#""'>8(&FDFO>8.-%$zipG6%f*6$F1F2F?6$%
)operatorG%&arrowGF?/FE9%F?F?F?9'9(>8/-FZ6%f*FgnF?FhnF?F[oF?F?F?F^oF]o>8*%%true
G>81%&falseG@$09)7"@&/%3Janet/coefficientsGQ(jreduceF?C'>FeoFfo@$-%)assignedG6#
%.JPRINTjreduceG-%&printG6#Q7reduce_ld:~start~whileF??(F?FGFGF?3Feo0&FL6$FJFG""
!C(>FeoFio@$Fep-Fjp6#/Q2reduce_ld:~vorherF?F`q>8,-%/Janet/jjreduceG6&F\p-%/Jane
t/Diff2IndG6%-%%subsG6$FX-%&numerG6#F`qF^o9*F^oFhr>F[r*&-Fcr6$F`o-%/Janet/Ind2D
iffG6%F[rF^oFhrFG-%&denomGFgr!""@$Fep-Fjp6#/Q3reduce_ld:~nachherF?F[r@$0-%'norm
alG6#,&F[rFGF`qFbsFbqC&>FeoFfo>FB7$-%'subsopG6$/&FL6$FGFJ-%(collectG6%,&&&FBFF6
#FftFG*&F]tFG&FL6$FJFJFGFGF\o%,distributedGF]u&FB6#FJ>FhoFfo>FL-9&6#F]u@$Fep-Fj
p6#Q5reduce_ld:~end~whileF?>FeoFfo/F`pQ(diffalgF??(F?FGFGF?3F_q-%3diffalg/belon
gs_toG6$-Fcr6$FX-%(convertG6$Fer%%diffGF\pC%>FB7$-Fct6$/Fft-Fit6%,&F\uFG*&F`qFG
F`uFGFbsF\oFbuF]uFcu>FhoFfo>FLFgu?(F?FGFGF?F^qC'@$-Ffp6#%)JPRINTldG-Fjp6$Q$lm2F
?FL>FeoFio>8&FG?(F?FGFGF?31Fcx%)number_tG4FeoC$@$-%1Janet/inv_divideG6%&%'T_Lis
tG6$FcxFP&F_y6$Fcx""&&FLFFC,>%(_jreducG,&FgyFGFGFG>80,&&FL6$FGFGFG&F_y6%FcxFPFG
Fbs>8--%,Janet/derivG6'Fjy&F_y6$FcxFGF]oF\o9+>8)*&&F_y6%FcxFSFGFG-Fas6#F[[lFG@$
09,F]p-Fjp6$Q)red~subsF?-%%evalG6#-Fcr6$Fa[lFiz-%1Janet/updateNuStG6#7#Fiz>FB7$
-Fit6%-F[t6#,&F]uFG-%$mapG6$f*6#F/F?FhnF?*(&T#FaqFG&F_y6%T%FSFGFbsFEFGF?F?6&F6F
LF1Fcx&FazFFFbsF\oFbu-Fit6%-F[t6#,&FcuFG*(F`qFGF[[lFbs&FazFduFGFbsFgzFbu>FU-%$m
axG6$FU,&&F_y6%FcxFGFPFG-Fiv6$Fjy%"+GFG>FeoFfo>FhoFfo>Fcx,&FcxFGFGFG@$FeoC$>FLF
gu@$F[p@&F_pC&@$FepFip?(F?FGFGF?F^qC(>FeoFio@$FepFfq>F[rF\r>F[rFjr@$FepFds@$Fis
C%>FeoFfo>FBFat>FLFgu@$FepF[v>FeoFfoF_v?(F?FGFGF?FbvC$>FBF^w>FLFgu@%Fho7$7$-%#o
pG6#FBFUFLF]pF?6#FgyF?F?
M7R0
I-Janet/jmkmatf*6#%$matG6%%"MG%"iG%"vG6#%^pCopyright~(C)~2000-2002~by~Mohamed~B
arakat~and~Daniel~Robertz.~All~rights~reserved.G6"C$>8&-%*substringG6$-%(conver
tG6$-%+kerneloptsG6#%(versionG%'stringG;""""")@--%%typeG6$9$%'matrixGFB330F/Q)M
aple~V,F,0F/Q)Maple~6.F,-F@6$FB%'MatrixG-F4FA-F@6$FB%)listlistG@%-F@6$&FB6$F<F<
%%listGC%>8$-FC6$-%%nopsG6#FB-Fgn6#&FB6#F<?&8%-%$mapG6$f*6#%"aGF,6$%)operatorG%
&arrowGF,-%#opG6#-F`o6$f*6#%"bGF,FeoF,7$T$FBF,F,6$FdoFB7#-%"$G6#;F<-Fgn6#&FapF\
oF,F,6$F%FB7#-Fep6#;F<Ffn%%trueG>&FY6#-Fio6#F^o&FBFcq-%%copyG6#FYFM-F@6$FBFV-FC
6%F<FfnFB-F@6$FB%&arrayGFM-%&ERRORG6#%enexpecting~a~list~(of~lists)~or~a~matrix
~as~first~argument.GF,F,F,F,
M7R0
I1Janet/jcollectedf*6#'%$lstG%%listG6'%$srtG%$prvG%$numG%$resG%"iG6#%[oCopyrigh
t~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C)@$/9$7"-%'RETURNG6
#F4>8$-%%sortGF8>8%&F:6#""">8&FA>8'%%NULLG?&8(-%'subsopG6$/FAFFF:%%trueG@%/FHF>
>FC,&FCFAFAFAC%>FE6$FE7$F>FC>F>FH>FCFA7$FEFUF0F0F0F0
M7R0
I/Janet/jsortvarf*6$%%lst1G%%lst2G6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Bar
akat.~All~rights~reserved.GF'-%#opG6#-%$mapG6$f*6#%"aGF'6$%)operatorG%&arrowGF'
&T$6#9$F'F'6$F&9%-%%sortG6#-%.Janet/jgetposG6$F9F;F'F'F'F'
M7R0
I/Janet/jjetcoorf*6%%%numsG%%ivarG%%dvarG6&%#kkG%#ddG%#ccG%%jvarG6#%[oCopyright
~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C%>8'%%NULLG?&8$9$%%t
rueG@)/F5!"">F26$F2-%#opG6#9%/F5""!>F26$F2-F>6#9&/F5""">F26$F2-F>6#-%$mapG6$f*6
#%"uGF/6$%)operatorG%&arrowGF/-F>6#-FO6$f*6#%"xGF/FTF/&T$6#F6F/F/6$FSF6FinF/F/6
$F&F@FGC$>8&-%-Janet/jsymchG6$F5F@@$0F_o7"?&8%FGF7>F26$F2-F>6#-FO6$f*FfnF/FTF/&
T#6#-F>FjnF/F/6$F*Fgo7#F_o7#F2F/F/F/F/
M7R0
I/Janet/JAdjointf*6$%%_matG%&_ivarG6.%%ivarG%%dvarG%$matG%"iG%"jG%"AG%#rmG%#cmG
%"LG%"kG%"lG%"KG6#%inCopyright~(C)~2000-2002~by~Gehrt~Hartjen.~All~rights~reser
ved.G6"C&@$5/9$""!/F;7"-%'RETURNG6#F<>8$-%.Janet/jmklistG6#9%@%2""#9#>8%-FE6#&9
"6#""$>FMF>@%-%.Janet/jchkdopG6#F;-%0Janet/jgcollectG6$-%$mapG6$f*6#F1F66$%)ope
ratorG%&arrowGF6-%#opG6#-Fgn6$f*6#F2F6F[oF67$*&)!""-%%nopsG6#&T$6#FJ"""&F;6#F_p
F_p&F;F^pF6F66$F1F;-%-Janet/jopdotG6&FbpF`pT#T%F6F66&F(FCF)FMF;FCC(>8&-%-Janet/
jmkmatGFX>8*-F_o6$7$F_pFJ7#-F_o6$FJ-%%evalG6#F\q>8+-F_o6$7$FJFJFdq>8)-%'matrixG
6$F[rF`q?(8'F_pF_pF`q%%trueG?(8(F_pF_pF[rFfr@%/&F\q6$FerFhrF<>&F`r6$FhrFerF<>F^
s-FZ6$-Fgn6$f*FjnF6F[oF6-F_o6#-Fgn6$f*FdoF6F[oF6FeoF6F6FcpFdpF6F6FipF[sFC-%%cop
yG6#F`rF6F6F6F6
M7R0
I5Janet/jautoreductionf*6$%'N_FormG%'ldprocG6'%"gG%"hG%"iG%#ldG%"FG6#%jnCopyrig
ht~(C)~2002-2010~by~Daniel~Robertz.~All~rights~reserved.G6"C$>8&"""?(F/F3F3F/1F
2-%%nopsG6#%'T_ListGC+>8$&F96#F2>8(F9>F9-%'subsopG6$/F2%%NULLGF@>%)number_tG,&F
HF3!""F3>8%-9$6#&F<6#F3>8'-9%6#&FLFQ@%/&F<6#""#&FSFQ>F9-FC6$/F27)FLFZFgn&F<6#""
%&F<6#""&&FSFen7"F@>F9-FC6$/F27)FLFZFgn7#-%"$G6$""!%$nivGF`oFcoFdoF@>FH,&FHF3F3
F3>F2,&F2F3F3F3F/6$F9FHF/F/
M7R0
I.Janet/nextmonf*6$%"mG%"bG6%%"iG%"lG%"nG6#%jnCopyright~(C)~2005-2010~by~Daniel
~Robertz.~All~rights~reserved.G6"C(>8%-%%nopsG6#9$>8&F4>8$"""?(F-F9F9F-31F8F01&
9%6#F8&F6F@C$>FA""!>F8,&F8F9F9F9@$F<>FA,&FAF9F9F9-%'RETURNG6#F6F-F-F-F-
M7R0
I6Janet/IndexRegularityf*6"6$%"iG%"qG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.~
Cid~and~Daniel~Robertz.~All~rights~reserved.GF$C$>8%-%.Janet/max_degG6#%'T_List
G?(8$""!"""F,%%trueG@$/-%)Janet/HPG6#F2-%)Janet/HFGF:-%'RETURNGF:F$F$F$F$
M7R0
I0Janet/SolSeriesf*6$'%"GG%%listG%%DegsG6U%"aG%"iG%"kG%"lG%"vG%"sG%#suG%%su_vG%
$indG%$degG%%ddegG%%idegG%$oldG%(old_degG%)old_ddegG%)old_idegG%$posG%%ivarG%%d
varG%)ivar_degG%)dvar_degG%&_ivarG%&oivarG%#JCG%(selfuncG%"CG%&CnameG%"SG%#SeG%
"FG%#G1G%&D_varG%%RSolG%$RedG%$SOLG%%BASEG%%ConsG%(Cons_eqG%,assign_BASEG%(j_in
homG%&B_OrdG%)dvar_posG%)dvar_cmpG%%dopsG%)dops_ordG%)ideg_ordG%)ddeg_ordG%'ldp
rocG%+force_simpG%+constcoeffG%&m_ordG6#%\pCopyright~(C)~2000-2010~by~Carlos~F.
~Cid~and~Daniel~Robertz.~All~rights~reserved.G6"CT@$0%2Janet/initializedG.%%tru
eG-%+Janet/initGFin@$52-%%nopsG6#9$""$2""&Feo-%&ERRORG6#%Yexpecting~first~argum
ent~to~be~the~output~of~JanetBasis.G>85-%/Janet/get_varsG6$&Fho6#""#&Fho6#Fio>8
6&FapFfp>8P&FapFip>87&Fap6#""%>88&Fap6#F[p>8Q&Fap6#""'>8R&Fap6#""(>89&Fap6#"")>
8M&Fap6#""*>Fap&Fap6#""">8*%%NULLG>8+Fcs>8>Fcs>8J""!>8VFdq?(8%FioF`s9#F_o@+-%%t
ypeG6$&9"6#F^t%'posintG>F\tFdt33-Fbt6$FdtF'4-Fbt6$Fdt%)listlistG4-%$hasG6$FdtFa
p@%/FbsFcsC%@$0-Ffo6#Fdt-Ffo6#Fap@%2Fju"#5-F]p6#-%$catG6%%Ccannot~assign~centre
~of~expansion~G-%(convertG6$Fdt%'stringG%;~to~independent~variables.G-F]p6#%fnc
annot~assign~centre~of~expansion~to~independent~variables.G>Fbs7#-%$seqG6$/&Fap
6#8&&FdtFfw/Fgw;F`sF\v>Fes7#-Fbw6$/Few,&FewF`sFhw!""Fiw-F]p6#%Scannot~determine
~which~centre~of~expansion~to~use.G-Fbt6$Fdt%'symbolG>FisF^t-Fbt6$Fdt%)equation
G@%/-%#opG6$F`sFdtQ*constnameFin@%/FgsFcsC$@$4-Fbt6$-F_y6$FgpFdt%%nameG-F]p6#%f
nexpecting~a~name~as~right~hand~side~for~option~'constname'.G>FgsFiy-F]p6#%Rcan
not~determine~which~name~to~use~for~constants.G-F]p6#%0invalid~option.GFcz@$Ffu
>Fbs-%$mapG6$f*6#F,Fin6$%)operatorG%&arrowGFin/FhoFjsFinFinFinFap@$4-%)assigned
G6#%#_hG>Ff[lF`s@%32FioFeo-Fbt6$&FhoFcqF'>8:F]\l>F_\lFap@$Fcy>Fgs8=@$-Fhv6$-Fiz
6$f*6#F+FinF][lFin-Fd[l6#-Fdv6$T#FhoFinFin6$FDFgs7#-%"$G6#;F`s-Ffo6#F[q%#orG-F]
p6#-Fdv6'%0some~variables~G-Fdv6$FgsF`s%#,~G-Fdv6$FgsFgp%^p,~...~are~assigned;~
please~use~option~'constname'~to~change~the~name~for~constants.G?(F^tF`sF`sFf]l
F_o-%(protectG6#-Fdv6$FgsF^t>8A-%0Janet/get_inputG6*&FhoF_sFapF[qF_\lFdr7"F`_l%
&falseG>8T&F[_lFhq>8U&F[_lF\r>F[_l&F[_lF_s>8O7#-Fbw6$&%"DG6#&F_\lFft/F^tFjw>F^q
-%%subsG6$-%,Janet/jezipG6$FapF[`lF^q>8'-%.Janet/get_ordG6,F\tF[`lF[qF^qFaqFfqF
jqF_rFir34Fc_lFf_l>8S&F\alF_s>8L&F\alFip@$&F\alFcq>FirF`_l>8N&F\alFhq@%33-Fbt6$
%'T_ListGF`u/-Ffo6#Fcbl-Ffo6#Fi_l/-Ffo6#&&&FcblF_sF_sF_sFf]lC$>8B-%.Janet/conv2
eqG6(-Fiz6$f*6#F*FinF][lFin&F__l6#;F`sFgpFinFinFinFcblF[`lFapF[qFdrF_\l@$4-&%'l
inalgG6#%'iszeroG6#-%)simplifyG6#,&FaclF`sFi_lFax-%2Janet/setupT_ListG6.F[_lFap
F[qFdrF_\lF[`lFcalFfalFirFaqFfqF\blFhdl>8C-Fiz6$%0Janet/jfuncnameGF[q>8/F`_l@'-
Fbt6$9%%(integerGC$>8-7#-Fc]l6$Feel-Ffo6#F\el@%0FfqF`_l>8.7#-Fbw6$-%%ceilG6#*&-
%$maxG6$,&FeelF`s&FfqFfwFaxFeelF`s-%$minG6#-F_y6#FaqFax/Fgw;F`sF]fl>Fbfl7#-Fc]l
6$-Fgfl6#*&FeelF`sF_glFaxF]fl-Fbt6$FeelF'@+/FeelF`_l-F]p6#%drsecond~argument~is
~expected~to~be~a~list~of~upper~bounds~for~the~orders~of~differentiation~(for~e
ach~dependent~variable).G-Fbt6$&FeelF_sF'C&@$54-Fbt6$FeelF`u0-Ffo6#FeelF]fl-F]p
6#%iqsecond~argument~is~expected~to~be~a~list~containing~as~many~lists~of~degre
es~as~number~of~dependent~variables.G>FielF`_l>FaelFeel@%0Faq7#-Fc]l6$F`sF\v>Fb
fl-Fiz6$f*FhclFinF][lFin-Fgfl6#*&-Fhv6$Fho%"+GF`s-F`gl6#-F_y6#F_]lFaxFinFin6$F=
FaqFael>Fbfl-Fiz6%FhvFaelFcjl/F^ilF`sC$>Fiel7#-Fc]l6$FfhlF]fl@%F`fl>Fbfl7#-Fbw6
$-Fgfl6#*&-F[gl6$,&FfhlF`sF^glFaxFfhlF`sF_glFaxFdgl>Fbfl7#-Fc]l6$-Fgfl6#*&FfhlF
`sF_glFaxF]flF]il-F]p6#-Fdv6%%Tsecond~argument~is~expected~to~be~a~list~of~leng
th~G-Fhv6$Ff]lFjv%B~=~number~of~dependent~variables.GC$>FielFeel@%F`fl>Fbfl7#-F
bw6$-Fgfl6#*&-F[gl6$,&&FeelFfwF`sF^glFaxFi]mF`sF_glFaxFdgl>Fbfl-Fiz6$f*FhclFinF
][lFin-Fgfl6#*&FhoF`sFdjlFaxFinFinFhjlFeel-F]p6#%Yexpecting~second~argument~to~
be~of~type~integer~or~list.G>8K-%7Janet/is_inhomogeneousG6&F__lFapF[qF_\l@%3-Fb
t6$%)Glob_SOLGF'/&F]_m6#;FdqF]r7%FaqFfqFbsC(@$3/&F]_mFfpFael/&F]_mFipFielC$@$2F
jsFisC&>8I-Fiz6$f*FhclFinF][lFinF`[lFinFinFin%*Glob_ConsG@%Fe^m>8G-%'expandG6#-
Ff`l6$F_`m&F]_mF_s>Ff`mFcs?(F^tF`sF`s-Ffo6#F_`mF_o>Ff`m6$Ff`m-Fh`m6#-Ff`l6$-%'s
ubsopG6$/F^t/-F_y6$F`s&F_`mFftF`sF_`mF\am-%'assignG6$&Fet6#Fis7#Ff`m-%'RETURNG6
$F\amFc`m>83Fg_m>81Fi_m@%/FibmF`_l@'Ffil@%F`fl>827#-Fbw6$-Fgfl6#*&-F`gl6$,&&F[c
mFfwF`sF^glFaxF[dmF`s-F[glFaglFaxFdgl>Facm7#-Fbw6$-Fgfl6#*&F[dmF`sF\dmFaxFdglF`
fl>Facm7#-Fbw6$,&FhcmF`sF`sF`sFdgl>Facm-Fiz6$f*FhclFinF][lFin,&FhoF`sF`sF`sFinF
inFinF[cm>Facm7#-Fbw6$-F`gl6#-Fbw6$,&-%&floorG6#*&&&FibmFfwFftF`s&FaqFftFaxF`sF
`sF`sFc`lFdgl@'552-F`gl6#-F_y6#,&FbflF`sFacmFaxFjs30FaelF`_lF]cm3/FaelF`_l0Fibm
F`_l>80Fa_l33FhfmF[gm2-F`gl6#-F_y6#-Fiz6$F_y,&FaelF`sFibmFaxFjs>F]gmFa_l>F]gmF_
o@%F]gm>8H-F_y6#Fc`mC&@%F`fl>F[cm-Fiz6$f*FhclFinF][lFin,&FhoF`sFaxF`sFinFinFinF
fq>F[cm7#-Fc]l6$FaxF]fl>Facm7#-Fc]l6$FjsF]fl>FibmF`_l>F\hmFcsC'@%F`fl>F[cm-Fiz6
$f*FhclFinF][lFinFehmFinFinFinFfq>F[cmFghm>FacmF[im>FibmF`_l>F]gmFa_l>F\hmFcs@%
Fjfm@'Ffil@%F`fl>8<f*6$F*F,6$F+%"mGFinFinC%>F^t-%0Janet/jind2multG6$7#-F_yFgoF_
]l>F^t,&&T%F_ilF`s-%$addG6$*&&F^t6#8$F`s&T'Fd[nF`s/Fe[n;F`s-FfoFgjlF`s-%&evalbG
6#31F^t&T)F_il2&T+F_ilF^tFinFin6,F;FapF>FfqF=FaqF3FielF7F[cm>F_jmf*FajmFbjmFinF
inC%>F^tFfjm>F^t-F`[n6$*&Fc[nF`s&F^[nFd[nF`sFh[n-F\\n6#31F^t&Fg[nF_il2F`\nF^tFi
nFin6*F;FapF=FaqF3FielF7F[cmF`fl>F_jmf*Fajm6#FcjmFinFinC$>Fe[n,&&F_]lF_ilF`s-Fh
v6$7#-Fgjm6$FijmF^[nFcjlF`s-F\\n6#31Fe[nFc]n2F`\nFe[nFinFin6*F>FfqF;FapF3FielF7
F[cm>F_jmFcs@%F[gm>F_jmf*FajmFh]nFinFinC$>Fe[n7#Ffjm-F\\n6#3-%.Janet/multcmpG6%
Fe[nF][nFg[n4-Fc_n6%Fe[nF`\nFg[nFinFin6*F;FapF5FaelF=FaqF9Fibm>F_jmf*FajmFinFin
Fin-Fc_n6%F^_nF][nFg[nFinFin6(F;FapF5FaelF=Faq>8FFcs?(FgwF`sF`sF]flF_oC,>%&Nu_S
tGF`_l>8;-%/Janet/jjetcoorG6%7#-Fc]l6#;&FacmFfw&FbflFfwFap7#&F\elFfw@$0F_jmFcs>
Fe`n-%'selectG6%F_jmFe`nFgw>8D-%/Janet/Diff2IndG6%-%3Janet/coord_reduceG6$-%/Ja
net/Ind2DiffG6%Fe`nFapF\elFhoFapF\el@%0FesFcs>8?-Fiz6$f*FhclFinF][lFin*&-Ff`l6$
F_]l-%0Janet/conv_prodG6$FhoF^[nF`s-%+Janet/factG6#7#-Fgjm6$FijmFg[nFaxFinFin6(
F1FesFIF\elF;FapFe`n>Febn-Fiz6$f*FhclFinF][lFin*&-F]cn6$FhoF_]lF`s-F`cn6#F_^nFa
xFinFin6&FIF\elF;FapFe`n>Fc`n-Ff`l6$-Fi`l6$FdrF_\lFc`n@$30Fc`nF`_l-%'memberG6%F
js-Ff`l6$FbsFc`n.84-F]p6$%;invalid~point;~solution~ofG/&Fc`n6#F^enFjs>8@Fjs?(F^
tF`sF`s-Ffo6#FhanF_o@$0&FhanFftFjsC$>8E-%/Janet/red2listG6%F\fnF\elF_\l?&8(F_fn
F_oC$>8,-%1Janet/jfind2multG6&&FdfnFfpFapF\elF]en@%/F^enFjs>Ffen,&FfenF`s*&-Ff`
l6$FbsFgfnF`s&FebnFftF`sF`sC$>Ffen,&FfenF`s*(-Ff`l6$Fbs&FdfnF_sF`s&-Fdv6$FgsF^e
n6#FgfnF`sFcgnF`sF`s@$4-Fidn6$F[hn7#F\hm>F\hm6$F\hmF[hn>F_`n6$F_`n/-F`an6#-F_yF
]vFfen>F\hmFchn>Fc`mF\hm>F_`n7#F_`n@%F]gm>F]_m7(7#-Fbw6$/-F_y6$F`s&F\amFft,&-F_
y6$FgpFiinF`s-F_y6$Fgp&F_`nFftF`s/F^t;F`s-Ffo6#F\amFaelFielFaqFfqFbs>F]_m7(F_`n
FaelFielFaqFfqFbs@$F\`mC&>F_`m-Fiz6$f*FhclFinF][lFinF`[lFinFinFinF\hm@%Fe^m>Ff`
mFg`m>Ff`mFcs?(F^tF`sF`sF_amF_o>Ff`mFbamF_bm-Ffbm6$F\amF\hmFin6&Fc`nF]_mFc`mFf[
lFinFin
M7R0
I/Janet/jind2mapf*6$%$derG%%ivarG6"6#%[oCopyright~(C)~2000-2002~by~Mohamed~Bara
kat.~All~rights~reserved.GF'C$@$/-%#opG6#9$F0-%'RETURNGF/-%%diffG6$--F.6$""!F06
#-F.6#9%F-F'F'F'F'
M7R0
I.Janet/jsubconf*6%%%vec1G%%vec2G%%ivarG6#%%dvarG6#%[oCopyright~(C)~2000-2002~b
y~Mohamed~Barakat.~All~rights~reserved.G6"C$@%2""$9#>8$&9"6#""%>F3%%NULLG-%.Jan
et/jaddconG6&9$-%.Janet/jmulconG6&!""9%9&F3FCF3F,F,F,F,
M7R0
I.Janet/jaddmatf*6%'%%mat1G%'matrixG'%%mat2GF'%%ivarG6)%"AG%#rmG%#cmG%"iG%"jG%"
aG%"bG6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C
(>8%-%#opG6$7$"""""#7#-F:6$F>-%%evalG6#9$>8&-F:6$7$F>F>F?@$50-F:6$F<7#-F:6$F>-F
C6#9%F80-F:6$FJFPFG-%&ERRORG6#%LThe~matrices~must~have~the~same~dimensions!G>8$
-F'6$F8FG@%2""$9#?(8'F=F=F8%%trueG?(8(F=F=FGFao>&Fhn6$F`oFco-%.Janet/jaddconG6&
&FEFfo&FUFfo9&&9"6#""%?(F`oF=F=F8Fao?(FcoF=F=FGFao>Feo-Fho6%FjoF[pF\p-%%copyG6#
FhnF5F5F5F5
M7R0
I/Janet/HomoPolyf*6%%"fG%"pG%"vG60%#adG%"iG%"jG%"dG%"gG%"hG%"mG%$ABLG%"PG%#ptG%
$varG%"LG%#JBG%$SolG6#%inCopyright~(C)~2000-2002~by~Carlos~F.~Cid.~All~rights~r
eserved.G6"C0@%-%%typeG6$9%%%listG>8,F?>FB7#F?>8.-%$mapG6$f*6#%"aGF96$%)operato
rG%&arrowGF9-%#opG6$"""9$F9F9F99&>8--FH6$f*FKF9FMF9-FQ6$""#FTF9F9F9FU>8*-%%nops
G6#FB>8+7#-%$seqG6$-%0Janet/jfrechetoG6%-%.Janet/Pol2IndG6%&FB6#8%FF7#&%&gammaG
FjoFFF\p/F[p;FSFin>8/%%NULLG?(F[pFSFSFin%%trueGC$>8$-%$addG6$*&&FB6#8&FS-&F^pF^
q6#-FQ6#FFFS/F_qF`p>Fbp6$Fbp,&-&F^oFjo6#FhpFS-Fjq6#FT!"">Fbp7#Fbp>80-%1Janet/Ja
netBasisG6%FbpFF7#-Fao6$FaqFeq>8'-FH6$f*FKF9FMF9,&-%'degreeG6$T$T%FS-F`s6$FTFcs
F^rF9F96&F%FTF3FFFB>81-%.Janet/PolySolG6%FbrFjrFW>8(-FH6$f*FKF9FMF9FenF9F9F9Fhs
>8)-%)simplifyG6#,&FTFS-Fjp6$*&FioFS&F]tFjoFSF_pF^r-%'RETURNG6#7$FbtF]tF9F9F9F9
M7R0
I,Janet/AddOpf*6%'%%mat1G%'matrixG'%%mat2GF'%%ivarG6)%"AG%#rmG%#cmG%"iG%"jG%"aG
%"bG6#%[oCopyright~(C)~2000-2002~by~Mohamed~Barakat.~All~rights~reserved.G6"C(>
8%-%#opG6$7$"""""#7#-F:6$F>-%%evalG6#9$>8&-F:6$7$F>F>F?@$50-F:6$F<7#-F:6$F>-FC6
#9%F80-F:6$FJFPFG-%&ERRORG6#%LThe~matrices~must~have~the~same~dimensions!G>8$-F
'6$F8FG@%2""$9#?(8'F=F=F8%%trueG?(8(F=F=FGFao>&Fhn6$F`oFco-%.Janet/jaddconG6&&F
EFfo&FUFfo9&&9"6#""%?(F`oF=F=F8Fao?(FcoF=F=FGFao>Feo-Fho6%FjoF[pF\p-%%copyG6#Fh
nF5F5F5F5