sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.28k stars 438 forks source link

Kash interface for FunctionField code #25494

Open BrentBaccala opened 6 years ago

BrentBaccala commented 6 years ago

Our current function field code has recently been revised and improved, and released in Sage 8.7.

This ticket adds support to the new code for using the optional kash package as an implementation option.

The major advantage of Kash is that it supports characteristic zero (i.e, function fields over QQ and number fields), while our current native code only works over finite fields. This implementation also supports QQbar, even though Kash doesn't support it natively.

Kash should also be useful for double-checking our results as the native implemention moves forward.

Using this code requires the kash3 package to be installed, i.e, run

sage -p kash3

Depends on #25488 Depends on #25219 Depends on #26991 Depends on #26993

Component: algebra

Keywords: function field

Author: Brent Baccala

Branch/Commit: public/25494 @ 210e654

Issue created by migration from https://trac.sagemath.org/ticket/25494

BrentBaccala commented 6 years ago

Commit: 9807414

BrentBaccala commented 6 years ago

Branch: public/25494

BrentBaccala commented 6 years ago

New commits:

388b7f2Stable branch for Trac 22982
86d7962improve Kash interface
6953805improve Kash interface
9ec365fTrac #25488: fix boolean conversion in kash interface
e458137Trac #25488: evade bizarre dictionary problem
9807414Trac #25494: basic function field operations over QQ
BrentBaccala commented 6 years ago

Author: Brent Baccala

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 6 years ago

Changed commit from 9807414 to a6d5709

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 6 years ago

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

cfc6cf7Trac #25488: fix kash _contains() method
a6d5709Trac #25494: allow prime finite fields as constant fields
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 6 years ago

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

7712940Trac #25494: refactor divisor methods
20620b2Trac #25494: use refactored code from last commit
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 6 years ago

Changed commit from a6d5709 to 20620b2

BrentBaccala commented 5 years ago

Description changed:

--- 
+++ 
@@ -6,8 +6,8 @@

 Kash should also be useful for double-checking our results as the native implemention moves forward.

-Using this code requires the `kash` package to be installed, i.e, run
+Using this code requires the `kash3` package to be installed, i.e, run

-sage -i kash +sage -p kash3

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

Changed commit from 20620b2 to 7e20cc2

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

96ee4b1Trac #26993: clean up inherited methods in DifferentialsSpaceMorphism
8621500Trac #26993: differential class shouldn't be hardwired; instead
6625b94Merge branch 'public/26993' into public/25494
8a99b04Trac #25494: bug fix: a divisor's parent should be the divisor group
dfa75b5Trac #25494: use the proper method to get base field's generator
b8e57b8Trac #25494: fix tests that c19fa0 broke
fe945f1Trac #25494: fix tests to reflect new divisor print representation
a6c24d8Trac #25494: a failing example needed QQbar display format 'radical'
5a6ca76Trac #25494: bug fix: correctly assign ``order`` when converting a place
7e20cc2Trac #25494: add 'optional - kash' to all kash examples and tests
BrentBaccala commented 5 years ago

Changed dependencies from #22982, #25488 to #25488, #25219, #26991, #26993

BrentBaccala commented 5 years ago

Description changed:

--- 
+++ 
@@ -1,8 +1,8 @@
-Our current function field code is being revised (Trac #22982 is a meta-ticket tracking this progress).
+Our current function field code has recently been revised and improved, and released in Sage 8.7.

 This ticket adds support to the new code for using the optional `kash` package as an `implementation` option.

-The major advantage of Kash is that supports infinite coefficient fields (i.e, `QQ` and number fields), while our current native code only works over finite fields.
+The major advantage of Kash is that it supports characteristic zero (i.e, function fields over `QQ` and number fields), while our current native code only works over finite fields.  This implementation also supports `QQbar`, even though Kash doesn't support it natively.

 Kash should also be useful for double-checking our results as the native implemention moves forward.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

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

08b478fTrac #25494: clean up test cases
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

Changed commit from 7e20cc2 to 08b478f

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

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

feac283Trac #25494: fix and improve kash differential divisor_of_poles() method
210e654Trac #25494: fix and improve code to extend constant field
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

Changed commit from 08b478f to 210e654

embray commented 5 years ago
comment:11

As the Sage-8.8 release milestone is pending, we should delete the sage-8.8 milestone for tickets that are not actively being worked on or that still require significant work to move forward. If you feel that this ticket should be included in the next Sage release at the soonest please set its milestone to the next release milestone (sage-8.9).