Congratulations on the new p-adic model. This really looks very promising and extensible. A few remarks:
- It should be possible to create elements with a given precision, without the overhead of first creating the elements to the entire "cap": If you don't know the precision you'll need yet, you would probably create a ring with a huge cap and just create all your elements with way lower precision (having a huge cap floating around should not be very costly). You can just lift your elements to higher precision when it turns out you need more. - Currently trying to create an element in a "lazy" ring leads to a Exception (click to the left for traceback): File "integer.pyx", line 669, in integer.Integer.__pow__ TypeError: exponent (=lazy) must be an integer Coerce your numbers to real or complex numbers first. (that's the pyrex "**" thing I guess) - We're going to need a "lifttoprecision" method that returns an element with a changed precision. For lowering the precision you already have add_bigoh, but one needs to be able to obtain a lift of an element too (for instance, if you want to increase precision using newton iteration, you need to create the room first) - I assume the ringextension is just a rough first draft? The following was rather disconcerting: sage: Zp=pAdicRing(3) sage: ZpX.<X>=Zp[] sage: R=pAdicRingExtension(X^2-3) sage: R.uniformiser(); 3 + O(3^21) In general, the ramified extensions cannot completely be implemented via polynomial quotient rings, and you'll find relating precisions in the extensions with precisions in the base ring to be a general headache. Another thing: R.<a>=pAdicRingExtension(X^2-3) throws an error at the moment (we cannot name the new generator!) Uniqueness of rings: in the future, I'm sure we'll be able to ask for: K.<i>=NumberField(x^2+1) Q5a,KtoQ5a=Completion(K,Place(2+i)) Q5b,KtoQ5b=Completion(K,Place(2-i)) Are Q5a, Q5b going to be the same ring with all the difference relegated to the embedding maps of K? Are Q5a, Q5b going to have coersions from K? Are Q5a, Q5b going to be wrapper classes around the same pAdicField(5) to distinguish their relation to K? I'm happy to take this conversation to a different platform if appropriate. --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---
