# On the History of Computer Algebra at the Keldysh Institute of Applied Mathematics

G. B. Efimov, I. B. Tshenkov, E. Yu Zueva

► To cite this version:

G. B. Efimov, I. B. Tshenkov, E. Yu Zueva. On the History of Computer Algebra at the Keldysh Institute of Applied Mathematics. 1st Soviet and Russian Computing (SoRuCom), Jul 2006, Petrozavodsk, Russia. pp.220-227, 10.1007/978-3-642-22816-2_26. hal-01568418

HAL Id: hal-01568418

https://inria.hal.science/hal-01568418

Submitted on 25 Jul 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# On the History of Computer Algebra at the Keldysh Institute of Applied Mathematics

G.B. Efimov<fnref n="1" />, I.B. Tshenkov<fnref n="2" />, and E.Yu. Zueva<fnref n="3" />

**Abstract:** The authors consider the history of Computer Algebra (CA) development and applications at the famous Keldysh Institute of Applied Mathematics (Russia Academy of Science). At the Institute CA was used in various areas: Applied Celestial Mechanics, Mathematics, Robotics, Hydromechanics, and Methods of Calculation. Authors compared and classified the existing systems and their possibilities. An attention is paid to REFAL (REcursive Functions Algorithmic Language), developed in the Institute. The modern state of investigations is also concerned. The list of the main references is presented.

**Keywords:** Computer algebra, mechanics, mathematics, programming, history, KIAM, REFAL

## 1. Introduction

The Keldysh Institute of Applied Mathematics of the Russian Academy of Science (KIAM RAS) was the first and one of greatest centers of computer science in the Soviet Union. M.V. Keldysh founded it in 1953 for solving difficult scientific problems of national importance. From the very beginning, it was the problem of modern physics, from mathematical and computational point of view. Later the Institute obtained the significant results in such scientific areas as space mechanics, physics, mechanics, cybernetics, programming and others. At the Institute, the experts in different areas such as mathematicians, physicists, mechanical engineers and computer scientists worked together, and their contacts with each other became the source of fruitful ideas. Such famous scientists as A.N. Tichonov, K.I. Babenko, I.M. Gelfand, T.M. Eneev, A.A. Liapunov, D.E. Okhotsimsky, A.A. Samarsky, Ya.B. Zeldovich, V.S. Yablonsky, K.A. Semendyaev, O.B. Lupanov, M.R. Shura-Bura, A.N. Miamlin, S.P. Kurdiumov, N.N. Chentsov were among them. Numerous difficult problems required various mathematical methods for their solution. These scientists were using the early computers and they were experiencing the early successes in this new field. These successes, in turn, gave all of them the enthusiasm to generate many interesting ideas.

<footnote n="1">¹ Keldysh Institute of Applied Mathematics, RAS, Moscow; Efimov@keldysh.ru</footnote>

<footnote n="2">² Keldysh Institute of Applied Mathematics, RAS, Moscow; Iesm2@mail.ru</footnote>

<footnote n="3">³ Keldysh Institute of Applied Mathematics, RAS, Moscow; Ezueva@keldysh.ru</footnote>
Soviet programming, different directions of computer science, and modern methods of computations were born in this first period. It is interesting to mention that our Institute was among the first users of new computers. We received Soviet-made computers ‘M-20’ with serial number 1 and ‘BESM-6’ with serial number 2. We also had the opportunity to use some others Soviet computers such as ‘STRELA’, ‘BESM-3’ and ‘BESM-4’, and various computers from the ‘ES’ series. When programming as a new kind of activity had appeared, it required new people. A number of professional programmers worked in the Institute; they created new languages, translators, systems, and packages. Note at that time, that applied scientists, physicists, and mechanical engineers stimulated this process and participated in it together with professional programmers. They also were the authors of software in the 1960s, 1970s, and later.

## 2. Applications in Computer Algebra

The idea of symbolic computations arose just after the appearance of computers. It started as a will to make computers able to interact with humans via an ordinary mathematical language and to facilitate the job of physicist or mechanical engineer. Thus, the history of computer algebra (CA) in the Soviet Union and Russia spans a half century. This history is presented in several reviews and conferences papers [1-17]. This list includes some works of authors of this paper devoted to the application of CA and CA systems in mechanics, dynamics of multi-bodies systems, theory of control [9, 15, 17] and to CA investigations at Keldysh Institute [16]. The review [17] contains detailed references to more than 500 original works.

It is interesting to remember the very first attempts to use symbolic, non-digital way of interaction with computer, at the age when most of scientists considered computer as a big and not very convenient calculator only. In their historical review, A.P. Ershov and M.R. Shura-Bura [2] mentioned only the first works of Leningrad’s school. We will add the works of some other groups of authors made in Russia as early as the beginning of the 1960s.

In 1956 at the first National Conference devoted to computer science, A.A. Dorodnitcin formulated the task that we can consider as the beginning of symbol manipulation in the Soviet Union [18]. He proposed to build solutions in the form of two asymptotic power series, conjugated by a common numerical solution in the regular area. Thus, analytical approach was combined with numerical one. D.E Okhotsimsky from the Keldysh Institute applied this approach to a space dynamics problem [19]. He also built two asymptotic series conjugated by a common numerical part. Automatic building of asymptotic construction on one of the first Soviet computers, the STRELA, was innovation per se.

A.A. Stogny [20], the follower of V.M. Glushkov in Kiev, resolved the task formulated by Dorodnitcin. He proposed an algorithm to obtain the polynomial solution for a differential equation. It was probably the first result of the famous Kiev Computer Algebra School. At the same time, Nobel laureate L.V. Kantorovich investigated some types of symbolic notation for computer algebra in the Leningrad’s branch of the Steklov Mathematical Institute. His follower, T.N. Petrova, created the program “Polynomial Prorab”, used later for the tasks of theory of elasticity and other
applications [21]. N.N. Yanenko, who started his scientific way at KIAM, investigated Cartan's methods of the analysis of compatibility of systems of differential equations in partial derivations and realized it on the STRELA computer [22]. In Leningrad, at the Institute of Theoretical Astronomy (ITA RAS), V.A. Brumberg and his colleagues developed solutions of some problems in celestial mechanics in series form [23]. Later, they elaborated and expanded this approach. The group of L.V. Kantorovich in Leningrad and V.K. Kabulov in Tashkent elaborated a similar approach to the tasks of the theory of elasticity [24].

The Keldysh Institute was among the first developers of symbol manipulation and began the first attempts to use them in the area of applied celestial mechanics. Z.P. Vlasova and I.B. Zadyhaylo implemented the first manipulations with trigonometric and power series on Soviet STRELA computer. In 1964, D.E. Okhotsimsky initiated work on a semi-analytical solution of a space dynamics problem for the low-thrust flight in a central field of gravitation. G.B. Efimov realized this approach for a simple Poisson series in 1970. Since 1970, A.P. Markeev used CA for normalization of Hamilton Systems and periodic solution stability analysis. His follower, A.G. Sokolsky, made the next steps in this direction. This work continued by the same group at Moscow Aviation Institute (MAI) and later by A.G. Sokolsky in ITA RAS in Leningrad. At MAI, they developed computer algebra applications to education as well. V.A. Saryshev and S.A. Gutnik used CA for the problem of satellite equilibrium stability in 1984.

Since 1963, M.L. Lidov with his group implemented numerous experiments concerned CA application to satellite dynamics problems. It was impossible to use existing general-purpose CA systems because they were very primitive at that time to solve such complicated problems. He proposed a method to unite both analytical and numerical approaches. For elliptic orbits and perturbations of different sorts, he used the analytical approach to construct the Hamilton perturbing function. Then, he calculated the right-hand parts of the perturbed motion equations in numerical form in every step of the integration. He implemented this calculation, using a Hamilton function derivation. This approach provided a high accuracy method for motion calculation and it allowed the avoidance of labor-consuming analytical calculations. As a result, very sophisticated special algorithms and programs were elaborated and used by M.A. Vashkoviak, A.A. Soloviev, Yu.F. Gordeeva, and other followers of M.L. Lidov. Unfortunately, these investigations did not stimulate the development of CA systems for common usage.

Let us mention some works in the area of fluid and gas dynamics. I.B. Tshenkov and Ya.M. Kajdan resolved several hydrodynamics problems with the aid of a REFAL-based CA program. M.Yu. Shashkov and L.N. Platonova applied similar methods using REDUCE. In the area of dynamics of complicated multi-body systems (e.g. robotics, spacecraft), they used CA for deriving the equations of motion, stability investigation, automatic generation of program of numerical analysis, and other applications. They created the PAS and others systems used for deriving equations of motion and for solving some problems of the theory of control. Computer algebra applications to mechanical education were developed by D.Yu. Pogorelov, the follower of V.V. Beletsky.
### 3. REFAL and its Use

The very interesting page in Russian cybernetics is the history of REFAL. In 1969, V.F. Turchin created REFAL - an original computer language based on a new principle of programming. He used associative text processing based on recursive function theory without directly addressing control of the program [25]. From the beginning, computer algebra was among potential areas of REFAL applications. However, the first realization of REFAL was more “scientific” then practical because it was isolated and not compatible with “ordinary” software such as numerical packages, library support, and memory allocation. Additional efforts of many people required to make REFAL modifications usable in a practical way, in particular for computer algebra applications. S.A. Romanenko and A.V. Klimov from the group of V.S. Shtarkman created high-effective compiler from REFAL [26].

V.F. Turchin and others developed the first REFAL program to solve some problems of nuclear physics in series. This program demonstrated some CA features. I.B. Tshenkov elaborated a general-purpose CA system named SANTRA and later modified it. Later I.B. Tshenkov and M.Yu. Shashkov made the special applied system, called DISPLAN, for processing non-standard difference schemes. M.L. Lidov and L.M. Bakuma were among the first REFAL users in the applied areas. They attempted to process Poisson series. H.C. Ibragimov and I.B. Tshenkov made attempts to apply REFAL in the group theory. Initially, the plan was to use REFAL as a “meta language”. However, people began using it in a wide scope of tasks similar to CA, where text processing was necessary. V.A. Fisun, A.I. Khoroshilov, and others developed computer languages based on REFAL, such as SIMULA-1 and DYNAMO. A.N. Andrianov and K.H. Efimkin automated the calculation of difference schemes in the NORMA system.

The KIAM united some of the enthusiasts of REFAL and they worked closely with it. V.L. Topunov with his colleagues from Moscow State Pedagogical Institute used REFAL-based CA system in differential geometry. Together with V.P. Shapeev and the other followers of N.N.Yanenko in Novosibirsk, they used the method of H. Cartane and investigated the characteristics of difference schemes. L.V. Provorov at the CAHI (Professor N.E.Zhukovsky Central Aero-Hydrodynamic Institute) and at the Bauman High Technology University, O.M. Gorodeskiy (Grodno) and A.V. Korlyukov created a CA system for numerous application areas in engineering. They could derive the equations of the motion of multi-body systems automatically. Use of REFAL allowed presenting the equations in convenient form near to human presentation. L.F. Belous and I.R. Akselrod (in Kharkov) used REFAL for the integration of several different programming systems and numerical packages into a united system; included in this system is the well known REDUCE package and the domestic computer algebra package called SIRIUS.

At the Keldysh Institute, some leading scientists investigated the possibilities of increasing computational efficiency. They did it by creating specialized blocks/computers, united in the complex system. This was the way to process effectively various tasks, numerical as well as symbolic; indeed, REFAL was appropriate for them [27]. A.N. Miamlin, I.B. Zadyhaylo, and V.K.Smirnov were the
leaders of the project [28]. L.K. Eisymont analyzed REFAL efficiency for both
software and hardware realization, and in particular from the CA application point of
view. V.K. Smirnov with his group simulated the REFAL processor EC-2702 on
the EC-2635 computer using microprogramming [29]. This processor was compatible
with EC-series of computers and they used it for CA problems as well as for
translators. K.I. Babenko, A.V. Zabrodin, and I.B. Zadyhaylo investigated the
possibility of designing a highly efficient parallel computer for applied
(aerodynamics) problems. Recently A.V. Zabrodin and others developers used this
early result to create the Russian MVS-100 and MVS-1000 supercomputers; the
MVS-1000 had an efficiency of about 10 power 12 operation per second [30]. The
programmers successfully used REFAL-oriented software design techniques for
creating supercomputer program environments.

4. A New Era

At the beginning of the 1980s, CA popularization and systems comparison became important, in particular for mechanical tasks that required computer experiment for their investigation and solution [8, 9, 17]. In 1982, scientists successively used CA for constructing difference schemes in the area of non-regularity. A.A. Samarsky, a leader in Soviet mathematical modeling, evaluated favorably the result of this work. With the aid of A.A. Samarsky, KIAM became one of the main organizers of the First National Conference on Computer Algebra Applications in Mechanics held in Gorky (now Nizhny Novgorod) in 1984 [7]. The participants of the Conference discussed the results of about twenty years of research, as well as plans and perspective directions of the subject. Later, a number of conferences and seminars on CA had taken place in Russia.

G.B. Efimov and M.V. Grosheva began to classify and to generalize the
experience of the common work of mathematicians, mechanical engineers, and
programmers. There were many reviews of CA systems and CA applications for
mechanical problems [6, 9, 14 and 17]. The reviews provided users with
tables of CA system features. They also provided a convenient tool for CA system
comparison and selection for potential users — experts in applied areas. Such
analysis was useful for CA developers as well. First, CA systems were usually
specialized and elaborated for concrete task solution. For example, in the area of
dynamics of multi-body systems they created many various CA systems, so the
classification and comparison of their features became important. Later, well-known
modern universal systems such as REDUCE and others appeared and people used
them for the realization of algorithms. Currently, computing specialists use CA as a
necessary standard tool in large complex programs, often without any special
mention. Information about CA systems in mechanics was accumulated during the
classification; this work has now become a valuable tool for applications and an
important contribution to the history of computing [17].

Finally, we would mention some results obtained recently. A.D. Bruno and his
group obtained new important results [31]. It concerned some algorithms of
normalization in Hamilton systems and investigation of Newton polyhedrons.
S.Yu. Sadov and V.P. Varin investigated the stability of motion for several
problems of celestial mechanics [32]. A.S. Kuleshov [33] generalized the classical work by Chaplygin. Using CA he found some new cases of integrity and the first integrals in explicit form. A.W. Niukkanen and I.B. Tshenkov developed a system of transformations for hypergeometrical series [34]. Some authors used CA to generate the equations of motion of multi-bodies systems, and to simulate the dynamics of these systems. In the situation when it was impossible to use CA directly, some people developed other similar methods. For example, D.Yu. Pogorelov [35], I.R. Belousov and I.Yu. Balaban [36] developed such methods to simulate multi-bodies systems with a great number of degrees of freedom, such as robots and transport systems.

## References

Almost all publications are in Russian, except noticed by “*”. At some numbers the references to Russian “Reference Journal on Mathematics and Mechanics” was done as – “РЖ MaT”, “РЖ Mex”.

[1] Calculus mathematics and computer facilities. All-Union seminar. - Inst. of Low Temperature Physics AS UkrSSR, 1972, N 3, 152 pp.

[2] Ershov A.P., Shura-Bura M.R. Development of programming in USSR. Part 1. Initial development. Part 2. Step to second generation of languages and computers. - Preprints № 12, 13 of Computer Center of Siberian Branch AS URSS. Also: Cybernetika. 1976, N 6, 141-160.

[3] Computer analytical calculations and their application in theoretical Physics. Materials of International conference. Dubna. 1979. - Dubna: JINR, 1980, 187 pp. 1983, 260 pp. 1985, 420 pp.

[4] Gerdt V.P., Tarasov O.V., Shirkov D.V. - Analytical Calculations on ECM applied to Physics and Mathematics. Uspehi Phys. Nauk. 1980, v. 30, N 1, 113-147.

[5] *. Miola A.M., Pottosin I.V. - A bibliography of soviet works in algebraic manipulations. - SIGSAM Bull., 1981, v. 15, N 1, 5-7.

[6] Grosheva M. V., Efimov G.B., Brumberg V.A. and all. Computer analytical calculation systems (Applied Analytical Packages). Papers Seminar in Mechanics Institute of MSU, 1981. - Informator. Keldysh Institute of Applied Mathematics AS USSR, 1983, N 1, 65 pp.

[7] Systems for Analytical Manipulation in Mechanics. All-Union Conference. Gorky, 1984. - Abstracts, Gorky: GSU, 1984, 147 pp.

[8] Applied Program Packages. Analytical manipulations. - M., Nauka, 1988. 156 pp.

[9] Grosheva M.V., Efimov G.B. Computer analytical calculation systems. - In: Applied programs packages. Analytical manipulations. M., Nauka, 1988, 5-30.

[10] *. Brumberg V.A., Tarasevich S.V., Vasiliev N.N. Specialized Celestial Mechanics systems for Symbolic Manipulations. - Celestial Mech. 1988/89, v. 45, N 1-3, 145-162.

[11] Klimov D.M., Rudenko V.M. Computer Algebra Methods in Mechanical problems. - M., Nauka, 1989. 215 pp.

[12] *. Computer Algebra in Physical Research. Int. Conf. Computer Algebra Phys. Res. Dubna, USSR, 1990. Memorial Volume for N.N. Govorun. - World Scientific, 1991, 453 pp. Abstracts, Dubna. 1990. - Dubna: JINR, 90.

[13] Abramov S.A., Zima E.B., Rostovzev V.A. Computer Algebra. - Programirovanie. 1992, N 5, 4-25.

[14] *. The History of Computer Algebra Applications. Session. 4-the International IMACS
conference on Applications of Computer Algebra. - IMACS ACA'98, Prague, Aug. 9-11, 1998. - M., 1998, 35 pp.

[15] Grosheva M.V., Efimov G.B., Samsonov V.A. Symbolic Manipulations in Control Theory. - Izvestiya Akademii Nauk. The Control Theory & Systems, 1998, N 3, 80-91.

[16] Efimov G.B., Zueva E.Yu., Tshenkov I.B. Computer Algebra at Keldysh Institute of Applied Mathematics. - Mathematical Simulation. 2001, v.13, N 6, 11-18.

[17] Grosheva M. V., Efimov G.B., Samsonov V.A. A History of Computer Symbolic Manipulation and its Applications in Mechanics. - Keldysh Institute of Applied Mathematics of RAS. M., 2005, 87 pp.

[18] Dorodnitcin A.A. Solution of mathematical and logical tasks on computer. - All-Union Confer. Moscow, 12-17 march 1956. Plenary reports. - VINITI. M., 1956.

[19] Okhotsimsky D.E. Research of motion in central field of forces under the influence of constant tangent acceleration. - Cosmic Research. 1964, v. 2, N 6, 817-842. - РЖМex, 1965, 11A29

[20] Kantorovich L.V. On a mathematical symbolic system convenient for computer's calculations. Doklady AS USSR, 1957, v. 113, N 4, 738-739; Kantorovich L.V., Petrova L.T. 3th All-Union Mathemat. Congress. 1956. Rep. V.2, M., 151; Smirnova T.N. Trans. Steklov Mathematical Institute. - M.-L., 1962; Pervozvanskaya T.N. - Ibid.; Smirnova T.N. Polynomial PRORAB. - L., Nauka. 1967.

[21] Stogny A.A. Solution on DCM of one task concerning differentiation of functions. - In: Problems of Cybernetic. M., Nauka, 1962, N 7, 189-200.

[22] Shurygin V.A., Yanenko N.N. On a realization of algebraic differential algorithms on ECM. - In.: Problems of Cybernetic. M., Nauka, 1961 N 6, 33-43. - РЖMaT, 1962, 7B332.

[23] Brumberg V.A. Polynomial Series in Three Bodies Problem. Bull. ITA AS USSR, 1963, v.9, N 4, 234-256; Brumberg V.A. Presentation of Planet's coordinates by trigonometric series. Reports of Institute Theoretical Astronomy (ITA AS USSR). L., 1966, N 11, 3-88; Polozova N.G., Shor V.A. In.: Problems of motion of artificial Spacecrafts of Celestial bodies. - M., 1963.

[24] Kabulov V.K. On deduce of differential equations of elasticity and construction mechanics. Doklady AS UzbekSSR, Tashkent, 1963, N 9; Tolok V.A. In.: Problems of computer Math. & Techn. Tashkent, 1964, N 3; Kabulov V.K. Algorithmization in elasticity and deformational plasticity theory. - "Fan" AS UsbekSSR, Tashkent, 1966.

[25] Turchin V.F. Metaalgortmic Language. - Cybernetika. 1968, N 4, 45-54. РЖMaT, 1971, 2B86. Turchin V.F., Serdobolsky V.I. The REFAL and its application for transformations of algebraic expressions. - Cybernetika. 1969, N3, 58-62. Turchin V.F. Programming on REFAL. - KIAM Preprint N 41, 43, 44, 48, 49. 1971. РЖMaT, 1972, 1B993-996.

[26] \*. Turchin V.F. Refal-5, Programming Guide and Reference Manual. - New England Publishing Co, Holyoke, 1989; http://refal.ru.

[27] Zadyhaylo I.B., Kamynin S.S., Lyubimsky E.Z. Some problems of Computer design from blocks of high qualification. - KIAM Preprint. M., 1971.

[28] \*. Myamlin A.N., Smirnov V.K., Golovkov S.L. A Specialized Symbol Processor. - Fifth Generation Architecture. Ed. By J.V. Woods. New-Holland. 1980.

[29] Smirnov V.K. Hardware REFAL realization at KIAM. - KIAM Preprint N 99. M., 2003.

[30] Zabrodin A.V. Super-Computers MVS-100, MVS-1000 and its applications to problems of physics and mechanics problems. - Mathematical Simulation. 2000, v. 12, N 5, 61-66.

[31] \*. Bruno A.D., Edneral V.F., Stanly Steinberg. Foreword. - Mathematics and Computers in Simulation. 1998, v. 45, 409-411. \* Bruno A.D. Normal Forms. - Mathematics and Computers in Simulation. 1998, v. 45, 413-427. Soleev A., Aranson A.B. - KIAM Preprint N 36, 1994.

[32] \*. Bruno A.D., Varin V.P. The limit problems for equation of oscillations of a satellite. - Celestial Mechan. and Dynam. Astron., 1997, v. 67. 1-40. - KIAM Preprint N 124, 128
1995. Sadov S.Yu. - KIAM Preprint N 37. 1998.

[33] Kuleshov A.S. On the first integrals of Equation of motion of a Heavy Rotational Symmetric Body on a Perfectly Rough Plane. - KIAM Preprint N 68, 2002.

[34] * Niukkanen A.W., Shchenkov I.B. Operator factorization technique of formula derivation in the theory of simple and multiple hyper-geometric functions of one and several variables. - KIAM Preprint N 81, 2003. A project of a globally universal interactive program of formula derivation based on operator factorization method. - KIAM Preprint N 82, 2003.

[35] * Pogorelov D.Yu. Some developments in computational techniques in modeling advanced mechanical systems. - Sympos. on Interaction betw. Dyn. & Control in Adv. Mechan. Systems. Kluger Acad. Publ. Dordrecht. 1997, 313-320. Pogorelov D.Yu. Differential-algebraic equations in multi-body system modeling. - Numerical Algorithms. V. 19, 1988, 183-194.

[36] Belousov I.R. Calculation of the Robot Manipulator Dynamic Equation. - KIAM Preprint N 45, 2002. Balaban I.Yu., Borovin G.K., Sazonov V.V. The language for programming right-hand sides of mechanical system motion equations. - KIAM Preprint N 62, 1998.