Functional programming concepts and straight-line programs in computer algebra

被引:3
|
作者
Bruno, N
Heintz, J
Matera, G
Wachenchauzer, R
机构
[1] Univ Nacl Gen Sarmiento, Inst Desarrollo Humano, RA-1613 Buenos Aires, DF, Argentina
[2] Univ Nacl Cordoba, Dept Computac, Fac Matemat Astron & Fis, Haya Torre & Med Allende, RA-5000 Cordoba, Argentina
[3] Univ Buenos Aires, Fac Ciencias Exactas & Nat, Dept Matemat, RA-1428 Buenos Aires, DF, Argentina
[4] Consejo Nacl Invest Cient & Tecn, RA-1033 Buenos Aires, DF, Argentina
[5] Univ Cantabria, Fac Ciencias, Dept Matemat Estadist & Computac, E-39071 Santander, Spain
[6] Univ Buenos Aires, Fac Ingn, Dept Computac, RA-1063 Buenos Aires, DF, Argentina
关键词
symbolic computation; polynomial equation solver; abstract machine;
D O I
10.1016/S0378-4754(02)00035-6
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
In this paper we present MILONGA, a language based on functional programming concepts, which was designed for the implementation of a new generation of nonterm-rewriting elimination algorithms for multivariate polynomial solving [J. Pure Appl. Alg. 124 (1998) 101-146; J. Pure Appl. Alg. 117/118 (1997) 277-317; Appl. Alg. Eng. Commun. Comput. 11 (4) (2001) 239-296; J. Complex. 17 (1) (2001) 154-211]. These new algorithms profit from an alternative representation of multivariate polynomials by means of straight-line programs [Algebraic complexity theory, in: Handbook of Theoretical Computer Science, Elsevier, Amsterdam, 1990, pp. 634-671 (Chapter 11); Algebraic complexity theory, in: Grundlehren der mathematischen Wissenschaften, Vol. 315, Springer, Berlin, 1997] allowing an exponential improvement of theoretical complexity-with respect to computing time and memory space-upon traditional, term-rewriting procedures. There is a strong analogy between the way how these algorithms employ straight-line programs and the way how functional programming languages treat functions as first-class citizens. Taking advantage of this circumstance, the MILONGA language enables us to analyze the relevance of the functional programming paradigm for the particular kind of task of polynomial equation solving. The paper contains an exhaustive do-it-yourself description of the programming philosophy of M I LONGA, of the development of its compiler, of the operational semantics of its run-time system and of the implementation of a couple of fundamental computer algebra procedures in this language.
引用
收藏
页码:423 / 473
页数:51
相关论文
共 50 条
  • [1] Balancing Straight-line Programs
    Ganardi, Moses
    Jez, Artur
    Lohrey, Markus
    JOURNAL OF THE ACM, 2021, 68 (04)
  • [2] Balancing Straight-Line Programs
    Ganardi, Moses
    Lohrey, Markus
    Jez, Artur
    2019 IEEE 60TH ANNUAL SYMPOSIUM ON FOUNDATIONS OF COMPUTER SCIENCE (FOCS 2019), 2019, : 1169 - 1183
  • [3] Generalized straight-line programs
    Navarro, Gonzalo
    Olivares, Francisco
    Urbina, Cristian
    ACTA INFORMATICA, 2025, 62 (01)
  • [4] Iterated Straight-Line Programs
    Navarro, Gonzalo
    Urbina, Cristian
    LATIN 2024: THEORETICAL INFORMATICS, PT I, 2024, 14578 : 66 - 80
  • [5] Sparse resultants and straight-line programs
    Jeronimo, Gabriela
    Sabia, Juan
    JOURNAL OF SYMBOLIC COMPUTATION, 2018, 87 : 14 - 27
  • [6] Balancing Straight-Line Programs for Strings and Trees
    Lohrey, Markus
    BEYOND THE HORIZON OF COMPUTABILITY, CIE 2020, 2020, 12098 : 296 - 300
  • [7] ON PARALLEL COMPUTATIONS OF EXPRESSIONS AND STRAIGHT-LINE PROGRAMS
    RYTTER, W
    COMPUTERS AND ARTIFICIAL INTELLIGENCE, 1990, 9 (05): : 427 - 439
  • [8] Interpolation of polynomials given by straight-line programs
    Garg, Sanchit
    Schost, Eric
    THEORETICAL COMPUTER SCIENCE, 2009, 410 (27-29) : 2659 - 2662
  • [9] Evaluating Straight-Line Programs over Balls
    van der Hoeven, Joris
    Lecerf, Gregoire
    2016 IEEE 23nd Symposium on Computer Arithmetic (ARITH), 2016, : 142 - 149
  • [10] Straight-line programs in geometric elimination theory
    Giusti, M
    Heintz, J
    Morais, JE
    Morgenstern, J
    Pardo, LM
    JOURNAL OF PURE AND APPLIED ALGEBRA, 1998, 124 (1-3) : 101 - 146