Re: [sage-devel] vote: include pip with sage

2014-04-23 Thread Nicolas M. Thiery
On Wed, Apr 23, 2014 at 03:46:50PM -0700, William Stein wrote:
>   [ ] Yes, make pip a standard part of Sage.
> 
>   [ ] No, pip does not belong in Sage.

Definitely +1 on any step toward using standard package managers, and
this sounds like a nice one. Now which tools is most appropriate, I
have no clue. I'd love to hear back from people working on Sage's
distribution in different forms (integration in linux distribs,
lemonade, ...).

Cheers,
Nicolas
--
Nicolas M. Thiéry "Isil" 
http://Nicolas.Thiery.name/

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] vote: include pip with sage

2014-04-23 Thread Vincent Delecroix
  [ ] Yes, make pip a standard part of Sage.

  [ ] No, pip does not belong in Sage.

It depends: I would say Yes if the objective is to simplify the
install script (i.e. use pip for all our Python packages that are not
patched). Note that pip is very convenient and takes care of
versioning and dependencies

Vincent

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: vote: include pip with sage

2014-04-23 Thread William Stein
On Wed, Apr 23, 2014 at 11:09 PM, mmarco  wrote:
> Can it handle non-python packages?

No -- it is the standard package manager *for* Python.

> Or the idea is to use it only for python packages that need no compilation at 
> all?

This question doesn't make sense to me, because many Python packages
involve some amount of compilation.

William


>
> El jueves, 24 de abril de 2014 00:46:50 UTC+2, William escribió:
>>
>> Hi,
>>
>> There used to be a lot of confusion about which package manager /
>> installer one should use with python -- easy_install?  setuptools?
>> etc.
>>
>> Now the choice is clear: pip -- A tool for installing and managing
>> Python packages.
>>
>> See https://pypi.python.org/pypi/pip
>>
>> pip is amazing -- you can actually install/upgrade/remove Python
>> packages (see below), unlike the mess that we had to deal with for
>> years.   We should pay attention to the existence of this tool.
>>
>> I think we should include pip with Sage, especially since installing a
>> package manager is always a little _weird_.  Right now, one installs
>> pip by doing this:
>>
>> sage -sh
>> wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py;
>> python get-pip.py
>> 
>>
>>
>>   [ ] Yes, make pip a standard part of Sage.
>>
>>   [ ] No, pip does not belong in Sage.
>>
>>
>>
>>
>> --
>>
>> ~$ pip --help
>>
>> Usage:
>>   pip  [options]
>>
>> Commands:
>>   install Install packages.
>>   uninstall   Uninstall packages.
>>   freeze  Output installed packages in requirements
>> format.
>>   listList installed packages.
>>   showShow information about installed packages.
>>   search  Search PyPI for packages.
>>   wheel   Build wheels from your requirements.
>>   zip DEPRECATED. Zip individual packages.
>>   unzip   DEPRECATED. Unzip individual packages.
>>   bundle  DEPRECATED. Create pybundles.
>>   helpShow help for commands.
>>
>> General Options:
>>   -h, --help  Show help.
>>   -v, --verbose   Give more output. Option is additive,
>> and can be used up to 3 times.
>>   -V, --version   Show version and exit.
>>   -q, --quiet Give less output.
>>   --log-filePath to a verbose non-appending log,
>> that only logs failures. This log is active by default at
>> /projects/3702601d-9fbc-4e4e-b7ab-c10a79e34d3b/.pip/pip.log.
>>   --log Path to a verbose appending log. This
>> log is inactive by default.
>>   --proxy  Specify a proxy in the form
>> [user:passwd@]proxy.server:port.
>>   --timeout  Set the socket timeout (default 15 seconds).
>>   --exists-action Default action when a path already
>> exists: (s)witch, (i)gnore, (w)ipe, (b)ackup.
>>   --certPath to alternate CA bundle.
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.



-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: vote: include pip with sage

2014-04-23 Thread mmarco
Can it handle non-python packages? Or the idea is to use it only for python 
packages that need no compilation at all?

El jueves, 24 de abril de 2014 00:46:50 UTC+2, William escribió:
>
> Hi, 
>
> There used to be a lot of confusion about which package manager / 
> installer one should use with python -- easy_install?  setuptools? 
> etc. 
>
> Now the choice is clear: pip -- A tool for installing and managing 
> Python packages. 
>
> See https://pypi.python.org/pypi/pip 
>
> pip is amazing -- you can actually install/upgrade/remove Python 
> packages (see below), unlike the mess that we had to deal with for 
> years.   We should pay attention to the existence of this tool. 
>
> I think we should include pip with Sage, especially since installing a 
> package manager is always a little _weird_.  Right now, one installs 
> pip by doing this: 
>
> sage -sh 
> wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py; 
> python get-pip.py 
>  
>
>
>   [ ] Yes, make pip a standard part of Sage. 
>
>   [ ] No, pip does not belong in Sage. 
>
>
>
>
> -- 
>
> ~$ pip --help 
>
> Usage: 
>   pip  [options] 
>
> Commands: 
>   install Install packages. 
>   uninstall   Uninstall packages. 
>   freeze  Output installed packages in requirements 
> format. 
>   listList installed packages. 
>   showShow information about installed packages. 
>   search  Search PyPI for packages. 
>   wheel   Build wheels from your requirements. 
>   zip DEPRECATED. Zip individual packages. 
>   unzip   DEPRECATED. Unzip individual packages. 
>   bundle  DEPRECATED. Create pybundles. 
>   helpShow help for commands. 
>
> General Options: 
>   -h, --help  Show help. 
>   -v, --verbose   Give more output. Option is additive, 
> and can be used up to 3 times. 
>   -V, --version   Show version and exit. 
>   -q, --quiet Give less output. 
>   --log-filePath to a verbose non-appending log, 
> that only logs failures. This log is active by default at 
> /projects/3702601d-9fbc-4e4e-b7ab-c10a79e34d3b/.pip/pip.log. 
>   --log Path to a verbose appending log. This 
> log is inactive by default. 
>   --proxy  Specify a proxy in the form 
> [user:passwd@]proxy.server:port. 
>   --timeout  Set the socket timeout (default 15 seconds). 
>   --exists-action Default action when a path already 
> exists: (s)witch, (i)gnore, (w)ipe, (b)ackup. 
>   --certPath to alternate CA bundle. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: git merge: good practice

2014-04-23 Thread Robert Bradshaw
Also, ccache is your friend if you want to cut compile times a lot
here (and elsewhere).

On Wed, Apr 23, 2014 at 2:46 PM, Nathann Cohen  wrote:
> If it can help, here is my "gtmp" function :
>
> function gtmp
> {
> cd ~/sage
> git checkout d
> git branch -D tmp
> git checkout -b tmp d &&
> git pull trac "$1"
> }
>
> gtmp public/whatever fetches the branches and merges it with the develop
> branch (named d on my computer). No pain involved, no recompilation. From
> time to time, i.e. old branches, you have to add a commit message which is
> usually : "trac #: Merged into 6.2.whatever"
>
> Nathann
>
> On Wednesday, April 23, 2014 6:26:37 PM UTC+2, vdelecroix wrote:
>>
>> I see. Thanks Volker.
>>
>> Are there any concrete plans for making the build system better ?
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: vote: include pip with sage

2014-04-23 Thread kcrisman


On Wednesday, April 23, 2014 6:46:50 PM UTC-4, William wrote:
>
> Hi, 
>
> There used to be a lot of confusion about which package manager / 
> installer one should use with python -- easy_install?  setuptools? 
> etc. 
>
> Now the choice is clear: pip -- A tool for installing and managing 
> Python packages. 
>
> See https://pypi.python.org/pypi/pip 
>
> pip is amazing -- you can actually install/upgrade/remove Python 
> packages (see below), unlike the mess that we had to deal with for 
> years.   We should pay attention to the existence of this tool. 
>
> I think we should include pip with Sage, especially since installing a 
> package manager is always a little _weird_.  Right now, one installs 
> pip by doing this: 
>
> sage -sh 
> wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py; 
> python get-pip.py 
>  
>
>
I have no problem with this (I assume it is pretty small relative to all 
the other kitchen sinks we include).  If it would make it easier to deal 
with "optional spkgs" that are really just standard Python packages 
(biopython, brain, lots of other stuff?) then it seems like a pretty good 
idea.  Would there be an alias of some kind within Sage or a command line 
option like "sage -pip" or something that makes it clear this is the 
canonical way to get stuff to work within Sage?  There are always people 
asking about using this or that Python package within Sage, and somehow 
using sage -sh and easy_install or whatever ends up being a little annoying 
for them.

- kcrisman 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] vote: include pip with sage

2014-04-23 Thread William Stein
Hi,

There used to be a lot of confusion about which package manager /
installer one should use with python -- easy_install?  setuptools?
etc.

Now the choice is clear: pip -- A tool for installing and managing
Python packages.

See https://pypi.python.org/pypi/pip

pip is amazing -- you can actually install/upgrade/remove Python
packages (see below), unlike the mess that we had to deal with for
years.   We should pay attention to the existence of this tool.

I think we should include pip with Sage, especially since installing a
package manager is always a little _weird_.  Right now, one installs
pip by doing this:

sage -sh
wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py;
python get-pip.py



  [ ] Yes, make pip a standard part of Sage.

  [ ] No, pip does not belong in Sage.




--

~$ pip --help

Usage:
  pip  [options]

Commands:
  install Install packages.
  uninstall   Uninstall packages.
  freeze  Output installed packages in requirements format.
  listList installed packages.
  showShow information about installed packages.
  search  Search PyPI for packages.
  wheel   Build wheels from your requirements.
  zip DEPRECATED. Zip individual packages.
  unzip   DEPRECATED. Unzip individual packages.
  bundle  DEPRECATED. Create pybundles.
  helpShow help for commands.

General Options:
  -h, --help  Show help.
  -v, --verbose   Give more output. Option is additive,
and can be used up to 3 times.
  -V, --version   Show version and exit.
  -q, --quiet Give less output.
  --log-filePath to a verbose non-appending log,
that only logs failures. This log is active by default at
/projects/3702601d-9fbc-4e4e-b7ab-c10a79e34d3b/.pip/pip.log.
  --log Path to a verbose appending log. This
log is inactive by default.
  --proxy  Specify a proxy in the form
[user:passwd@]proxy.server:port.
  --timeout  Set the socket timeout (default 15 seconds).
  --exists-action Default action when a path already
exists: (s)witch, (i)gnore, (w)ipe, (b)ackup.
  --certPath to alternate CA bundle.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: UniqueRepresentation and cached_method don't mix

2014-04-23 Thread Volker Braun
I agree that it is tricky. There is no need to cache the unique output 
since it itself is cached by being unique. This is testable with some 
effort; in doctest mode the memoization decorators should performs some 
additional testing. Takes some work to write but no conceptual problem.

Also, I think that caches should age out eventually. This would also 
mitigate a lot of possible memleaks. Downside is of course that you might 
have to recompute intermediate results, but that is still better than being 
reaped by the OOM killer ;-)




On Wednesday, April 23, 2014 11:02:04 PM UTC+1, Nathann Cohen wrote:
>
> Please guys.. Answer this thread, this is a bad problem. It is important 
> to do something about it... :-/
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: UniqueRepresentation and cached_method don't mix

2014-04-23 Thread Nathann Cohen
(this thread follows
https://groups.google.com/d/topic/sage-devel/awjiHPph6f8/discussion)

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: UniqueRepresentation and cached_method don't mix

2014-04-23 Thread Nathann Cohen
Please guys.. Answer this thread, this is a bad problem. It is important to 
do something about it... :-/

Nathann

On Sunday, April 6, 2014 7:21:18 PM UTC+2, Nils Bruin wrote:
>
> The following paradigm happens for 
> "sage.combinat.posets.posets.FinitePoset" and their "linear_extensions", 
> but it's such an easy mistake to make that I'd almost consider it a flaw in 
> our design:
>
> class A(Parent,UniqueRepresentation):
> 
> @cached_method
> def BfromA(self):
> return B(A)
>
> class B(Parent,UniqueRepresentation):
> ...
>
> If one does
>
>   a = A()
>   b = a.BfromA()
>   del a,b
>
> one leaks memory. This is because the (global!) UniqueRepresentation cache 
> for B will have a strong reference to a (as a key in a WeakValueDictionary) 
> , since it's a construction parameter for b, and a will be holding a strong 
> reference to b because BfromA was declared a cached method. Hence, a keeps 
> b alive, and as long as b is alive, a will be kept alive due to the strong 
> reference in the weakvaluedict.
>
> The solution here probably is to NOT cache BfromA, since the lookup 
> performed by B(A) will be very fast anyway (if the thing already exists), 
> but you can see how difficult it now becomes to decide whether you can 
> safely stick a @cached_method decorator somewhere: If the result contains a 
> UniqueRepresentation object that is constructed using something linked to 
> the object on which the cached_method lives, you probably can't. But this 
> becomes a highly non-local thing to decide, because now you need to know 
> the implementation details of lots of things you might be using.
>
> The real problem here is UniqueRepresentation. Fundamentally, that breaks 
> locality. We try to hide the problems a little bit by using a WeakValueDict 
> to cache things, but as this example shows, it only takes one extra level 
> to let the problems resurface. Any ideas on how we can mitigate these 
> problems? Educating developers perhaps?
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: git merge: good practice

2014-04-23 Thread Nathann Cohen
If it can help, here is my "gtmp" function :

function gtmp
{
cd ~/sage
git checkout d
git branch -D tmp
git checkout -b tmp d &&
git pull trac "$1"
}

gtmp public/whatever fetches the branches and merges it with the develop 
branch (named d on my computer). No pain involved, no recompilation. From 
time to time, i.e. old branches, you have to add a commit message which is 
usually : "trac #: Merged into 6.2.whatever" 

Nathann

On Wednesday, April 23, 2014 6:26:37 PM UTC+2, vdelecroix wrote:
>
> I see. Thanks Volker. 
>
> Are there any concrete plans for making the build system better ? 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] An Embarrassing Bug?

2014-04-23 Thread Kannappan Sampath
On Wed, Apr 23, 2014 at 11:31 PM, Kannappan Sampath wrote:

>
>
>
> On Wed, Apr 23, 2014 at 11:19 PM, Vincent Delecroix <
> 20100.delecr...@gmail.com> wrote:
>
>> Me again...
>>
>> If you correct the code, please provide a piece of code that does not
>> work with the current implementation (otherwise, it can not be
>> considered as a bug).
>>
>> Well, OK. My fault. Pass any non-square 0, 1 matrix to it and you would
> see: for example,
>
> IncidenceStructureFromMatrix(Matrix(ZZ, 2, 3, [1]*2*3))
>
>
Sorry, actually:  IncidenceStructureFromMatrix(Matrix(ZZ, 3, 2, [1]*2*3))

>  If you do correct it please change
>> {{{
>> v = len(M.rows())
>> b = len(M.columns())
>> }}}
>> by
>> {{{
>>v = M.nrows()
>>b = M.ncols()
>> }}}
>>
>>
> Will do!
>
>
>> Best
>> Vincent
>
>
>>
> 2014-04-23 19:42 UTC+02:00, Kannappan Sampath :
>> > :-)
>> >
>> >
>> > On Wed, Apr 23, 2014 at 11:07 PM, Vincent Delecroix <
>> > 20100.delecr...@gmail.com> wrote:
>> >
>> >> What is the problem? You just copy/paste the definition of a function.
>> >>
>> >> 2014-04-23 19:31 UTC+02:00, Kannappan Sampath :
>> >> > Hello group,
>> >> >
>> >> > I think this is probably an embarrassing bug:
>> >> >
>> >> > def IncidenceStructureFromMatrix(M, name=None):
>> >> > """
>> >> > Builds and incidence structure from a matrix.
>> >> >
>> >> > INPUT:
>> >> >
>> >> > - ``M`` -- a binary matrix. Creates a set of "points" from the
>> rows
>> >> and
>> >> > a
>> >> >   set of "blocks" from the columns.
>> >> >
>> >> > EXAMPLES::
>> >> >
>> >> > sage: from sage.combinat.designs.block_design import
>> >> > BlockDesign
>> >> > sage: BD1 =
>> >> >
>> BlockDesign(7,[[0,1,2],[0,3,4],[0,5,6],[1,3,5],[1,4,6],[2,3,6],[2,4,5]])
>> >> > sage: M = BD1.incidence_matrix()
>> >> > sage: BD2 = IncidenceStructureFromMatrix(M)
>> >> > sage: BD1 == BD2
>> >> > True
>> >> > """
>> >> > nm = name
>> >> > v = len(M.rows())
>> >> > b = len(M.columns())
>> >> > #points = range(v)
>> >> > blocks = []
>> >> > for i in range(b):
>> >> > B = []
>> >> > for j in range(v):
>> >> > if M[i, j] != 0:
>> >>
>> >
>> > As I tried to explain, the indexing is ballsed up: v is the number of
>> rows,
>> > b is the number of columns. Since i is in range(b), i is a column index
>> and
>> > similarly, j is a row index. So, the code should have looked at M[j, i]
>> as
>> > opposed M[i, j] in the if condition.
>> >
>> > Kannappan.
>> >
>> >> > B.append(j)
>> >> > blocks.append(B)
>> >> > return IncidenceStructure(range(v), blocks, name=nm)
>> >> >
>> >> >
>> >> > The problem is with the indexing "if M[i, j] != 0". Of course, this
>> >> > will
>> >> not
>> >> > be a problem for square 2-designs like the Hadamard design or
>> >> > ProjectivePlaneDesign (thanks to Fisher Type counting), but this
>> should
>> >> > cause problem for designs that are not square. I was bitten by this
>> bug
>> >> when
>> >> > I tried to implement Hadamard 3-design from a Hadamard matrix.
>> >> >
>> >> > I will open a ticket if somebody does a sanity check for me.
>> >> >
>> >> > With Sincere Regards,
>> >> > Kannappan.
>> >> >
>> >> >
>> >> > --
>> >> > You received this message because you are subscribed to the Google
>> >> > Groups
>> >> > "sage-devel" group.
>> >> > To unsubscribe from this group and stop receiving emails from it,
>> send
>> >> > an
>> >> > email to sage-devel+unsubscr...@googlegroups.com.
>> >> > To post to this group, send email to sage-devel@googlegroups.com.
>> >> > Visit this group at http://groups.google.com/group/sage-devel.
>> >> > For more options, visit https://groups.google.com/d/optout.
>> >> >
>> >>
>> >> --
>> >> You received this message because you are subscribed to the Google
>> Groups
>> >> "sage-devel" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send
>> an
>> >> email to sage-devel+unsubscr...@googlegroups.com.
>> >> To post to this group, send email to sage-devel@googlegroups.com.
>> >> Visit this group at http://groups.google.com/group/sage-devel.
>> >> For more options, visit https://groups.google.com/d/optout.
>> >>
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> Groups
>> > "sage-devel" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an
>> > email to sage-devel+unsubscr...@googlegroups.com.
>> > To post to this group, send email to sage-devel@googlegroups.com.
>> > Visit this group at http://groups.google.com/group/sage-devel.
>> > For more options, visit https://groups.google.com/d/optout.
>> >
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to sage-devel+unsubscr...@googlegroups.com.
>> To post to this group, send email to sage-devel@googlegroups.com.
>> Visit 

Re: [sage-devel] An Embarrassing Bug?

2014-04-23 Thread Kannappan Sampath
On Wed, Apr 23, 2014 at 11:19 PM, Vincent Delecroix <
20100.delecr...@gmail.com> wrote:

> Me again...
>
> If you correct the code, please provide a piece of code that does not
> work with the current implementation (otherwise, it can not be
> considered as a bug).
>
> Well, OK. My fault. Pass any non-square 0, 1 matrix to it and you would
see: for example,

IncidenceStructureFromMatrix(Matrix(ZZ, 2, 3, [1]*2*3))


> If you do correct it please change
> {{{
> v = len(M.rows())
> b = len(M.columns())
> }}}
> by
> {{{
>v = M.nrows()
>b = M.ncols()
> }}}
>
>
Will do!


> Best
> Vincent


>
2014-04-23 19:42 UTC+02:00, Kannappan Sampath :
> > :-)
> >
> >
> > On Wed, Apr 23, 2014 at 11:07 PM, Vincent Delecroix <
> > 20100.delecr...@gmail.com> wrote:
> >
> >> What is the problem? You just copy/paste the definition of a function.
> >>
> >> 2014-04-23 19:31 UTC+02:00, Kannappan Sampath :
> >> > Hello group,
> >> >
> >> > I think this is probably an embarrassing bug:
> >> >
> >> > def IncidenceStructureFromMatrix(M, name=None):
> >> > """
> >> > Builds and incidence structure from a matrix.
> >> >
> >> > INPUT:
> >> >
> >> > - ``M`` -- a binary matrix. Creates a set of "points" from the
> rows
> >> and
> >> > a
> >> >   set of "blocks" from the columns.
> >> >
> >> > EXAMPLES::
> >> >
> >> > sage: from sage.combinat.designs.block_design import
> >> > BlockDesign
> >> > sage: BD1 =
> >> >
> BlockDesign(7,[[0,1,2],[0,3,4],[0,5,6],[1,3,5],[1,4,6],[2,3,6],[2,4,5]])
> >> > sage: M = BD1.incidence_matrix()
> >> > sage: BD2 = IncidenceStructureFromMatrix(M)
> >> > sage: BD1 == BD2
> >> > True
> >> > """
> >> > nm = name
> >> > v = len(M.rows())
> >> > b = len(M.columns())
> >> > #points = range(v)
> >> > blocks = []
> >> > for i in range(b):
> >> > B = []
> >> > for j in range(v):
> >> > if M[i, j] != 0:
> >>
> >
> > As I tried to explain, the indexing is ballsed up: v is the number of
> rows,
> > b is the number of columns. Since i is in range(b), i is a column index
> and
> > similarly, j is a row index. So, the code should have looked at M[j, i]
> as
> > opposed M[i, j] in the if condition.
> >
> > Kannappan.
> >
> >> > B.append(j)
> >> > blocks.append(B)
> >> > return IncidenceStructure(range(v), blocks, name=nm)
> >> >
> >> >
> >> > The problem is with the indexing "if M[i, j] != 0". Of course, this
> >> > will
> >> not
> >> > be a problem for square 2-designs like the Hadamard design or
> >> > ProjectivePlaneDesign (thanks to Fisher Type counting), but this
> should
> >> > cause problem for designs that are not square. I was bitten by this
> bug
> >> when
> >> > I tried to implement Hadamard 3-design from a Hadamard matrix.
> >> >
> >> > I will open a ticket if somebody does a sanity check for me.
> >> >
> >> > With Sincere Regards,
> >> > Kannappan.
> >> >
> >> >
> >> > --
> >> > You received this message because you are subscribed to the Google
> >> > Groups
> >> > "sage-devel" group.
> >> > To unsubscribe from this group and stop receiving emails from it, send
> >> > an
> >> > email to sage-devel+unsubscr...@googlegroups.com.
> >> > To post to this group, send email to sage-devel@googlegroups.com.
> >> > Visit this group at http://groups.google.com/group/sage-devel.
> >> > For more options, visit https://groups.google.com/d/optout.
> >> >
> >>
> >> --
> >> You received this message because you are subscribed to the Google
> Groups
> >> "sage-devel" group.
> >> To unsubscribe from this group and stop receiving emails from it, send
> an
> >> email to sage-devel+unsubscr...@googlegroups.com.
> >> To post to this group, send email to sage-devel@googlegroups.com.
> >> Visit this group at http://groups.google.com/group/sage-devel.
> >> For more options, visit https://groups.google.com/d/optout.
> >>
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "sage-devel" group.
> > To unsubscribe from this group and stop receiving emails from it, send an
> > email to sage-devel+unsubscr...@googlegroups.com.
> > To post to this group, send email to sage-devel@googlegroups.com.
> > Visit this group at http://groups.google.com/group/sage-devel.
> > For more options, visit https://groups.google.com/d/optout.
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-dev

[sage-devel] Re: Error compiling ncurses

2014-04-23 Thread mmarco
That seemed to work, thanks.

El miércoles, 23 de abril de 2014 18:24:57 UTC+2, Volker Braun escribió:
>
> Its not a problem with ncurses but with your bash crapping out if 
> LD_LIBRARY_PATH is set.Delete the Sage ncurses libraries and continue 
> building. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] An Embarrassing Bug?

2014-04-23 Thread Vincent Delecroix
Actually the whole function can be done with one line
{{{
blocks = [[i for i in xrange(M.nrows()) if M[i,j]] for j in
xrange(M.ncols())]
}}}

2014-04-23 19:49 UTC+02:00, Vincent Delecroix <20100.delecr...@gmail.com>:
> Me again...
>
> If you correct the code, please provide a piece of code that does not
> work with the current implementation (otherwise, it can not be
> considered as a bug).
>
> If you do correct it please change
> {{{
> v = len(M.rows())
> b = len(M.columns())
> }}}
> by
> {{{
>v = M.nrows()
>b = M.ncols()
> }}}
>
> Best
> Vincent
>
> 2014-04-23 19:42 UTC+02:00, Kannappan Sampath :
>> :-)
>>
>>
>> On Wed, Apr 23, 2014 at 11:07 PM, Vincent Delecroix <
>> 20100.delecr...@gmail.com> wrote:
>>
>>> What is the problem? You just copy/paste the definition of a function.
>>>
>>> 2014-04-23 19:31 UTC+02:00, Kannappan Sampath :
>>> > Hello group,
>>> >
>>> > I think this is probably an embarrassing bug:
>>> >
>>> > def IncidenceStructureFromMatrix(M, name=None):
>>> > """
>>> > Builds and incidence structure from a matrix.
>>> >
>>> > INPUT:
>>> >
>>> > - ``M`` -- a binary matrix. Creates a set of "points" from the
>>> > rows
>>> and
>>> > a
>>> >   set of "blocks" from the columns.
>>> >
>>> > EXAMPLES::
>>> >
>>> > sage: from sage.combinat.designs.block_design import
>>> > BlockDesign
>>> > sage: BD1 =
>>> > BlockDesign(7,[[0,1,2],[0,3,4],[0,5,6],[1,3,5],[1,4,6],[2,3,6],[2,4,5]])
>>> > sage: M = BD1.incidence_matrix()
>>> > sage: BD2 = IncidenceStructureFromMatrix(M)
>>> > sage: BD1 == BD2
>>> > True
>>> > """
>>> > nm = name
>>> > v = len(M.rows())
>>> > b = len(M.columns())
>>> > #points = range(v)
>>> > blocks = []
>>> > for i in range(b):
>>> > B = []
>>> > for j in range(v):
>>> > if M[i, j] != 0:
>>>
>>
>> As I tried to explain, the indexing is ballsed up: v is the number of
>> rows,
>> b is the number of columns. Since i is in range(b), i is a column index
>> and
>> similarly, j is a row index. So, the code should have looked at M[j, i]
>> as
>> opposed M[i, j] in the if condition.
>>
>> Kannappan.
>>
>>> > B.append(j)
>>> > blocks.append(B)
>>> > return IncidenceStructure(range(v), blocks, name=nm)
>>> >
>>> >
>>> > The problem is with the indexing "if M[i, j] != 0". Of course, this
>>> > will
>>> not
>>> > be a problem for square 2-designs like the Hadamard design or
>>> > ProjectivePlaneDesign (thanks to Fisher Type counting), but this
>>> > should
>>> > cause problem for designs that are not square. I was bitten by this
>>> > bug
>>> when
>>> > I tried to implement Hadamard 3-design from a Hadamard matrix.
>>> >
>>> > I will open a ticket if somebody does a sanity check for me.
>>> >
>>> > With Sincere Regards,
>>> > Kannappan.
>>> >
>>> >
>>> > --
>>> > You received this message because you are subscribed to the Google
>>> > Groups
>>> > "sage-devel" group.
>>> > To unsubscribe from this group and stop receiving emails from it, send
>>> > an
>>> > email to sage-devel+unsubscr...@googlegroups.com.
>>> > To post to this group, send email to sage-devel@googlegroups.com.
>>> > Visit this group at http://groups.google.com/group/sage-devel.
>>> > For more options, visit https://groups.google.com/d/optout.
>>> >
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups
>>> "sage-devel" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an
>>> email to sage-devel+unsubscr...@googlegroups.com.
>>> To post to this group, send email to sage-devel@googlegroups.com.
>>> Visit this group at http://groups.google.com/group/sage-devel.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to sage-devel+unsubscr...@googlegroups.com.
>> To post to this group, send email to sage-devel@googlegroups.com.
>> Visit this group at http://groups.google.com/group/sage-devel.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] An Embarrassing Bug?

2014-04-23 Thread Vincent Delecroix
Me again...

If you correct the code, please provide a piece of code that does not
work with the current implementation (otherwise, it can not be
considered as a bug).

If you do correct it please change
{{{
v = len(M.rows())
b = len(M.columns())
}}}
by
{{{
   v = M.nrows()
   b = M.ncols()
}}}

Best
Vincent

2014-04-23 19:42 UTC+02:00, Kannappan Sampath :
> :-)
>
>
> On Wed, Apr 23, 2014 at 11:07 PM, Vincent Delecroix <
> 20100.delecr...@gmail.com> wrote:
>
>> What is the problem? You just copy/paste the definition of a function.
>>
>> 2014-04-23 19:31 UTC+02:00, Kannappan Sampath :
>> > Hello group,
>> >
>> > I think this is probably an embarrassing bug:
>> >
>> > def IncidenceStructureFromMatrix(M, name=None):
>> > """
>> > Builds and incidence structure from a matrix.
>> >
>> > INPUT:
>> >
>> > - ``M`` -- a binary matrix. Creates a set of "points" from the rows
>> and
>> > a
>> >   set of "blocks" from the columns.
>> >
>> > EXAMPLES::
>> >
>> > sage: from sage.combinat.designs.block_design import
>> > BlockDesign
>> > sage: BD1 =
>> > BlockDesign(7,[[0,1,2],[0,3,4],[0,5,6],[1,3,5],[1,4,6],[2,3,6],[2,4,5]])
>> > sage: M = BD1.incidence_matrix()
>> > sage: BD2 = IncidenceStructureFromMatrix(M)
>> > sage: BD1 == BD2
>> > True
>> > """
>> > nm = name
>> > v = len(M.rows())
>> > b = len(M.columns())
>> > #points = range(v)
>> > blocks = []
>> > for i in range(b):
>> > B = []
>> > for j in range(v):
>> > if M[i, j] != 0:
>>
>
> As I tried to explain, the indexing is ballsed up: v is the number of rows,
> b is the number of columns. Since i is in range(b), i is a column index and
> similarly, j is a row index. So, the code should have looked at M[j, i] as
> opposed M[i, j] in the if condition.
>
> Kannappan.
>
>> > B.append(j)
>> > blocks.append(B)
>> > return IncidenceStructure(range(v), blocks, name=nm)
>> >
>> >
>> > The problem is with the indexing "if M[i, j] != 0". Of course, this
>> > will
>> not
>> > be a problem for square 2-designs like the Hadamard design or
>> > ProjectivePlaneDesign (thanks to Fisher Type counting), but this should
>> > cause problem for designs that are not square. I was bitten by this bug
>> when
>> > I tried to implement Hadamard 3-design from a Hadamard matrix.
>> >
>> > I will open a ticket if somebody does a sanity check for me.
>> >
>> > With Sincere Regards,
>> > Kannappan.
>> >
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> > Groups
>> > "sage-devel" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> > an
>> > email to sage-devel+unsubscr...@googlegroups.com.
>> > To post to this group, send email to sage-devel@googlegroups.com.
>> > Visit this group at http://groups.google.com/group/sage-devel.
>> > For more options, visit https://groups.google.com/d/optout.
>> >
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to sage-devel+unsubscr...@googlegroups.com.
>> To post to this group, send email to sage-devel@googlegroups.com.
>> Visit this group at http://groups.google.com/group/sage-devel.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] An Embarrassing Bug?

2014-04-23 Thread Kannappan Sampath
:-)


On Wed, Apr 23, 2014 at 11:07 PM, Vincent Delecroix <
20100.delecr...@gmail.com> wrote:

> What is the problem? You just copy/paste the definition of a function.
>
> 2014-04-23 19:31 UTC+02:00, Kannappan Sampath :
> > Hello group,
> >
> > I think this is probably an embarrassing bug:
> >
> > def IncidenceStructureFromMatrix(M, name=None):
> > """
> > Builds and incidence structure from a matrix.
> >
> > INPUT:
> >
> > - ``M`` -- a binary matrix. Creates a set of "points" from the rows
> and
> > a
> >   set of "blocks" from the columns.
> >
> > EXAMPLES::
> >
> > sage: from sage.combinat.designs.block_design import BlockDesign
> > sage: BD1 =
> > BlockDesign(7,[[0,1,2],[0,3,4],[0,5,6],[1,3,5],[1,4,6],[2,3,6],[2,4,5]])
> > sage: M = BD1.incidence_matrix()
> > sage: BD2 = IncidenceStructureFromMatrix(M)
> > sage: BD1 == BD2
> > True
> > """
> > nm = name
> > v = len(M.rows())
> > b = len(M.columns())
> > #points = range(v)
> > blocks = []
> > for i in range(b):
> > B = []
> > for j in range(v):
> > if M[i, j] != 0:
>

As I tried to explain, the indexing is ballsed up: v is the number of rows,
b is the number of columns. Since i is in range(b), i is a column index and
similarly, j is a row index. So, the code should have looked at M[j, i] as
opposed M[i, j] in the if condition.

Kannappan.

> > B.append(j)
> > blocks.append(B)
> > return IncidenceStructure(range(v), blocks, name=nm)
> >
> >
> > The problem is with the indexing "if M[i, j] != 0". Of course, this will
> not
> > be a problem for square 2-designs like the Hadamard design or
> > ProjectivePlaneDesign (thanks to Fisher Type counting), but this should
> > cause problem for designs that are not square. I was bitten by this bug
> when
> > I tried to implement Hadamard 3-design from a Hadamard matrix.
> >
> > I will open a ticket if somebody does a sanity check for me.
> >
> > With Sincere Regards,
> > Kannappan.
> >
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "sage-devel" group.
> > To unsubscribe from this group and stop receiving emails from it, send an
> > email to sage-devel+unsubscr...@googlegroups.com.
> > To post to this group, send email to sage-devel@googlegroups.com.
> > Visit this group at http://groups.google.com/group/sage-devel.
> > For more options, visit https://groups.google.com/d/optout.
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] An Embarrassing Bug?

2014-04-23 Thread Vincent Delecroix
What is the problem? You just copy/paste the definition of a function.

2014-04-23 19:31 UTC+02:00, Kannappan Sampath :
> Hello group,
>
> I think this is probably an embarrassing bug:
>
> def IncidenceStructureFromMatrix(M, name=None):
> """
> Builds and incidence structure from a matrix.
>
> INPUT:
>
> - ``M`` -- a binary matrix. Creates a set of "points" from the rows and
> a
>   set of "blocks" from the columns.
>
> EXAMPLES::
>
> sage: from sage.combinat.designs.block_design import BlockDesign
> sage: BD1 =
> BlockDesign(7,[[0,1,2],[0,3,4],[0,5,6],[1,3,5],[1,4,6],[2,3,6],[2,4,5]])
> sage: M = BD1.incidence_matrix()
> sage: BD2 = IncidenceStructureFromMatrix(M)
> sage: BD1 == BD2
> True
> """
> nm = name
> v = len(M.rows())
> b = len(M.columns())
> #points = range(v)
> blocks = []
> for i in range(b):
> B = []
> for j in range(v):
> if M[i, j] != 0:
> B.append(j)
> blocks.append(B)
> return IncidenceStructure(range(v), blocks, name=nm)
>
>
> The problem is with the indexing "if M[i, j] != 0". Of course, this will not
> be a problem for square 2-designs like the Hadamard design or
> ProjectivePlaneDesign (thanks to Fisher Type counting), but this should
> cause problem for designs that are not square. I was bitten by this bug when
> I tried to implement Hadamard 3-design from a Hadamard matrix.
>
> I will open a ticket if somebody does a sanity check for me.
>
> With Sincere Regards,
> Kannappan.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] An Embarrassing Bug?

2014-04-23 Thread Kannappan Sampath
Hello group, 

I think this is probably an embarrassing bug:

def IncidenceStructureFromMatrix(M, name=None):
"""
Builds and incidence structure from a matrix.

INPUT:

- ``M`` -- a binary matrix. Creates a set of "points" from the rows and a
  set of "blocks" from the columns.

EXAMPLES::

sage: from sage.combinat.designs.block_design import BlockDesign
sage: BD1 = 
BlockDesign(7,[[0,1,2],[0,3,4],[0,5,6],[1,3,5],[1,4,6],[2,3,6],[2,4,5]])
sage: M = BD1.incidence_matrix()
sage: BD2 = IncidenceStructureFromMatrix(M)
sage: BD1 == BD2
True
"""
nm = name
v = len(M.rows())
b = len(M.columns())
#points = range(v)
blocks = []
for i in range(b):
B = []
for j in range(v):
if M[i, j] != 0:
B.append(j)
blocks.append(B)
return IncidenceStructure(range(v), blocks, name=nm)


The problem is with the indexing "if M[i, j] != 0". Of course, this will not be 
a problem for square 2-designs like the Hadamard design or 
ProjectivePlaneDesign (thanks to Fisher Type counting), but this should cause 
problem for designs that are not square. I was bitten by this bug when I tried 
to implement Hadamard 3-design from a Hadamard matrix. 

I will open a ticket if somebody does a sanity check for me. 

With Sincere Regards, 
Kannappan. 
 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: git merge: good practice

2014-04-23 Thread Vincent Delecroix
I see. Thanks Volker.

Are there any concrete plans for making the build system better ?

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: Error compiling ncurses

2014-04-23 Thread Volker Braun
Its not a problem with ncurses but with your bash crapping out if 
LD_LIBRARY_PATH is set.Delete the Sage ncurses libraries and continue 
building. 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Error compiling ncurses

2014-04-23 Thread mmarco
I just pulled the last development release, and when compiling, i got this 
error.

Someone can reproduce?

Host system:
Linux localhost 3.10.17-gentoo #2 SMP PREEMPT Tue Dec 10 22:34:37 CET 2013 
x86_64 Intel(R) Core(TM)2 Duo CPU T9300 @ 2.50GHz GenuineIntel GNU/Linux

C compiler: gcc
C compiler version:
Usando especificaciones internas.
COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.6.3/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.3/lto-wrapper
Objetivo: x86_64-pc-linux-gnu
Configurado con: 
/var/tmp/portage/sys-devel/gcc-4.6.3/work/gcc-4.6.3/configure --prefix=/usr 
--bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.6.3 
--includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/include 
--datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.3 
--mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.3/man 
--infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.3/info 
--with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/include/g++-v4 
--host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec 
--disable-fixed-point --without-cloog --without-ppl --disable-lto 
--enable-nls --without-included-gettext --with-system-zlib 
--enable-obsolete --disable-werror --enable-secureplt --enable-multilib 
--enable-libmudflap --disable-libssp --enable-libgomp 
--with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.6.3/python 
--enable-checking=release --disable-libgcj --enable-libstdcxx-time 
--enable-languages=c,c++,fortran --enable-shared --enable-threads=posix 
--enable-__cxa_atexit --enable-clocale=gnu --enable-targets=all 
--with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.6.3 
p1.13, pie-0.5.2'
Modelo de hilos: posix
gcc versión 4.6.3 (Gentoo 4.6.3 p1.13, pie-0.5.2) 

bash: symbol lookup error: 
/home/mmarco/sagedevel/sage/local/lib/libncurses.so.5: undefined symbol: 
_nc_putchar

real0m0.001s
user0m0.000s
sys 0m0.001s

Error installing package ncurses-5.9.p2

Please email sage-devel (http://groups.google.com/group/sage-devel)
explaining the problem and including the relevant part of the log file
  /home/mmarco/sagedevel/sage/logs/pkgs/ncurses-5.9.p2.log
Describe your computer, operating system, etc.
If you want to try to fix the problem yourself, *don't* just cd to
/home/mmarco/sagedevel/sage/local/var/tmp/sage/build/ncurses-5.9.p2 and 
type 'make' or whatever is appropriate.
Instead, the following commands setup all environment variables
correctly and load a subshell for you to debug the error:
  (cd '/home/mmarco/sagedevel/sage/local/var/tmp/sage/build/ncurses-5.9.p2' 
&& '/home/mmarco/sagedevel/sage/sage' --sh)
When you are done debugging, you can type "exit" to leave the subshell.

make[2]: *** 
[/home/mmarco/sagedevel/sage/local/var/lib/sage/installed/ncurses-5.9.p2] 
Error 1
make[2]: se sale del directorio `/home/mmarco/sagedevel/sage/build'
make[1]: *** [all] Error 2
make[1]: se sale del directorio `/home/mmarco/sagedevel/sage/build'

real0m0.767s
user0m0.596s
sys 0m0.177s
***
Error building Sage.

The following package(s) may have failed to build:

package: ncurses-5.9.p2
log file: /home/mmarco/sagedevel/sage/logs/pkgs/ncurses-5.9.p2.log
build directory: 
/home/mmarco/sagedevel/sage/local/var/tmp/sage/build/ncurses-5.9.p2

The build directory may contain configuration files and other potentially
helpful information. WARNING: if you now run 'make' again, the build
directory will, by default, be deleted. Set the environment variable
SAGE_KEEP_BUILT_SPKGS to 'yes' to prevent this.




-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: git merge: good practice

2014-04-23 Thread Volker Braun
1) is the normal way, your first parent is your development branch. That 
is, HEAD~ is your previous commit etc.

 2) is a bit wonky but permissible if you want to.

The build system needs to be changed to not look at filesystem timestamps 
but repository information. Once that is fixed there is no advantage 
whatsoever for 2). 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] git merge: good practice

2014-04-23 Thread Vincent Delecroix
Hi,

I was working on a ticket on my local branch X based on an old Sage
version. Let say that my develop is up to date and my HEAD is
currently at develop. I want to merge X to be up to date and see two
ways to do this

1)
{{{
git checkout X
git merge develop
}}}

2)
{{{
git checkout -b Y
git merge X
}}}

Solution 2) looks better because if everything went smoothly you do
not have to rebuild Sage. But with solution 2) I have some renaming to
do... which might be painful if I have many waiting local branches.

What should I do? Is there a better solution?

Best
Vincent

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: sage -dev diff

2014-04-23 Thread Ralf Stephan
On Wed, Apr 23, 2014 at 4:06 PM, Kannappan Sampath wrote:

> Thank you all for suggesting that I take a look at GIT. I think I feel
> better now. But, still I have gotten some questions. I am trying to review
> 16091.
>
> I have checked out the ncohen's 16091 branch and have it as a local
> branch. I would like to now let sage now that there has been a change in
> its code due to this branch. I assume this means I run sage -b. Is this
> correct?
>

​Nearly, it tells the Sage build system to check all files, and rebuild the
system
if necessary. Since the branch in 16091 is based on version 6.2.beta6 of the
system, any changes to the branch you upload will too, if you don't merge
the
newest developer branch. This may work or not, depending on if the developer
branch changed things near the code that you are working on (you will see
this
when merging). Note it's required practice that, if you upload something,
it must
be includable without conflict, and it must build the system and the
documentation
without errors, as well as not produce any doctest errors. This can only be
ensured
if you work with the newest developer branch.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: sage -dev diff

2014-04-23 Thread Volker Braun
>From the preview of the updated docs in the already-mentioned ticket #16030:

http://boxen.math.washington.edu/home/vbraun/doc/developer/walk_through.html#rebuilding-sage


On Wednesday, April 23, 2014 3:06:44 PM UTC+1, KnS wrote:
>
> Thank you all for suggesting that I take a look at GIT. I think I feel 
> better now. But, still I have gotten some questions. I am trying to review 
> 16091. 
>
> I have checked out the ncohen's 16091 branch and have it as a local 
> branch. I would like to now let sage now that there has been a change in 
> its code due to this branch. I assume this means I run sage -b. Is this 
> correct? 
>
> Will this let sage know that there has been a update of code? 
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: Building Sage with GCC 4.9

2014-04-23 Thread Jean-Pierre Flori


On Wednesday, April 23, 2014 4:48:32 PM UTC+2, leif wrote:
>
> Jean-Pierre Flori wrote: 
> > On Tuesday, April 22, 2014 5:42:44 PM UTC+2, leif wrote: 
> >  >> (Release of 4.9.0 is scheduled for Tuesday, so we'll presumably 
> > face it 
> >  >> soon in some distros.) 
> > 
> > I'm updating an Ubuntu LTS and it seems gcc 4.9 is shipped with it (I 
> > did not trigger its install myself). 
> > Not sure it will be the default compiler though. 
>
> The default on Trusty Tahr (14.04) is Ubuntu/Linaro GCC 4.8.2-19ubuntu1, 
> but Ubuntu's GCC x.y.z usually comes with stuff (fixes and new bugs) 
> from later FSF releases (or trunk), so their version number doesn't tell 
> much. 
>
Indeed, it was just some gcc-4.9-base package used as a dependency of 
libgcc1. 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: Building Sage with GCC 4.9

2014-04-23 Thread leif

Jean-Pierre Flori wrote:

On Tuesday, April 22, 2014 5:42:44 PM UTC+2, leif wrote:
 >> (Release of 4.9.0 is scheduled for Tuesday, so we'll presumably
face it
 >> soon in some distros.)

I'm updating an Ubuntu LTS and it seems gcc 4.9 is shipped with it (I
did not trigger its install myself).
Not sure it will be the default compiler though.


The default on Trusty Tahr (14.04) is Ubuntu/Linaro GCC 4.8.2-19ubuntu1, 
but Ubuntu's GCC x.y.z usually comes with stuff (fixes and new bugs) 
from later FSF releases (or trunk), so their version number doesn't tell 
much.



-leif

--
() The ASCII Ribbon Campaign
/\   Help Cure HTML E-Mail

--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] sage days 58 and 59

2014-04-23 Thread William Stein
Hi Sage Devs,

There's more information about confirmed participants for SD58 and
SD59 in June in Seattle now.  There's still room for more people.

http://wiki.sagemath.org/days58, http://wiki.sagemath.org/days59

Keith Clawson (Seattle)
Miguel Marco-Buzunariz (Germany)
Marcos Rodríguez Rodríguez (Spain, June 21-28)
Andrey Novoseltsev (Canada)
William Stein (Seattle)
Mike Hansen (Seattle)
Martin Albrecht (London)
Julian Rüth
David Mascharka (Drake)
Chris Kees (Coastal and Hydraulics Laboratory, US Army Engineer
Research and Development Center)
Kevin Winters (Coastal and Hydraulics Laboratory, US Army Engineer
Research and Development Center)
Randall J LeVeque, and students (Seattle)


-- 
William Stein
Professor of Mathematics
University of Washington
http://wstein.org

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: sage -dev diff

2014-04-23 Thread Kannappan Sampath
Thank you all for suggesting that I take a look at GIT. I think I feel
better now. But, still I have gotten some questions. I am trying to review
16091.

I have checked out the ncohen's 16091 branch and have it as a local branch.
I would like to now let sage now that there has been a change in its code
due to this branch. I assume this means I run sage -b. Is this correct?

Will this let sage know that there has been a update of code?

With sincere Regards,
Kannappan.


On Wed, Apr 23, 2014 at 11:23 AM, Ralf Stephan  wrote:

> After reading a bit about SCM and git I would advise against use of sage
> -dev.
> I had used sage -dev the last weeks but now I exclusively do 'git trac'
> which
> does all I need but much better than sage -dev.
>
> Documentation is in
>
> http://trac.sagemath.org/ticket/16030
>
> Regards,
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Hadamard Designs

2014-04-23 Thread Nathann Cohen
Yo !!

> The thing is, it may be very useful for someone who has figured out how to 
> construct new t-designs for example.

We should aim at implementing all cnstruction theorems we can find. It
has to be there, invisbly working behind the scene :-P

> I shall try to get this done... For now, I will try and get around to 
> reviewing your first trivial BIBD ticket and write the patch for the 
> HadamardThreeDesign.

Good plan ! Thanks for you help ;-)

Nathann

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Hadamard Designs

2014-04-23 Thread Kannappan Sampath

On Apr 23, 2014, at 1:41 PM, Nathann Cohen  wrote:

> Hello !!
> 
>> And, we still have not thought about the nomenclature... :-) May be change 
>> the
>> Hadamard design to HadamardTwoDesign and implement these as
>> HadamardThreeDesign?
> 
> Hmmm... Well, I would vote for HadamardDesign and
> Hadamard3Design/HadamardThreeDesign. Everybody seems to agree on what
> a Hadamard Design is, and on the other hand everybody seems to agree
> on what a Hadamard 3-design is, so why change the first ? :-)

Agreed!
 
> 
>> Also, probably, we should have a generic implementation of block design,
>> where one gives us the point set, the blocks but is interested in computing
>> parametric things with it; or computing the derived design and so on... (This
>> is done in Designs package in GAP, so may be we should just borrow it!)
> 
> Well, once more I never needed any of those but I would be glad to
> review it. What I like is to implement new constructions :-P
> I lve constructions.
> 
The thing is, it may be very useful for someone who has figured out how to 
construct new t-designs for example. 

>> GIT again is the barrier! :-(
> 
> Well, it becomes rather easy very quickly... And there is a wealth of
> tutorials on internet :-)
> 
I shall try to get this done... For now, I will try and get around to reviewing 
your first trivial BIBD ticket and write the patch for the HadamardThreeDesign. 

-Kannappan. 

> Nathann
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sage-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to sage-devel@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: Directions for idioms of free objects and free abelian groups

2014-04-23 Thread Travis Scrimshaw
I've created http://trac.sagemath.org/ticket/16218 for the free objects 
and http://trac.sagemath.org/ticket/16219 for the algebras catalog.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] please review #15976

2014-04-23 Thread Martin Albrecht
Hi,

anyone up for reviewing http://trac.sagemath.org/ticket/15976 which adds an 
integer lattice class (discussed here before)?

Cheers,
Martin

signature.asc
Description: This is a digitally signed message part.


[sage-devel] Re: Building Sage with GCC 4.9

2014-04-23 Thread Jean-Pierre Flori


On Tuesday, April 22, 2014 5:42:44 PM UTC+2, leif wrote:
>
> leif wrote: 
> > leif wrote: 
> >> Is there already a ticket for issues with GCC 4.9? 
> > 
> > I think I'll open a (small) metaticket soon. 
>
> Did so: http://trac.sagemath.org/ticket/16208 
>
> Although it's (currently) not a metaticket; I also haven't pushed the 
> patches yet, but will do so soon. 
>
> Both patches (to Lcalc and PPL) are trivial, and apply to Sage 6.1.1 as 
> well as Sage 6.2.beta8. 
>
>
> >> (Release of 4.9.0 is scheduled for Tuesday, so we'll presumably face it 
> >> soon in some distros.) 
>
> I'm updating an Ubuntu LTS and it seems gcc 4.9 is shipped with it (I did 
not trigger its install myself).
Not sure it will be the default compiler though. 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: Problems in the computation of hyperbolicity.

2014-04-23 Thread david . coudert
Dear Miguel,

Memory is not the sole limitation here. The main problem is that the worst 
case time complexity is O(n^4). For instance, it took me several weeks of 
computation to determine the hyperbolicity of the latest CAIDA maps (2012 
and 2013).
There is currently no exact algorithm for computing the hyperbolicity of 
graphs with millions of nodes. In fact, for such large graphs, it is 
already challenging to compute the diameter using classical approach.

David.


On Tuesday, April 22, 2014 3:27:23 PM UTC+2, leif wrote:
>
> Vincent Delecroix wrote: 
> > I was a bit wrong with my computations. Have a look at the file 
> > SAGE_ROOT/src/sage/graphs/distance_all_pairs.pyx 
> > 
> > You will see that matrices for distances are implemented as unsigned 
> > short (whose maximum is 65535=2^16) while eccentricity is made of int 
> > (whose maximum depends on your architecture). This was made for 
> > economy of space... if you want to compute all distances for a graphs 
> > you still have this memory issue (you will need 16Go of RAM). 
>
> Well, here RAM apparently wasn't the limiting factor (otherwise the 
> function would have bailed out differently, with a MemoryError). 
>
> Obviously, the (length of a) shortest path between two vertices on a 
> graph of more than 2^16 vertices can exceed 2^16-1, and likewise the 
> current implementation cannot represent a predecessor whose "name" is 
> above 2^16-1, hence here actually /the number of vertices/ (7) is 
> the limiting factor. 
>
>
> -leif 
>
>
> > 2014-04-22 12:56 UTC+02:00, Vincent Delecroix 
> > <20100.d...@gmail.com>: 
>
> >> Hello Miguel, 
> >> 
> >> If you need support in Sage you should use the sage-support 
> >> googlegroups or ask.sagemath.org. The sage-devel mailing list is about 
> >> development and bug report. 
> >> 
> >> To answer your question, if you want to compute all distances in a 
> >> graph with more than 65535 vertices then your RAM must be greater than 
> >> 255To (because you need 65535 x 65535 x 2^16 bits of data)... in other 
> >> words it is a very very huge matrix. There is currently no hardware 
> >> that would support that quantity of data. 
> >> 
> >> 2014-04-22 12:36 UTC+02:00, Miguel Camelo 
> >> >: 
>
> >>> Hi everyone, 
> >>> 
> >>> I'm interesting in to compute both the diameter and hyperbolicity of 
> >>> large 
> >>> graphs (between 10k and 10M of nodes) using SAGE. At the beginning I 
> had 
> >>> problems computing the diameter. However I solved the problem using 
> the 
> >>> solutions presented in the ticked #15507. Then, I tried to compute the 
> >>> hyperbolicity for a random graph with 7 nodes and 209991 edges. 
> >>> However, I received the following error: 
> >>> 
> >>> hyperbolicity(graphs.RandomBarabasiAlbert(7,3)) 
> >>> Exception ValueError: ValueError('The graph backend contains more than 
> >>> 65535 nodes and we cannot compute the matrix of distances/predecessors 
> on 
> >>> something like that !',) in 
> >>> 'sage.graphs.distances_all_pairs.c_distances_all_pairs' ignored. 
> >>> 
> >>> Is there any way to solve this problem? I also saw the same problem 
> when 
> >>> I 
> >>> tried to compute the distance matrix of the graph. 
> >>> 
> >>> Thanks very much. 
> >>> 
> >>> Miguel Camelo 
>
> -- 
> () The ASCII Ribbon Campaign 
> /\   Help Cure HTML E-Mail 
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Hadamard Designs

2014-04-23 Thread Nathann Cohen
Hello !!

> And, we still have not thought about the nomenclature… :-) May be change the
> Hadamard design to HadamardTwoDesign and implement these as
> HadamardThreeDesign?

Hmmm... Well, I would vote for HadamardDesign and
Hadamard3Design/HadamardThreeDesign. Everybody seems to agree on what
a Hadamard Design is, and on the other hand everybody seems to agree
on what a Hadamard 3-design is, so why change the first ? :-)

> Also, probably, we should have a generic implementation of block design,
> where one gives us the point set, the blocks but is interested in computing
> parametric things with it; or computing the derived design and so on… (This
> is done in Designs package in GAP, so may be we should just borrow it!)

Well, once more I never needed any of those but I would be glad to
review it. What I like is to implement new constructions :-P

I lve constructions.

> GIT again is the barrier! :-(

Well, it becomes rather easy very quickly... And there is a wealth of
tutorials on internet :-)

Nathann

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Difficulty with Galois group

2014-04-23 Thread Jeroen Demeyer

On 2014-04-22 23:11, Dima Pasechnik wrote:

On 2014-04-22, Jeroen Demeyer  wrote:

On 2014-04-21 10:10, Dima Pasechnik wrote:

this is not a normal extension, and apparently neither Pari nor GAP
can deal with it.
Pathetic...
Is it really so hard to implement, having the library of permutation
groups at hand (from GAP)?

The hard part is the number theory, not the group theory. If the
splitting field is very large (that seems to be the case here), then how
would you represent elements of the Galois group?

I am pretty ignorant about the way(s) these elements become available
in this setting.
The most economic way I know offhand involves generators and relations
(either in the classical combinatorial group theory sense, or in the
sense of "vector enumeration" - when the action is defined "locally"
on a module).
Matrices or permutations aren't often too bad either - depends upon
the sparsity.
Yes, but you're thinking again in terms of group theory and, like I 
said, that's the easy part. What I'm trying to say is that there is no 
easy way to compute *any* representation of the Galois group.


--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.