Opened 7 years ago

Closed 7 years ago

#13616 closed defect (fixed)

SIGABRT in unit_part() for padic extension elements

Reported by: saraedum Owned by: roed
Priority: critical Milestone: sage-5.5
Component: padics Keywords:
Cc: roed Merged in: sage-5.5.rc1
Authors: David Roe Reviewers: Volker Braun
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description

The following code produces a SIGABRT:

sage: R = Zp(5,5)
sage: S.<x> = R[]
sage: f = x^5 + 75*x^3 - 15*x^2 +125*x - 5
sage: W.<w> = R.ext(f)
sage: z = (1+w)^5
sage: y = z - 1
sage: t=y-y
sage: t.unit_part()
fatal error:
   internal error: can't grow this _ntl_gbigint
exit...

Attachments (1)

13616.patch (2.2 KB) - added by roed 7 years ago.

Download all attachments as: .zip

Change History (5)

comment:1 Changed 7 years ago by saraedum

  • Cc roed added

I added print statements, and it seems that the line

ans.unit = self.unit

is causing the trouble.

I have no clue what could be the problem here. Do you have any hints?

Changed 7 years ago by roed

comment:2 Changed 7 years ago by roed

  • Status changed from new to needs_review

The problem is that _normalize deletes self.unit if there's no relative precision, since NTL can't handle modulus 50. The attached patch fixes the problem and adds some documentation for fixed modulus elements.

Last edited 7 years ago by roed (previous) (diff)

comment:3 Changed 7 years ago by vbraun

  • Authors set to David Roe
  • Reviewers set to Volker Braun
  • Status changed from needs_review to positive_review

comment:4 Changed 7 years ago by jdemeyer

  • Merged in set to sage-5.5.rc1
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.