Re: [sage-support] identity_matrix(103).det() fails?

2010-12-28 Thread Volker Braun
The fact that this dies somewhere deep in the atlas internals probably means 
that your CPU doesn't support one of the SSE instructions that atlas was 
compiled with. I'd bet that if you compile Sage from sources on your machine 
then it'll work.

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] cant explain this behavior - simple aritmethics / extended euclidean algorithm

2010-12-28 Thread Johannes
Ok, from this point of view see the point. But I dont know if it's
documented this way somewhere.

greatz
Am 28.12.2010 23:00, schrieb Iwao Kimura:
> Hi Johannes,
> 
> I'm not sure but if we think gcd(2, 0) is the generator of the ideal
> generated by 2 and 0 in the rationals, we see gcd(2,0) is 1 because
> the ideal is not zero (and QQ is a field :)
> 
> Best regards.
> 
> On Wed, Dec 29, 2010 at 6:33 AM, Johannes  wrote:
>> I got it solved. It's a type error:
>> the matrix sing is a matrix over QQ.
>> If its a matrix over ZZ it works fine.
>>
>> but why is gcd(2,0) = 1 for 2,0 as Rationals?
>> in my eyes its not well defined or should be the maximum of those values.
>>
>> greatz
>>
>> Am 28.12.2010 22:08, schrieb Johannes:
>>> Hi list,
>>> I've a very confusing problem with some simple algorithm:
>>>
>>> following setting: a matrix sing:
>>> sage: sing
>>> [ 3  0  1]
>>> [-2 -1 -2]
>>> [ 0  1  0]
>>> sage: l = sings.column(2);l
>>> (1, -2, 0)
>>> #my algorithem, code see below:
>>> sage: extgcd(l)
>>> #some printoutput for debugging:
>>> l: (1, -2, 0)
>>> tlist:  (-2, 0)
>>> #this should not be, d = gcd(tlist)
>>> d: 1
>>> l: [1, 1]
>>> [u, v]: [0, 1]
>>> l: (-2, 0)
>>> [u, v]: [1, 0]
>>> res: [0, 1, 0]
>>> #the result:
>>> [0, 1, 0]
>>> #now the same but i construct the vector on my own:
>>> sage: l = vector([1,-2,0]);l
>>> (1, -2, 0)
>>> sage: extgcd(l)
>>> l: (1, -2, 0)
>>> tlist:  (-2, 0)
>>> #here it works fine
>>> d: 2
>>> l: [1, 2]
>>> [u, v]: [1, 0]
>>> l: (-2, 0)
>>> [u, v]: [1, 0]
>>> res: [1, 0, 0]
>>> #getting the expected result:
>>> [1, 0, 0]
>>>
>>> the code of my algorithm:
>>>
>>> def extgcd(l):
>>> print "l: " + str(l)
>>> assert len(l) > 1
>>>
>>> if len(l) == 2:
>>> #calculated ext euclidean for two values
>>> a = l[0]
>>> b = l[1]
>>>
>>> u=t=1
>>> v=s=0
>>> while b>0:
>>> q=a//b
>>> a, b = b, a-q*b
>>> u, s = s, u-q*s
>>> v, t = t, v-q*t
>>> print "[u, v]: " + str([u, v])
>>> return [u, v]
>>> else:
>>>
>>>   #this is the part where it does not work!
>>> tlist = l[1:]
>>> print "tlist:  " + str(tlist)
>>> d =  gcd(tlist)
>>> print "d: " + str(gcd(tlist))
>>>
>>> #calculate part decomp
>>> u, v = extgcd([l[0],d])
>>> #calculate rest
>>> ttlist = extgcd(tlist)
>>> res =  [u]
>>> #combine results
>>> res.extend([v * item for item in ttlist])
>>> print "res: " + str(res)
>>> return res
>>>
>>> I hope somebody can help me.
>>> greatz Johannes
>>>
>>
>> --
>> To post to this group, send email to sage-support@googlegroups.com
>> To unsubscribe from this group, send email to 
>> sage-support+unsubscr...@googlegroups.com
>> For more options, visit this group at 
>> http://groups.google.com/group/sage-support
>> URL: http://www.sagemath.org
>>
> 
> 
> 

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] cant explain this behavior - simple aritmethics / extended euclidean algorithm

2010-12-28 Thread Iwao Kimura
Hi Johannes,

I'm not sure but if we think gcd(2, 0) is the generator of the ideal
generated by 2 and 0 in the rationals, we see gcd(2,0) is 1 because
the ideal is not zero (and QQ is a field :)

Best regards.

On Wed, Dec 29, 2010 at 6:33 AM, Johannes  wrote:
> I got it solved. It's a type error:
> the matrix sing is a matrix over QQ.
> If its a matrix over ZZ it works fine.
>
> but why is gcd(2,0) = 1 for 2,0 as Rationals?
> in my eyes its not well defined or should be the maximum of those values.
>
> greatz
>
> Am 28.12.2010 22:08, schrieb Johannes:
>> Hi list,
>> I've a very confusing problem with some simple algorithm:
>>
>> following setting: a matrix sing:
>> sage: sing
>> [ 3  0  1]
>> [-2 -1 -2]
>> [ 0  1  0]
>> sage: l = sings.column(2);l
>> (1, -2, 0)
>> #my algorithem, code see below:
>> sage: extgcd(l)
>> #some printoutput for debugging:
>> l: (1, -2, 0)
>> tlist:  (-2, 0)
>> #this should not be, d = gcd(tlist)
>> d: 1
>> l: [1, 1]
>> [u, v]: [0, 1]
>> l: (-2, 0)
>> [u, v]: [1, 0]
>> res: [0, 1, 0]
>> #the result:
>> [0, 1, 0]
>> #now the same but i construct the vector on my own:
>> sage: l = vector([1,-2,0]);l
>> (1, -2, 0)
>> sage: extgcd(l)
>> l: (1, -2, 0)
>> tlist:  (-2, 0)
>> #here it works fine
>> d: 2
>> l: [1, 2]
>> [u, v]: [1, 0]
>> l: (-2, 0)
>> [u, v]: [1, 0]
>> res: [1, 0, 0]
>> #getting the expected result:
>> [1, 0, 0]
>>
>> the code of my algorithm:
>>
>> def extgcd(l):
>>     print "l: " + str(l)
>>     assert len(l) > 1
>>
>>     if len(l) == 2:
>>         #calculated ext euclidean for two values
>>         a = l[0]
>>         b = l[1]
>>
>>         u=t=1
>>         v=s=0
>>         while b>0:
>>             q=a//b
>>             a, b = b, a-q*b
>>             u, s = s, u-q*s
>>             v, t = t, v-q*t
>>         print "[u, v]: " + str([u, v])
>>         return [u, v]
>>     else:
>>
>>       #this is the part where it does not work!
>>         tlist = l[1:]
>>         print "tlist:  " + str(tlist)
>>         d =  gcd(tlist)
>>         print "d: " + str(gcd(tlist))
>>
>>         #calculate part decomp
>>         u, v = extgcd([l[0],d])
>>         #calculate rest
>>         ttlist = extgcd(tlist)
>>         res =  [u]
>>         #combine results
>>         res.extend([v * item for item in ttlist])
>>         print "res: " + str(res)
>>         return res
>>
>> I hope somebody can help me.
>> greatz Johannes
>>
>
> --
> To post to this group, send email to sage-support@googlegroups.com
> To unsubscribe from this group, send email to 
> sage-support+unsubscr...@googlegroups.com
> For more options, visit this group at 
> http://groups.google.com/group/sage-support
> URL: http://www.sagemath.org
>



-- 
---
Iwao KIMURA
Dept. Math., University of Toyama, Japan.

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] identity_matrix(103).det() fails?

2010-12-28 Thread Iwao Kimura
Hi Volker,

Thank you for your message. I followed your suggestion and run Sage with
gdb. I agree with you that linbox and blas (ATLAS) are suspected.

Best regards

--
| Sage Version 4.6, Release Date: 2010-10-30 |
| Type notebook() for the GUI, and license() for information.|
--
/home/iwao/sage-4.6-linux-64bit-ubuntu_10.04.1_lts-x86_64-Linux/local/bin/sage-ipython
GNU gdb (GDB) 7.1-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
...
Reading symbols from
/home/iwao/sage-4.6-linux-64bit-ubuntu_10.04.1_lts-x86_64-Linux/local/bin/python...done.
[Thread debugging using libthread_db enabled]
Python 2.6.4 (r264, Oct 31 2010, 17:42:01)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
sage: identity_matrix(103).det()

Program received signal SIGSEGV, Segmentation fault.
0x7fffec9f818d in ATL_dJIK40x40x40TN40x40x0_a1_b1 ()
   from 
/home/iwao/sage-4.6-linux-64bit-ubuntu_10.04.1_lts-x86_64-Linux/local/lib/libatlas.so
(gdb) bt
#0  0x7fffec9f818d in ATL_dJIK40x40x40TN40x40x0_a1_b1 ()
   from 
/home/iwao/sage-4.6-linux-64bit-ubuntu_10.04.1_lts-x86_64-Linux/local/lib/libatlas.so
#1  0x7fffecada34a in ATL_dmmJIK2 ()
   from 
/home/iwao/sage-4.6-linux-64bit-ubuntu_10.04.1_lts-x86_64-Linux/local/lib/libatlas.so
#2  0x7fffecadadea in ATL_dmmJIK ()
   from 
/home/iwao/sage-4.6-linux-64bit-ubuntu_10.04.1_lts-x86_64-Linux/local/lib/libatlas.so
#3  0x7fffecad2366 in ATL_dgemm ()
   from 
/home/iwao/sage-4.6-linux-64bit-ubuntu_10.04.1_lts-x86_64-Linux/local/lib/libatlas.so
#4  0x7fffd8467d76 in ClassicMatmul > (
F=..., ta=, tb=,
m=, n=52, k=, alpha=46336,
A=0x4404888, lda=103, B=0x43fa5f8, ldb=103, beta=,
C=0x4404a20, ldc=103, kmax=51, base=LinBox::FFLAS::FflasDouble)
at ../../linbox/fflas/fflas_fgemm.inl:244
#5  LinBox::FFLAS::ClassicMatmul > (F=...,
ta=, tb=,
m=, n=52, k=, alpha=46336,
A=0x4404888, lda=103, B=0x43fa5f8, ldb=103, beta=,
C=0x4404a20, ldc=103, kmax=51, base=LinBox::FFLAS::FflasDouble)
at ../../linbox/fflas/fflas_fgemm.inl:422
---Type  to continue, or q  to quit---
#6  0x7fffd84aec64 in LinBox::FFLAS::WinoMain > (
F=..., ta=40, tb=, m=52, n=52, k=51, alpha=46336,
A=0x4404888, lda=103, B=0x43fa5f8, ldb=103, beta=1, C=0x4404a20, ldc=103,
kmax=51, w=0, base=LinBox::FFLAS::FflasDouble)
at ../../linbox/fflas/fflas_fgemm.inl:1276
#7  0x7fffd84b1ecd in LinBox::FFLAS::fgemm > (
F=..., ta=, tb=, m=52, n=51,
k=51, alpha=1, A=0x4404888, lda=103, B=0x43fa5f8, ldb=103, beta=1,
C=0x4404a20, ldc=103) at ../../linbox/fflas/fflas.h:294
#8  0x7fffd842fce8 in LUdivine > (F=...,
Diag=, trans=,
M=, N=,
A=, lda=103, P=0x43c5020, Q=0x43c5360,
LuTag=LinBox::FFPACK::FfpackLQUP, cutoff=)
at ../../linbox/ffpack/ffpack_ludivine.inl:511
#9  0x7fffd8430428 in Rank > (
modulus=, matrix=, nrows=103,
ncols=103) at ../../linbox/ffpack/ffpack.h:84
#10 linbox_modn_dense_rank (modulus=,
matrix=, nrows=103, ncols=103) at linbox-sage.C:119
#11 0x7fffd8754fd9 in
__pyx_f_4sage_4libs_6linbox_6linbox_17Linbox_modn_dense_rank
(__pyx_v_self=)
at sage/libs/linbox/linbox.cpp:2569
#12 0x7fffda6547ba in
__pyx_pf_4sage_6matrix_17matrix_modn_dense_17Matrix_m---Type 
to continue, or q  to quit---
odn_dense_rank (__pyx_v_self=,
unused=) at sage/matrix/matrix_modn_dense.c:11420
#13 0x77a6a163 in PyObject_Call (func=0x4174248, arg=0x28, kw=0x28)
at Objects/abstract.c:2492
#14 0x7fffd9f8ce87 in
__pyx_pf_4sage_6matrix_20matrix_integer_dense_20Matrix_integer_dense__rank_modp
(__pyx_v_self=,
__pyx_args=, __pyx_kwds=)
at sage/matrix/matrix_integer_dense.c:24877
#15 0x77a6a163 in PyObject_Call (func=0x4174200, arg=0x28, kw=0x28)
at Objects/abstract.c:2492
#16 0x7fffd9fa2365 in
__pyx_pf_4sage_6matrix_20matrix_integer_dense_20Matrix_integer_dense_rank
(__pyx_v_self=0x3d70290, unused=)
at sage/matrix/matrix_integer_dense.c:24590
#17 0x77b0e2ed in call_function (f=0x43bf090,
throwflag=) at Python/ceval.c:3690
#18 PyEval_EvalFrameEx (f=0x43bf090, throwflag=)
at Python/ceval.c:2389
#19 0x77b1026d in PyEval_EvalCodeEx (co=0x419d918,
globals=, locals=, args=0x2,
argcount=, kws=0x414f3d8, kwcount=2, defs=0x414f3c8,
defcount=2, closure=0x0) at Python/ceval.c:2968
#20 0x77a967cb in function_call (func=0x7652bd70,
arg=0x77f5f6d0, kw=0xb93c80

Re: [sage-support] cant explain this behavior - simple aritmethics / extended euclidean algorithm

2010-12-28 Thread Johannes
I got it solved. It's a type error:
the matrix sing is a matrix over QQ.
If its a matrix over ZZ it works fine.

but why is gcd(2,0) = 1 for 2,0 as Rationals?
in my eyes its not well defined or should be the maximum of those values.

greatz

Am 28.12.2010 22:08, schrieb Johannes:
> Hi list,
> I've a very confusing problem with some simple algorithm:
> 
> following setting: a matrix sing:
> sage: sing
> [ 3  0  1]
> [-2 -1 -2]
> [ 0  1  0]
> sage: l = sings.column(2);l
> (1, -2, 0)
> #my algorithem, code see below:
> sage: extgcd(l)
> #some printoutput for debugging:
> l: (1, -2, 0)
> tlist:  (-2, 0)
> #this should not be, d = gcd(tlist)
> d: 1
> l: [1, 1]
> [u, v]: [0, 1]
> l: (-2, 0)
> [u, v]: [1, 0]
> res: [0, 1, 0]
> #the result:
> [0, 1, 0]
> #now the same but i construct the vector on my own:
> sage: l = vector([1,-2,0]);l
> (1, -2, 0)
> sage: extgcd(l)
> l: (1, -2, 0)
> tlist:  (-2, 0)
> #here it works fine
> d: 2
> l: [1, 2]
> [u, v]: [1, 0]
> l: (-2, 0)
> [u, v]: [1, 0]
> res: [1, 0, 0]
> #getting the expected result:
> [1, 0, 0]
> 
> the code of my algorithm:
> 
> def extgcd(l):
> print "l: " + str(l)
> assert len(l) > 1
> 
> if len(l) == 2:
> #calculated ext euclidean for two values
> a = l[0]
> b = l[1]
> 
> u=t=1
> v=s=0
> while b>0:
> q=a//b
> a, b = b, a-q*b
> u, s = s, u-q*s
> v, t = t, v-q*t
> print "[u, v]: " + str([u, v])
> return [u, v]
> else:
> 
>   #this is the part where it does not work!
> tlist = l[1:]
> print "tlist:  " + str(tlist)
> d =  gcd(tlist)
> print "d: " + str(gcd(tlist))
> 
> #calculate part decomp
> u, v = extgcd([l[0],d])
> #calculate rest
> ttlist = extgcd(tlist)
> res =  [u]
> #combine results
> res.extend([v * item for item in ttlist])
> print "res: " + str(res)
> return res
> 
> I hope somebody can help me.
> greatz Johannes
> 

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] cant explain this behavior - simple aritmethics / extended euclidean algorithm

2010-12-28 Thread Johannes
Hi list,
I've a very confusing problem with some simple algorithm:

following setting: a matrix sing:
sage: sing
[ 3  0  1]
[-2 -1 -2]
[ 0  1  0]
sage: l = sings.column(2);l
(1, -2, 0)
#my algorithem, code see below:
sage: extgcd(l)
#some printoutput for debugging:
l: (1, -2, 0)
tlist:  (-2, 0)
#this should not be, d = gcd(tlist)
d: 1
l: [1, 1]
[u, v]: [0, 1]
l: (-2, 0)
[u, v]: [1, 0]
res: [0, 1, 0]
#the result:
[0, 1, 0]
#now the same but i construct the vector on my own:
sage: l = vector([1,-2,0]);l
(1, -2, 0)
sage: extgcd(l)
l: (1, -2, 0)
tlist:  (-2, 0)
#here it works fine
d: 2
l: [1, 2]
[u, v]: [1, 0]
l: (-2, 0)
[u, v]: [1, 0]
res: [1, 0, 0]
#getting the expected result:
[1, 0, 0]

the code of my algorithm:

def extgcd(l):
print "l: " + str(l)
assert len(l) > 1

if len(l) == 2:
#calculated ext euclidean for two values
a = l[0]
b = l[1]

u=t=1
v=s=0
while b>0:
q=a//b
a, b = b, a-q*b
u, s = s, u-q*s
v, t = t, v-q*t
print "[u, v]: " + str([u, v])
return [u, v]
else:

#this is the part where it does not work!
tlist = l[1:]
print "tlist:  " + str(tlist)
d =  gcd(tlist)
print "d: " + str(gcd(tlist))

#calculate part decomp
u, v = extgcd([l[0],d])
#calculate rest
ttlist = extgcd(tlist)
res =  [u]
#combine results
res.extend([v * item for item in ttlist])
print "res: " + str(res)
return res

I hope somebody can help me.
greatz Johannes

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] Re: Differential forms

2010-12-28 Thread jvkersch
Hi Dox,

I'll try to come up with something in the next month or so.  Also, a
good way to help out with the development is to review the patch when
it comes out.  All Sage code has to go through a review process before
it comes out, so this is a pretty important part of development.  You
can just play around with the code or if you feel confident you can go
all the way and do the full review (see
http://www.sagemath.org/doc/developer/trac.html#section-review-patches)

In any case, I'll copy you on any trac tickets that I open.

All the best,
Joris



On 27 dec, 10:30, Dox  wrote:
> Hi Joris,
>
> I must say ain't a programmer, and my `free' time is not much.
> However, I'd like to help you implementing the code for improving the
> diff. forms manipulation.
>
> Feel free of contact me. Regards,
>
> Dox.
>
> On Dec 27, 4:51 am, jvkersch  wrote:
>
> > Hi Dox,
>
> > Both are very high on my list of priorities, but I haven't gotten
> > round to implementing them.  If you give me a month or so, I might get
> > round to it, or you can try your hand yourself at implementing
> > this :)
>
> > Let me know if I can be of any assistance.
>
> > Best wishes,
> > Joris
>
> > On Dec 25, 12:44 pm, Dox  wrote:
>
> > > Hi there guys! Merry Christmas for all of you who celebrate x-mas.
>
> > > I've noticed recently that Sage4.6 manage to compute differential
> > > forms.
>
> > > Is it possible to:
> > > a) give a metric for the manifold where diff. forms are defined?
> > > b) calculate the Hodge dual of a given form?
>
> > > Thank you all. Best wishes!
>
> > > Dox

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] Unimodular Matrix Transformation

2010-12-28 Thread Santanu Sarkar
I have a matrix  M=(A : B), where A is a (36, 24) matrix and B (36, 9) is a
matrix.  I want reduce B by LLL algorithm. And also
want to change A (elementary row operation) according to the changes of B.
As an example during LLL if 10th row and 12th row
of B are interchanged, we also have to interchange 10th row and 12th row
of A. I want to see only the final transformed matrix of M say M1=(A1 : B1).
How can we do this efficiently?

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] Re: Hermite Normal Form

2010-12-28 Thread Santanu Sarkar
Thank you very much.

On 28 December 2010 23:56, luisfe  wrote:

> On Dec 28, 6:23 pm, Santanu Sarkar 
> wrote:
> > Size of my matrix is (90, 36) with entries are around 2^1000. What is the
> > fastest
> > method  to compute Hermite Normal Form?
>
> In that case, the fastest may be the default one you are already
> using. Note that computing the Hermite form is fast, the hard part is
> computing the transformation matrix.
>
> > In my matrix number of rows greater than number of columns. That is
> > A=  random_matrix(ZZ, 90, 36). Then how can I calculate  transformation
> > matrix
> > of LLL?
>
> I made a mistake, if the lattice is represented by the rows, then it
> is not A\B but trans_matrix = A.solve_left(B), look at the
> documentation of the methods.
>
> trans_matrix * A = B
>
> express the rows of B as combinations of rows of A
>
> --
> To post to this group, send email to sage-support@googlegroups.com
> To unsubscribe from this group, send email to
> sage-support+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/sage-support
> URL: http://www.sagemath.org
>

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] Re: Hermite Normal Form

2010-12-28 Thread luisfe
On Dec 28, 6:23 pm, Santanu Sarkar 
wrote:
> Size of my matrix is (90, 36) with entries are around 2^1000. What is the
> fastest
> method  to compute Hermite Normal Form?

In that case, the fastest may be the default one you are already
using. Note that computing the Hermite form is fast, the hard part is
computing the transformation matrix.

> In my matrix number of rows greater than number of columns. That is
> A=  random_matrix(ZZ, 90, 36). Then how can I calculate  transformation
> matrix
> of LLL?

I made a mistake, if the lattice is represented by the rows, then it
is not A\B but trans_matrix = A.solve_left(B), look at the
documentation of the methods.

trans_matrix * A = B

express the rows of B as combinations of rows of A

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] Re: Hermite Normal Form

2010-12-28 Thread Santanu Sarkar
Size of my matrix is (90, 36) with entries are around 2^1000. What is the
fastest
method  to compute Hermite Normal Form?

In my matrix number of rows greater than number of columns. That is
A=  random_matrix(ZZ, 90, 36). Then how can I calculate  transformation
matrix
of LLL?




On 28 December 2010 22:32, luisfe  wrote:

> On Dec 28, 5:27 pm, Santanu Sarkar 
> wrote:
> > Is there any faster method to compute Hermite Normal Form
> >   of a matrix  A and corresponding transformation matrix? I use
> > A.hermite_form(transformation=true). However it is very slow.
> >
> > Also is there any transformation matrix corresponding to the LLL
> algorithm.
>
> What are the size/shape of your problem? If you just want the
> hermite_form you can use A.hermite_form(algorithm = ...), where the
> algorithms available can be checked in A.echelon_form.
>
> If you need transformation = true. Then the method will always be a
> padic one, that is asymptotically fast, but may be slow for small
> matrices.
>
> Concerning the question of LLL. I may be wrong, but I think that there
> is not right now a  built-in method to obtain the transformation
> matrix. You could solve the linear system of equations
>
> sage: A = random_matrix(ZZ, 25, 50)
> sage: B = A.LLL()
> sage: trans_matrix = A \ B
> sage: A * trans_matrix == B
> True
>
> --
> To post to this group, send email to sage-support@googlegroups.com
> To unsubscribe from this group, send email to
> sage-support+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/sage-support
> URL: http://www.sagemath.org
>

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] Re: Hermite Normal Form

2010-12-28 Thread luisfe
On Dec 28, 5:27 pm, Santanu Sarkar 
wrote:
> Is there any faster method to compute Hermite Normal Form
>   of a matrix  A and corresponding transformation matrix? I use
> A.hermite_form(transformation=true). However it is very slow.
>
> Also is there any transformation matrix corresponding to the LLL algorithm.

What are the size/shape of your problem? If you just want the
hermite_form you can use A.hermite_form(algorithm = ...), where the
algorithms available can be checked in A.echelon_form.

If you need transformation = true. Then the method will always be a
padic one, that is asymptotically fast, but may be slow for small
matrices.

Concerning the question of LLL. I may be wrong, but I think that there
is not right now a  built-in method to obtain the transformation
matrix. You could solve the linear system of equations

sage: A = random_matrix(ZZ, 25, 50)
sage: B = A.LLL()
sage: trans_matrix = A \ B
sage: A * trans_matrix == B
True

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] Hermite Normal Form

2010-12-28 Thread Santanu Sarkar
Is there any faster method to compute Hermite Normal Form
  of a matrix  A and corresponding transformation matrix? I use
A.hermite_form(transformation=true). However it is very slow.

Also is there any transformation matrix corresponding to the LLL algorithm.

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] identity_matrix(103).det() fails?

2010-12-28 Thread Volker Braun
You are not running out of memory in that computation if you have 3GB of 
ram. It seems like something in linbox (which is used for matrices of that 
size) dies during the computation. I also recently ran into some issues with 
linbox and blas, and was wondering if they are related. Can you run sage in 
the debugger (start with "sage -gdb"), run your example, and then when it 
crashes post the output of "bt" (stack backtrace) in gdb?

Volker

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] Re: windows installation 3

2010-12-28 Thread emil

On 27 Dez., 20:37, Cyrille Piatecki 
wrote:
> Quoting emil :
>
> Dear Emil,
> first of all, I leave for the end of the week tomorrow so if you  
> answer this message, don't be astonished if I do not react.
>
> Yesterday, it was impossible to download from the swiss domain so I went on
>  http://boxen.math.washington.edu/home/emil/doc/html/en/
>
> But as I am writting this lines I tryed to go on the swiss domain and  
> today it works --- yesterday it do not accepted the username/password  
> association.
>
> I have verifyed the checksum it's perfect. But unfortunately windows  
> continue to says that it is not a valid windows program.

I tested and obviously the version on the server is broken, I upload
the working exe installer. should be up in 2 hours.

>
> It seems that I could work with the iso file, but unfortunately as I  
> am a new commer to vmware, I don't know how to setup the mouse and  
> then I could nopt type set any command because I have not been able to  
> setup my keyboard.
>
> An other problem is that I don't know how to change the size of the  
> virtual machine.
The official virtual machine has VMware tools installed, so changing
size is just a matter of resizing the VM window.

> I am going to test the cd
>
> Just before closing. I think Sage work from the iso file but it's so  
> slow that I think I will be waiting if ever there will be a cygwin  
> version.
>
> Cordialy
>
> Cyrille
>
>

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] identity_matrix(103).det() fails?

2010-12-28 Thread Iwao Kimura
Hi Dan,

Thank you for your interest. My Ubuntu box has 3GB memory.
I tried several times (via Web interface, via terminal, exit Sage and
invoke new Sage session...), and I always can reproduce same run-time error.

I can install more 3GB memory after holiday and I'll try again.

Best regards.

On Tue, Dec 28, 2010 at 5:19 PM, Dan Drake  wrote:
> On Tue, 28 Dec 2010 at 03:41PM +0900, Iwao Kimura wrote:
>> On Save v4.6, (Ubuntu 10.04, 64bit), I found that
>> {{{
>> p = 103; identity_matrix(p).det()
>> Traceback (most recent call last):
>
> Hrm, that works fine for me -- using Ubuntu 10.10, 64bit, and on Ubuntu
> 10.04, 32 bit. I increased p up to about 1100 and had no troubles.
>
> How much memory does your computer have? Running out of memory seems
> like the most likely problem here.
>
> Dan
>
> --
> ---  Dan Drake
> -  http://mathsci.kaist.ac.kr/~drake
> ---

-- 
---
Iwao KIMURA
Dept. Math., University of Toyama, Japan.

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


[sage-support] 3D scatterplots in sage

2010-12-28 Thread bgbg
1 down vote favorite
2


Is it possible to create 3D scatterplots in sage?

By scatterplot I mean graph like this:
http://stackoverflow.com/questions/4439894/3d-scatterplots-in-sage

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org


Re: [sage-support] identity_matrix(103).det() fails?

2010-12-28 Thread Dan Drake
On Tue, 28 Dec 2010 at 03:41PM +0900, Iwao Kimura wrote:
> On Save v4.6, (Ubuntu 10.04, 64bit), I found that
> {{{
> p = 103; identity_matrix(p).det()
> Traceback (most recent call last):

Hrm, that works fine for me -- using Ubuntu 10.10, 64bit, and on Ubuntu
10.04, 32 bit. I increased p up to about 1100 and had no troubles.

How much memory does your computer have? Running out of memory seems
like the most likely problem here.

Dan

--
---  Dan Drake
-  http://mathsci.kaist.ac.kr/~drake
---


signature.asc
Description: Digital signature