[BACK]Return to ts_poly.adb CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Math_Lib / Polynomials

Annotation of OpenXM_contrib/PHC/Ada/Math_Lib/Polynomials/ts_poly.adb, Revision 1.1.1.1

1.1       maekawa     1: with text_io,integer_io;                 use text_io,integer_io;
                      2: with Symbol_Table;
                      3: with Standard_Floating_Numbers;          use Standard_Floating_Numbers;
                      4: with Standard_Complex_Numbers;           use Standard_Complex_Numbers;
                      5: with Standard_Complex_Numbers_io;        use Standard_Complex_Numbers_io;
                      6: with Standard_Complex_Vectors;           use Standard_Complex_Vectors;
                      7: with Standard_Complex_Vectors_io;        use Standard_Complex_Vectors_io;
                      8: with Standard_Random_Vectors;            use Standard_Random_Vectors;
                      9: with Standard_Complex_Polynomials;       use Standard_Complex_Polynomials;
                     10: with Standard_Complex_Polynomials_io;    use Standard_Complex_Polynomials_io;
                     11: with Standard_Complex_Poly_Vectors;      use Standard_Complex_Poly_Vectors;
                     12: with Standard_Complex_Poly_Vectors_io;   use Standard_Complex_Poly_Vectors_io;
                     13: with Standard_Complex_Poly_Matrices;     use Standard_Complex_Poly_Matrices;
                     14: with Standard_Complex_Poly_Matrices_io;  use Standard_Complex_Poly_Matrices_io;
                     15: with Standard_Complex_Poly_Functions;    use Standard_Complex_Poly_Functions;
                     16: with Standard_Complex_Poly_Systems;      use Standard_Complex_Poly_Systems;
                     17: with Standard_Complex_Poly_Systems_io;   use Standard_Complex_Poly_Systems_io;
                     18: with Standard_Complex_Poly_SysFun;       use Standard_Complex_Poly_SysFun;
                     19: with Standard_Complex_Laur_Polys;        use Standard_Complex_Laur_Polys;
                     20: with Standard_Complex_Laur_Functions;    use Standard_Complex_Laur_Functions;
                     21: with Standard_Poly_Laur_Convertors;      use Standard_Poly_Laur_Convertors;
                     22: with Standard_to_Multprec_Convertors;    use Standard_to_Multprec_Convertors;
                     23: with Multprec_Complex_Numbers;           use Multprec_Complex_Numbers;
                     24: with Multprec_Complex_Numbers_io;        use Multprec_Complex_Numbers_io;
                     25: with Multprec_Complex_Vectors;           use Multprec_Complex_Vectors;
                     26: with Multprec_Complex_Vectors_io;        use Multprec_Complex_Vectors_io;
                     27: with Multprec_Complex_Vector_Tools;      use Multprec_Complex_Vector_Tools;
                     28: with Multprec_Complex_Polynomials;       use Multprec_Complex_Polynomials;
                     29: with Multprec_Complex_Polynomials_io;    use Multprec_Complex_Polynomials_io;
                     30: with Multprec_Complex_Poly_Functions;    use Multprec_Complex_Poly_Functions;
                     31: with Multprec_Complex_Poly_Systems;      use Multprec_Complex_Poly_Systems;
                     32: with Multprec_Complex_Poly_SysFun;       use Multprec_Complex_Poly_SysFun;
                     33:
                     34: procedure ts_poly is
                     35:
                     36: -- DESCRIPTION :
                     37: --   This routine provides basic testing routines for complex polynomials.
                     38:
                     39:   procedure Test_io is
                     40:
                     41:   -- DESCRIPTION :
                     42:   --   Tests the input/output of a polynomial in several variables
                     43:   --   and with complex coefficients.
                     44:
                     45:     n,m : natural;
                     46:     p : Standard_Complex_Polynomials.Poly;
                     47:
                     48:   begin
                     49:     new_line;
                     50:     put_line("Interactive testing of input/output of complex polynomials.");
                     51:     new_line;
                     52:     put("Give the number of variables : "); get(n);
                     53:     Symbol_Table.Init(n);
                     54:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                     55:     m := Number_of_Unknowns(p);
                     56:     put("the number of unknowns : "); put(m,1); new_line;
                     57:     put("the number of terms : "); put(Number_of_Terms(p),1); new_line;
                     58:     put("the degree of p : "); put(Degree(p),1);
                     59:     put("  max degrees : ");
                     60:     for i in 1..m loop
                     61:       put(Degree(p,i),1); put(" ");
                     62:     end loop;
                     63:     new_line;
                     64:     put_line("Your polynomial : "); put(p); new_line;
                     65:     Symbol_Table.Clear;
                     66:     Clear(p);
                     67:   end Test_io;
                     68:
                     69:   procedure Test_Vector_io is
                     70:
                     71:     n : natural;
                     72:
                     73:   begin
                     74:     new_line;
                     75:     put_line("Interactive testing of i/o of vectors of complex polynomials.");
                     76:     new_line;
                     77:     put("Give the dimension of the vector : "); get(n);
                     78:     Symbol_Table.Init(n);
                     79:     declare
                     80:       p : Standard_Complex_Poly_Vectors.Vector(1..n);
                     81:     begin
                     82:       put("Give "); put(n,1); put(" polynomials in "); put(n,1);
                     83:       put_line(" variables : "); get(p);
                     84:       put_line("Your polynomials : "); put_line(p);
                     85:     end;
                     86:   end Test_Vector_io;
                     87:
                     88:   procedure Test_Matrix_io is
                     89:
                     90:     n : natural;
                     91:
                     92:   begin
                     93:     new_line;
                     94:     put_line("Interactive testing of i/o of matrices of complex polynomials.");
                     95:     new_line;
                     96:     put("Give the dimension of the matrix : "); get(n);
                     97:     Symbol_Table.Init(n);
                     98:     declare
                     99:       p : Matrix(1..n,1..n);
                    100:     begin
                    101:       put("Give "); put(n,1); put("x"); put(n,1);
                    102:       put(" polynomial matrix in "); put(n,1);
                    103:       put_line(" variables : "); get(p);
                    104:       put_line("Your polynomial matrix : "); put(p);
                    105:     end;
                    106:   end Test_Matrix_io;
                    107:
                    108:   procedure Test_Standard_Eval
                    109:               ( p : in Standard_Complex_Polynomials.Poly;
                    110:                 e : in Standard_Complex_Poly_Functions.Eval_Poly;
                    111:                 x : in Standard_Complex_Vectors.Vector;
                    112:                 output_of_results : in boolean; bug : out boolean ) is
                    113:
                    114:   -- DESCRIPTION :
                    115:   --   Evaluates the polynomial twice and compares the results.
                    116:
                    117:     y1 : Standard_Complex_Numbers.Complex_Number := Eval(p,x);
                    118:     y2 : Standard_Complex_Numbers.Complex_Number := Eval(e,x);
                    119:     tol : constant double_float := 10.0**(-12);
                    120:
                    121:   begin
                    122:     if AbsVal(y1-y2) < tol
                    123:      then put_line("Test on evaluation is successful."); bug := false;
                    124:      else put_line("Different results!  Bug detected."); bug := true;
                    125:     end if;
                    126:     if output_of_results or bug
                    127:      then put("p(x) : "); put(y1); new_line;
                    128:           put("e(x) : "); put(y2); new_line;
                    129:     end if;
                    130:   end Test_Standard_Eval;
                    131:
                    132:   procedure Test_Standard_Laurent_Eval
                    133:               ( p : in Standard_Complex_Laur_Polys.Poly;
                    134:                 e : in Standard_Complex_Laur_Functions.Eval_Poly;
                    135:                 x : in Standard_Complex_Vectors.Vector;
                    136:                 output_of_results : in boolean; bug : out boolean ) is
                    137:
                    138:   -- DESCRIPTION :
                    139:   --   Evaluates the polynomial twice and compares the results.
                    140:
                    141:     y1 : Standard_Complex_Numbers.Complex_Number := Eval(p,x);
                    142:     y2 : Standard_Complex_Numbers.Complex_Number := Eval(e,x);
                    143:     tol : constant double_float := 10.0**(-12);
                    144:
                    145:   begin
                    146:     if AbsVal(y1-y2) < tol
                    147:      then put_line("Test on evaluation is successful."); bug := false;
                    148:      else put_line("Different results!  Bug detected."); bug := true;
                    149:     end if;
                    150:     if output_of_results or bug
                    151:      then put("p(x) : "); put(y1); new_line;
                    152:           put("e(x) : "); put(y2); new_line;
                    153:     end if;
                    154:   end Test_Standard_Laurent_Eval;
                    155:
                    156:   procedure Interactive_Standard_Eval is
                    157:
                    158:   -- DESCRIPTION :
                    159:   --   Tests the evaluation of a polynomial in several variables
                    160:   --   and with standard complex coefficients.
                    161:
                    162:     n : natural;
                    163:     p : Standard_Complex_Polynomials.Poly;
                    164:     e : Standard_Complex_Poly_Functions.Eval_Poly;
                    165:     bug : boolean;
                    166:     ans : character;
                    167:
                    168:   begin
                    169:     new_line;
                    170:     put_line("Interactive evaluation of standard complex polynomials.");
                    171:     new_line;
                    172:     put("Give the number of variables : "); get(n);
                    173:     Symbol_Table.Init(n);
                    174:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                    175:     put_line("Your polynomial p : "); put(p); new_line;
                    176:     e := Create(p);
                    177:     loop
                    178:       declare
                    179:         x : Standard_Complex_Vectors.Vector(1..n);
                    180:       begin
                    181:         put("Give "); put(n,1); put_line(" complex numbers : "); get(x);
                    182:         Test_Standard_Eval(p,e,x,true,bug);
                    183:       end;
                    184:       put("Do you wish to evaluate at other points (y/n) ? "); get(ans);
                    185:       exit when (ans /= 'y');
                    186:     end loop;
                    187:     Symbol_Table.Clear;
                    188:     Clear(p); Clear(e);
                    189:   end Interactive_Standard_Eval;
                    190:
                    191:   procedure Interactive_Standard_Laurent_Eval is
                    192:
                    193:   -- DESCRIPTION :
                    194:   --   Tests the evaluation of a polynomial in several variables
                    195:   --   and with standard complex coefficients.
                    196:
                    197:     n : natural;
                    198:     p : Standard_Complex_Polynomials.Poly;
                    199:     lp : Standard_Complex_Laur_Polys.Poly;
                    200:     elp : Standard_Complex_Laur_Functions.Eval_Poly;
                    201:     bug : boolean;
                    202:     ans : character;
                    203:
                    204:   begin
                    205:     new_line;
                    206:     put_line("Interactive evaluation of standard complex Laurent polynomials.");
                    207:     new_line;
                    208:     put("Give the number of variables : "); get(n);
                    209:     Symbol_Table.Init(n);
                    210:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                    211:     put_line("Your polynomial p : "); put(p); new_line;
                    212:     lp := Polynomial_to_Laurent_Polynomial(p);
                    213:     elp := Create(lp);
                    214:     loop
                    215:       declare
                    216:         x : Standard_Complex_Vectors.Vector(1..n);
                    217:       begin
                    218:         put("Give "); put(n,1); put_line(" complex numbers : "); get(x);
                    219:         Test_Standard_Laurent_Eval(lp,elp,x,true,bug);
                    220:       end;
                    221:       put("Do you wish to evaluate at other points (y/n) ? "); get(ans);
                    222:       exit when (ans /= 'y');
                    223:     end loop;
                    224:     Symbol_Table.Clear;
                    225:     Clear(p); Clear(lp); Clear(elp);
                    226:   end Interactive_Standard_Laurent_Eval;
                    227:
                    228:   procedure Random_Standard_Eval is
                    229:
                    230:   -- DESCRIPTION :
                    231:   --   Tests the evaluation of a polynomial in several variables
                    232:   --   and with standard complex coefficients.
                    233:
                    234:     n,nb : natural;
                    235:     p : Standard_Complex_Polynomials.Poly;
                    236:     e : Standard_Complex_Poly_Functions.Eval_Poly;
                    237:     bug : boolean;
                    238:
                    239:   begin
                    240:     new_line;
                    241:     put_line("Random evaluation of standard complex polynomials.");
                    242:     new_line;
                    243:     put("Give the number of variables : "); get(n);
                    244:     Symbol_Table.Init(n);
                    245:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                    246:     put_line("Your polynomial p : "); put(p); new_line;
                    247:     e := Create(p);
                    248:     put("Give the number of samples : "); get(nb);
                    249:     for i in 1..nb loop
                    250:       declare
                    251:         x : constant Standard_Complex_Vectors.Vector := Random_Vector(1,n);
                    252:       begin
                    253:         Test_Standard_Eval(p,e,x,false,bug);
                    254:       end;
                    255:       exit when bug;
                    256:     end loop;
                    257:     Symbol_Table.Clear;
                    258:     Clear(p); Clear(e);
                    259:   end Random_Standard_Eval;
                    260:
                    261:   procedure Random_Standard_Laurent_Eval is
                    262:
                    263:   -- DESCRIPTION :
                    264:   --   Tests the evaluation of a Laurent polynomial in several variables
                    265:   --   and with standard complex coefficients.
                    266:
                    267:     n,nb : natural;
                    268:     p : Standard_Complex_Polynomials.Poly;
                    269:     lp : Standard_Complex_Laur_Polys.Poly;
                    270:     elp : Standard_Complex_Laur_Functions.Eval_Poly;
                    271:     bug : boolean;
                    272:
                    273:   begin
                    274:     new_line;
                    275:     put_line("Random evaluation of standard complex Laurent polynomials.");
                    276:     new_line;
                    277:     put("Give the number of variables : "); get(n);
                    278:     Symbol_Table.Init(n);
                    279:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                    280:     put_line("Your polynomial p : "); put(p); new_line;
                    281:     lp := Polynomial_to_Laurent_Polynomial(p);
                    282:     elp := Create(lp);
                    283:     put("Give the number of samples : "); get(nb);
                    284:     for i in 1..nb loop
                    285:       declare
                    286:         x : constant Standard_Complex_Vectors.Vector := Random_Vector(1,n);
                    287:       begin
                    288:         Test_Standard_Laurent_Eval(lp,elp,x,false,bug);
                    289:       end;
                    290:       exit when bug;
                    291:     end loop;
                    292:     Symbol_Table.Clear;
                    293:     Clear(p); Clear(lp); Clear(elp);
                    294:   end Random_Standard_Laurent_Eval;
                    295:
                    296:   procedure Test_Multprec_Eval is
                    297:
                    298:   -- DESCRIPTION :
                    299:   --   Tests the evaluation of a polynomial in several variables
                    300:   --   and with multi-precision complex coefficients.
                    301:
                    302:     ans : character;
                    303:     n : natural;
                    304:     p : Standard_Complex_Polynomials.Poly;
                    305:     mp : Multprec_Complex_Polynomials.Poly;
                    306:     ep : Multprec_Complex_Poly_Functions.Eval_Poly;
                    307:
                    308:   begin
                    309:     new_line;
                    310:     put_line("Testing the evaluation of multi-precision complex polynomials.");
                    311:     new_line;
                    312:     put("Give the number of variables : "); get(n);
                    313:     Symbol_Table.Init(n);
                    314:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                    315:     put_line("Your polynomial p : "); put(p); new_line;
                    316:     mp := Convert(p);
                    317:     ep := Create(mp);
                    318:     declare
                    319:       x : Multprec_Complex_Vectors.Vector(1..n);
                    320:       sz : natural;
                    321:       y1,y2 : Multprec_Complex_Numbers.Complex_Number;
                    322:     begin
                    323:       put("Give "); put(n,1); put_line(" complex numbers : "); get(x);
                    324:       loop
                    325:         put("Give the size of the numbers : "); get(sz);
                    326:         Set_Size(x,sz);
                    327:         y1 := Eval(mp,x); put("p(x) : "); put(y1); new_line;
                    328:         y2 := Eval(ep,x); put("e(x) : "); put(y2); new_line;
                    329:         if Equal(y1,y2)
                    330:          then put_line("Test on evaluation is successful.");
                    331:          else put_line("Different results!  Bug detected.");
                    332:         end if;
                    333:         put("Do you want to evaluate for other precisions ? (y/n) ");
                    334:         get(ans);
                    335:         exit when ans /= 'y';
                    336:       end loop;
                    337:     end;
                    338:     Symbol_Table.Clear;
                    339:     Clear(p); Clear(mp); Clear(ep);
                    340:   end Test_Multprec_Eval;
                    341:
                    342:   procedure Test_Standard_Diff is
                    343:
                    344:   -- DESCRIPTION :
                    345:   --   Test on the differentiation of standard complex polynomials.
                    346:
                    347:     n,m : natural;
                    348:     p,dp : Standard_Complex_Polynomials.Poly;
                    349:
                    350:   begin
                    351:     new_line;
                    352:     put_line("Test on differentiation of standard complex polynomials.");
                    353:     new_line;
                    354:     put("Give the number of variables : "); get(n);
                    355:     Symbol_Table.Init(n);
                    356:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                    357:     m := Number_of_Unknowns(p);
                    358:     put("Your polynomial p : "); put(p); new_line;
                    359:     put("The number of unknowns : "); put(m,1); new_line;
                    360:     for i in 1..m loop
                    361:       dp := Diff(p,i);
                    362:       put("Diff(p,"); put(i,1); put(") : ");
                    363:       put(dp); new_line;
                    364:       Clear(dp);
                    365:     end loop;
                    366:     Symbol_Table.Clear;
                    367:     Clear(p);
                    368:   end Test_Standard_Diff;
                    369:
                    370:  procedure Test_Multprec_Diff is
                    371:
                    372:   -- DESCRIPTION :
                    373:   --   Test on the differentiation of multi-precision complex polynomials.
                    374:
                    375:     n,m : natural;
                    376:     p : Standard_Complex_Polynomials.Poly;
                    377:     mp,dp : Multprec_Complex_Polynomials.Poly;
                    378:
                    379:   begin
                    380:     new_line;
                    381:     put_line("Test on differentiation of multi-precision complex polynomials.");
                    382:     new_line;
                    383:     put("Give the number of variables : "); get(n);
                    384:     Symbol_Table.Init(n);
                    385:     put_line("Give a polynomial (terminate with ;) : "); get(p);
                    386:     m := Number_of_Unknowns(p);
                    387:     put("Your polynomial p : "); put(p); new_line;
                    388:     mp := Convert(p);
                    389:     put("As multi-precision poly : "); put(mp); new_line;
                    390:     put("The number of unknowns : "); put(m,1); new_line;
                    391:     for i in 1..m loop
                    392:       dp := Diff(mp,i);
                    393:       put("Diff(p,"); put(i,1); put(") : ");
                    394:       put(dp); new_line;
                    395:       Clear(dp);
                    396:     end loop;
                    397:     Symbol_Table.Clear;
                    398:     Clear(p); Clear(mp);
                    399:   end Test_Multprec_Diff;
                    400:
                    401:   procedure Test_System_io is
                    402:
                    403:     lp : Standard_Complex_Poly_Systems.Link_to_Poly_Sys;
                    404:     n : natural;
                    405:
                    406:   begin
                    407:     new_line;
                    408:     put_line("Interactive testing on input/output of polynomial systems.");
                    409:     new_line;
                    410:     put("Give the dimension : "); get(n);
                    411:     Symbol_Table.Init(n);
                    412:     put("Give ");  put(n,1); put_line(" polynomials : ");
                    413:     declare
                    414:       p : Standard_Complex_Poly_Systems.Poly_Sys(1..n);
                    415:     begin
                    416:       get(p);
                    417:       put_line("The system : "); put(p);
                    418:     end;
                    419:     Symbol_Table.Clear;
                    420:     get(lp);
                    421:     put_line("The system : "); put(lp.all);
                    422:   end Test_System_io;
                    423:
                    424:   procedure Test_Eval_Standard_System is
                    425:
                    426:     lp : Standard_Complex_Poly_Systems.Link_to_Poly_Sys;
                    427:
                    428:   begin
                    429:     new_line;
                    430:     put_line("Testing the evaluation of standard polynomial systems.");
                    431:     new_line;
                    432:     get(lp);
                    433:     put_line("The system : "); put(lp.all);
                    434:     declare
                    435:       n : constant natural := lp'last;
                    436:       x,y1,y2,y3 : Standard_Complex_Vectors.Vector(1..n);
                    437:       ep : Standard_Complex_Poly_SysFun.Eval_Poly_Sys(1..n) := Create(lp.all);
                    438:
                    439:       function Evaluate ( x : Standard_Complex_Vectors.Vector )
                    440:                         return Standard_Complex_Vectors.Vector is
                    441:       begin
                    442:         return Eval(ep,x);
                    443:       end Evaluate;
                    444:     begin
                    445:       put("Give "); put(n,1); put_line(" complex numbers :"); get(x);
                    446:       y1 := Eval(lp.all,x);
                    447:       y2 := Eval(ep,x);
                    448:       y3 := Evaluate(x);
                    449:       put("p(x) : "); put(y1); new_line;
                    450:       put("e(x) : "); put(y2); new_line;
                    451:       put("E(x) : "); put(y2); new_line;
                    452:       if Equal(y1,y2) and Equal(y2,y3)
                    453:        then put_line("Test on evaluation of system is successful.");
                    454:        else put_line("Different evaluations!  Bug detected.");
                    455:       end if;
                    456:     end;
                    457:   end Test_Eval_Standard_System;
                    458:
                    459:   procedure Test_Eval_Multprec_System is
                    460:
                    461:     lp : Standard_Complex_Poly_Systems.Link_to_Poly_Sys;
                    462:
                    463:   begin
                    464:     new_line;
                    465:     put_line("Testing the evaluation of multi-precision polynomial systems.");
                    466:     new_line;
                    467:     get(lp);
                    468:     put_line("The system : "); put(lp.all);
                    469:     declare
                    470:       n : constant natural := lp'last;
                    471:       x,y1,y2 : Multprec_Complex_Vectors.Vector(1..n);
                    472:       mp : Multprec_Complex_Poly_Systems.Poly_Sys(1..n) := Convert(lp.all);
                    473:       ep : Multprec_Complex_Poly_SysFun.Eval_Poly_Sys(1..n) := Create(mp);
                    474:     begin
                    475:       put("Give "); put(n,1); put_line(" complex numbers :"); get(x);
                    476:       y1 := Eval(mp,x);
                    477:       y2 := Eval(ep,x);
                    478:       put("p(x) : "); put(y1); new_line;
                    479:       put("e(x) : "); put(y2); new_line;
                    480:       if Equal(y1,y2)
                    481:        then put_line("Test on evaluation of system is successful.");
                    482:        else put_line("Different evaluations!  Bug detected.");
                    483:       end if;
                    484:     end;
                    485:   end Test_Eval_Multprec_System;
                    486:
                    487:   procedure Main is
                    488:
                    489:     ans : character;
                    490:
                    491:   begin
                    492:     new_line;
                    493:     put_line("Interactive testing of the operations on complex polynomials.");
                    494:     loop
                    495:       new_line;
                    496:       put_line("Choose one of the following :                               ");
                    497:       put_line("  0. Exit this program.                                     ");
                    498:       put_line("  1. i/o of standard complex polynomials.                   ");
                    499:       put_line("  2. i/o of vectors of standard complex polynomials.        ");
                    500:       put_line("  3. i/o of matrices of standard complex polynomials.       ");
                    501:       put_line("  4. Interactive evaluation of standard complex polynomials.");
                    502:       put_line("  5. Interactive evaluation of standard Laurent polynomials.");
                    503:       put_line("  6. Random evaluation of standard complex polynomials.     ");
                    504:       put_line("  7. Random evaluation of standard Laurent polynomials.     ");
                    505:       put_line("  8. Evaluation of multi-precision complex polynomials.     ");
                    506:       put_line("  9. Differentiation of standard complex polynomials.       ");
                    507:       put_line("  A. Differentiation of multi-precision complex polynomials.");
                    508:       put_line("  B. i/o of systems of standard complex polynomials.        ");
                    509:       put_line("  C. Evaluation of systems of standard complex polynomials. ");
                    510:       put_line("  D. Evaluation of systems of multprec complex polynomials. ");
                    511:       put("Type 0,1,2,3,4,5,6,7,8,9,A,B,C or D to select : "); get(ans);
                    512:       exit when (ans = '0');
                    513:       case ans is
                    514:         when '1' => Test_io;
                    515:         when '2' => Test_Vector_io;
                    516:         when '3' => Test_Matrix_io;
                    517:         when '4' => Interactive_Standard_Eval;
                    518:         when '5' => Interactive_Standard_Laurent_Eval;
                    519:         when '6' => Random_Standard_Eval;
                    520:         when '7' => Random_Standard_Laurent_Eval;
                    521:         when '8' => Test_Multprec_Eval;
                    522:         when '9' => Test_Standard_Diff;
                    523:         when 'A' => Test_Multprec_Diff;
                    524:         when 'B' => Test_System_io;
                    525:         when 'C' => Test_Eval_Standard_System;
                    526:         when 'D' => Test_Eval_Multprec_System;
                    527:         when others => null;
                    528:       end case;
                    529:     end loop;
                    530:   end Main;
                    531:
                    532: begin
                    533:   Main;
                    534: end ts_poly;

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>