Update ChangeLog
[maxima.git] / doc / info / pt / Series.texi
blobfd5766408660c30db9be0fc691539102b0814e1c
1 @c /Series.texi/1.16/Sun Jan  7 05:49:50 2007/-ko/
2 @menu
3 * Introdução a Séries::      
4 * Definições para Séries::      
5 @end menu
7 @node Introdução a Séries, Definições para Séries, Séries, Séries
8 @section Introdução a Séries
9 Maxima contém funções @code{taylor} e @code{powerseries} (séries de potência) para encontrar as
10 séries de funções diferenciáveis.   Maxima também tem ferramentas  tais como @code{nusum}
11 capazes de encontrar a forma fechada de algumas séries.   Operações tais como adição e multiplicação travalham da forma usual sobre séries.  Essa secção apresenta as variáveis globais que controlam a
12 expansão.
13 @c end concepts Series
14 @node Definições para Séries,  , Introdução a Séries, Séries
15 @section Definições para Séries
17 @defvr {Variável de opção} cauchysum
18 Valor por omissão: @code{false}
20 @c REPHRASE
21 Quando multiplicando adições jutas com @code{inf} como seus limites superiores,
22 se @code{sumexpand} for @code{true} e @code{cauchysum} for @code{true}
23 então o produto de Cauchy será usado em lugar do produto
24 usual.
25 No produto de Cauchy o índice do somatório interno é uma
26 função do índice do externo em lugar de variar
27 independentemente.
29 Exemplo:
31 @example
32 (%i1) sumexpand: false$
33 (%i2) cauchysum: false$
34 (%i3) s: sum (f(i), i, 0, inf) * sum (g(j), j, 0, inf);
35                       inf         inf
36                       ====        ====
37                       \           \
38 (%o3)                ( >    f(i))  >    g(j)
39                       /           /
40                       ====        ====
41                       i = 0       j = 0
42 (%i4) sumexpand: true$
43 (%i5) cauchysum: true$
44 (%i6) ''s;
45                  inf     i1
46                  ====   ====
47                  \      \
48 (%o6)             >      >     g(i1 - i2) f(i2)
49                  /      /
50                  ====   ====
51                  i1 = 0 i2 = 0
52 @end example
54 @end defvr
56 @deffn {Função} deftaylor (@var{f_1}(@var{x_1}), @var{expr_1}, ..., @var{f_n}(@var{x_n}), @var{expr_n})
57 Para cada função @var{f_i} de uma variável @var{x_i}, 
58 @code{deftaylor} define @var{expr_i} como a séries de Taylor sobre zero.
59 @var{expr_i} é tipicamente um polinómio em @var{x_i} ou um somatório;
60 expressões mais gerais são aceitas por @code{deftaylor} sem reclamações.
62 @code{powerseries (@var{f_i}(@var{x_i}), @var{x_i}, 0)}
63 retorna as séries definidas por @code{deftaylor}.
65 @code{deftaylor} retorna uma lista das funções
66 @var{f_1}, ..., @var{f_n}.
67 @code{deftaylor} avalia seus argumentos.
69 Exemplo:
71 @example
72 (%i1) deftaylor (f(x), x^2 + sum(x^i/(2^i*i!^2), i, 4, inf));
73 (%o1)                          [f]
74 (%i2) powerseries (f(x), x, 0);
75                       inf
76                       ====      i1
77                       \        x         2
78 (%o2)                  >     -------- + x
79                       /       i1    2
80                       ====   2   i1!
81                       i1 = 4
82 (%i3) taylor (exp (sqrt (f(x))), x, 0, 4);
83                       2         3          4
84                      x    3073 x    12817 x
85 (%o3)/T/     1 + x + -- + ------- + -------- + . . .
86                      2     18432     307200
87 @end example
89 @end deffn
91 @defvr {Variável de opção} maxtayorder
92 Valor por omissão: @code{true}
94 @c REPHRASE
95 Quando @code{maxtayorder} for @code{true}, durante a manipulação
96 algébrica de séries (truncadas) de Taylor, @code{taylor} tenta reter
97 tantos termos quantos forem conhecidos serem correctos.
99 @end defvr
101 @deffn {Função} niceindices (@var{expr})
102 Renomeia os índices de adições e produtos em @var{expr}.
103 @code{niceindices} tenta renomear cada índice para o valor de @code{niceindicespref[1]},
104 a menos que o nome apareça nas parcelas do somatório ou produtório,
105 nesses casos @code{niceindices} tenta
106 os elementos seguintes de @code{niceindicespref} por sua vez, até que uma varável não usada unused variable seja encontrada.
107 Se a lista inteira for exaurida,
108 índices adicionais são constrídos através da anexaao de inteiros ao valor de
109 @code{niceindicespref[1]}, e.g., @code{i0}, @code{i1}, @code{i2}, ....
111 @code{niceindices} retorna uma expressão.
112 @code{niceindices} avalia seu argumento.
114 Exemplo:
116 @example
117 (%i1) niceindicespref;
118 (%o1)                  [i, j, k, l, m, n]
119 (%i2) product (sum (f (foo + i*j*bar), foo, 1, inf), bar, 1, inf);
120                  inf    inf
121                 /===\   ====
122                  ! !    \
123 (%o2)            ! !     >      f(bar i j + foo)
124                  ! !    /
125                 bar = 1 ====
126                         foo = 1
127 (%i3) niceindices (%);
128                      inf  inf
129                     /===\ ====
130                      ! !  \
131 (%o3)                ! !   >    f(i j l + k)
132                      ! !  /
133                     l = 1 ====
134                           k = 1
135 @end example
137 @end deffn
139 @defvr {Variável de opção} niceindicespref
140 Valor por omissão: @code{[i, j, k, l, m, n]}
142 @code{niceindicespref} é a lista da qual @code{niceindices}
143 obtém os nomes dos índices de adições e produtos products.
145 Os elementos de @code{niceindicespref} são tipicamente nomes de variáveis,
146 embora que não seja imposto por @code{niceindices}.
148 Exemplo:
150 @example
151 (%i1) niceindicespref: [p, q, r, s, t, u]$
152 (%i2) product (sum (f (foo + i*j*bar), foo, 1, inf), bar, 1, inf);
153                  inf    inf
154                 /===\   ====
155                  ! !    \
156 (%o2)            ! !     >      f(bar i j + foo)
157                  ! !    /
158                 bar = 1 ====
159                         foo = 1
160 (%i3) niceindices (%);
161                      inf  inf
162                     /===\ ====
163                      ! !  \
164 (%o3)                ! !   >    f(i j q + p)
165                      ! !  /
166                     q = 1 ====
167                           p = 1
168 @end example
170 @end defvr
172 @deffn {Função} nusum (@var{expr}, @var{x}, @var{i_0}, @var{i_1})
173 Realiza o somatório hipergeométrico indefinido de @var{expr} com
174 relação a @var{x} usando um procedimento de decisão devido a R.W. Gosper.
175 @var{expr} e o resultado deve ser expressável como produtos de expoentes inteiros,
176 factoriais, binomios, e funções recionais.
178 @c UMM, DO WE REALLY NEED TO DEFINE "DEFINITE" AND "INDEFINITE" SUMMATION HERE ??
179 @c (CAN'T WE MAKE THE POINT WITHOUT DRAGGING IN SOME NONSTANDARD TERMINOLOGY ??)
180 Os termos "definido"
181 and "e somatório indefinido" são usados analogamente a "definida" and
182 "integração indefinida".
183 Adicionar indefinidamente significa dar um resultado simólico
184 para a adição sobre intervalos de comprimentos de variáveis, não apenas e.g. 0 a
185 infinito.  Dessa forma, uma vez que não existe fórmula para a adição parcial geral de
186 séries binomiais, @code{nusum} não pode fazer isso.
188 @code{nusum} e @code{unsum} conhecem um porco sobre adições e subtrações de produtos finitos.
189 Veja também @code{unsum}.
191 Exemplos:
193 @example
194 (%i1) nusum (n*n!, n, 0, n);
196 Dependent equations eliminated:  (1)
197 (%o1)                     (n + 1)! - 1
198 (%i2) nusum (n^4*4^n/binomial(2*n,n), n, 0, n);
199                      4        3       2              n
200       2 (n + 1) (63 n  + 112 n  + 18 n  - 22 n + 3) 4      2
201 (%o2) ------------------------------------------------ - ------
202                     693 binomial(2 n, n)                 3 11 7
203 (%i3) unsum (%, n);
204                               4  n
205                              n  4
206 (%o3)                   ----------------
207                         binomial(2 n, n)
208 (%i4) unsum (prod (i^2, i, 1, n), n);
209                     n - 1
210                     /===\
211                      ! !   2
212 (%o4)              ( ! !  i ) (n - 1) (n + 1)
213                      ! !
214                     i = 1
215 (%i5) nusum (%, n, 1, n);
217 Dependent equations eliminated:  (2 3)
218                             n
219                           /===\
220                            ! !   2
221 (%o5)                      ! !  i  - 1
222                            ! !
223                           i = 1
224 @end example
226 @end deffn
228 @c THIS ITEM NEEDS SERIOUS WORK
229 @deffn {Função} pade (@var{taylor_series}, @var{numer_deg_bound}, @var{denom_deg_bound})
230 Retorna uma lista de
231 todas as funções racionais que possuem a dada expansão da séries de Taylor
232 onde a adição dos graus do numerador e do denominador é
233 menor que ou igual ao nível de truncação das séries de potência, i.e.
234 são "melhores" aproximações, e que adicionalmente satisfazem o grau
235 especificado associado.
237 @var{taylor_series} é uma séries de Taylor de uma variável.
238 @var{numer_deg_bound} e @var{denom_deg_bound}
239 são inteiros positivos especificando o grau associado sobre
240 o numerador e o denominador.
242 @var{taylor_series} podem também ser séries de Laurent, e o grau
243 associado pode ser @code{inf} que acarreta todas funções racionais cujo grau
244 total for menor que ou igual ao comprimento das séries de potências a serem
245 retornadas.  O grau total é definido como @code{@var{numer_deg_bound} + @var{denom_deg_bound}}.
246 O comprimento de séries de potência é definido como
247 @code{"nível de trncação" + 1 - min(0, "ordem das séries")}.
249 @example
250 (%i1) taylor (1 + x + x^2 + x^3, x, 0, 3);
251                               2    3
252 (%o1)/T/             1 + x + x  + x  + . . .
253 (%i2) pade (%, 1, 1);
254                                  1
255 (%o2)                       [- -----]
256                                x - 1
257 (%i3) t: taylor(-(83787*x^10 - 45552*x^9 - 187296*x^8
258                    + 387072*x^7 + 86016*x^6 - 1507328*x^5
259                    + 1966080*x^4 + 4194304*x^3 - 25165824*x^2
260                    + 67108864*x - 134217728)
261        /134217728, x, 0, 10);
262                     2    3       4       5       6        7
263              x   3 x    x    15 x    23 x    21 x    189 x
264 (%o3)/T/ 1 - - + ---- - -- - ----- + ----- - ----- - ------
265              2    16    32   1024    2048    32768   65536
267                                   8         9          10
268                             5853 x    2847 x    83787 x
269                           + ------- + ------- - --------- + . . .
270                             4194304   8388608   134217728
271 (%i4) pade (t, 4, 4);
272 (%o4)                          []
273 @end example
275 Não existe função racional de grau 4 numerador/denominador, com essa
276 expansão de série de potência.  Você obrigatoriamente em geral tem grau do numerador e
277 grau do denominador adicionando para cima ao menor grau das séries de potência,
278 com o objectivo de ter disponível coeficientes desconhecidos para resolver.
280 @example
281 (%i5) pade (t, 5, 5);
282                      5                4                 3
283 (%o5) [- (520256329 x  - 96719020632 x  - 489651410240 x
285                   2
286  - 1619100813312 x  - 2176885157888 x - 2386516803584)
288                5                 4                  3
289 /(47041365435 x  + 381702613848 x  + 1360678489152 x
291                   2
292  + 2856700692480 x  + 3370143559680 x + 2386516803584)]
293 @end example
295 @end deffn
297 @defvr {Variável de opção} powerdisp
298 Valor por omissão: @code{false}
300 Quando @code{powerdisp} for @code{true},
301 uma adição é mostrada com seus termos em ordem do crescimento do expoente.
302 Dessa forma um polinómio é mostrado como séries de potências truncadas,
303 com o termo constante primeiro e o maior expoente por último.
305 Por padão, termos de uma adição são mostrados em ordem do expoente decrescente.
307 @c NEED AN EXAMPLE HERE
308 @end defvr
310 @deffn {Função} powerseries (@var{expr}, @var{x}, @var{a})
311 Retorna a forma geral expansão de séries de potência para @var{expr}
312 na variável @var{x} sobre o ponto @var{a} (o qual pode ser @code{inf} para infinito).
314 Se @code{powerseries} incapaz de expandir @var{expr},
315 @code{taylor} pode dar os primeiros muitos termos de séries.
317 Quando @code{verbose} for @code{true},
318 @code{powerseries} mostra mensagens de progresso. 
320 @example
321 (%i1) verbose: true$
322 (%i2) powerseries (log(sin(x)/x), x, 0);
323 can't expand 
324                                  log(sin(x))
325 so we'll try again after applying the rule:
326                                         d
327                                       / -- (sin(x))
328                                       [ dx
329                         log(sin(x)) = i ----------- dx
330                                       ]   sin(x)
331                                       /
332 in the first simplification we have returned:
333                              /
334                              [
335                              i cot(x) dx - log(x)
336                              ]
337                              /
338                     inf
339                     ====        i1  2 i1             2 i1
340                     \      (- 1)   2     bern(2 i1) x
341                      >     ------------------------------
342                     /                i1 (2 i1)!
343                     ====
344                     i1 = 1
345 (%o2)                -------------------------------------
346                                       2
347 @end example
349 @end deffn
351 @defvr {Variável de opção} psexpand
352 Valor por omissão: @code{false}
354 Quando @code{psexpand} for @code{true},
355 uma expressão função racional extendida é mostrada completamente expandida.
356 O comutador @code{ratexpand} tem o mesmo efeito.
358 @c WE NEED TO BE EXPLICIT HERE
359 Quando @code{psexpand} for @code{false},
360 uma expressão de várias variáveis é mostrada apenas como no pacote de função racional.
362 @c TERMS OF WHAT ??
363 Quando @code{psexpand} for  @code{multi},
364 então termos com o mesmo grau total nas variáveis são agrupados juntos.
366 @end defvr
368 @deffn {Função} revert (@var{expr}, @var{x})
369 @deffnx {Função} revert2 (@var{expr}, @var{x}, @var{n})
370 Essas funções retornam a reversão de @var{expr}, uma série de Taylor sobre zero na variável @var{x}.
371 @code{revert} retorna um polinómio de grau igual ao maior expoente em @var{expr}.
372 @code{revert2} retorna um polinómio de grau @var{n},
373 o qual pode ser maior que, igual a, ou menor que o grau de @var{expr}.
375 @code{load ("revert")} chama essas funções.
377 Exemplos:
379 @example
380 (%i1) load ("revert")$
381 (%i2) t: taylor (exp(x) - 1, x, 0, 6);
382                    2    3    4    5     6
383                   x    x    x    x     x
384 (%o2)/T/      x + -- + -- + -- + --- + --- + . . .
385                   2    6    24   120   720
386 (%i3) revert (t, x);
387                6       5       4       3       2
388            10 x  - 12 x  + 15 x  - 20 x  + 30 x  - 60 x
389 (%o3)/R/ - --------------------------------------------
390                                 60
391 (%i4) ratexpand (%);
392                      6    5    4    3    2
393                     x    x    x    x    x
394 (%o4)             - -- + -- - -- + -- - -- + x
395                     6    5    4    3    2
396 (%i5) taylor (log(x+1), x, 0, 6);
397                     2    3    4    5    6
398                    x    x    x    x    x
399 (%o5)/T/       x - -- + -- - -- + -- - -- + . . .
400                    2    3    4    5    6
401 (%i6) ratsimp (revert (t, x) - taylor (log(x+1), x, 0, 6));
402 (%o6)                           0
403 (%i7) revert2 (t, x, 4);
404                           4    3    2
405                          x    x    x
406 (%o7)                  - -- + -- - -- + x
407                          4    3    2
408 @end example
410 @end deffn
412 @deffn {Função} taylor (@var{expr}, @var{x}, @var{a}, @var{n})
413 @deffnx {Função} taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], @var{a}, @var{n})
414 @deffnx {Função} taylor (@var{expr}, [@var{x}, @var{a}, @var{n}, 'asymp])
415 @deffnx {Função} taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], [@var{a_1}, @var{a_2}, ...], [@var{n_1}, @var{n_2}, ...])
416 @deffnx {Função} taylor (@var{expr}, [@var{x_1}, @var{a_1}, @var{n_1}], [@var{x_2}, @var{a_2}, @var{n_2}], ...)
417 @code{taylor (@var{expr}, @var{x}, @var{a}, @var{n})} expande a expressão @var{expr}
418 em uma série truncada de Taylor ou de Laurent na variável @var{x}
419 em torno do ponto @var{a},
420 contendo termos até @code{(@var{x} - @var{a})^@var{n}}.
422 Se @var{expr} é da forma @code{@var{f}(@var{x})/@var{g}(@var{x})}
423 e @code{@var{g}(@var{x})} não possui de grau acima do grau @var{n}
424 então @code{taylor} tenta expandir @code{@var{g}(@var{x})} acima do gau @code{2 @var{n}}.
425 Se existe ainda termos não zero, @code{taylor} dobra o
426 grau de expansão de @code{@var{g}(@var{x})}
427 contanto que o grau da expansão o grau da expansão seja menor que ou igual a @code{@var{n} 2^taylordepth}.
429 @code{taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], @var{a}, @var{n})}
430 retorna uma série de potência truncada 
431 de grau @var{n} em todas as variáveis @var{x_1}, @var{x_2}, ...
432 sobre o ponto @code{(@var{a}, @var{a}, ...)}.
434 @code{taylor (@var{expr}, [@var{x_1}, @var{a_1}, @var{n_1}], [@var{x_2}, @var{a_2}, @var{n_2}], ...)}
435 retorna uma série de potência truncada nas variáveis @var{x_1}, @var{x_2}, ...
436 sobre o ponto @code{(@var{a_1}, @var{a_2}, ...)},
437 truncada em @var{n_1}, @var{n_2}, ....
439 @code{taylor (@var{expr}, [@var{x_1}, @var{x_2}, ...], [@var{a_1}, @var{a_2}, ...], [@var{n_1}, @var{n_2}, ...])}
440 retorna uma série de potência truncada nas variáveis @var{x_1}, @var{x_2}, ...
441 sobre o ponto @code{(@var{a_1}, @var{a_2}, ...)},
442 truncada em @var{n_1}, @var{n_2}, ....
444 @code{taylor (@var{expr}, [@var{x}, @var{a}, @var{n}, 'asymp])}
445 retorna uma expansão de @var{expr} em expoentes negativos de @code{@var{x} - @var{a}}.
446 O termo de maior ordem é @code{(@var{x} - @var{a})^@var{-n}}.
448 Quando @code{maxtayorder} for @code{true}, então durante maniplulação
449 algébrica da séries de Taylor (truncada), @code{taylor} tenta reter
450 tantos termos quantos forem conhecidos serem correctos.
452 Quando @code{psexpand} for @code{true},
453 uma expressão de função racional extendida é mostrada completamente expandida.
454 O comutador @code{ratexpand} tem o mesmo efeito.
455 Quando @code{psexpand} for @code{false},
456 uma expressão de várias variáveis é mostrada apenas como no pacote de função racional.
457 Quando @code{psexpand} for  @code{multi},
458 então os termos com o mesmo grau total nas variáveis são agrupados juntos.
460 Veja também o comutador @code{taylor_logexpand} para controlar a expansão.
462 Exemplos:
463 @c EXAMPLES ADAPTED FROM example (taylor)
464 @c taylor (sqrt (sin(x) + a*x + 1), x, 0, 3);
465 @c %^2;
466 @c taylor (sqrt (x + 1), x, 0, 5);
467 @c %^2;
468 @c product ((1 + x^i)^2.5, i, 1, inf)/(1 + x^2);
469 @c ev (taylor(%, x,  0, 3), keepfloat);
470 @c taylor (1/log (x + 1), x, 0, 3);
471 @c taylor (cos(x) - sec(x), x, 0, 5);
472 @c taylor ((cos(x) - sec(x))^3, x, 0, 5);
473 @c taylor (1/(cos(x) - sec(x))^3, x, 0, 5);
474 @c taylor (sqrt (1 - k^2*sin(x)^2), x, 0, 6);
475 @c taylor ((x + 1)^n, x, 0, 4);
476 @c taylor (sin (y + x), x, 0, 3, y, 0, 3);
477 @c taylor (sin (y + x), [x, y], 0, 3);
478 @c taylor (1/sin (y + x), x, 0, 3, y, 0, 3);
479 @c taylor (1/sin (y + x), [x, y], 0, 3);
481 @example
482 (%i1) taylor (sqrt (sin(x) + a*x + 1), x, 0, 3);
483                            2             2
484              (a + 1) x   (a  + 2 a + 1) x
485 (%o1)/T/ 1 + --------- - -----------------
486                  2               8
488                                    3      2             3
489                                (3 a  + 9 a  + 9 a - 1) x
490                              + -------------------------- + . . .
491                                            48
492 (%i2) %^2;
493                                     3
494                                    x
495 (%o2)/T/           1 + (a + 1) x - -- + . . .
496                                    6
497 (%i3) taylor (sqrt (x + 1), x, 0, 5);
498                        2    3      4      5
499                   x   x    x    5 x    7 x
500 (%o3)/T/      1 + - - -- + -- - ---- + ---- + . . .
501                   2   8    16   128    256
502 (%i4) %^2;
503 (%o4)/T/                  1 + x + . . .
504 (%i5) product ((1 + x^i)^2.5, i, 1, inf)/(1 + x^2);
505                          inf
506                         /===\
507                          ! !    i     2.5
508                          ! !  (x  + 1)
509                          ! !
510                         i = 1
511 (%o5)                   -----------------
512                               2
513                              x  + 1
514 (%i6) ev (taylor(%, x,  0, 3), keepfloat);
515                                2           3
516 (%o6)/T/    1 + 2.5 x + 3.375 x  + 6.5625 x  + . . .
517 (%i7) taylor (1/log (x + 1), x, 0, 3);
518                                2       3
519                  1   1   x    x    19 x
520 (%o7)/T/         - + - - -- + -- - ----- + . . .
521                  x   2   12   24    720
522 (%i8) taylor (cos(x) - sec(x), x, 0, 5);
523                                 4
524                            2   x
525 (%o8)/T/                - x  - -- + . . .
526                                6
527 (%i9) taylor ((cos(x) - sec(x))^3, x, 0, 5);
528 (%o9)/T/                    0 + . . .
529 (%i10) taylor (1/(cos(x) - sec(x))^3, x, 0, 5);
530                                                2          4
531             1     1       11      347    6767 x    15377 x
532 (%o10)/T/ - -- + ---- + ------ - ----- - ------- - --------
533              6      4        2   15120   604800    7983360
534             x    2 x    120 x
536                                                           + . . .
537 (%i11) taylor (sqrt (1 - k^2*sin(x)^2), x, 0, 6);
538                2  2       4      2   4
539               k  x    (3 k  - 4 k ) x
540 (%o11)/T/ 1 - ----- - ----------------
541                 2            24
543                                     6       4       2   6
544                                (45 k  - 60 k  + 16 k ) x
545                              - -------------------------- + . . .
546                                           720
547 (%i12) taylor ((x + 1)^n, x, 0, 4);
548                       2       2     3      2         3
549                     (n  - n) x    (n  - 3 n  + 2 n) x
550 (%o12)/T/ 1 + n x + ----------- + --------------------
551                          2                 6
553                                4      3       2         4
554                              (n  - 6 n  + 11 n  - 6 n) x
555                            + ---------------------------- + . . .
556                                           24
557 (%i13) taylor (sin (y + x), x, 0, 3, y, 0, 3);
558                3                 2
559               y                 y
560 (%o13)/T/ y - -- + . . . + (1 - -- + . . .) x
561               6                 2
563                     3                       2
564                y   y            2      1   y            3
565           + (- - + -- + . . .) x  + (- - + -- + . . .) x  + . . .
566                2   12                  6   12
567 (%i14) taylor (sin (y + x), [x, y], 0, 3);
568                      3        2      2      3
569                     x  + 3 y x  + 3 y  x + y
570 (%o14)/T/   y + x - ------------------------- + . . .
571                                 6
572 (%i15) taylor (1/sin (y + x), x, 0, 3, y, 0, 3);
573           1   y              1    1               1            2
574 (%o15)/T/ - + - + . . . + (- -- + - + . . .) x + (-- + . . .) x
575           y   6               2   6                3
576                              y                    y
578                                            1            3
579                                       + (- -- + . . .) x  + . . .
580                                             4
581                                            y
582 (%i16) taylor (1/sin (y + x), [x, y], 0, 3);
583                              3         2       2        3
584             1     x + y   7 x  + 21 y x  + 21 y  x + 7 y
585 (%o16)/T/ ----- + ----- + ------------------------------- + . . .
586           x + y     6                   360
587 @end example
589 @end deffn
591 @defvr {Variável de opção} taylordepth
592 Valor por omissão: 3
594 @c UM, THE CONTEXT FOR THIS REMARK NEEDS TO BE ESTABLISHED
595 Se existem ainda termos não zero, @code{taylor} dobra o
596 grau da expansão de @code{@var{g}(@var{x})}
597 contanto que o grau da expansão seja menor que ou igual a @code{@var{n} 2^taylordepth}.
599 @end defvr
601 @deffn {Função} taylorinfo (@var{expr})
602 Retorna information about the séries de Taylor @var{expr}.
603 O valor de retorno é uma lista de listas.
604 Cada lista compreende o nome de uma variável,
605 o ponto de expansão, e o grau da expansão.
607 @code{taylorinfo} retorna @code{false} se @var{expr} não for uma séries de Taylor.
609 Exemplo:
611 @example
612 (%i1) taylor ((1 - y^2)/(1 - x), x, 0, 3, [y, a, inf]);
613                   2                       2
614 (%o1)/T/ - (y - a)  - 2 a (y - a) + (1 - a )
616          2                        2
617  + (1 - a  - 2 a (y - a) - (y - a) ) x
619          2                        2   2
620  + (1 - a  - 2 a (y - a) - (y - a) ) x
622          2                        2   3
623  + (1 - a  - 2 a (y - a) - (y - a) ) x  + . . .
624 (%i2) taylorinfo(%);
625 (%o2)               [[y, a, inf], [x, 0, 3]]
626 @end example
628 @end deffn
630 @deffn {Função} taylorp (@var{expr})
631 Retorna @code{true} se @var{expr} for uma séries de Taylor,
632 e @code{false} de outra forma.
634 @end deffn
636 @c WHAT IS THIS ABOUT EXACTLY ??
637 @defvr {Variável de opção} taylor_logexpand
638 Valor por omissão: @code{true}
640 @code{taylor_logexpand} controla expansão de logaritmos em
641 séries de @code{taylor}.
643 Quando @code{taylor_logexpand} for @code{true}, todos  logaritmos são expandidos completamente dessa forma
644 problemas de reconhecimento de zero envolvendo envolvendo identidades logarítmicas não
645 atrapalham o processo de expansão.  Todavia, esse esquema não é sempre
646 matematicamente correcto uma vez que isso ignora informações de ramo.
648 Quando @code{taylor_logexpand} for escolhida para @code{false}, então a expansão logarítmica que ocorre
649 é somente aquela que for necessária para obter uma séries de potência formal.
651 @c NEED EXAMPLES HERE
652 @end defvr
654 @defvr {Variável de opção} taylor_order_coefficients
655 Valor por omissão: @code{true}
657 @code{taylor_order_coefficients} controla a ordenação dos
658 coeficientes em uma série de Taylor.
660 Quando @code{taylor_order_coefficients} for @code{true},
661 coeficientes da séries de Taylor são ordenados canonicamente.
662 @c IS MAXIMA'S NOTION OF "CANONICALLY" DESCRIBED ELSEWHERE ??
663 @c AND WHAT HAPPENS WHEN IT IS FALSE ??
665 @c NEED EXAMPLES HERE
666 @end defvr
668 @deffn {Função} taylor_simplifier (@var{expr})
669 Simplifica coeficientes da séries  de potência @var{expr}.
670 @code{taylor} chama essa função.
672 @end deffn
674 @defvr {Variável de opção} taylor_truncate_polynomials
675 Valor por omissão: @code{true}
677 @c WHAT IS THE "INPUT TRUNCATION LEVEL" ?? THE ARGUMENT n OF taylor ??
678 Quando @code{taylor_truncate_polynomials} for @code{true},
679 polinómios são truncados baseados sobre a entrada de níveis de truncação.
681 De outra forma,
682 entrada de polinómios para @code{taylor} são consideradas terem precisão infinita.
683 @c WHAT IS "INFINITE PRECISION" IN THIS CONTEXT ??
685 @end defvr
687 @deffn {Função} taytorat (@var{expr})
688 Converte @var{expr} da forma @code{taylor} para a forma de expressão racional canónica (CRE).
689 O efeito é o mesmo que @code{rat (ratdisrep (@var{expr}))}, mas mais rápido.
691 @end deffn
693 @deffn {Função} trunc (@var{expr})
694 Coloca notas na representação interna da expressão geral @var{expr}
695 de modo que isso é mostrado como se suas adições forem séries de Taylor truncadas.
696 @var{expr} is not otherwise modified.
698 Exemplo:
700 @example
701 (%i1) expr: x^2 + x + 1;
702                             2
703 (%o1)                      x  + x + 1
704 (%i2) trunc (expr);
705                                 2
706 (%o2)                  1 + x + x  + . . .
707 (%i3) is (expr = trunc (expr));
708 (%o3)                         true
709 @end example
711 @end deffn
713 @deffn {Função} unsum (@var{f}, @var{n})
714 Retorna a primeira diferençã de trás para frente @code{@var{f}(@var{n}) - @var{f}(@var{n} - 1)}.
715 Dessa forma @code{unsum} logicamente é a inversa de @code{sum}.
717 Veja também @code{nusum}.
719 Exemplos:
720 @c GENERATED FROM THE FOLLOWING INPUTS
721 @c g(p) := p*4^n/binomial(2*n,n);
722 @c g(n^4);
723 @c nusum (%, n, 0, n);
724 @c unsum (%, n);
726 @example
727 (%i1) g(p) := p*4^n/binomial(2*n,n);
728                                      n
729                                   p 4
730 (%o1)               g(p) := ----------------
731                             binomial(2 n, n)
732 (%i2) g(n^4);
733                               4  n
734                              n  4
735 (%o2)                   ----------------
736                         binomial(2 n, n)
737 (%i3) nusum (%, n, 0, n);
738                      4        3       2              n
739       2 (n + 1) (63 n  + 112 n  + 18 n  - 22 n + 3) 4      2
740 (%o3) ------------------------------------------------ - ------
741                     693 binomial(2 n, n)                 3 11 7
742 (%i4) unsum (%, n);
743                               4  n
744                              n  4
745 (%o4)                   ----------------
746                         binomial(2 n, n)
747 @end example
749 @end deffn
751 @defvr {Variável de opção} verbose
752 Valor por omissão: @code{false}
754 Quando @code{verbose} for @code{true},
755 @code{powerseries} mostra mensagens de progresso.
757 @end defvr