Inconsistent cmp for p-adics
Reported by: |
saraedum |
Owned by: |
|
Priority:
|
minor
|
Milestone:
|
|
Component:
|
padics
|
Keywords:
|
cmp
|
Cc:
|
roed, slelievre, caruso
|
Merged in:
|
|
Authors:
|
|
Reviewers:
|
|
Report Upstream:
|
N/A
|
Work issues:
|
|
Branch:
|
|
Commit:
|
|
Dependencies:
|
|
Stopgaps:
|
|
As reported in https://ask.sagemath.org/question/48658/possible-bug-in-_cmp_-function/ cmp
is inconsistent for p-adics, i.e., a<b
does not imply b>a
. While ordering p-adics has no deep meaning, it should at least be consistent.
The problem seems to be in ccmp
doing the following
mpz_sub(holder.value, a, b)
mpz_mod(holder.value, holder.value, prime_pow.pow_mpz_t_tmp(prec))
return mpz_sgn(holder.value)
But mpz_mod is always non-negative.
Change History (10)
Milestone: |
sage-9.0 →
sage-9.1
|
Milestone: |
sage-9.1 →
sage-9.2
|
Milestone: |
sage-9.2 →
sage-9.3
|
Milestone: |
sage-9.3 →
sage-9.4
|
Milestone: |
sage-9.4 →
sage-9.5
|
Milestone: |
sage-9.5 →
sage-9.6
|
Milestone: |
sage-9.6 →
sage-9.7
|
Milestone: |
sage-9.7 →
sage-9.8
|
Cc: |
caruso added; xcaruso removed
|
Ticket retargeted after milestone closed