# Singular

 Page 1 of 1 [ 5 posts ]
 Print view | E-mail friend Previous topic | Next topic
Author Message
 Post subject: Feature request: Bigint vectors for Hilbert seriesPosted: Sun Sep 02, 2018 2:12 pm

Joined: Fri Oct 01, 2010 11:31 pm
Posts: 10
Hi!

Since the following was buried in a different larger topic, I create a new small one.

There is int and there is intvec. There is bigint, but there is no bigintvec.

- Would you consider to implement vectors of big integers in Singular?
- And would you consider to use bigint vectors or another suitable data type as return value for the hilb function? In my applications, I have rings with many variables (>70), which currently makes hilb(id,1) fail with an int overflow.

Best regards,
Simon

Top

 Post subject: Re: Feature request: Bigint vectors for Hilbert seriesPosted: Mon Sep 03, 2018 2:00 pm

Joined: Wed May 25, 2005 4:16 pm
Posts: 215
vectors of bintint are already there:
Code:
bigintmat m[1][3]=1,2,3;

Using bigintmat as return type of hilb does not help;
the overflow occurs during the computation of the Hilbert function,
changing that requires a complete rewrite of the code,
if you volonteer for that you are welcome.

Changing int to long on 64bit machines is a bad idea:
- it does not help the overflow problem (see above)
- 32bit and 64bit version should behave the same way

Top

 Post subject: Re: Feature request: Bigint vectors for Hilbert seriesPosted: Tue Sep 04, 2018 10:49 am

Joined: Fri Oct 01, 2010 11:31 pm
Posts: 10
Hi Hannes,

hannes wrote:
vectors of bintint are already there:
Code:
bigintmat m[1][3]=1,2,3;

I see. The syntax is different than for a vector, so, it isn't truly a vector of bigints, but at least it would be a work around.

Quote:
Using bigintmat as return type of hilb does not help;
the overflow occurs during the computation of the Hilbert function,

Sure.
Quote:
changing that requires a complete rewrite of the code,
if you volonteer for that you are welcome.

Seriously? Of course I don't know the code yet, but I'd be very surprised if the changes go beyond changing data types (internally of course, not just the return type) by search-and-replace.

Quote:
Changing int to long on 64bit machines is a bad idea:
- it does not help the overflow problem (see above)
- 32bit and 64bit version should behave the same way

If I understand correctly, 32bit machines became rare, and so there is some point in arguing that using the capabilities of a 64bit machine should be standard. And even 32bit machines can emulate 64bit ints. It would of course be slower than on a 64bit machine, but it would be the lesser of two evils, IMHO.

I believe that a CAS shouldn't impose an artificial restriction that is motivated by outdated hardware and makes it fail in real-world-applications (by which I mean rings that arise in the study of modular group cohomology). I do no volunteer to change Singular so that "int" means "64bit integers" and "bigint" means "arbitrary size integers", but I think sooner or later it would be needed.

Best regards,
Simon

Top

 Post subject: Re: Feature request: Bigint vectors for Hilbert seriesPosted: Thu Sep 06, 2018 9:38 am

Joined: Fri Oct 01, 2010 11:31 pm
Posts: 10
Dima Pasechnik's account is currently inactive. Therefore he asked me to link this thread to the corresponding github issue: https://github.com/Singular/Sources/issues/881.

Top

 Post subject: Feature request Bigint vectors for Hilbert seriesPosted: Mon Dec 03, 2018 10:20 pm
for what its worth I built this and have it working for me.

Top

 Display posts from previous: All posts1 day7 days2 weeks1 month3 months6 months1 year Sort by AuthorPost timeSubject AscendingDescending
 Page 1 of 1 [ 5 posts ]

 You can post new topics in this forumYou can reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot post attachments in this forum

 It is currently Thu Feb 21, 2019 3:54 pm