#22148 closed enhancement (fixed)
Solving Sunit equations over number fields
Reported by:  malmskog  Owned by:  

Priority:  major  Milestone:  sage8.5 
Component:  number theory  Keywords:  Sunit equation, sd87, days94 
Cc:  akoutsianas, mwest  Merged in:  
Authors:  Beth Malmskog, Chris Rasmussen, Angelos Koutsianas, Alejandra Alvarado, Christelle Vincent, Mckenzie West  Reviewers:  David Roe 
Report Upstream:  N/A  Work issues:  
Branch:  0b82979 (Commits, GitHub, GitLab)  Commit:  
Dependencies:  Stopgaps: 
Description
This is a generalization of #19887.
We would like to incorporate functions to find all solutions to some classes of linear equations in the Sunits of a number field. This builds on code by Christopher Rasmussen, Beth Malmskog, and Angelos Koutsianas, with contributions by Christelle Vincent, Alejandra Alvarado, and Mckenzie West. Based on work by Baker, Smart, de Weger, Yu, and others.
Change History (80)
comment:1 Changed 4 years ago by
 Branch set to u/mwest/solving_s_unit_equations_over_number_fields
comment:2 Changed 4 years ago by
 Commit set to 6e9ec6071be93a5487fa703709c8d347cc062fd5
comment:3 Changed 4 years ago by
 Commit changed from 6e9ec6071be93a5487fa703709c8d347cc062fd5 to 3d12a9a560f91ba60042372118bc649c7b852457
Branch pushed to git repo; I updated commit sha1. New commits:
3d12a9a  constants for Baker bound, passing doctests

comment:4 Changed 4 years ago by
 Commit changed from 3d12a9a560f91ba60042372118bc649c7b852457 to 71e1969c1876d094832486ed397937cc79fd753a
Branch pushed to git repo; I updated commit sha1. New commits:
71e1969  added line to all.py in number_field to include S_unit_solver

comment:5 Changed 4 years ago by
 Cc koutsis.jr@… added
comment:6 Changed 4 years ago by
 Commit changed from 71e1969c1876d094832486ed397937cc79fd753a to 0486ff4867c06191024943f55818b1871ef931a4
Branch pushed to git repo; I updated commit sha1. New commits:
0486ff4  Added the sieve, it's in its own file, sieve.py

comment:7 Changed 4 years ago by
 Commit changed from 0486ff4867c06191024943f55818b1871ef931a4 to 190f05be1b45051d8982a4a6cd3acdf8cf2c47d2
Branch pushed to git repo; I updated commit sha1. New commits:
190f05b  Have docstrings working in S_unit_solver.py and sieve.py

comment:8 Changed 4 years ago by
 Commit changed from 190f05be1b45051d8982a4a6cd3acdf8cf2c47d2 to 9abdc79b55d96fc994124fad68d70f71af16c956
Branch pushed to git repo; I updated commit sha1. New commits:
9abdc79  All doctests passed and Sunit solver being uploaded

comment:9 Changed 4 years ago by
 Commit changed from 9abdc79b55d96fc994124fad68d70f71af16c956 to f4637ff386067124cf6812bc486228b61aa15721
Branch pushed to git repo; I updated commit sha1. New commits:
f4637ff  Seive updated, doc tests passed

comment:10 Changed 4 years ago by
 Commit changed from f4637ff386067124cf6812bc486228b61aa15721 to fa9684565ac94d403e612884ec7a9aae3acfe965
Branch pushed to git repo; I updated commit sha1. New commits:
fa96845  Singleton list no longer a list

comment:11 Changed 4 years ago by
 Status changed from new to needs_review
comment:12 Changed 4 years ago by
I haven't read through S_unit_solver.py
, but I wouldn't import everything into the global namespace in number_field/all.py
.
comment:13 Changed 4 years ago by
 Commit changed from fa9684565ac94d403e612884ec7a9aae3acfe965 to 530abc211236ada9da5bb366351243738a16b6e8
Branch pushed to git repo; I updated commit sha1. New commits:
530abc2  Adjusted number_field/all.py to only incude solve_S_unit_equation

comment:14 Changed 4 years ago by
 Status changed from needs_review to needs_work
you need to build and check the doc. For instance, the correct syntax is
EXAMPLES:: sage: 2+2 4
with a double colon after EXAMPLES and an empty line just after.
comment:15 Changed 4 years ago by
 Commit changed from 530abc211236ada9da5bb366351243738a16b6e8 to d6db07c8055d46072f2a40ef3b81bff544c84ce4
comment:16 Changed 4 years ago by
 Status changed from needs_work to needs_review
comment:17 Changed 4 years ago by
 Status changed from needs_review to needs_work
1) This is not a correct syntax (around True):
+  ````True`` or ``False``
2) ..NOTE
, INPUT:
, OUTPUT:
and REFERENCES:
should also be followed by a blank line, so this is wrong, for example:
+ ..NOTE:: + The numerator should be as close to 1 as possible, especially as the rank of the `S`units grows large
Also the next lines should then be indented if and only if the block command ends with ::
3) + Example::
should rather be EXAMPLES::
4) COMMENT:
is not a standard block command, use nothing or ALGORITHM:
5) every single function must have a nonempty EXAMPLES::
block with useful doctests
6) comparison to None should not use prec == None
but rather prec is None
7) once again, you should build the doc, and look at it, until it is completely fine !
8) This is lacking ::
+ Use CRT to check the output + + sage: CRT(2, 2, 18, 27)
as well as here:
+ The order of the moduli matters. + + sage: len(compatible_vectors(a, 18, 12))
comment:18 Changed 4 years ago by
 Commit changed from d6db07c8055d46072f2a40ef3b81bff544c84ce4 to 3c80f8e3d7817ccdc9d2f47e019a0e82840c4b96
Branch pushed to git repo; I updated commit sha1. New commits:
3c80f8e  Updated all docstrings to match formatting requirements, now we just need a few more examples and fine tuning

comment:19 Changed 4 years ago by
 Commit changed from 3c80f8e3d7817ccdc9d2f47e019a0e82840c4b96 to 95a641d54357b28a46ab225740f03b28c9871a92
Branch pushed to git repo; I updated commit sha1. New commits:
95a641d  Examples for every function

comment:20 Changed 4 years ago by
 Commit changed from 95a641d54357b28a46ab225740f03b28c9871a92 to e2c242b4fa6c4cbe70711c93adae22fd97696768
Branch pushed to git repo; I updated commit sha1. New commits:
e2c242b  Merge branch 't/22148/solving_s_unit_equations_over_number_fields' into sage76

comment:21 Changed 4 years ago by
 Commit changed from e2c242b4fa6c4cbe70711c93adae22fd97696768 to 5d19c5f767fe0854ca63f7800cb5301e29fdb28f
Branch pushed to git repo; I updated commit sha1. New commits:
5d19c5f  updating to 8.0

comment:22 Changed 4 years ago by
 Milestone changed from sage7.5 to sage8.0
comment:23 Changed 4 years ago by
 Commit changed from 5d19c5f767fe0854ca63f7800cb5301e29fdb28f to 0ba9387a43086a77f6ed3bfe70d793ea0967c23c
Branch pushed to git repo; I updated commit sha1. New commits:
0ba9387  Merge branch 'develop' into t/22148/solving_s_unit_equations_over_number_fields

comment:24 Changed 4 years ago by
 Commit changed from 0ba9387a43086a77f6ed3bfe70d793ea0967c23c to d1e56608d4b84b0e37d288ffe18cbe39154788c9
Branch pushed to git repo; I updated commit sha1. New commits:
d1e5660  adding untracked files

comment:25 Changed 4 years ago by
 Branch changed from u/mwest/solving_s_unit_equations_over_number_fields to u/ngtriant/solving_s_unit_equations_over_number_fields
comment:26 Changed 4 years ago by
 Branch changed from u/ngtriant/solving_s_unit_equations_over_number_fields to u/mwest/solving_s_unit_equations_over_number_fields
comment:27 Changed 4 years ago by
 Commit changed from d1e56608d4b84b0e37d288ffe18cbe39154788c9 to 2683f657a1d08a8ee020dd199cac376f3e613d72
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
2683f65  Adding all relevant files and changes to 8.0.rc2 on a new ticket. This is being done in place of merging and rebasing, which failed due to trailing whitespace erros.

comment:28 Changed 4 years ago by
 Status changed from needs_work to needs_review
comment:29 Changed 4 years ago by
 Keywords sd87 added
comment:30 Changed 4 years ago by
comment:31 Changed 4 years ago by
comment:32 Changed 4 years ago by
 Status changed from needs_review to needs_work
We will be restructuring the code, taking out the functions that may be useful elsewhere.
comment:33 Changed 4 years ago by
 Commit changed from 2683f657a1d08a8ee020dd199cac376f3e613d72 to 135c8cb05af7c22f3728e33c3e053d39f277acb0
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
0856ba1  Merging in required is_real_place function

357586a  Merging in required abs_val function.

28fd812  Adding all functions, doc tests passed

7ca00f8  Adding dependency of ticket 23515

81984d9  Functions added, all doc tests passed

4a13ad2  Added function to find all completely split primes less than B

fb4b993  find split primes function

efb52b6  Sieve and final function added

0b66b8f  references added

135c8cb  updated develop branch

comment:34 Changed 4 years ago by
 Dependencies set to #23476, #23479, #23509, #23515, #23516
comment:35 Changed 4 years ago by
 Commit changed from 135c8cb05af7c22f3728e33c3e053d39f277acb0 to f69ccbafdf277d531784f2528ad113ada5760014
Branch pushed to git repo; I updated commit sha1. New commits:
2683f65  Adding all relevant files and changes to 8.0.rc2 on a new ticket. This is being done in place of merging and rebasing, which failed due to trailing whitespace erros.

ba4d61c  Merging files to appease git

7c73095  Merge branch 'develop' into ticket_22148

f69ccba  Merged to 8.1.beta4

comment:36 Changed 3 years ago by
 Branch changed from u/mwest/solving_s_unit_equations_over_number_fields to u/malmskog/solving_s_unit_equations_over_number_fields
comment:37 Changed 3 years ago by
 Commit changed from f69ccbafdf277d531784f2528ad113ada5760014 to cc865ae3692a9426919695b4ba5cc4e954c69226
Branch pushed to git repo; I updated commit sha1. New commits:
cc865ae  Breaking out sieve into new function

comment:38 Changed 3 years ago by
 Reviewers set to David Roe
 Status changed from needs_work to needs_review
comment:39 Changed 3 years ago by
 Commit changed from cc865ae3692a9426919695b4ba5cc4e954c69226 to 38eed9770ceaa0d340d98238b55827736266edd7
Branch pushed to git repo; I updated commit sha1. New commits:
38eed97  Reviewer changes

comment:40 Changed 3 years ago by
 Commit changed from 38eed9770ceaa0d340d98238b55827736266edd7 to 20823996f65c6d6697a65864b7279b8d605d699b
comment:41 Changed 3 years ago by
 Branch changed from u/malmskog/solving_s_unit_equations_over_number_fields to u/mwest/solving_s_unit_equations_over_number_fields
comment:42 Changed 3 years ago by
 Commit changed from 20823996f65c6d6697a65864b7279b8d605d699b to f0d9b03dfb0272c278e32d3bc98e9fad1638c3fa
Branch pushed to git repo; I updated commit sha1. New commits:
f0d9b03  Found actual documentation error, all builds now

comment:43 Changed 3 years ago by
 Status changed from needs_review to needs_work
patchbot has found many issues.
comment:44 Changed 3 years ago by
 Branch changed from u/mwest/solving_s_unit_equations_over_number_fields to u/malmskog/solving_s_unit_equations_over_number_fields
comment:45 Changed 3 years ago by
 Commit changed from f0d9b03dfb0272c278e32d3bc98e9fad1638c3fa to 62179a5addae5441124ceb520eeb1a96eeccc811
Branch pushed to git repo; I updated commit sha1. New commits:
62179a5  Updating Sage version

comment:46 Changed 3 years ago by
 Commit changed from 62179a5addae5441124ceb520eeb1a96eeccc811 to faeeceaa7b3ba719decf934c1e7c7adb1291e2ce
Branch pushed to git repo; I updated commit sha1. New commits:
faeecea  removed solver from all.py

comment:47 Changed 3 years ago by
 Commit changed from faeeceaa7b3ba719decf934c1e7c7adb1291e2ce to 40785711e91d06b2481983a87726db2663d01f85
Branch pushed to git repo; I updated commit sha1. New commits:
4078571  Moving imports to top of doc

comment:48 Changed 3 years ago by
 Keywords sage94 added
comment:49 Changed 3 years ago by
 Keywords days94 added; sage94 removed
comment:50 Changed 3 years ago by
 Commit changed from 40785711e91d06b2481983a87726db2663d01f85 to ced950555f8f215367ca980a1d0daeea7fcc1e6c
comment:51 Changed 3 years ago by
 Branch changed from u/malmskog/solving_s_unit_equations_over_number_fields to u/mwest/solving_s_unit_equations_over_number_fields
comment:52 Changed 3 years ago by
 Commit changed from ced950555f8f215367ca980a1d0daeea7fcc1e6c to 8792981c151c7a2cf1953bdbe2de0f65c4021252
Branch pushed to git repo; I updated commit sha1. New commits:
f7f9ec0  changed xrange to range, removed unnecessary imports, removing unused variables

12bf810  More unused variables (trash, garbage, and _) and ValueErrors added to main function

8792981  Added a few more doc tests and an additional parameter 'returnBound' to solve_S_unit_equation

comment:53 Changed 3 years ago by
 Commit changed from 8792981c151c7a2cf1953bdbe2de0f65c4021252 to 486b0bef1bbbd6795ea76b78b54aba30c2a9478f
Branch pushed to git repo; I updated commit sha1. New commits:
486b0be  A few small consistency changes on Matrix construction

comment:54 Changed 3 years ago by
 Cc akoutsianas mwest added; koutsis.jr@… removed
comment:55 Changed 3 years ago by
 Commit changed from 486b0bef1bbbd6795ea76b78b54aba30c2a9478f to cf77348ef7ba67cc4b8bc2f975c3ff7585473c8e
Branch pushed to git repo; I updated commit sha1. New commits:
cf77348  Merge branch 'develop' into t/22148/solving_s_unit_equations_over_number_fields

comment:56 Changed 3 years ago by
 Commit changed from cf77348ef7ba67cc4b8bc2f975c3ff7585473c8e to 6221ade43caff6948fa7539798340d2494e12686
comment:57 Changed 3 years ago by
 Commit changed from 6221ade43caff6948fa7539798340d2494e12686 to 20c93659cb0cc8cbd2bfcf20d3f10b8ec28bd25b
Branch pushed to git repo; I updated commit sha1. New commits:
20c9365  Changes in documentation?

comment:58 Changed 3 years ago by
 Commit changed from 20c93659cb0cc8cbd2bfcf20d3f10b8ec28bd25b to 2449837f3857ee91c55e572ad66c2238d91781fa
comment:59 Changed 3 years ago by
 Commit changed from 2449837f3857ee91c55e572ad66c2238d91781fa to 642260acc18d8dc6ed6d32bc7e43b46dbd262019
Branch pushed to git repo; I updated commit sha1. New commits:
642260a  New sage

comment:60 Changed 3 years ago by
 Commit changed from 642260acc18d8dc6ed6d32bc7e43b46dbd262019 to 5ea5b821509b6ab072058f69f98d45d83d5b4b88
Branch pushed to git repo; I updated commit sha1. New commits:
5ea5b82  Merge branch 'develop' into t/22148/solving_s_unit_equations_over_number_fields

comment:61 Changed 3 years ago by
 Commit changed from 5ea5b821509b6ab072058f69f98d45d83d5b4b88 to 7e502e96f3c549ce64fa6c88aed2f3b6f568dde1
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
91bc5c2  removed some unused variables

553ea51  Adjusting documentation and code to fit with Python conventions

9cde3c2  removed unnecessary assignment

ad4d6db  Some small changes for consistency

8472bc4  Adjusting documentation and code to fit with Python conventions

a7ee30d  Add missing sagelib dependencies

309a701  Updating to latest version of sage adding in necessary ticket 26007

2328f19  Merge branch 't/23515/initial_bounds_for_solutions_to_s_unit_equation' into t/23516/use_lll_to_reduce_bounds_for_s_unit_solutions

609ca2a  Change Matrix to matrix

7e502e9  Resolved merge errors

comment:62 Changed 3 years ago by
 Status changed from needs_work to needs_review
comment:63 Changed 3 years ago by
 Branch changed from u/mwest/solving_s_unit_equations_over_number_fields to u/roed/solving_s_unit_equations_over_number_fields
comment:64 Changed 3 years ago by
 Commit changed from 7e502e96f3c549ce64fa6c88aed2f3b6f568dde1 to 5b43621d07f9c047459b0dcb0fb6dca2096a0ee6
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
5b43621  Merge branch 'u/mwest/solving_s_unit_equations_over_number_fields' of git://trac.sagemath.org/sage into t/22148/solving_s_units

comment:65 Changed 3 years ago by
 Commit changed from 5b43621d07f9c047459b0dcb0fb6dca2096a0ee6 to 96ec966aa45f979c72d68db0c0a6fd6a695b99ed
Branch pushed to git repo; I updated commit sha1. New commits:
96ec966  Small improvements to code

comment:66 Changed 3 years ago by
 Commit changed from 96ec966aa45f979c72d68db0c0a6fd6a695b99ed to b99495ebddd5c88d7418bbbea2172b487ebf54ad
Branch pushed to git repo; I updated commit sha1. New commits:
b99495e  Add long time to an LLL bound

comment:67 Changed 3 years ago by
 Commit changed from b99495ebddd5c88d7418bbbea2172b487ebf54ad to f2358824e08e83e4e480c362706ed830d5f5312f
comment:68 Changed 3 years ago by
 Commit changed from f2358824e08e83e4e480c362706ed830d5f5312f to 5ebdf406dca99fb047ac693bc44a3a4cc20ba9ad
Branch pushed to git repo; I updated commit sha1. New commits:
5ebdf40  Fix pyflakes complaints and add code for rank 0

comment:69 Changed 3 years ago by
I've added a fix for the cask that the Sunit group has rank 0 (ie quadratic imaginary with empty S). I've run all long tests, so if you're happy with the changes you can go ahead and mark this as positive review.
comment:70 Changed 3 years ago by
 Status changed from needs_review to positive_review
Thank you for taking the time to review and help Beth implement the solver as a method.
comment:71 Changed 3 years ago by
 Commit changed from 5ebdf406dca99fb047ac693bc44a3a4cc20ba9ad to 7ce917fbcfde55d9fe293a749fd858dc7ff61b52
 Status changed from positive_review to needs_review
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
7ce917f  py3 fixes

comment:72 Changed 3 years ago by
I made some fixes for Python3. Running tests, and if they all pass I'll set this back to positive review.
comment:73 Changed 3 years ago by
 Status changed from needs_review to positive_review
All tests pass, so back to positive review.
comment:74 Changed 3 years ago by
 Commit changed from 7ce917fbcfde55d9fe293a749fd858dc7ff61b52 to 0b8297978eba868e3fd8fe1a9d3d61effdd50660
 Status changed from positive_review to needs_review
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
0b82979  prec>local prec in padic LLL bound

comment:75 Changed 3 years ago by
 Status changed from needs_review to positive_review
I made a change requested by one of the authors, which I agree with. I ran all long tests, which passed. Back to positive review.
comment:76 Changed 3 years ago by
 Milestone changed from sage8.0 to sage8.5
comment:77 Changed 3 years ago by
 Dependencies #23476, #23479, #23509, #23515, #23516 deleted
comment:78 Changed 3 years ago by
 Branch changed from u/roed/solving_s_unit_equations_over_number_fields to 0b8297978eba868e3fd8fe1a9d3d61effdd50660
 Resolution set to fixed
 Status changed from positive_review to closed
comment:79 followup: ↓ 80 Changed 3 years ago by
 Commit 0b8297978eba868e3fd8fe1a9d3d61effdd50660 deleted
Two questions:
 isn't there an indentation problem in
def S_unit_solutions
? (if so please open followup ticket)  does this solve #19887?
Branch pushed to git repo; I updated commit sha1. New commits:
remove test file, add new file