[mdk-re] Re: [mdk-re] использование gsl и gmp

Michael Shigorin =?iso-8859-1?q?mike_=CE=C1_lic145=2Ekiev=2Eua?=
Вт Сен 18 12:34:18 MSD 2001


On Tue, Sep 18, 2001 at 06:36:02AM +0400, Pavel Marakhovsky wrote:
> > > MS> gmp использовали 2.0.2 и 3.0.1 и чрезвычайно довольны. Чрезвычайно.
> > > gsl знаю, а gmp незнаю. Почему?
> > Мне по науке нужно было здоровенные цифири без потери точности ворочать --
> > см. http://home.chem.univ.kiev.ua/~mike/works/BSc.ps.gz -- а оно это умеет
> > и _отменно_. Вплоть до asm на надцати архитектурах и CPU.
> Интересно:) А что за библиотечка saml? Где ее найти можно? а то freshmeat нет.
LSM в аттаче. А в доке -- 
   The Simple Algebraic Math Library (SAML) is a low-level library to 
   handle the classic objects of symbolic calculus: arbitrary big     
   integers, reals of arbitrary precision, rationals, polynomials,
   tensors, et cetera. This document describes the internals of the
   library and other implementation details.

Оно умеет, например, так (за что и пользовали):
    v1 = mref_new(); v2 = mref_new();       
    mref_build(v2, ST_INTEGER, "0");
    mref_cast(v2, ST_APOLY);        
    /* Now v2 contains the null polynomial */
//                              ^^^^^^^^^^
    saml_init_lexer_mem("3*xy+1", 6);        
    saml_parse(v1, v2);
    /* Now v1 contains 3*xy+1, v2 is unchanged */
    saml_init_lexer_mem("x-y", 3);
    saml_parse(v2, v2);           

Только я обленился писать на сях вокруг, взял имеющийся в комплекте
интерпретатор и ваял на нем.

Насколько я понимаю, проект все [saml-970418] :(

И смутно припоминаю, что нашел что-то ну никак не хуже, но использующее
libgmp (SAML -- нет).

А, кстати -- имеет смысл обратить внимание на yacas:

Name        : yacas                        Relocations: (not relocateable)
Version     : 1.0.45                            Vendor: (none)
Release     : 1                             Build Date: Mon Apr 23 17:00:10 2001
Install date: Mon Apr 23 18:33:16 2001      Build Host: work.fair.net
Group       : Applications/Math             Source RPM: yacas-1.0.45-1.src.rpm
Size        : 1161000                          License: LGPL
URL         : http://www.xs4all.nl/~apinkus/yacas.html
Summary     : Yet Another Computer Algebra System
Description :
Yacas (Yet Another Computer Algebra System) is a small and highly flexible
computer algebra language. The syntax uses a infix-operator grammar
parser. The distribution contains a small library of mathematical
functions, but its real strength is in the language in which you can
easily write your own symbolic manipulation algorithms. It supports
arbitrary precision arithmetic.

-- 
WBR, Michael Shigorin, webmaster of www.chem.univ.kiev.ua
>Home Page:  http://visa.chem.univ.kiev.ua/~mike/  ICQ: 113344029
>Brainbench: http://www.brainbench.com/transcript.jsp?pid=2434729
----------- следующая часть -----------
Begin3
Title:		SAML, the Simple Algebraic Math Library
Version:	970418
Entered-date:	18APR97
Description:	SAML is a C library for symbolic calculations, accompanied
		by some application programs (samuel, factorint, induce),
		and Python bindings.
		The library provides an object-oriented framework for
		defining and handling mathematical types, and implements
		the most common data types of computer algebra: integers,
		reals, fractions, complex numbers, polynomials, tensors,
		matrices, etc.
		The application programs consist of an interactive symbolic
		calculator (samuel), a programming language (induce) and
		a program to factorize integers (factorint).
Keywords:	Computer algebra, C, Python, library, symbolic calculus,
		multiple-precision arithmetic, quadratic sieve
Author:		bousch на topo.math.u-psud.fr (Thierry Bousch)
Maintained-by:	bousch на topo.math.u-psud.fr (Thierry Bousch)
Primary-site:	topo.math.u-psud.fr /pub/bousch
		243kB saml-970418.tgz
Platforms:	Requires a decent Un*x system, gcc 2.5.0 or later, gdbm,
		perl, gmake, and TeXinfo for the documentation.
		It is strongly recommended to have Python and the
		readline library installed.
Copying-policy:	GPL
End


Подробная информация о списке рассылки community