Opened 6 years ago

Closed 6 years ago

#14824 closed enhancement (fixed)

Frobenius endomorphism over p-adics

Reported by: caruso Owned by: roed
Priority: major Milestone: sage-6.1
Component: padics Keywords: padics, Frobenius
Cc: Merged in:
Authors: Xavier Caruso Reviewers: Kiran Kedlaya
Report Upstream: N/A Work issues:
Branch: u/kedlaya/ticket/14824 (Commits) Commit: dc5b39339106605b2814a16fdbe99cb22db1a37a
Dependencies: Stopgaps:

Description

This patch provides a method frobenius_endomorphism which returns the Frobenius endomorphism of a p-adic field.

Here is a small demo:

sage: K.<a> = Qq(5^3)
sage: Frob = K.frobenius_endomorphism()

sage: Frob
Frobenius endomorphism on Unramified Extension of 5-adic ... lifting a |--> a^5 on the residue field
sage: Frob^12
Identity endomorphism of Unramified Extension of 5-adic Field ...

sage: Frob(a) = a.frobenius()
True

Attachments (1)

trac_14824_frobenius_endomorphism_padics.patch (13.2 KB) - added by caruso 6 years ago.

Download all attachments as: .zip

Change History (9)

comment:1 Changed 6 years ago by caruso

  • Status changed from new to needs_review

comment:2 follow-up: Changed 6 years ago by roed

  • Status changed from needs_review to needs_work
  • Why do you need to store _degree_fixed?
  • There are a couple functions without doctests, and the implementation of hash can be easily improved (use power rather than the string representation).
  • One doctest failure:
    File "/mnt/storage2TB/patchbot/Sage/sage-5.11.beta3/devel/sage/sage/rings/padics/padic_generic.py", line 566, in sage.rings.padics.padic_generic.pAdicGeneric.frobenius_endomorphism
    Failed example:
        K.frobenius_endomorphism(6) == Frob
    Expected:
        True
    Got:
        False
    

comment:3 in reply to: ↑ 2 Changed 6 years ago by caruso

  • Status changed from needs_work to needs_review

Replying to roed:

  • Why do you need to store _degree_fixed?

Oops. It was because I was first planning to implement a method fixed_points but then I gave up. It seems that I forgot to remode _degree_fixed.

  • There are a couple functions without doctests, and the implementation of hash can be easily improved (use power rather than the string representation).

Done.

  • One doctest failure:

Fixed.

comment:4 Changed 6 years ago by roed

Note that this ticket does not resolve the horrible performance of the frobenius method: see #12657. But the changes here are certainly worth incorporating, and don't need to wait on #12657.

comment:5 Changed 6 years ago by kedlaya

  • Branch set to u/kedlaya/ticket/14824
  • Created changed from 06/26/13 10:07:13 to 06/26/13 10:07:13
  • Modified changed from 01/06/14 21:27:03 to 01/06/14 21:27:03

comment:6 Changed 6 years ago by git

  • Commit set to dc5b39339106605b2814a16fdbe99cb22db1a37a

Branch pushed to git repo; I updated commit sha1. New commits:

dc5b393Merge branch 'develop' into ticket/14824

comment:7 Changed 6 years ago by kedlaya

  • Reviewers set to Kiran Kedlaya
  • Status changed from needs_review to positive_review

With help from roed, I converted this to the git workflow; it merges into 6.1beta3 with only trivial modifications. Looks good to me.

comment:8 Changed 6 years ago by vbraun

  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.