Índice

Cálculo do Recíproco de um Número Irracional


Cálculos com números irracionais

1/(2^(1/2) + 3^(1/2));
				 1
(%o15) -----------------
sqrt(3) + sqrt(2)

Isso é um número no campo Q[sqrt(2), sqrt(3)]. Esse número tem representação na forma

  a + b*sqrt(2) + c*sqrt(3) + d*sqrt(2)*sqrt(3)

com coeficientes reacionais únicos a, b, c, d. Para encontrar essa representação, podemos fazer isso:

 ev (ratdisrep(rat(%)), algebraic);

E recebemos esse resultado:

   sqrt(3) - sqrt(2)

Aqui está um exemplo mais complicado que calcula em Q[sqrt(2), 3^(1/3)]:

 ir2: 2^(1/2) + 3^(1/3);
			   1/3
(%o20) 3 + sqrt(2)
 1/ir2;
				1
(%o26) --------------
1/3
3 + sqrt(2)
 ev (ratdisrep(rat(%)), algebraic);
					     2/3		    1/3
(%o27) (3 - 2 sqrt(2)) 3 + (4 - 3 sqrt(2)) 3 - 4 sqrt(2) + 6
 %*ir2;
			    1/3				     2/3		    1/3
(%o28) (3 + sqrt(2)) ((3 - 2 sqrt(2)) 3 + (4 - 3 sqrt(2)) 3 - 4 sqrt(2) + 6)
expand(%);
   1

O terceiro exemplo é mesmo mais complicado. Usamos uma raíz aninhada para extender o campo Q:

r: 33^(1/2)*3;
     3 sqrt(33)

Com essa raíz, definimos duas terceiras raízes:

r1: (17 - r)^(1/3);
					      1/3
(%o2) (17 - 3 sqrt(33))
r2: (17 + r)^(1/3);
					      1/3
(%o3) (3 sqrt(33) + 17)

Com essas raízes podemos agora escrever o número que queremos inverter:

rn: r1+r2;
				   1/3			  1/3
(%o8) (3 sqrt(33) + 17) + (17 - 3 sqrt(33))

O recíproco é:

 1/rn;
				       1
(%o9) -------------------------------------------
1/3 1/3
(3 sqrt(33) + 17) + (17 - 3 sqrt(33))
ev (ratdisrep(rat(%)), algebraic);

Obtemos:

			2/3		       1/3		    1/3
(%o10)((3 sqrt(33) + 17) - (17 - 3 sqrt(33)) (3 sqrt(33) + 17)

2/3
+ (17 - 3 sqrt(33)) )/34

Esse produto é simplificado com rootscontract:

rootscontract(%);
							   2/3			  2/3
(3 sqrt(33) + 17) + (17 - 3 sqrt(33)) + 2
(%o11) -----------------------------------------------
34

Que é o recíproco procurado na representação desejada.

Multiplicação com um rn dado:

%*rn;
				    1/3			   1/3			  2/3			 2/3
((3 sqrt(33) + 17) + (17 - 3 sqrt(33)) ) ((3 sqrt(33) + 17) + (17 - 3 sqrt(33)) + 2)
(%o12) -----------------------------------------------------------------------------------------------
34

Para continuar nosso cálculo, expandimos a linha anterior:

expand(%);
		       1/3		    2/3			   2/3		        1/3		       1/3
(17 - 3 sqrt(33)) (3 sqrt(33) + 17) (17 - 3 sqrt(33)) (3 sqrt(33) + 17) (3 sqrt(33) + 17)
(%o22)----------------------------------------- + ----------------------------------------- + --------------------
34 34 17

1/3
(17 - 3 sqrt(33))
+ -------------------- + 1
17

O produto das raízes é removido com rootscontract:

rootscontract(%);
				   1/3			  1/3			 1/3			    1/3
(24 sqrt(33) - 136) (3 sqrt(33) + 17) (17 - 3 sqrt(33)) (- 24 sqrt(33) - 136)
(%o24) ---------------------- + -------------------- + -------------------- + ------------------------ + 1
34 17 17 34
17

Para simplificar isso, passamos para a forma canônica com a opção radexpand:all. Essa opção transforma (24*SQRT(33) - 136) em 2*(3*SQRT(33) - 17).

radcan(%), radexpand:all;
  1

Isso é conveniente paraa definir uma função que calcula o recíproco e executa todas as simplificações desejadas:

inv(x) := block([r:1/x], rootscontract(ev (ratdisrep(rat(r)), algebraic)));

Podemos agora escrever:

inv(r1 + r2);

para obter:

				 2/3		        2/3
(3 sqrt(33) + 17) + (17 - 3 sqrt(33)) + 2
(%o5) -----------------------------------------------
34


Índice