Re: [sage-devel] Graph() construction with edge function

2015-10-15 Thread Jori Mäntysalo

Quoting Nathann Cohen :


So should the "edge-detection" function be required to return true for any
pair of vertices joined by an edge, or should there be an edge constructed
between any pair of vertices for which the edge-detection function returns
true?



The best for me is to request that the function should be symmetric (as it
is required in theory anyway: a graph is the result of a symmetric binary
relation), and that anything else is "undefined behaviour". This way
building a graph calls f for a total of n(n-1)/2 times (if there are no
loops), and not twice that amount.


Whatever. I can give reasons to do it either way...

But we should have a documented unified policy to this. As an example,  
if Graph(.., f) assumes f to be symmetric without checking, then  
Poset(..., f) should assume that f does not define a loop on elements  
and so on.


--
Jori Mäntysalo

--
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] Graph() construction with edge function

2015-10-15 Thread Nathann Cohen
> But we should have a documented unified policy to this. As an example, if
> Graph(.., f) assumes f to be symmetric without checking, then Poset(..., f)
> should assume that f does not define a loop on elements and so on.

Right now the Poset function does not delegate the job of building the
digraph from "vertices,f" to DiGraph but does the job itself. Could be
simplified I guess.

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.


[sage-devel] Manifold tickets ready for review

2015-10-15 Thread Eric Gourgoulhon
Dear Sage devs,

SageManifolds  has been split in various 
tickets for submission to Sage. 
They are now ready for review at
http://trac.sagemath.org/ticket/18528

This split has been the opportunity to reorganize many things in the 
project,
among which:

- the disentanglement of the topology part from the differential one, via 
the
  creation of the new class TopManifold 
,
 
from which DiffManifold 

 
inherits
- the possibility to have base fields different from the real numbers, 
opening
  the path to complex manifolds
- the gathering of all symbolic calculus under a specific class
  (CoordFunctionSymb 
),
 
the interface with the tensor calculus being
  performed only via the abstract superclass CoordFunction 
;
 
this should allow
  to implement "numerical" manifolds (for instance spacetimes resulting from
  numerical relativity codes, the idea being to use Sage to explore these 
  spacetimes)

All the objects are implemented within Sage's category framework, following
the parent/element scheme. The category for manifolds is Sets() for the
moment, but this should be changed to Manifolds() as soon as #18175 
 is ready.

The latest commit, in #19209 , 
should be the basis of the next release of
SageManifolds (v0.9) within a few days.

Comment/suggestions (and of course reviews!) are most welcome.

Eric (on behalf of the SageManifolds team).

-- 
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: [SPAM: 9.600] Fwd: [sage-trac] #10295: Upgrading pexpect

2015-10-15 Thread François Bissey
I'll go further: pexpect 3.3 (with patch) has been used in 
sage-on-gentoo for a while  now. One of the missing piece is that we need

a matching patch in sagenb which potentially means a new release of sagenb.
I don't know the current development status (or lack thereof) of sagenb
these days.

Francois

On 10/16/15 14:03, Bill Page wrote:

Is anyone interested in helping to resolve this old pexpect issue?
Dealing with the Sage development process and in particular Sage package
management is a bit beyond me but François Bissey created a branch
almost 5 months ago with an updated version of pexpect that worked with
the version of Sage available at that time.

http://git.sagemath.org/sage.git/commit/?id=80cd29cee620bb62b53a389cff5f7db4aa65b2d6

Recently one of the pexpect developers expressed an interest in helping
to resolve the issue and to that end committed a patch to pexpect to
make the wait in the read loop optional.  This would avoid having to
apply a patch for that purpose since Sage can now just call the new
version of pexpect with that option.

What steps would be necessary to get this ticket closer to the top of
the pile?

-- Forwarded message --
From: *sage-trac* mailto:t...@sagemath.org>>
Date: 14 October 2015 at 20:18
Subject: Re: [sage-trac] #10295: Upgrading pexpect
To:


#10295: Upgrading pexpect
-+-
Reporter:  SimonKing  |Owner:  was
Type:  enhancement|   Status:  new
Priority:  major  |Milestone:  sage-6.7
   Component:  interfaces |   Resolution:
Keywords:  pexpect upgrade|Merged in:
 Authors: |Reviewers:
Report Upstream:  N/A|  Work issues:
  Branch: |   Commit:
   u/fbissey/pexpect3.3   |
80cd29cee620bb62b53a389cff5f7db4aa65b2d6
Dependencies: | Stopgaps:
-+-

Comment (by bpage):

  See commit to pexpect

https://github.com/pexpect/pexpect/commit/40ce421051c0a54f3b3849424491882cf1339801

  by Jeff Quast.  Some discussion at

https://gitter.im/pexpect/pexpect

  The proposal is to make it possible for Sage to stop bundling an obsolete
  version of pexpect and to take advantage of recent improvements to pexpect
  including unicode support and support for Python 3.

--
Ticket URL: 
Sage 
Sage: Creating a Viable Open Source Alternative to Magma, Maple,
Mathematica, and MATLAB



--
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: [SPAM: 9.600] Fwd: [sage-trac] #10295: Upgrading pexpect

2015-10-15 Thread kcrisman


> I'll go further: pexpect 3.3 (with patch) has been used in 
> sage-on-gentoo for a while  now. One of the missing piece is that we need 
> a matching patch in sagenb which potentially means a new release of 
> sagenb. 
> I don't know the current development status (or lack thereof) of sagenb 
> these days. 
>

Put in a pull request, especially if it's fairly clear why it's necessary. 
 (Though I guess one would have to upgrade sagenb and pexpect 
simultaneously?) Andrey has some stuff he wants in, and I think Jeroen or 
somebody fixed a bug they introduced in master (not in Sage itself yet). 
 This is not a good time currently these couple weeks but before Sage 6.10 
I can definitely make the time.  (Or I mean there are technically speaking 
others who could make a new release as well "off the grid".)

-- 
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: [SPAM: 9.600] Fwd: [sage-trac] #10295: Upgrading pexpect

2015-10-15 Thread François Bissey

On 10/16/15 14:29, kcrisman wrote:

Though I guess one would have to upgrade sagenb and pexpect simultaneously?

 You got that part right, it will have to be simultaneous.
Bill can you update the branch for a version with the commit in
question included? Is it even released yet?

Francois

--
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: [SPAM: 9.600] Fwd: [sage-trac] #10295: Upgrading pexpect

2015-10-15 Thread Bill Page
The version of pexpect with the new option is still a branch called

https://github.com/pexpect/pexpect/tree/superfluous-sleep

I think they are waiting for us to say that it works with Sage.

Sorry, I really dont understand what is required in order to update a
branch on git.sagemath.org




On 15 October 2015 at 21:32, François Bissey <
francois.bis...@canterbury.ac.nz> wrote:

> On 10/16/15 14:29, kcrisman wrote:
>
>> Though I guess one would have to upgrade sagenb and pexpect
>> simultaneously?
>>
>  You got that part right, it will have to be simultaneous.
> Bill can you update the branch for a version with the commit in
> question included? Is it even released yet?
>
> Francois
>
>
> --
> 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] Re: [SPAM: 9.600] Fwd: [sage-trac] #10295: Upgrading pexpect

2015-10-15 Thread Francois Bissey
I can do that. I’ll see what’s involved for sage-on-gentoo I may be able
to deploy it there first.

François

> On 16/10/2015, at 15:29, Bill Page  wrote:
> 
> The version of pexpect with the new option is still a branch called
> 
> https://github.com/pexpect/pexpect/tree/superfluous-sleep
> 
> I think they are waiting for us to say that it works with Sage.
> 
> Sorry, I really dont understand what is required in order to update a branch 
> on git.sagemath.org
> 
> 
> 
> On 15 October 2015 at 21:32, François Bissey 
>  wrote:
> On 10/16/15 14:29, kcrisman wrote:
> Though I guess one would have to upgrade sagenb and pexpect simultaneously?
>  You got that part right, it will have to be simultaneous.
> Bill can you update the branch for a version with the commit in
> question included? Is it even released yet?
> 
> Francois
> 
> 
> -- 
> 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] Graph() construction with edge function

2015-10-15 Thread Rob Beezer
Dear Nathann,

Yes, I think if the documentation screams "implements a symmetric relation" 
that would be a big improvement.  And maybe a doctest illustrating how it 
can go bad?

Thanks very much for looking after this one.  I am a little familiar with 
that constructor, I'm sure you will have fun with it.  ;-)

Rob

On Wednesday, October 14, 2015 at 11:35:11 PM UTC-7, Nathann Cohen wrote:
>
> Hello,
>
> Sorry for the change in behaviour, perhaps I should write somewhere that 
> 'f' must be symmetric. I could do so in #19390, for it actually cleans the 
> constructor code and their documentation.
>
> So should the "edge-detection" function be required to return true for any 
>> pair of vertices joined by an edge, or should there be an edge constructed 
>> between any pair of vertices for which the edge-detection function returns 
>> true?
>>
>
> The best for me is to request that the function should be symmetric (as it 
> is required in theory anyway: a graph is the result of a symmetric binary 
> relation), and that anything else is "undefined behaviour". This way 
> building a graph calls f for a total of n(n-1)/2 times (if there are no 
> loops), and not twice that amount.
>
> Furthermore, I wonder where that change came from. It "may" come from the 
> graph code but really I do not see how: the constructor was patched heavily 
> recently, but that's not in the beta yet. itertools.combinations always 
> respected the ordering you give it: if 0 comes before 1 in the list, it 
> will give you (0,1) (thus the -1 in your code) and not (1,0). I don't think 
> that [0..8] ever returned [8,7,6,,0] either. Weird.
>
> I'd argue the former requires some help with the documentation, while the 
>> latter would be a change to the code/behavior.
>>
>
> I will add a "symmetric" somewhere in the doc. The amount of of guessing 
> that the graph constructor does is already beyond sanity. Just a funny 
> example I showed to a colleague yesterday:
>
> {1 : [2,3], 2: [3, 4]} # we all think of the same graph, even if 2 does 
> not name 1 as its neighbors
>
> {1 : [2,3], 2: [3, 4]} # with multiedges=True. Same result ? What do you 
> expect now ?
>
> {1 : [2,3], 2: [3, 4], 3: [1]} # with multiedges=True. And now ?
>
> {1 : [2,2], 2: [1]} # with multiedges=True. And now ? How many edges 
> between 1 and 2 ?
>
> More headaches in the two comments starting at: 
> http://trac.sagemath.org/ticket/19385#comment:17
>
> Have fuuun,
>
> 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.


[sage-devel] Fwd: [sage-trac] #10295: Upgrading pexpect

2015-10-15 Thread Bill Page
Is anyone interested in helping to resolve this old pexpect issue? Dealing
with the Sage development process and in particular Sage package management
is a bit beyond me but François Bissey created a branch almost 5 months ago
with an updated version of pexpect that worked with the version of Sage
available at that time.

http://git.sagemath.org/sage.git/commit/?id=80cd29cee620bb62b53a389cff5f7db4aa65b2d6

Recently one of the pexpect developers expressed an interest in helping to
resolve the issue and to that end committed a patch to pexpect to make the
wait in the read loop optional.  This would avoid having to apply a patch
for that purpose since Sage can now just call the new version of pexpect
with that option.

What steps would be necessary to get this ticket closer to the top of the
pile?

-- Forwarded message --
From: sage-trac 
Date: 14 October 2015 at 20:18
Subject: Re: [sage-trac] #10295: Upgrading pexpect
To:


#10295: Upgrading pexpect
-+-
   Reporter:  SimonKing  |Owner:  was
   Type:  enhancement|   Status:  new
   Priority:  major  |Milestone:  sage-6.7
  Component:  interfaces |   Resolution:
   Keywords:  pexpect upgrade|Merged in:
Authors: |Reviewers:
Report Upstream:  N/A|  Work issues:
 Branch: |   Commit:
  u/fbissey/pexpect3.3   |
80cd29cee620bb62b53a389cff5f7db4aa65b2d6
   Dependencies: | Stopgaps:
-+-

Comment (by bpage):

 See commit to pexpect


https://github.com/pexpect/pexpect/commit/40ce421051c0a54f3b3849424491882cf1339801

 by Jeff Quast.  Some discussion at

 https://gitter.im/pexpect/pexpect

 The proposal is to make it possible for Sage to stop bundling an obsolete
 version of pexpect and to take advantage of recent improvements to pexpect
 including unicode support and support for Python 3.

--
Ticket URL: 
Sage 
Sage: Creating a Viable Open Source Alternative to Magma, Maple,
Mathematica, and MATLAB

-- 
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.