[sage-devel] Re: Policy for disputed PRs: discussion

2023-12-30 Thread Kwankyu Lee
Wish you a happy new year!

A year ago, we successfully escaped from a sinking issue management system.

Hopefully, the new year will save us from the current spiral that's 
drowning us.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/395d4304-df2f-410b-934c-f6d843509b03n%40googlegroups.com.


[sage-devel] Re: Policy for disputed PRs: discussion

2023-12-30 Thread Matthias Koeppe
The most recent response in this discussion thread was posted over 3 weeks 
ago.
(There has been major activity on PRs linked in some of the posts, though.)

Do we have a timeline for the next step in this effort?

Best wishes for the new year to all members of the Sage community!
Matthias
On Friday, November 24, 2023 at 8:18:34 AM UTC-8 David Roe wrote:

> Hi all,
> I'm writing about an issue that I think is causing substantial harm to the 
> Sage community: the only current mechanism we have for resolving a 
> disagreement is to call a vote on this email list.  There are certainly 
> times where this is an appropriate response, and I think it's still 
> reasonable for policy disagreements or major decisions, but I would like to 
> create an alternative resolution process that doesn't require emailing a 
> list with 2578 members.
>
> The need for such a process is highlighted by several recent disputes; see 
> #36694  and #35403 
>  for example, but there are 
> others.  The particular case I would like to address is where there is a 
> general consensus, but one person (or a few people) disagree.
>
> Here is a proposed policy, which I am happy to revise:
>
> If there are at least twice as many developers in favor of a change as 
> there are opposed (which may include the author of a PR), then any 
> developer may set the PR to positive review and those opposed should not 
> set it back, as long as both of the following conditions are satisfied:
> * it has been at least one week since an initial objection was raised,
> * all of the participants being counted in favor have commented on the PR 
> since the initial objection.
>
> Of course, consensus is preferable, and this policy would not relieve us 
> all of the responsibility to make persuasive arguments in favor of our 
> positions.  But I think we need a mechanism of this kind when consensus 
> can't be reached.  Also note that an objector is welcome to attempt to 
> bring others into the discussion on their side if they remain firmly 
> opposed.
>
> I hope that others can suggest improvements to the idea above, and remind 
> everyone to keep the discussion positive and civil.  I plan to call a vote 
> on whatever proposal comes out of our discussion.
> David
>
>
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/ce779705-967c-4775-86f5-1d21f00a091dn%40googlegroups.com.


Re: [sage-devel] PolynomialRing().random_element() returns 0 rather often.

2023-12-30 Thread Maxime Bombar

On 12/30/23 13:43, Georgi Guninski wrote:

Just FYI:

def testquotient2():
 set_random_seed(1);p=next_prime(10**120);Kx=Integers(p)['x']
 l=[Kx.random_element() for _ in range(100)]
 return l.count(0)
testquotient2()
27


Hi,

this is because PolynomialRing().random_element() takes an optional 
argument degree which should either be an integer greater or equal to 
-1, or an ordered pair of such integers which defines an integer range 
in which the degree is selected uniformly at random. By convention, 
degree -1 yields the 0 polynomial, degree 0 yields a constant non zero 
and so on.


By default, this argument is set to (-1, 2), which means that which 25% 
probability, degree -1 will be selected, and this is exactly what you 
observe with your experiment. But you can set degree to whatever suits 
you better, e.g. starting with 0 instead of -1 to avoid the 0 polynomial.


For more information:

https://doc.sagemath.org/html/en/reference/polynomial_rings/sage/rings/polynomial/polynomial_ring.html#sage.rings.polynomial.polynomial_ring.PolynomialRing_general.random_element 



Best,

--
Maxime

--
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/401e78b2-baf4-4209-b9e1-1eec1e05e61f%40inria.fr.


[sage-devel] Re: PolynomialRing().random_element() returns 0 rather often.

2023-12-30 Thread Nils Bruin
This is documented (almost). The routine generates polynomials with degrees 
in a given range, with by default is -1..2 . It chooses the degree 
uniformly (the documentation doesn't specify this), so one would expect 33% 
degree -1, i.e., the 0 poly. I have a hard time thinking of situations 
where this is the distribution one would want.

Over a finite field perhaps you're more interested in the uniform 
distribution on polynomials of degree at most N. Then 
Kx([GF(p).random_element() for _ in range(N+1)]) would be better.

On Saturday 30 December 2023 at 04:43:44 UTC-8 Georgi Guninski wrote:

> Just FYI:
>
> def testquotient2():
> set_random_seed(1);p=next_prime(10**120);Kx=Integers(p)['x']
> l=[Kx.random_element() for _ in range(100)]
> return l.count(0)
> testquotient2()
> 27
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/61b0120b-9d2a-4470-a00a-d64cd65707f7n%40googlegroups.com.


[sage-devel] PolynomialRing().random_element() returns 0 rather often.

2023-12-30 Thread Georgi Guninski
Just FYI:

def testquotient2():
set_random_seed(1);p=next_prime(10**120);Kx=Integers(p)['x']
l=[Kx.random_element() for _ in range(100)]
return l.count(0)
testquotient2()
27

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/CAGUWgD_eXb%2BJi_CVBCC5_Q%3DiYhg0A%3DKnvZZCAbG9Fv-NKYSL7A%40mail.gmail.com.