diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/polexpr/polexprsturm.tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/polexpr/polexprsturm.tex | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/Master/texmf-dist/tex/generic/polexpr/polexprsturm.tex b/Master/texmf-dist/tex/generic/polexpr/polexprsturm.tex index 3fa1861558d..c21980830cd 100644 --- a/Master/texmf-dist/tex/generic/polexpr/polexprsturm.tex +++ b/Master/texmf-dist/tex/generic/polexpr/polexprsturm.tex @@ -1,4 +1,4 @@ -%% This file polexprsturm.tex is part of the polexpr package (0.8, 2021/03/29) +%% This file polexprsturm.tex is part of the polexpr package (0.8.1, 2021/04/12) %% Sturm Algorithm (polexpr 0.4) %% 0.5 uses primitive polynomials for faster evaluations afterwards %% 0.6 corrects misuse of \@ifstar! (mumble). \PolToSturm* was broken. @@ -232,7 +232,7 @@ \let\POL@findrat@nbofirrroots\POL@isolz@NbOfRoots % find all rational roots, and their multiplicities, % factor them out in passing from original (Sturm root) polynomial - \ifnum\POL@findrat@E<7 + \ifnum\POL@findrat@E<7 % \def\POL@findrat@index{1}% \POL@findrat@loop@secondpass@direct \else @@ -332,7 +332,7 @@ \edef\POL@findrat@halflocalW{\the\numexpr(\POL@findrat@localW+1)/2-1}% % Legendre Theorem will be used now but we separate a branch where % everything can be done with \numexpr - \ifnum\POL@findrat@localW>9 + \ifnum\POL@findrat@localW>9 % % not implemented yet by lazyness! % this root will be handled in second pass only \else @@ -1297,7 +1297,7 @@ \ifnum\POL@IsoRightSign=\z@ \expandafter\xintbreakiloop \fi - \ifnum\xintiloopindex<#1 + \ifnum\xintiloopindex<#1 % \repeat }% \def\POL@refine@main{% @@ -1434,8 +1434,8 @@ }% % %% \PolPrintIntervals -\catcode`_ 8 -\catcode`& 4 +\catcode`_ 8 % +\catcode`& 4 % \def\PolPrintIntervals{\POL@ifstar{\PolPrintIntervals@@}{\PolPrintIntervals@}}% % As explained in the docs, this is an example of customization so is not % itself customizable, apart from redefining it entirely! @@ -1555,8 +1555,8 @@ {\PolPrintIntervalsTheVar_{\PolPrintIntervalsTheIndex}=% \PolPrintIntervalsPrintLeftEndPoint\dots}}% }% -\catcode`& 7 -\catcode`_ 11 +\catcode`& 7 % +\catcode`_ 11 % \def\POL@PrintIntervals@Loop#1{% \def\POL@PrintIntervals@Loop{% \POL@SturmIfZeroExactlyKnown\PolPrintIntervalsTheSturmName @@ -1672,12 +1672,15 @@ }% % \def\POL@leq@fork#1\LessThanOrEqualTo#2#3\krof{#2}% -\def\PolSturmNbOfRootsOf#1#2#3{\romannumeral`&&@\POL@leq@fork +\def\PolSturmNbOfRootsOf#1#2#3{% + \romannumeral`&&@\POL@leq@fork #2\PolNbOfRootsLessThanOrEqualTo - \LessThanOrEqualTo\PolNbOfRootsLessThanOrEqualToExpr\krof {#1}{#3}% + \LessThanOrEqualTo\PolNbOfRootsLessThanOrEqualToExpr + \krof {#1}{#3}% +}% +\def\PolNbOfRootsLessThanOrEqualToExpr#1#2{% + \PolNbOfRootsLessThanOrEqualTo{#1}{\xinttheexpr#2\relax}% }% -\def\PolNbOfRootsLessThanOrEqualToExpr#1#2 - {\PolNbOfRootsLessThanOrEqualTo{#1}{\xinttheexpr#2\relax}}% \def\PolNbOfRootsLessThanOrEqualTo#1{% \ifnum\PolSturmNbOfIsolatedZeros{#1}=\z@ \expandafter\xint_firstofthree\expandafter0% |