Google

Go to the first, previous, next, last section, table of contents.


Âå¿ôŪ¿ô¤Î±é»»

Á°Àá¤Ç, Âå¿ôŪ¿ô¤Îɽ¸½, ÄêµÁ¤Ë¤Ä¤¤¤Æ½Ò¤Ù¤¿. ¤³¤³¤Ç¤Ï, Âå¿ôŪ¿ô¤òÍѤ¤¤¿ ±é»»¤Ë¤Ä¤¤¤Æ½Ò¤Ù¤ë. Âå¿ôŪ¿ô¤Ë´Ø¤·¤Æ¤Ï, ÁȤ߹þ¤ßÈ¡¿ô¤È¤·¤ÆÄ󶡤µ¤ì¤Æ¤¤¤ë µ¡Ç½¤Ï¤´¤¯¾¯¿ô¤Ç, ÂçÉôʬ¤Ï¥æ¡¼¥¶ÄêµÁÈ¡¿ô¤Ë¤è¤ê¼Â¸½¤µ¤ì¤Æ¤¤¤ë. ¥Õ¥¡¥¤¥ë ¤Ï, `sp' ¤Ç, `gr' ¤ÈƱÍÍ Asir ¤Îɸ½à¥é¥¤¥Ö¥é¥ê¥Ç¥£¥ì¥¯¥È¥ê ¤Ë¤ª¤«¤ì¤Æ¤¤¤ë.

[0] load("gr")$
[1] load("sp")$

¤¢¤ë¤¤¤Ï, ¾ï¤ËÍѤ¤¤ë¤Ê¤é¤Ð, `$HOME/.asirrc' ¤Ë½ñ¤¤¤Æ¤ª¤¯¤Î¤â¤è¤¤.

root ¤Ï ¤½¤Î¾¤Î¿ô¤ÈƱÍÍ, »Í§±é»»¤¬²Äǽ¤È¤Ê¤ë. ¤·¤«¤·, ÄêµÁ¿ ¹à¼°¤Ë¤è¤ë´Êñ²½¤Ï¼«Æ°Åª¤Ë¤Ï¹Ô¤ï¤ì¤Ê¤¤¤Î¤Ç, ¥æ¡¼¥¶¤ÎȽÃǤÇŬµ¹¹Ô¤ï ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤. ÆÃ¤Ë, ʬÊ줬 0 ¤Ë¤Ê¤ë¾ì¹ç¤ËÃ×̿Ū¤Ê¥¨¥é¡¼¤È¤Ê¤ë¤¿¤á, ¼ÂºÝ¤ËʬÊì¤ò»ý¤ÄÂå¿ôŪ¿ô¤òÀ¸À®¤¹¤ë¾ì¹ç¤Ë¤ÏºÙ¿´¤ÎÃí°Õ¤¬É¬ÍפȤʤë.

Âå¿ôŪ¿ô¤Î, ÄêµÁ¿¹à¼°¤Ë¤è¤ë´Êñ²½¤Ï, simpalg() ¤Ç¹Ô¤¦.

[49] T=A0^2+1;
(#0^2+1)
[50] simpalg(T);
0

simpalg() ¤ÏÍ­Íý¼°¤Î·Á¤ò¤·¤¿Âå¿ôŪ¿ô¤ò, ¿¹à¼°¤Î·Á¤Ë´Êñ²½¤¹¤ë.

[39] A0=newalg(x^2+1);      
(#0)
[40] T=(A0^2+A0+1)/(A0+3);
((#0^2+#0+1)/(#0+3))
[41] simpalg(T);
(3/10*#0+1/10)
[42] T=1/(A0^2+1);
((1)/(#0^2+1))
[43] simpalg(T);
div : division by 0
stopped in invalgp at line 258 in file "/usr/local/lib/asir/sp"
258                     return 1/A;
(debug) 

¤³¤ÎÎã¤Ç¤Ï, ʬÊ줬 0 ¤ÎÂå¿ôŪ¿ô¤ò´Êñ²½¤·¤è¤¦¤È¤·¤Æ 0 ¤Ë¤è¤ë½ü»»¤¬À¸¤¸ ¤¿¤¿¤á, ¥æ¡¼¥¶ÄêµÁÈ¡¿ô¤Ç¤¢¤ë simpalg() ¤ÎÃæ¤Ç¥Ç¥Ð¥Ã¥¬¤¬¸Æ¤Ð¤ì¤¿ ¤³¤È¤ò¼¨¤¹. simpalg() ¤Ï, Âå¿ôŪ¿ô¤ò·¸¿ô¤È¤¹¤ë¿¹à¼°¤Î ³Æ·¸¿ô¤ò´Êñ²½¤Ç¤­¤ë.

[43] simpalg(1/A0*x+1/(A0+1));
(-#0)*x+(-1/2*#0+1/2)

Âå¿ôŪ¿ô¤ò·¸¿ô¤È¤¹¤ë¿¹à¼°¤Î´ðËܱ黻¤Ï, Ŭµ¹ simpalg() ¤ò¸Æ¤Ö¤³¤È¤ò ½ü¤±¤ÐÄ̾ï¤Î¾ì¹ç¤ÈƱÍͤǤ¢¤ë¤¬, °ø¿ôʬ²ò¤Ê¤É¤ÇÉÑÈˤËÍѤ¤¤é¤ì¤ë¥Î¥ë¥à¤Î ·×»»¤Ê¤É¤Ë¤ª¤¤¤Æ¤Ï, root ¤òÉÔÄ긵¤ËÃÖ¤­´¹¤¨¤ëɬÍפ¬½Ð¤Æ¤¯¤ë. ¤³¤Î¾ì¹ç, algptorat() ¤òÍѤ¤¤ë.

[83] A0=newalg(x^2+1);
(#0)
[84] A1=newalg(x^3+A0*x+A0);
(#1)
[85] T=(2*A0+A1*A0+A1^2)*x+(1+A1)/(2+A0);
(#1^2+#0*#1+2*#0)*x+((#1+1)/(#0+2))
[86] S=algptorat(T);
(((t#0+2)*t#1^2+(t#0^2+2*t#0)*t#1+2*t#0^2+4*t#0)*x+t#1+1)/(t#0+2)
[87] algptorat(coef(T,1));
t#1^2+t#0*t#1+2*t#0

¤³¤Î¤è¤¦¤Ë, algptorat() ¤Ï, ¿¹à¼°, ¿ô¤Ë´Þ¤Þ¤ì¤ë root ¤ò, Âбþ¤¹¤ëÉÔÄ긵, ¤¹¤Ê¤ï¤Á #n ¤ËÂФ¹¤ë t#n ¤ËÃÖ¤­´¹¤¨¤ë. ´û¤Ë½Ò¤Ù¤¿¤è¤¦¤Ë, ¤³¤ÎÉÔÄ긵¤Ï¥æ¡¼¥¶¤¬ÆþÎϤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤. ¤³¤ì¤Ï, ¥æ¡¼¥¶¤ÎÆþÎϤ·¤¿ÉÔÄ긵¤È, root ¤ËÂбþ¤¹¤ëÉÔÄ긵¤¬°ìÃ× ¤·¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤¢¤ë.

µÕ¤Ë, root ¤ËÂбþ¤¹¤ëÉÔÄ긵¤ò, Âбþ¤¹¤ë root ¤ËÃÖ¤­´¹¤¨¤ë ¤¿¤á¤Ë¤Ï rattoalgp() ¤òÍѤ¤¤ë.

[88] rattoalgp(S,[alg(0)]);
(((#0+2)/(#0+2))*t#1^2+((#0^2+2*#0)/(#0+2))*t#1+((2*#0^2+4*#0)/(#0+2)))*x
+((1)/(#0+2))*t#1+((1)/(#0+2))
[89] rattoalgp(S,[alg(0),alg(1)]);
(((#0^3+6*#0^2+12*#0+8)*#1^2+(#0^4+6*#0^3+12*#0^2+8*#0)*#1+2*#0^4+12*#0^3
+24*#0^2+16*#0)/(#0^3+6*#0^2+12*#0+8))*x+(((#0+2)*#1+#0+2)/(#0^2+4*#0+4))
[90] rattoalgp(S,[alg(1),alg(0)]);
(((#0+2)*#1^2+(#0^2+2*#0)*#1+2*#0^2+4*#0)/(#0+2))*x+((#1+1)/(#0+2))
[91] simpalg(@89);
(#1^2+#0*#1+2*#0)*x+((-1/5*#0+2/5)*#1-1/5*#0+2/5)
[92] simpalg(@90);
(#1^2+#0*#1+2*#0)*x+((-1/5*#0+2/5)*#1-1/5*#0+2/5)

rattoalgp() ¤Ï, ÃÖ´¹¤ÎÂоݤȤʤë root ¤Î¥ê¥¹¥È¤òÂè 2 °ú¿ô ¤Ë¤È¤ê, º¸¤«¤é½ç¤Ë, Âбþ¤¹¤ëÉÔÄ긵¤òÃÖ¤­´¹¤¨¤Æ¹Ô¤¯. ¤³¤ÎÎã¤Ï, ÃÖ´¹¤¹¤ë½ç½ø¤ò´¹¤¨¤ë¤È´Êñ²½¤ò¹Ô¤ï¤Ê¤¤¤³¤È¤Ë¤è¤ê·ë²Ì¤¬°ì¸«°Û¤Ê¤ë¤¬, ´Êñ²½¤Ë¤è¤ê¼Â¤Ï°ìÃפ¹¤ë¤³¤È¤ò¼¨¤·¤Æ¤¤¤ë. algptorat(), rattoalgp() ¤Ï, ¥æ¡¼¥¶¤¬ÆÈ¼«¤Î´Êñ²½¤ò¹Ô¤¤¤¿¤¤¾ì¹ç¤Ê¤É¤Ë¤â ÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤ë.


Go to the first, previous, next, last section, table of contents.