1 @c Language: Brazilian Portuguese, Encoding: iso-8859-1
2 @c /Symmetries.texi/1.12/Sat Jun 2 00:13:11 2007/-ko/
3 @c arquivo gentilmente traduzido por Helciclever Barros da Silva
4 @c end concepts Symmetries
6 @c In {Function} mon2schur, I don't know how to produce both
7 @c nice-looking dvi/pdf output, and HTML output. Same situation occurs in
8 @c a couple of other places. I've favored dvi/pdf. So right now, "make
9 @c html" reports some (non-fatal) errors.
13 * Funções e Variáveis Definidas para Simetrias::
16 @node Funções e Variáveis Definidas para Simetrias, , Simetrias, Simetrias
17 @section Funções e Variáveis Definidas para Simetrias
20 @subsection Mudando a base do sistema de numeração
23 @deffn {Função} comp2pui (@var{n}, @var{L})
24 implementa a passagem das funções simétricas completamente simétricas fornecidas na lista
25 @var{L} para as funções simétricas elementares de 0 a @var{n}. Se a
26 lista @var{L} contiver menos que @var{n+1} elementos, será completada com
27 valores formais do tipo @var{h1}, @var{h2}, etc. Se o primeiro elemento
28 da lista @var{L} existir, ele é interpretado como sendo o tamanho do alfabeto,
29 de outra forma o tamanho é escolhido para @var{n}.
31 @c GENERATED FROM THE FOLLOWING
32 @c comp2pui (3, [4, g]);
34 (%i1) comp2pui (3, [4, g]);
36 (%o1) [4, g, 2 h2 - g , 3 h3 - g h2 + g (g - 2 h2)]
42 @deffn {Função} ele2pui (@var{m}, @var{L})
43 vai de funções simétricas elementares para as funções completas.
44 Similar a @code{comp2ele} e @code{comp2pui}.
46 Outras funções para mudanças de base: @code{comp2ele}.
51 @deffn {Função} ele2comp (@var{m}, @var{L})
52 Vai de funções simétricas elementares para funções completas.
53 Similar a @code{comp2ele} e a @code{comp2pui}.
55 Outras funções para mudanças de base: @code{comp2ele}.
59 @deffn {Função} elem (@var{ele}, @var{sym}, @var{lvar})
60 decompõe o polinômio simétrico @var{sym}, nas variáveis
61 contidas na lista @var{lvar}, em termos de funções elementares
62 simétricas fornecidas na lista @var{ele}. Se o primeiro elemento de
63 @var{ele} for fornecido, esse primeiro elemento será o tamanho do alfabeto, de outra forma o
64 tamanho será o grau do polinômio @var{sym}. Se valores forem
65 omitidos na lista @var{ele}, valores formais do tipo @var{e1},
66 @var{e2}, etc. serão adicionados. O polinômio @var{sym} pode ser fornecido de
67 três diferentes formas: contraída (@code{elem} pode então ser 1, seu
68 valor padrão), particionada (@code{elem} pode ser 3), ou extendida
69 (i.e. o polinômio completo, e @code{elem} pode então ser 2). A
70 função @code{pui} é usada então da mesma forma.
72 sobre um alfabeto de tamanho 3 com @var{e1}, a primeira funçào elementar
73 simétrica, com valor 7, o polinômio simétrico em 3 variáveis cuja
74 forma contraída (que aqui depende de duas de suas variáveis) é
75 @var{x^4-2*x*y} decomposto como segue em funções elementares simétricas:
77 @c GENERATED FROM THE FOLLOWING
78 @c elem ([3, 7], x^4 - 2*x*y, [x, y]);
81 (%i1) elem ([3, 7], x^4 - 2*x*y, [x, y]);
82 (%o1) 7 (e3 - 7 e2 + 7 (49 - e2)) + 21 e3
84 + (- 2 (49 - e2) - 2) e2
87 (%o2) 28 e3 + 2 e2 - 198 e2 + 2401
91 Outras funções para mudanças de base: @code{comp2ele}.
96 @deffn {Function} mon2schur (@var{L})
97 a lsita @var{L} representa a função de Schur @math{S_L}: temos
99 @math{L = [i_1,i_2, \ldots, i_q]}, with @math{i_1 \le i_2 \le \ldots \le i_q}.
100 A função de Schur @math{S_{i_1,i_2, \ldots, i_q}} é a menor
101 da matriz infinita @math{h_{i-j}}, @math{i \ge 1, j \ge 1},
102 consistindo das @math{q} primeiras linhas e as colunas @math{i_1+1,
103 i_2+2, \ldots, i_q+q}.
105 @c UNFORTUNATELY TEXINFO DOES NOT HAVE A NOTION OF "@ELSE"
106 @c SO IT IS NECESSARY TO REPEAT THE FOLLOWING NON-TEX STUFF FOR INFO AND FOR HTML ... SIGH
108 @math{L = [i_1, i_2, ..., i_q]}, com @math{i_1 <= i_2 <= ... <= i_q}.
109 A função de Schur @math{S_[i_1, i_2, ..., i_q]} é a menor
110 da matriz infinita @math{h_[i-j]}, @math{i <= 1, j <= 1},
111 consistindo das @math{q} primeiras linhas e as colunas @math{1 + i_1,
112 +2 + i_2, ..., q + i_q}.
115 @math{L = [i_1, i_2, ..., i_q]}, com @math{i_1 <= i_2 <= ... <= i_q}.
116 A função de Schur @math{S_[i_1, i_2, ..., i_q]} é a menor
117 da matriz infinita @math{h_[i-j]}, @math{i <= 1, j <= 1},
118 consistindo das @math{q} primeiras linhas e as colunas @math{1 + i_1,
119 2 + i_2, ..., q + i_q}.
122 Essa função de Schur pode ser escrita em termos de monômios usando
123 @code{treinat} e @code{kostka}. A forma retornada é um polinômio
124 simétrico na representação contraída nas variáveis @math{x_1,x_2,\ldots}.
126 @c GENERATED FROM THE FOLLOWING
127 @c mon2schur ([1, 1, 1]);
129 @c mon2schur ([1, 2]);
131 (%i1) mon2schur ([1, 1, 1]);
133 (%i2) mon2schur ([3]);
135 (%o2) x1 x2 x3 + x1 x2 + x1
136 (%i3) mon2schur ([1, 2]);
138 (%o3) 2 x1 x2 x3 + x1 x2
142 o qual significa que para 3 variáveis fornece:
144 @c UM, FROM WHAT ARGUMENTS WAS THE FOLLOWING GENERATED ?? (original comment)
146 2 x1 x2 x3 + x1^2 x2 + x2^2 x1 + x1^2 x3 + x3^2 x1
150 Outras funções para mudanças de base: @code{comp2ele}.
155 @deffn {Função} multi_elem (@var{l_elem}, @var{multi_pc}, @var{l_var})
156 decompões um polinômio multi-simétrico na forma multi-contraída
157 @var{multi_pc} nos grupos de variáveis contidas na lista de listas
158 @var{l_var} en termos de funções elementares simétricas contidas em
161 @c GENERATED FROM THE FOLLOWING
162 @c multi_elem ([[2, e1, e2], [2, f1, f2]], a*x + a^2 + x^3, [[x, y], [a, b]]);
165 (%i1) multi_elem ([[2, e1, e2], [2, f1, f2]], a*x + a^2 + x^3, [[x, y], [a, b]]);
167 (%o1) - 2 f2 + f1 (f1 + e1) - 3 e1 e2 + e1
170 (%o2) - 2 f2 + f1 + e1 f1 - 3 e1 e2 + e1
173 Outras funções para mudanças de base: @code{comp2ele}.
178 @c WHAT ARE THE ARGUMENTS FOR THIS FUNCTION ?? (original comment)
179 @deffn {Função} multi_pui
180 é para a função @code{pui} o que a função @code{multi_elem} é para
181 a função @code{elem}.
183 @c GENERATED FROM THE FOLLOWING
184 @c multi_pui ([[2, p1, p2], [2, t1, t2]], a*x + a^2 + x^3, [[x, y], [a, b]]);
186 (%i1) multi_pui ([[2, p1, p2], [2, t1, t2]], a*x + a^2 + x^3, [[x, y], [a, b]]);
189 (%o1) t2 + p1 t1 + ------- - ---
196 @c HMM, pui IS A VARIABLE AS WELL. It's a function, for sure.
197 @deffn {Função} pui (@var{L}, @var{sym}, @var{lvar})
198 decompõe o polinômio simétrico @var{sym}, nas variáveis na
199 lista @var{lvar}, em termos de funções exponenciais na lista @var{L}.
200 Se o primeiro elemento de @var{L} for fornecido, esse primeiro elemento será o tamanho do
201 alfabeto, de outra forma o tamanho será o grau do polinômio
202 @var{sym}. Se valores forem omitidos na lista @var{L}, valores formais do
203 tipo @var{p1}, @var{p2} , etc. serão adicionados. O polinômio
204 @var{sym} pode ser fornecido de três diferentes formas: contraída (@code{elem}
205 pode então ser 1, seu valor padrão), particionada (@code{elem} pode ser
206 3), ou extendida (i.e. o polinômio completo, e @code{elem} pode então
207 ser 2). A função @code{pui} é usada da mesma forma.
209 @c GENERATED FROM THE FOLLOWING
211 @c pui ([3, a, b], u*x*y*z, [x, y, z]);
216 (%i2) pui ([3, a, b], u*x*y*z, [x, y, z]);
218 a (a - b) u (a b - p3) u
219 (%o2) ------------ - ------------
223 (2 p3 - 3 a b + a ) u
224 (%o3) ---------------------
228 Outras funções para mudanças de base: @code{comp2ele}.
234 @deffn {Função} pui2comp (@var{n}, @var{lpui})
235 converte a dista das primeiras @var{n} funções completas (com o
236 comprimento em primeiro lugar) em termos de funções exponenciais fornecidas na lista
237 @var{lpui}. se a lista @var{lpui} for vazia, o cardinal é @var{n},
238 de outra forma o cardinal será seu primeiro elemento (como em @code{comp2ele} e em
241 @c GENERATED FROM THE FOLLOWING
243 @c pui2comp (3, [2, a1]);
246 (%i1) pui2comp (2, []);
249 (%o1) [2, p1, --------]
251 (%i2) pui2comp (3, [2, a1]);
254 2 p3 + ------------- + a1 p2
256 (%o2) [2, a1, --------, --------------------------]
260 p2 + a1 2 p3 + 3 a1 p2 + a1
261 (%o3) [2, a1, --------, --------------------]
265 Outras funções para mudanças de base: @code{comp2ele}.
271 @deffn {Função} pui2ele (@var{n}, @var{lpui})
272 efetiva a passagem de funções exponenciais para as funções elementares simétricas.
273 Se o sinalizador @code{pui2ele} for @code{girard}, @code{pui2ele} irá retornar a lista de
274 funções elementares simétricas de 1 a @var{n}, e se o sinalizador for
275 @code{close}, @code{pui2ele} retornará a @var{n}-ésima função simétrica elementar.
277 Outras funções para mudanças de base: @code{comp2ele}.
281 @deffn {Função} puireduc (@var{n}, @var{lpui})
282 @var{lpui} é uma lista cujo primeiro elemento é um inteiro @var{m}.
283 @code{puireduc} fornece as primeiras @var{n} funções exponenciais em termos das
284 primeiras @var{m} funções.
286 @c GENERATED FROM THE FOLLOWING
287 @c puireduc (3, [2]);
289 (%i1) puireduc (3, [2]);
292 (%o1) [2, p1, p2, p1 p2 - -------------]
297 (%o2) [2, p1, p2, -------------]
303 @deffn {Função} schur2comp (@var{P}, @var{l_var})
304 @var{P} é um polinômio nas variáveis da lista @var{l_var}. Cada
305 uma dessas variáveis represetna uma função simétrica completa. Na
306 lista @var{l_var} o @var{i}-ésima função simétrica completa é representada através da
307 concatenação da letra @code{h} com o inteiro @var{i}:
308 @code{h@var{i}}. Essa função expressa @var{P} em termos de funções de
312 @c GENERATED FROM THE FOLLOWING
313 @c schur2comp (h1*h2 - h3, [h1, h2, h3]);
314 @c schur2comp (a*h3, [h3]);
316 (%i1) schur2comp (h1*h2 - h3, [h1, h2, h3]);
319 (%i2) schur2comp (a*h3, [h3]);
329 @subsection Modificando represetnações
331 @deffn {Função} cont2part (@var{pc}, @var{lvar})
332 Retorna o polinômio particionado associado
333 à forma contraída @var{pc} cujas variáveis estão em @var{lvar}.
335 @c GENERATED FROM THE FOLLOWING
336 @c pc: 2*a^3*b*x^4*y + x^5;
337 @c cont2part (pc, [x, y]);
339 (%i1) pc: 2*a^3*b*x^4*y + x^5;
342 (%i2) cont2part (pc, [x, y]);
344 (%o2) [[1, 5, 0], [2 a b, 4, 1]]
350 @deffn {Função} contract (@var{psym}, @var{lvar})
351 retorna uma forma contraída (i.e. um monômio
353 de grupo ssimétrico) do polinômio @var{psym} nas variáveis contidas
354 na lista @var{lvar}. A função @code{explose} executa a
355 operação inversa. A função @code{tcontract} testa a simétria do
358 @c GENERATED FROM THE FOLLOWING
359 @c psym: explose (2*a^3*b*x^4*y, [x, y, z]);
360 @c contract (psym, [x, y, z]);
362 (%i1) psym: explose (2*a^3*b*x^4*y, [x, y, z]);
364 (%o1) 2 a b y z + 2 a b x z + 2 a b y z + 2 a b x z
367 + 2 a b x y + 2 a b x y
368 (%i2) contract (psym, [x, y, z]);
375 @deffn {Função} explose (@var{pc}, @var{lvar})
376 retorna o polinômio simétrico associado com a forma contraída
377 @var{pc}. A lista @var{lvar} conté as variáveis.
379 @c GENERATED FROM THE FOLLOWING
380 @c explose (a*x + 1, [x, y, z]);
382 (%i1) explose (a*x + 1, [x, y, z]);
383 (%o1) a z + a y + a x + 1
388 @deffn {Função} part2cont (@var{ppart}, @var{lvar})
389 vai da forma particionada para a forma contraída de um polinômio simétrico.
390 A forma contraída é convertida com as variáveis em @var{lvar}.
392 @c GENERATED FROM THE FOLLOWING
393 @c part2cont ([[2*a^3*b, 4, 1]], [x, y]);
395 (%i1) part2cont ([[2*a^3*b, 4, 1]], [x, y]);
403 @deffn {Função} partpol (@var{psym}, @var{lvar})
404 @var{psym} é um polinômio simétrico nas variáveis da lista
405 @var{lvar}. Essa função retorna sua represetnação particionada.
407 @c GENERATED FROM THE FOLLOWING
408 @c partpol (-a*(x + y) + 3*x*y, [x, y]);
410 (%i1) partpol (-a*(x + y) + 3*x*y, [x, y]);
411 (%o1) [[3, 1, 1], [- a, 1, 0]]
417 @deffn {Função} tcontract (@var{pol}, @var{lvar})
418 testa se o polinômio @var{pol} é simétrico nas variáveis da
419 lista @var{lvar}. Se for, @code{tcontract} retorna uma representação contraída como o faz a
420 função @code{contract}.
426 @deffn {Função} tpartpol (@var{pol}, @var{lvar})
427 testa se o polinômio @var{pol} é simétrico nas variáveis da
428 lista @var{lvar}. Se for, @code{tpartpol} retorna sua represetnação particionada como
429 o faz a função @code{partpol}.
436 @subsection Grupos e órbitas
439 @deffn {Função} direct ([@var{p_1}, ..., @var{p_n}], @var{y}, @var{f}, [@var{lvar_1}, ..., @var{lvar_n}])
440 calcula a imagem direta (see M. Giusti, D. Lazard et A. Valibouze,
441 ISSAC 1988, Rome) associada à função @var{f}, na lista de
442 variáveis @var{lvar_1}, ..., @var{lvar_n}, e nos polinômios
443 @var{p_1}, ..., @var{p_n} na variável @var{y}. A quantidade de argumetnos que a
444 funçào @var{f} pode receber é importante para o cálculo. Dessa forma, se a
445 expressão para @var{f} não depende de alguma variável, é inútil
446 incluir essa variável, e não incluir essa variável irá também reduzir
447 consideravelmente o montante cálculos efetuados.
449 @c GENERATED FROM THE FOLLOWING
450 @c direct ([z^2 - e1* z + e2, z^2 - f1* z + f2],
451 @c z, b*v + a*u, [[u, v], [a, b]]);
453 @c ratsimp (direct ([z^3-e1*z^2+e2*z-e3,z^2 - f1* z + f2],
454 @c z, b*v + a*u, [[u, v], [a, b]]));
456 (%i1) direct ([z^2 - e1* z + e2, z^2 - f1* z + f2],
457 z, b*v + a*u, [[u, v], [a, b]]);
462 - 4 e2 f2 - (e1 - 2 e2) (f1 - 2 f2) + e1 f1
463 + -----------------------------------------------
467 (%o2) y - e1 f1 y + (e1 - 4 e2) f2 + e2 f1
468 (%i3) ratsimp (direct ([z^3-e1*z^2+e2*z-e3,z^2 - f1* z + f2],
469 z, b*v + a*u, [[u, v], [a, b]]));
471 (%o3) y - 2 e1 f1 y + ((2 e1 - 6 e2) f2 + (2 e2 + e1 ) f1 ) y
474 + ((9 e3 + 5 e1 e2 - 2 e1 ) f1 f2 + (- 2 e3 - 2 e1 e2) f1 ) y
477 + ((9 e2 - 6 e1 e2 + e1 ) f2
480 + (- 9 e1 e3 - 6 e2 + 3 e1 e2) f1 f2 + (2 e1 e3 + e2 ) f1 )
483 y + (((9 e1 - 27 e2) e3 + 3 e1 e2 - e1 e2) f1 f2
486 + ((15 e2 - 2 e1 ) e3 - e1 e2 ) f1 f2 - 2 e2 e3 f1 ) y
489 + (- 27 e3 + (18 e1 e2 - 4 e1 ) e3 - 4 e2 + e1 e2 ) f2
492 + (27 e3 + (e1 - 9 e1 e2) e3 + e2 ) f1 f2
495 + (e1 e2 e3 - 9 e3 ) f1 f2 + e3 f1
498 Encontrando um polinômio cujas raízes são somatórios @math{a+u} onde @math{a}
499 é uma raíz de @math{z^2 - e_1 z + e_2} e @math{u} é uma raíz de @math{z^2 -
502 @c GENERATED FROM THE FOLLOWING
503 @c ratsimp (direct ([z^2 - e1* z + e2, z^2 - f1* z + f2],
504 @c z, a + u, [[u], [a]]));
506 (%i1) ratsimp (direct ([z^2 - e1* z + e2, z^2 - f1* z + f2],
507 z, a + u, [[u], [a]]));
509 (%o1) y + (- 2 f1 - 2 e1) y + (2 f2 + f1 + 3 e1 f1 + 2 e2
512 + e1 ) y + ((- 2 f1 - 2 e1) f2 - e1 f1 + (- 2 e2 - e1 ) f1
515 - 2 e1 e2) y + f2 + (e1 f1 - 2 e2 + e1 ) f2 + e2 f1 + e1 e2 f1
521 @code{direct} aceita dois sinalizadores: @code{elementaires} (elementares) e
522 @code{puissances} (exponenciais - valor padrão) que permitem a decomposição
523 de polinômios simétricos que aparecerem nesses cálculos em
524 funções simétricas elementares ou em funções exponenciais respectivamente.
526 Funções de @code{sym} utilizadas nesta função :
528 @code{multi_orbit} (portanto @code{orbit}), @code{pui_direct}, @code{multi_elem}
529 (portanto @code{elem}), @code{multi_pui} (portanto @code{pui}), @code{pui2ele}, @code{ele2pui}
530 (se o sinalizador @code{direct} for escolhido para @code{puissances}).
537 @deffn {Função} multi_orbit (@var{P}, [@var{lvar_1}, @var{lvar_2},..., @var{lvar_p}])
539 @var{P} é um polinômio no conjunto de variáveis contidas nas lista
540 @var{lvar_1}, @var{lvar_2}, ..., @var{lvar_p}. Essa função retorna a
541 órbita do polinômio @var{P} sob a ação do produto dos
542 grupos simétricos dos conjuntos de variáveis represetnadas nas @var{p}
545 @c GENERATED FROM THE FOLLOWING
546 @c multi_orbit (a*x + b*y, [[x, y], [a, b]]);
547 @c multi_orbit (x + y + 2*a, [[x, y], [a, b, c]]);
549 (%i1) multi_orbit (a*x + b*y, [[x, y], [a, b]]);
550 (%o1) [b y + a x, a y + b x]
551 (%i2) multi_orbit (x + y + 2*a, [[x, y], [a, b, c]]);
552 (%o2) [y + x + 2 c, y + x + 2 b, y + x + 2 a]
555 Veja também: @code{orbit} para a ação de um grupo simétrico simples.
561 @deffn {Função} multsym (@var{ppart_1}, @var{ppart_2}, @var{n})
562 retorna oproduto de dois polinômios simétricos em @var{n}
563 varieis trabalhando somente módulo a ação do grupo simétrico de
564 ordem @var{n}. O polinômios estão em sua forma particionada.
566 Dados 2 polinômio simétricos em @var{x}, @var{y}: @code{3*(x + y)
567 + 2*x*y} e @code{5*(x^2 + y^2)} cujas formas particionadas são @code{[[3,
568 1], [2, 1, 1]]} e @code{[[5, 2]]}, seu produto irá ser
570 @c GENERATED FROM THE FOLLOWING
571 @c multsym ([[3, 1], [2, 1, 1]], [[5, 2]], 2);
573 (%i1) multsym ([[3, 1], [2, 1, 1]], [[5, 2]], 2);
574 (%o1) [[10, 3, 1], [15, 3, 0], [15, 2, 1]]
577 isso é @code{10*(x^3*y + y^3*x) + 15*(x^2*y + y^2*x) + 15*(x^3 + y^3)}.
579 Funções para mudar as representacões de um polinômio simétrico:
581 @code{contract}, @code{cont2part}, @code{explose}, @code{part2cont},
582 @code{partpol}, @code{tcontract}, @code{tpartpol}.
587 @deffn {Função} orbit (@var{P}, @var{lvar})
588 calcula a órbita do polinômio @var{P} nas variáveis na lista
589 @var{lvar} sob a ação do grupo simétrico do conjunto das
590 variáveis na lista @var{lvar}.
592 @c GENERATED FROM THE FOLLOWING
593 @c orbit (a*x + b*y, [x, y]);
594 @c orbit (2*x + x^2, [x, y]);
596 (%i1) orbit (a*x + b*y, [x, y]);
597 (%o1) [a y + b x, b y + a x]
598 (%i2) orbit (2*x + x^2, [x, y]);
600 (%o2) [y + 2 y, x + 2 x]
603 Veja também @code{multi_orbit} para a ação de um produto de grupos
604 simétricos sobre um polinômio.
609 @deffn {Função} pui_direct (@var{orbite}, [@var{lvar_1}, ..., @var{lvar_n}], [@var{d_1}, @var{d_2}, ..., @var{d_n}])
611 Tomemos @var{f} para ser um polinômio em @var{n} blocos de variáveis @var{lvar_1},
612 ..., @var{lvar_n}. Façamos @var{c_i} ser o n;umero de variáveis em
613 @var{lvar_i}, e @var{SC} ser o produto de @var{n} grupos simétricos de
614 grau @var{c_1}, ..., @var{c_n}. Essas ações dos grupos naturalmente sobre @var{f}.
615 A lista @var{orbite} é a órbita, denotada @code{@var{SC}(@var{f})}, da
616 função @var{f} sob a ação de @var{SC}. (Essa lista pode ser
617 obtida através da função @code{multi_orbit}.) Os @var{di} são inteiros
618 de forma que @math{c_1 \le d_1, c_2 \le d_2, \ldots, c_n \le d_n}.
621 Tomemos @var{SD} para ser o produto dos grupos simétricos @math{S_{d_1} \times
622 +S_{d_2} \times \cdots \times S_{d_n}}.
624 @c UNFORTUNATELY TEXINFO DOES NOT HAVE A NOTION OF "@ELSE"
625 @c SO IT IS NECESSARY TO REPEAT THE FOLLOWING NON-TEX STUFF FOR INFO AND FOR HTML ... SIGH
627 Tomemos @var{SD} para ser o produto dos grupos simétricos @math{S_[d_1] x
628 S_[d_2] x ... x S_[d_n]}.
631 Tomemos @var{SD} para ser o produto dos grupos simétricos @math{S_[d_1] x
632 S_[d_2] x ... x S_[d_n]}.
634 A função @code{pui_direct} retorna
635 as primeiras @var{n} funções exponenciais de @code{@var{SD}(@var{f})} deduzidas
636 das funções exponenciais de @code{@var{SC}(@var{f})}, onde @var{n} é
637 o tamanho de @code{@var{SD}(@var{f})}.
639 O resultado está na multi-forma contraída com relação a @var{SD}, i.e. somente um
640 elemento é mantido por órbita, sob a ação de @var{SD}.
642 @c GENERATED FROM THE FOLLOWING
643 @c l: [[x, y], [a, b]];
644 @c pui_direct (multi_orbit (a*x + b*y, l), l, [2, 2]);
645 @c pui_direct (multi_orbit (a*x + b*y, l), l, [3, 2]);
646 @c pui_direct ([y + x + 2*c, y + x + 2*b, y + x + 2*a], [[x, y], [a, b, c]], [2, 3]);
648 (%i1) l: [[x, y], [a, b]];
649 (%o1) [[x, y], [a, b]]
650 (%i2) pui_direct (multi_orbit (a*x + b*y, l), l, [2, 2]);
652 (%o2) [a x, 4 a b x y + a x ]
653 (%i3) pui_direct (multi_orbit (a*x + b*y, l), l, [3, 2]);
655 (%o3) [2 a x, 4 a b x y + 2 a x , 3 a b x y + 2 a x ,
658 12 a b x y + 4 a b x y + 2 a x ,
661 10 a b x y + 5 a b x y + 2 a x ,
663 3 3 3 3 4 2 4 2 5 5 6 6
664 40 a b x y + 15 a b x y + 6 a b x y + 2 a x ]
665 (%i4) pui_direct ([y + x + 2*c, y + x + 2*b, y + x + 2*a], [[x, y], [a, b, c]], [2, 3]);
667 (%o4) [3 x + 2 a, 6 x y + 3 x + 4 a x + 4 a ,
670 9 x y + 12 a x y + 3 x + 6 a x + 12 a x + 8 a ]
672 @c THIS NEXT FUNCTION CALL TAKES A VERY LONG TIME (SEVERAL MINUTES)
673 @c SO LEAVE IT OUT TIL PROCESSORS GET A LITTLE FASTER ...
674 @c pui_direct ([y + x + 2*c, y + x + 2*b, y + x + 2*a], [[x, y], [a, b, c]], [3, 4]);
683 @subsection Partições
685 @deffn {Função} kostka (@var{part_1}, @var{part_2})
686 escrita por P. Esperet, calcula o número de Kostka da partição
687 @var{part_1} e @var{part_2}.
689 @c GENERATED FROM THE FOLLOWING
690 @c kostka ([3, 3, 3], [2, 2, 2, 1, 1, 1]);
692 (%i1) kostka ([3, 3, 3], [2, 2, 2, 1, 1, 1]);
699 @deffn {Função} lgtreillis (@var{n}, @var{m})
700 retorna a lista de partições de peso @var{n} e comprimento @var{m}.
702 @c GENERATED FROM THE FOLLOWING
703 @c lgtreillis (4, 2);
705 (%i1) lgtreillis (4, 2);
706 (%o1) [[3, 1], [2, 2]]
709 Veja também: @code{ltreillis}, @code{treillis} e @code{treinat}.
714 @deffn {Função} ltreillis (@var{n}, @var{m})
715 retorna a lista de partições de peso @var{n} e comprimento menor que ou
718 @c GENERATED FROM THE FOLLOWING
721 (%i1) ltreillis (4, 2);
722 (%o1) [[4, 0], [3, 1], [2, 2]]
725 Veja também: @code{lgtreillis}, @code{treillis} e @code{treinat}.
730 @deffn {Função} treillis (@var{n})
731 retorna todas as partições de peso @var{n}.
733 @c GENERATED FROM THE FOLLOWING
737 (%o1) [[4], [3, 1], [2, 2], [2, 1, 1], [1, 1, 1, 1]]
740 Veja também: @code{lgtreillis}, @code{ltreillis} e @code{treinat}.
746 @deffn {Função} treinat (@var{part})
747 retorna a lista de partições inferiores à partiçào @var{part} com relação à
750 @c GENERATED FROM THE FOLLOWING
752 @c treinat ([1, 1, 1, 1, 1]);
757 (%i2) treinat ([1, 1, 1, 1, 1]);
758 (%o2) [[5], [4, 1], [3, 2], [3, 1, 1], [2, 2, 1], [2, 1, 1, 1],
761 (%i3) treinat ([3, 2]);
762 (%o3) [[5], [4, 1], [3, 2]]
765 Veja também: @code{lgtreillis}, @code{ltreillis} e @code{treillis}.
773 @subsection Polinômios e suas raízes
775 @deffn {Função} ele2polynome (@var{L}, @var{z})
776 retorna o polinômio em @var{z} de forma que as funções elementares
777 simétricas de suas raízes estejam na lista @code{@var{L} = [@var{n},
778 @var{e_1}, ..., @var{e_n}]}, onde @var{n} é o grau dos
779 polinômios e @var{e_i} é a @var{i}-ésima função simétrica elementar.
781 @c GENERATED FROM THE FOLLOWING
782 @c ele2polynome ([2, e1, e2], z);
783 @c polynome2ele (x^7 - 14*x^5 + 56*x^3 - 56*x + 22, x);
784 @c ele2polynome ([7, 0, -14, 0, 56, 0, -56, -22], x);
786 (%i1) ele2polynome ([2, e1, e2], z);
789 (%i2) polynome2ele (x^7 - 14*x^5 + 56*x^3 - 56*x + 22, x);
790 (%o2) [7, 0, - 14, 0, 56, 0, - 56, - 22]
791 (%i3) ele2polynome ([7, 0, -14, 0, 56, 0, -56, -22], x);
793 (%o3) x - 14 x + 56 x - 56 x + 22
796 o inverso: @code{polynome2ele (@var{P}, @var{z})}.
799 @code{polynome2ele}, @code{pui2polynome}.
804 @deffn {Função} polynome2ele (@var{P}, @var{x})
805 fornece a lista @code{@var{l} = [@var{n}, @var{e_1}, ..., @var{e_n}]}
806 onde @var{n} é o grau do polinômio @var{P} na variável
807 @var{x} e @var{e_i} é a @var{i}-ésima função simétrica elementar
808 das raízes de @var{P}.
810 @c GENERATED FROM THE FOLLOWING
811 @c polynome2ele (x^7 - 14*x^5 + 56*x^3 - 56*x + 22, x);
812 @c ele2polynome ([7, 0, -14, 0, 56, 0, -56, -22], x);
814 (%i1) polynome2ele (x^7 - 14*x^5 + 56*x^3 - 56*x + 22, x);
815 (%o1) [7, 0, - 14, 0, 56, 0, - 56, - 22]
816 (%i2) ele2polynome ([7, 0, -14, 0, 56, 0, -56, -22], x);
818 (%o2) x - 14 x + 56 x - 56 x + 22
821 A inversa: @code{ele2polynome (@var{l}, @var{x})}
826 @deffn {Função} prodrac (@var{L}, @var{k})
827 @var{L} é uma lista contendo as funções simétricas elementares
828 sobre um conjunto @var{A}. @code{prodrac} retorna o polinômio cujas raízes
829 são os produtos @var{k} por @var{k} dos elementos de @var{A}.
831 Veja também @code{somrac}.
835 @deffn {Função} pui2polynome (@var{x}, @var{lpui})
836 calcula o polinômio em @var{x} cujas funções exponenciais
837 das raízes são dadas na lista @var{lpui}.
839 @c GENERATED FROM THE FOLLOWING
840 @c polynome2ele (x^3 - 4*x^2 + 5*x - 1, x);
842 @c pui2polynome (x, %);
848 (%i1) polynome2ele (x^3 - 4*x^2 + 5*x - 1, x);
850 (%i2) ele2pui (3, %);
852 (%i3) pui2polynome (x, %);
854 (%o3) x - 4 x + 5 x - 1
858 @code{polynome2ele}, @code{ele2polynome}.
863 @deffn {Função} somrac (@var{L}, @var{k})
864 A lista @var{L} contains função simétrica elementars de um polynomial
865 @var{P} . The function computes the polinômio whose roots are the
866 @var{k} by @var{k} distinct sums of the roots of @var{P}.
868 Also see @code{prodrac}.
875 @subsection Resolvents
877 @deffn {Função} resolvante (@var{P}, @var{x}, @var{f}, [@var{x_1},..., @var{x_d}])
878 calcula a resilvente do polinômio @var{P} em @var{x} de grau
879 @var{n} >= @var{d} através da fFunção @var{f} expressa nas variáveis
880 @var{x_1}, ..., @var{x_d}. Para eficiência de computação é
881 importante não incluir na lista as variáveis
882 @code{[@var{x_1}, ..., @var{x_d}]} que não aparecem na função de transformação @var{f}.
884 Para melhorar a eficiência do cálculo se pode escolher sinalizadores em
885 @code{resolvante} de forma a usar os algorítmos apropriados:
887 Se a função @var{f} for unitária :
890 um polinômio em uma variável simples,
902 a função da resolvente de Cayley (utilizável de grau 5 em diante)
904 @c WHAT IS THIS ILLUSTRATING EXACTLY ??
906 (x1*x2 + x2*x3 + x3*x4 + x4*x5 + x5*x1 -
907 (x1*x3 + x3*x5 + x5*x2 + x2*x4 + x4*x1))^2
912 o sinalizador da @code{resolvante} poderá ser respectivamente :
930 @c GENERATED FROM THE FOLLOWING
931 @c resolvante: unitaire$
932 @c resolvante (x^7 - 14*x^5 + 56*x^3 - 56*x + 22, x, x^3 - 1, [x]);
933 @c resolvante: lineaire$
934 @c resolvante (x^4 - 1, x, x1 + 2*x2 + 3*x3, [x1, x2, x3]);
935 @c resolvante: general$
936 @c resolvante (x^4 - 1, x, x1 + 2*x2 + 3*x3, [x1, x2, x3]);
937 @c resolvante (x^4 - 1, x, x1 + 2*x2 + 3*x3, [x1, x2, x3, x4]);
938 @c direct ([x^4 - 1], x, x1 + 2*x2 + 3*x3, [[x1, x2, x3]]);
939 @c resolvante :lineaire$
940 @c resolvante (x^4 - 1, x, x1 + x2 + x3, [x1, x2, x3]);
941 @c resolvante: symetrique$
942 @c resolvante (x^4 - 1, x, x1 + x2 + x3, [x1, x2, x3]);
943 @c resolvante (x^4 + x + 1, x, x1 - x2, [x1, x2]);
944 @c resolvante: alternee$
945 @c resolvante (x^4 + x + 1, x, x1 - x2, [x1, x2]);
946 @c resolvante: produit$
947 @c resolvante (x^7 - 7*x + 3, x, x1*x2*x3, [x1, x2, x3]);
948 @c resolvante: symetrique$
949 @c resolvante (x^7 - 7*x + 3, x, x1*x2*x3, [x1, x2, x3]);
950 @c resolvante: cayley$
951 @c resolvante (x^5 - 4*x^2 + x + 1, x, a, []);
953 (%i1) resolvante: unitaire$
954 (%i2) resolvante (x^7 - 14*x^5 + 56*x^3 - 56*x + 22, x, x^3 - 1, [x]);
956 " resolvante unitaire " [7, 0, 28, 0, 168, 0, 1120, - 154, 7840, - 2772, 56448, - 33880,
958 413952, - 352352, 3076668, - 3363360, 23114112, - 30494464,
960 175230832, - 267412992, 1338886528, - 2292126760]
962 [x - 1, x - 2 x + 1, x - 3 x + 3 x - 1,
965 x - 4 x + 6 x - 4 x + 1, x - 5 x + 10 x - 10 x + 5 x
968 - 1, x - 6 x + 15 x - 20 x + 15 x - 6 x + 1,
971 x - 7 x + 21 x - 35 x + 35 x - 21 x + 7 x - 1]
972 [- 7, 1127, - 6139, 431767, - 5472047, 201692519, - 3603982011]
974 (%o2) y + 7 y - 539 y - 1841 y + 51443 y + 315133 y
977 (%i3) resolvante: lineaire$
978 (%i4) resolvante (x^4 - 1, x, x1 + 2*x2 + 3*x3, [x1, x2, x3]);
980 " resolvante lineaire "
982 (%o4) y + 80 y + 7520 y + 1107200 y + 49475840 y
985 + 344489984 y + 655360000
986 (%i5) resolvante: general$
987 (%i6) resolvante (x^4 - 1, x, x1 + 2*x2 + 3*x3, [x1, x2, x3]);
989 " resolvante generale "
991 (%o6) y + 80 y + 7520 y + 1107200 y + 49475840 y
994 + 344489984 y + 655360000
995 (%i7) resolvante (x^4 - 1, x, x1 + 2*x2 + 3*x3, [x1, x2, x3, x4]);
997 " resolvante generale "
999 (%o7) y + 80 y + 7520 y + 1107200 y + 49475840 y
1002 + 344489984 y + 655360000
1003 (%i8) direct ([x^4 - 1], x, x1 + 2*x2 + 3*x3, [[x1, x2, x3]]);
1005 (%o8) y + 80 y + 7520 y + 1107200 y + 49475840 y
1008 + 344489984 y + 655360000
1009 (%i9) resolvante :lineaire$
1010 (%i10) resolvante (x^4 - 1, x, x1 + x2 + x3, [x1, x2, x3]);
1012 " resolvante lineaire "
1015 (%i11) resolvante: symetrique$
1016 (%i12) resolvante (x^4 - 1, x, x1 + x2 + x3, [x1, x2, x3]);
1018 " resolvante symetrique "
1021 (%i13) resolvante (x^4 + x + 1, x, x1 - x2, [x1, x2]);
1023 " resolvante symetrique "
1026 (%i14) resolvante: alternee$
1027 (%i15) resolvante (x^4 + x + 1, x, x1 - x2, [x1, x2]);
1029 " resolvante alternee "
1031 (%o15) y + 8 y + 26 y - 112 y + 216 y + 229
1032 (%i16) resolvante: produit$
1033 (%i17) resolvante (x^7 - 7*x + 3, x, x1*x2*x3, [x1, x2, x3]);
1035 " resolvante produit "
1037 (%o17) y - 7 y - 1029 y + 135 y + 7203 y - 756 y
1040 + 1323 y + 352947 y - 46305 y - 2463339 y + 324135 y
1043 - 30618 y - 453789 y - 40246444 y + 282225202 y
1046 - 44274492 y + 155098503 y + 12252303 y + 2893401 y
1049 - 171532242 y + 6751269 y + 2657205 y - 94517766 y
1052 - 3720087 y + 26040609 y + 14348907
1053 (%i18) resolvante: symetrique$
1054 (%i19) resolvante (x^7 - 7*x + 3, x, x1*x2*x3, [x1, x2, x3]);
1056 " resolvante symetrique "
1058 (%o19) y - 7 y - 1029 y + 135 y + 7203 y - 756 y
1061 + 1323 y + 352947 y - 46305 y - 2463339 y + 324135 y
1064 - 30618 y - 453789 y - 40246444 y + 282225202 y
1067 - 44274492 y + 155098503 y + 12252303 y + 2893401 y
1070 - 171532242 y + 6751269 y + 2657205 y - 94517766 y
1073 - 3720087 y + 26040609 y + 14348907
1074 (%i20) resolvante: cayley$
1075 (%i21) resolvante (x^5 - 4*x^2 + x + 1, x, a, []);
1077 " resolvente de Cayley "
1079 (%o21) x - 40 x + 4080 x - 92928 x + 3772160 x + 37880832 x
1084 Para a resolvente de Cayley, os 2 últimos argumentos são neutros
1085 e o polinômio fornecido na entrada deve ser necessáriamente de grau 5.
1089 @code{resolvante_bipartite}, @code{resolvante_produit_sym},
1090 @code{resolvante_unitaire}, @code{resolvante_alternee1}, @code{resolvante_klein},
1091 @code{resolvante_klein3}, @code{resolvante_vierer}, @code{resolvante_diedrale}.
1097 @deffn {Função} resolvante_alternee1 (@var{P}, @var{x})
1098 calcula a transformação de
1099 @code{@var{P}(@var{x})} de grau @var{n} pela função $\prod_@{1\leq i<j\leq n-1@} (x_i-x_j)$.
1101 @math{\prod_{1\leq i<j\leq n-1} (x_i-x_j)}.
1103 @c UNFORTUNATELY TEXINFO DOES NOT HAVE A NOTION OF "@ELSE"
1104 @c SO IT IS NECESSARY TO REPEAT THE FOLLOWING NON-TEX STUFF FOR INFO AND FOR HTML ... SIGH
1106 @math{product(x_i - x_j, 1 <= i < j <= n - 1)}.
1109 @math{product(x_i - x_j, 1 <= i < j <= n - 1)}.
1114 @code{resolvante_produit_sym}, @code{resolvante_unitaire},
1115 @code{resolvante} , @code{resolvante_klein}, @code{resolvante_klein3},
1116 @code{resolvante_vierer}, @code{resolvante_diedrale}, @code{resolvante_bipartite}.
1121 @deffn {Função} resolvante_bipartite (@var{P}, @var{x})
1122 calcula a trasformação de
1123 @code{@var{P}(@var{x})} de mesmo grau @var{n} através da função
1125 @math{x_1 x_2 \cdots x_{n/2} + x_{n/2+1}\cdots x_n}.
1127 @c UNFORTUNATELY TEXINFO DOES NOT HAVE A NOTION OF "@ELSE"
1128 @c SO IT IS NECESSARY TO REPEAT THE FOLLOWING NON-TEX STUFF FOR INFO AND FOR HTML ... SIGH
1130 @math{x_1 x_2 ... x_[n/2] + x_[n/2 + 1] ... x_n}.
1133 @math{x_1 x_2 ... x_[n/2] + x_[n/2 + 1] ... x_n}.
1138 @code{resolvante_produit_sym}, @code{resolvante_unitaire},
1139 @code{resolvante} , @code{resolvante_klein}, @code{resolvante_klein3},
1140 @code{resolvante_vierer}, @code{resolvante_diedrale}, @code{resolvante_alternee1}.
1142 @c GENERATED FROM THE FOLLOWING
1143 @c resolvante_bipartite (x^6 + 108, x);
1145 (%i1) resolvante_bipartite (x^6 + 108, x);
1147 (%o1) y - 972 y + 314928 y - 34012224 y
1152 @code{resolvante_produit_sym}, @code{resolvante_unitaire},
1153 @code{resolvante}, @code{resolvante_klein}, @code{resolvante_klein3},
1154 @code{resolvante_vierer}, @code{resolvante_diedrale},
1155 @code{resolvante_alternee1}.
1161 @deffn {Função} resolvante_diedrale (@var{P}, @var{x})
1162 calcula a transformação de @code{@var{P}(@var{x})} através da função
1163 @code{@var{x_1} @var{x_2} + @var{x_3} @var{x_4}}.
1165 @c GENERATED FROM THE FOLLOWING
1166 @c resolvante_diedrale (x^5 - 3*x^4 + 1, x);
1168 (%i1) resolvante_diedrale (x^5 - 3*x^4 + 1, x);
1170 (%o1) x - 21 x - 81 x - 21 x + 207 x + 1134 x + 2331 x
1173 - 945 x - 4970 x - 18333 x - 29079 x - 20745 x - 25326 x
1180 @code{resolvante_produit_sym}, @code{resolvante_unitaire},
1181 @code{resolvante_alternee1}, @code{resolvante_klein}, @code{resolvante_klein3},
1182 @code{resolvante_vierer}, @code{resolvante}.
1188 @deffn {Função} resolvante_klein (@var{P}, @var{x})
1189 +calculates the transformation of @code{@var{P}(@var{x})} by the function
1190 +@code{@var{x_1} @var{x_2} @var{x_4} + @var{x_4}}.
1194 @code{resolvante_produit_sym}, @code{resolvante_unitaire},
1195 @code{resolvante_alternee1}, @code{resolvante}, @code{resolvante_klein3},
1196 @code{resolvante_vierer}, @code{resolvante_diedrale}.
1201 @deffn {Função} resolvante_klein3 (@var{P}, @var{x})
1202 calcula a transformação de @code{@var{P}(@var{x})} através da função
1203 @code{@var{x_1} @var{x_2} @var{x_4} + @var{x_4}}.
1207 @code{resolvante_produit_sym}, @code{resolvante_unitaire},
1208 @code{resolvante_alternee1}, @code{resolvante_klein}, @code{resolvante},
1209 @code{resolvante_vierer}, @code{resolvante_diedrale}.
1215 @deffn {Função} resolvante_produit_sym (@var{P}, @var{x})
1216 calcula a lista de todas as resolventes de produto do polinômio
1217 @code{@var{P}(@var{x})}.
1219 @c GENERATED FROM THE FOLLOWING
1220 @c resolvante_produit_sym (x^5 + 3*x^4 + 2*x - 1, x);
1221 @c resolvante: produit$
1222 @c resolvante (x^5 + 3*x^4 + 2*x - 1, x, a*b*c, [a, b, c]);
1224 (%i1) resolvante_produit_sym (x^5 + 3*x^4 + 2*x - 1, x);
1226 (%o1) [y + 3 y + 2 y - 1, y - 2 y - 21 y - 31 y - 14 y
1229 - y + 14 y + 3 y + 1, y + 3 y + 14 y - y - 14 y - 31 y
1232 - 21 y - 2 y + 1, y - 2 y - 3 y - 1, y - 1]
1233 (%i2) resolvante: produit$
1234 (%i3) resolvante (x^5 + 3*x^4 + 2*x - 1, x, a*b*c, [a, b, c]);
1236 " resolvente produto "
1238 (%o3) y + 3 y + 14 y - y - 14 y - 31 y - 21 y - 2 y + 1
1240 @c INPUT %i3 TICKLES A MINOR BUG IN resolvante:
1241 @c " resolvante produit " IS PRINTED FROM SOMEWHERE IN THE BOWELS OF resolvante
1242 @c AND IT GOOFS UP THE DISPLAY OF THE EXPONENTS OF %o3 -- I THREW IN A LINE BREAK TO ADJUST
1246 @code{resolvante}, @code{resolvante_unitaire},
1247 @code{resolvante_alternee1}, @code{resolvante_klein},
1248 @code{resolvante_klein3}, @code{resolvante_vierer},
1249 @code{resolvante_diedrale}.
1255 @deffn {Função} resolvante_unitaire (@var{P}, @var{Q}, @var{x})
1256 calcula a resolvente do polinômio @code{@var{P}(@var{x})} através do
1257 polinomio @code{@var{Q}(@var{x})}.
1261 @code{resolvante_produit_sym}, @code{resolvante},
1262 @code{resolvante_alternee1}, @code{resolvante_klein}, @code{resolvante_klein3},
1263 @code{resolvante_vierer}, @code{resolvante_diedrale}.
1269 @deffn {Função} resolvante_vierer (@var{P}, @var{x})
1270 calcula a transformação de
1271 @code{@var{P}(@var{x})} pela função @code{@var{x_1} @var{x_2} - @var{x_3} @var{x_4}}.
1275 @code{resolvante_produit_sym}, @code{resolvante_unitaire},
1276 @code{resolvante_alternee1}, @code{resolvante_klein}, @code{resolvante_klein3},
1277 @code{resolvante}, @code{resolvante_diedrale}.
1284 @subsection Miscelânia
1286 @deffn {Função} multinomial (@var{r}, @var{part})
1287 onde @var{r} é o peso da partição @var{part}. Essa função
1288 retorna o coefinciente multinomial associado: se as partes de
1289 @var{part} forem @var{i_1}, @var{i_2}, ..., @var{i_k}, o resultado é
1290 @code{@var{r}!/(@var{i_1}! @var{i_2}! ... @var{i_k}!)}.
1294 @deffn {Função} permut (@var{L})
1295 retorna a lista de permutações da lista @var{L}.