Ticket #13616 (closed defect: fixed)

Opened 7 months ago

Last modified 5 months ago

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 Work issues:
Report Upstream: N/A Reviewers: Volker Braun
Authors: David Roe Merged in: sage-5.5.rc1
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

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

Change History

comment:1 Changed 7 months 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 months ago by roed

comment:2 Changed 7 months 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 months ago by roed (previous) (diff)

comment:3 Changed 6 months ago by vbraun

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

comment:4 Changed 5 months ago by jdemeyer

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