1 @c Language: Brazilian Portuguese, Encoding: iso-8859-1
2 @c /Affine.texi/1.13/Sat Jun 2 00:12:30 2007/-ko/
5 * Funç@~{o}es e Vari@'{a}veis Definidas para Funç@~{o}es Afins::
8 @node Funç@~{o}es e Vari@'{a}veis Definidas para Funç@~{o}es Afins, , Funç@~{o}es Afins, Funç@~{o}es Afins
9 @section Funç@~{o}es e Vari@'{a}veis Definidas para Funç@~{o}es Afins
11 @deffn {Funç@~{a}o} fast_linsolve ([@var{expr_1}, ..., @var{expr_m}], [@var{x_1}, ..., @var{x_n}])
12 Resolve equaç@~{o}es lineares simult@^{a}neas @var{expr_1}, ..., @var{expr_m}
13 para as vari@'{a}veis @var{x_1}, ..., @var{x_n}.
14 Cada @var{expr_i} pode ser uma equaç@~{a}o ou uma express@~{a}o geral;
15 se dada como uma express@~{a}o geral, ela tratada como uma equaç@~{a}o na forma @code{@var{expr_i} = 0}.
17 O valor de retorno @'{e} uma lista de equaç@~{o}es da forma
18 @code{[@var{x_1} = @var{a_1}, ..., @var{x_n} = @var{a_n}]}
19 onde @var{a_1}, ..., @var{a_n} s@~{a}o todas livres de @var{x_1}, ..., @var{x_n}.
21 @code{fast_linsolve} @'{e} mais r@'{a}pido que @code{linsolve} para sistemas de equaç@~{o}es que
24 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
27 @deffn {Funç@~{a}o} grobner_basis ([@var{expr_1}, ..., @var{expr_m}])
28 Retorna uma base de Groebner para as equaç@~{o}es @var{expr_1}, ..., @var{expr_m}.
29 A funç@~{a} @code{polysimp} pode ent@~{a}o
30 ser usada para simplificar outras funç@~{o}es relativas @`as equaç@~{o}es.
33 grobner_basis ([3*x^2+1, y*x])$
35 polysimp (y^2*x + x^3*9 + 2) ==> -3*x + 2
38 @code{polysimp(f)} produz 0 se e somente se @var{f} est@'{a} no ideal gerado por
39 @var{expr_1}, ..., @var{expr_m}, isto @'{e},
40 se e somente se @var{f} for uma combinaç@~{a}o polinomial dos elementos de
41 @var{expr_1}, ..., @var{expr_m}.
43 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
46 @c NEEDS CLARIFICATION IN A SERIOUS WAY
47 @deffn {Funç@~{a}o} set_up_dot_simplifications (@var{eqns}, @var{check_through_degree})
48 @deffnx {Funç@~{a}o} set_up_dot_simplifications (@var{eqns})
50 equaç@~{o}es polinomiais em vari@'{a}veis n@~{a}o comutativas.
51 O valor de @code{current_variables} @'{e} uma
52 lista de vari@'{a}veis usadas para calcular graus. As equaç@~{o}es devem ser
53 homog@^{e}neas, com o objetivo de que o procedimento termine.
55 Se voc@^{e} checou simplificaç@~{o}es de envolt@'{o}rio em @code{dot_simplifications}
56 acima do grau de @var{f}, ent@~{a}o o seguinte @'{e} verdadeiro:
57 @code{dotsimp (@var{f})} retorna 0 se e somente se @var{f} est@'{a} no
58 ideal gerado pelas equaç@~{o}es, i.e.,
59 se e somente se @var{f} for uma combinaç@~{a}o polinomial
60 dos elementos das equaç@~{o}es.
62 O grau @'{e} aquele retornado por @code{nc_degree}. Isso por sua vez @'{e} nfluenciado pelos
63 pesos das vari@'{a}veis individuais.
65 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
68 @deffn {Funç@~{a}o} declare_weights (@var{x_1}, @var{w_1}, ..., @var{x_n}, @var{w_n})
69 Atribui pesos @var{w_1}, ..., @var{w_n} to @var{x_1}, ..., @var{x_n}, respectivamente.
70 Esses s@~{a}o pesos usados em c@'{a}lculos @code{nc_degree}.
72 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
75 @deffn {Funç@~{a}o} nc_degree (@var{p})
76 Retorna o grau de um polin@^{o}mio n@~{a}o comutativo @var{p}. Veja @code{declare_weights}.
78 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
81 @c NEEDS CLARIFICATION -- TO WHICH EQUATIONS DOES THIS DESCRIPTION REFER ??
82 @deffn {Funç@~{a}o} dotsimp (@var{f})
83 Retorna 0 se e somente se @var{f} for um ideal gerado pelas equaç@~{o}es, i.e.,
84 se e somente se @var{f} for uma combinaç@~{a}o polinomial dos elementos das equaç@~{o}es.
86 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
89 @deffn {Funç@~{a}o} fast_central_elements ([@var{x_1}, ..., @var{x_n}], @var{n})
90 Se @code{set_up_dot_simplifications} tiver sido feito previamente, ache o polin@^{o}mio central
91 nas vari@'{a}veis @var{x_1}, ..., @var{x_n} no grau dado, @var{n}.
95 set_up_dot_simplifications ([y.x + x.y], 3);
96 fast_central_elements ([x, y], 2);
100 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
103 @c THIS IS NOT AT ALL CLEAR
104 @deffn {Funç@~{a}o} check_overlaps (@var{n}, @var{add_to_simps})
105 Verifica as sobreposies atrav@'{e}s do grau @var{n},
106 tendo certeza que voc@^{e} tem regras de simplificaç@~{o} suficiente em cada
107 grau, para @code{dotsimp} trabalhar corretamente. Esse processo pode ter sua velocidade aumentada
108 se voc@^{e} souber antes de começar souber de qual dimens@~{a}o do espaço de mon@^{o}mios @'{e}.
109 Se ele for de dimens@~{a}o global finita, ent@~{a}o @code{hilbert} pode ser usada. Se voc@^{e}
110 n@~{a}o conhece as dimens@~{o}es monomiais, n@~{a}o especifique um @code{rank_function}.
111 Um opcional terceiro argumento @code{reset}, @code{false} diz para n@~{a}o se incomodar em perguntar
112 sobre resetar coisas.
114 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
117 @deffn {Funç@~{a}o} mono ([@var{x_1}, ..., @var{x_n}], @var{n})
118 Retorna a lista de mon@^{o}mios independentes
119 relativamente @`a simplificaç@~{a}o atual do grau @var{n}
120 nas vari@'{a}veis @var{x_1}, ..., @var{x_n}.
122 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
125 @deffn {Funç@~{a}o} monomial_dimensions (@var{n})
126 Calcula a s@'{e}rie de Hilbert atrav@'{e}s do grau @var{n} para a algebra corrente.
128 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
131 @deffn {Funç@~{a}o} extract_linear_equations ([@var{p_1}, ..., @var{p_n}], [@var{m_1}, ..., @var{m_n}])
133 Faz uma lista dos coeficientes dos polin@^{o}mios n@~{a}o comutativos @var{p_1}, ..., @var{p_n}
134 dos monomios n@~{a}o comutatvos @var{m_1}, ..., @var{m_n}.
135 Os coeficientes podem ser escalares. Use @code{list_nc_monomials} para construir a lista dos
138 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
141 @deffn {Funç@~{a}o} list_nc_monomials ([@var{p_1}, ..., @var{p_n}])
142 @deffnx {Funç@~{a}o} list_nc_monomials (@var{p})
144 Retorna uma lista de mon@^{o}mios n@~{a}o comutativos que ocorrem em um polin@^{o}mio @var{p}
145 ou em uma lista de polin@^{o}mios @var{p_1}, ..., @var{p_n}.
147 Para usar essa funç@~ao escreva primeiramente @code{load(affine)}.
150 @c THIS FUNCTION DOESN'T SEEM TO BE APPROPRIATE IN USER-LEVEL DOCUMENTATION
151 @c PRESERVE THIS DESCRIPTION PENDING FURTHER DECISION
152 @c @defun pcoeff (poly monom [variables-to-exclude-from-cof (list-variables monom)])
154 @c This function is called from Lisp level, and uses internal poly format.
157 @c CL-MAXIMA>>(setq me (st-rat #$x^2*u+y+1$))
158 @c (#:Y 1 1 0 (#:X 2 (#:U 1 1) 0 1))
160 @c CL-MAXIMA>>(pcoeff me (st-rat #$x^2$))
165 @c Rule: if a variable appears in monom it must be to the exact power,
166 @c and if it is in variables to exclude it may not appear unless it was
167 @c in monom to the exact power. (pcoeff pol 1 ..) will exclude variables
168 @c like substituting them to be zero.
172 @c THIS FUNCTION DOESN'T SEEM TO BE APPROPRIATE IN USER-LEVEL DOCUMENTATION
173 @c PRESERVE THIS DESCRIPTION PENDING FURTHER DECISION
174 @c @defun new-disrep (poly)
176 @c From Lisp this returns the general Maxima format for an arg which is
180 @c (displa(new-disrep (setq me (st-rat #$x^2*u+y+1$))))
188 @defvr {Vari@'{a}vel de opç@~{a}o} all_dotsimp_denoms
189 Valor padr@~{a}o: @code{false}
191 Quando @code{all_dotsimp_denoms} @'{e} uma lista,
192 os denominadores encontrados por @code{dotsimp} s@~{a}o adicionados ao final da lista.
193 @code{all_dotsimp_denoms} pode ser iniciado como uma lista vazia @code{[]}
194 antes chamando @code{dotsimp}.
196 Por padr@~{a}o, denominadores n@~{a}o s@~{a}o coletados por @code{dotsimp}.