Thomas Baruchel wrote:
>
> I think the package is ready now;
>
> https://github.com/baruchel/numerical-routines/tree/master/spad
>
> The PSLQ (which was once selected as one of the "Top Ten Algorithms of the
> Century) (see: https://en.wikipedia.org/wiki/Integer_relation_algorithm )
> is an algorithm useful for detecting integer relations between numerical
> values. Thus it is a very useful algorithm for "experimental mathematics".
Some comments:
- we do not have PSLQ, so will be happy to include your routine
- I have unfinished version of LLL routine which can be
used for similar purpose, I will try to cross-check
PSLQ and LLL
- concerning style:
- in Spad 0 and 1 give you floating point zero or one in
context we floating point number is expected. Usually
in FriCAS this is used instead of version with dot
- IMO Vector and Matrix are more natural here than
OneDimensionalArray and TwoDimensionalArray
- for one dimensioninal arrray/vector indexing on
can use both 'v.i' and 'v(i)'. I personally find
the second form more readible (I prefer to use dot
only for record fields).
- instead of '(n-1) pretend PositiveInteger' please use
'(n-1)::PositiveInteger' or 'qcoerce(n-1)@PositiveInteger'
The first form perform runtime checking, so is slower but
safe. The second one generates the same code as 'pretend'
but still give some compile time checking (only check for
positive value is skipped).
- in FriCAS Float has unlimited exponent range and settable
accuracy so 1.0E-308 looks very suspicious.
- IIRC in PSLQ one of arrays is purely integer, it would be
much better to make so in the code
--
Waldek Hebisch
--
You received this message because you are subscribed to the Google Groups
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.