1\begin{patch}{PartialFractionXmpPagePatch1} 2\begin{paste}{PartialFractionXmpPageFull1}{PartialFractionXmpPageEmpty1} 3\pastebutton{PartialFractionXmpPageFull1}{\hidepaste} 4\tab{5}\spadcommand{partialFraction(1,factorial 10)\bound{prev1 }} 5\indentrel{3}\begin{verbatim} 6 159 23 12 1 7 (1) --- - -- - -- + - 8 8 4 2 7 9 2 3 5 10 Type: PartialFraction(Integer) 11\end{verbatim} 12\indentrel{-3}\end{paste}\end{patch} 13 14\begin{patch}{PartialFractionXmpPageEmpty1} 15\begin{paste}{PartialFractionXmpPageEmpty1}{PartialFractionXmpPagePatch1} 16\pastebutton{PartialFractionXmpPageEmpty1}{\showpaste} 17\tab{5}\spadcommand{partialFraction(1,factorial 10)\bound{prev1 }} 18\end{paste}\end{patch} 19 20\begin{patch}{PartialFractionXmpPagePatch2} 21\begin{paste}{PartialFractionXmpPageFull2}{PartialFractionXmpPageEmpty2} 22\pastebutton{PartialFractionXmpPageFull2}{\hidepaste} 23\tab{5}\spadcommand{f := padicFraction(\%)\free{prev1 }\bound{f }} 24\indentrel{3}\begin{verbatim} 25 (2) 26 1 1 1 1 1 1 2 1 2 2 2 1 27 - + -- + -- + -- + -- + -- - -- - -- - -- - - - -- + - 28 2 4 5 6 7 8 2 3 4 5 2 7 29 2 2 2 2 2 3 3 3 5 30 Type: PartialFraction(Integer) 31\end{verbatim} 32\indentrel{-3}\end{paste}\end{patch} 33 34\begin{patch}{PartialFractionXmpPageEmpty2} 35\begin{paste}{PartialFractionXmpPageEmpty2}{PartialFractionXmpPagePatch2} 36\pastebutton{PartialFractionXmpPageEmpty2}{\showpaste} 37\tab{5}\spadcommand{f := padicFraction(\%)\free{prev1 }\bound{f }} 38\end{paste}\end{patch} 39 40\begin{patch}{PartialFractionXmpPagePatch3} 41\begin{paste}{PartialFractionXmpPageFull3}{PartialFractionXmpPageEmpty3} 42\pastebutton{PartialFractionXmpPageFull3}{\hidepaste} 43\tab{5}\spadcommand{compactFraction(f)\free{f }} 44\indentrel{3}\begin{verbatim} 45 159 23 12 1 46 (3) --- - -- - -- + - 47 8 4 2 7 48 2 3 5 49 Type: PartialFraction(Integer) 50\end{verbatim} 51\indentrel{-3}\end{paste}\end{patch} 52 53\begin{patch}{PartialFractionXmpPageEmpty3} 54\begin{paste}{PartialFractionXmpPageEmpty3}{PartialFractionXmpPagePatch3} 55\pastebutton{PartialFractionXmpPageEmpty3}{\showpaste} 56\tab{5}\spadcommand{compactFraction(f)\free{f }} 57\end{paste}\end{patch} 58 59\begin{patch}{PartialFractionXmpPagePatch4} 60\begin{paste}{PartialFractionXmpPageFull4}{PartialFractionXmpPageEmpty4} 61\pastebutton{PartialFractionXmpPageFull4}{\hidepaste} 62\tab{5}\spadcommand{numberOfFractionalTerms(f)\free{f }} 63\indentrel{3}\begin{verbatim} 64 (4) 12 65 Type: PositiveInteger 66\end{verbatim} 67\indentrel{-3}\end{paste}\end{patch} 68 69\begin{patch}{PartialFractionXmpPageEmpty4} 70\begin{paste}{PartialFractionXmpPageEmpty4}{PartialFractionXmpPagePatch4} 71\pastebutton{PartialFractionXmpPageEmpty4}{\showpaste} 72\tab{5}\spadcommand{numberOfFractionalTerms(f)\free{f }} 73\end{paste}\end{patch} 74 75\begin{patch}{PartialFractionXmpPagePatch5} 76\begin{paste}{PartialFractionXmpPageFull5}{PartialFractionXmpPageEmpty5} 77\pastebutton{PartialFractionXmpPageFull5}{\hidepaste} 78\tab{5}\spadcommand{fractionalTerms(f).3\free{f }} 79\indentrel{3}\begin{verbatim} 80 5 81 (5) [num = 1, den = 2 ] 82 Type: Record(num: Integer,den: Factored(Integer)) 83\end{verbatim} 84\indentrel{-3}\end{paste}\end{patch} 85 86\begin{patch}{PartialFractionXmpPageEmpty5} 87\begin{paste}{PartialFractionXmpPageEmpty5}{PartialFractionXmpPagePatch5} 88\pastebutton{PartialFractionXmpPageEmpty5}{\showpaste} 89\tab{5}\spadcommand{fractionalTerms(f).3\free{f }} 90\end{paste}\end{patch} 91 92\begin{patch}{PartialFractionXmpPagePatch6} 93\begin{paste}{PartialFractionXmpPageFull6}{PartialFractionXmpPageEmpty6} 94\pastebutton{PartialFractionXmpPageFull6}{\hidepaste} 95\tab{5}\spadcommand{partialFraction(1,- 13 + 14 * \%i)\bound{prev2 }} 96\indentrel{3}\begin{verbatim} 97 1 4 98 (6) - -------- + -------- 99 1 + 2 %i 3 + 8 %i 100 Type: PartialFraction(Complex(Integer)) 101\end{verbatim} 102\indentrel{-3}\end{paste}\end{patch} 103 104\begin{patch}{PartialFractionXmpPageEmpty6} 105\begin{paste}{PartialFractionXmpPageEmpty6}{PartialFractionXmpPagePatch6} 106\pastebutton{PartialFractionXmpPageEmpty6}{\showpaste} 107\tab{5}\spadcommand{partialFraction(1,- 13 + 14 * \%i)\bound{prev2 }} 108\end{paste}\end{patch} 109 110\begin{patch}{PartialFractionXmpPagePatch7} 111\begin{paste}{PartialFractionXmpPageFull7}{PartialFractionXmpPageEmpty7} 112\pastebutton{PartialFractionXmpPageFull7}{\hidepaste} 113\tab{5}\spadcommand{\% :: Fraction Complex Integer\free{prev2 }} 114\indentrel{3}\begin{verbatim} 115 %i 116 (7) - ---------- 117 14 + 13 %i 118 Type: Fraction(Complex(Integer)) 119\end{verbatim} 120\indentrel{-3}\end{paste}\end{patch} 121 122\begin{patch}{PartialFractionXmpPageEmpty7} 123\begin{paste}{PartialFractionXmpPageEmpty7}{PartialFractionXmpPagePatch7} 124\pastebutton{PartialFractionXmpPageEmpty7}{\showpaste} 125\tab{5}\spadcommand{\% :: Fraction Complex Integer\free{prev2 }} 126\end{paste}\end{patch} 127 128\begin{patch}{PartialFractionXmpPagePatch8} 129\begin{paste}{PartialFractionXmpPageFull8}{PartialFractionXmpPageEmpty8} 130\pastebutton{PartialFractionXmpPageFull8}{\hidepaste} 131\tab{5}\spadcommand{u : FR UP(x, FRAC INT) := reduce(*,[primeFactor(x+i,i) for i in 1..4])\bound{u }} 132\indentrel{3}\begin{verbatim} 133 2 3 4 134 (8) (x + 1)(x + 2) (x + 3) (x + 4) 135Type: Factored(UnivariatePolynomial(x,Fraction(Integer))) 136\end{verbatim} 137\indentrel{-3}\end{paste}\end{patch} 138 139\begin{patch}{PartialFractionXmpPageEmpty8} 140\begin{paste}{PartialFractionXmpPageEmpty8}{PartialFractionXmpPagePatch8} 141\pastebutton{PartialFractionXmpPageEmpty8}{\showpaste} 142\tab{5}\spadcommand{u : FR UP(x, FRAC INT) := reduce(*,[primeFactor(x+i,i) for i in 1..4])\bound{u }} 143\end{paste}\end{patch} 144 145\begin{patch}{PartialFractionXmpPagePatch9} 146\begin{paste}{PartialFractionXmpPageFull9}{PartialFractionXmpPageEmpty9} 147\pastebutton{PartialFractionXmpPageFull9}{\hidepaste} 148\tab{5}\spadcommand{partialFraction(1,u)\free{u }\bound{prev3 }} 149\indentrel{3}\begin{verbatim} 150 (9) 151 1 1 7 17 2 139 152 --- - x + -- - -- x - 12 x - --- 153 648 4 16 8 8 154 ----- + -------- + -------------------- 155 x + 1 2 3 156 (x + 2) (x + 3) 157 + 158 607 3 10115 2 391 44179 159 --- x + ----- x + --- x + ----- 160 324 432 4 324 161 --------------------------------- 162 4 163 (x + 4) 164Type: PartialFraction(UnivariatePolynomial(x,Fraction(Integer))) 165\end{verbatim} 166\indentrel{-3}\end{paste}\end{patch} 167 168\begin{patch}{PartialFractionXmpPageEmpty9} 169\begin{paste}{PartialFractionXmpPageEmpty9}{PartialFractionXmpPagePatch9} 170\pastebutton{PartialFractionXmpPageEmpty9}{\showpaste} 171\tab{5}\spadcommand{partialFraction(1,u)\free{u }\bound{prev3 }} 172\end{paste}\end{patch} 173 174\begin{patch}{PartialFractionXmpPagePatch10} 175\begin{paste}{PartialFractionXmpPageFull10}{PartialFractionXmpPageEmpty10} 176\pastebutton{PartialFractionXmpPageFull10}{\hidepaste} 177\tab{5}\spadcommand{padicFraction \%\free{prev3 }} 178\indentrel{3}\begin{verbatim} 179 (10) 180 1 1 1 17 3 181 --- - -- -- - 182 648 4 16 8 4 183 ----- + ----- - -------- - ----- + -------- 184 x + 1 x + 2 2 x + 3 2 185 (x + 2) (x + 3) 186 + 187 1 607 403 13 1 188 - --- --- -- -- 189 2 324 432 36 12 190 - -------- + ----- + -------- + -------- + -------- 191 3 x + 4 2 3 4 192 (x + 3) (x + 4) (x + 4) (x + 4) 193Type: PartialFraction(UnivariatePolynomial(x,Fraction(Integer))) 194\end{verbatim} 195\indentrel{-3}\end{paste}\end{patch} 196 197\begin{patch}{PartialFractionXmpPageEmpty10} 198\begin{paste}{PartialFractionXmpPageEmpty10}{PartialFractionXmpPagePatch10} 199\pastebutton{PartialFractionXmpPageEmpty10}{\showpaste} 200\tab{5}\spadcommand{padicFraction \%\free{prev3 }} 201\end{paste}\end{patch} 202 203