Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deal with bad chosen representations of k-regular sequences #35896

Merged
merged 41 commits into from
Jul 30, 2023

Conversation

dkrenn
Copy link
Contributor

@dkrenn dkrenn commented Jul 4, 2023

📚 Description

It deals with the situation when mu[0]*right != right in k-regular sequences.

Fixes #21343. This PR is created from the branch/code that has been on the corresponding trac ticket + merging in a current SageMath version.

See also meta issue #21202.

📝 Checklist

  • The title is concise, informative, and self-explanatory.
  • The description explains in detail what this PR is about.
  • I have linked a relevant issue or discussion.
  • I have created tests covering the changes.
  • I have updated the documentation accordingly.

⌛ Dependencies

No formal dependencies, but there are trivial merge conflicts---in both branches, methods are inserted at the same position in the code---between:

dkrenn added 25 commits August 25, 2016 20:04
…lar-warning

* t/21204/sequences/k-regular-guess:
  finish .guess (docstrings etc)
…ar-warning

* t/21204/sequences/k-regular-guess: (140 commits)
  minor correction in doc
  remove zero()
  solve troubles with doc-building
  solve troubles with doc-building
  minor correction in doc
  Updated SageMath version to 7.4.beta2
  Small change in a doctest
  Small fixes. All doctests pass (hopefully)
  Rewrite coerce_binop. Fix a bug exposed by this in fields.py
  removed base_ring option from abelian_variety() in ell_rational_field.py
  trac 21310 get rid of itervalues in the combinat folder
  trac 21308 better doc
  trac 21308 add one reference + more doc
  trac 21308 better doc
  implement the magnitude function of a graph
  12364: adding doctest
  removal of another bunch of useless .keys()
  Add traceback line to doctest
  formatting changes to automorphims in rational_field
  added automorphisms to rational_field
  ...
* t/21319/sequences/rec-hash:
  correct typo in docstring
…ar-warning

* t/21204/sequences/k-regular-guess: (2029 commits)
  fix doctest output of TestSuite (new tests were added)
  Python3: fix iteritems
  Python3: xrange
  Python3: absolut import
  Python3: absolute import
  Python3: izip
  Python3: __nonzero__
  Trac sagemath#21295: fix typos
  Trac sagemath#21295: fix ReST error
  Updated SageMath version to 7.5
  Updated SageMath version to 7.5.rc3
  Use a deterministic sorting key for number fields
  Updated SageMath version to 7.5.rc2
  22136: pkg version/chksum
  Upgrade to Python 2.7.13
  Updated SageMath version to 7.5.rc1
  amending coment and message in setup.py
  Move autogen to a more appropriate location.
  22095: better doctest
  run tests only in spkg-check. Also run spkg-check with the same options as spkg-install
  ...
…ular-warning

* u/dkrenn/sequences/k-regular-guess: (6376 commits)
  Updated SageMath version to 8.1
  Updated SageMath version to 8.1.rc4
  Updated tarball, add spkg-src and fix instructions
  fix for sagemath#24085 packaged as an update with non-official tarball
  Updated SageMath version to 8.1.rc3
  22851: make qepcad experimental
  sympy is needed by docbuild
  Updated SageMath version to 8.1.rc2
  Updated SageMath version to 8.1.rc1
  Added a comment with link to the relevant ticket
  Fixes https://trac.sagemath.org/ticket/24192
  Use correct format for nbserver_extensions
  Skip test on systems without RLIMIT_AS support
  Add patch fixing build errors in fpylll on Cygwin
  The path to lib/python/config does not contain the Python LD_VERSION on Python 2
  sagemath#24182 : update openssl package.
  increase tol
  Updated SageMath version to 8.1.rc0
  Add wikipedia link.
  Some reviewer comments.
  ...
…ular-warning

* u/dkrenn/sequences/k-regular-guess: (8211 commits)
  Updated SageMath version to 8.7
  Updated SageMath version to 8.7.rc0
  Trac sagemath#27490: Moved the alternate build_many implementation into a sage_setup.docbuild.utils module.
  Trac sagemath#27490: Further fixes in use of os.wait()
  Trac sagemath#27214: Patch GAP to allocate its memory pool using MAP_NORESERVE on Cygwin
  Trac sagemath#27490: Address some review comments and other cleanup:
  A little bit of import cleanup
  Trac sagemath#27490: Simplistic multiprocessing.Pool replacement for parallel docbuild on older Cygwin
  Fix alarm() test when cysignals was compiled with debugging
  Trac sagemath#27485: Use sdh_cmake in the spkg-install for primecount.
  Trac sagemath#27484: Add shd_cmake helper for running cmake with the correct flags for building Sage SPKGs.
  cysignals should be a normal dependency
  Upgrade to Cysignals 1.10.2
  Upgrade to notebook-5.7.6
  Trac sagemath#27461: Add abs tol on this test to account for minor numerical difference on Cygwin due to libm differences.
  Replacing None < infinity comparison with equivalent code.
  Some last little tidbits for uniformity.
  Removing some code duplication for __pth_root (changed to _pth_root_func).
  One more xderinv added.
  trac 27474: move some references to the master bibliography file.
  ...
…ar-warning

* t/21204/sequences/k-regular-guess: (11522 commits)
  Trac sagemath#21204: fixup code and tests
  Trac sagemath#21204: cherry-pick to avoid merge conflict
  Trac sagemath#21319: fixup due to changes in dependencies
  Trac sagemath#21318: fixup due to recent changes in dependencies
  Updated SageMath version to 9.3
  build/pkgs/fplll/spkg-install.in: Configure --without-qd if we use gcc from spkg
  build/pkgs/fplll/spkg-configure.m4: Add depcheck on gcc
  build/pkgs/ppl/spkg-configure.m4: Add depcheck on gcc
  build/pkgs/brial/spkg-configure.m4: Add depcheck on gcc
  build/pkgs/{freetype,libgd}/spkg-configure.m4: Add depcheck for gcc
  build/pkgs/zeromq/spkg-configure.m4: Add depcheck for gcc
  build/pkgs/ntl/spkg-configure.m4: Add depcheck for gcc
  Trac sagemath#21295 review issue 29: notice minimize vs field
  Trac sagemath#21295 review issue 7: document accessing coefficients
  Trac sagemath#21295 review issue 33: rename to number_of_zeros (as it should be)
  Trac sagemath#21203 review issue 4: rename to coefficient ring
  Trac sagemath#21295: rename to coefficient_ring
  Trac sagemath#21203 review issue 3: example for __getitem__ and __iter__
  Trac sagemath#21203 review issue 2: extend odds in Pascal's triangle
  Trac sagemath#21203 review issue 1: better binary sum of digits
  ...
…ar-warning

* t/21204/sequences/k-regular-guess:
  Trac sagemath#21204: fix punctuation
  Trac sagemath#21319: fix punctuation
  Trac sagemath#21318: rmul/lmul preserve identity for multiplying by 1
  Trac sagemath#21325: fixup test .subsequence being identity
  Trac sagemath#21318: rmul/lmul preserve identity for multiplying by 1
  Trac sagemath#21325: use (new) decorator minimize_result
  Trac sagemath#21325: remove empty lines, fix punctuation
  Trac sagemath#21325: remove iteritems
  Trac sagemath#21318: fix rmul/lmul issues
  Trac sagemath#21318: use "correct" 1
  Trac sagemath#21318: use tensor_product in method hadamard_product
  Trac sagemath#21318: use is_trivial_zero in doctest of _neg_
  Trac sagemath#21318: use (new) .linear_representation in doctests
  Trac sagemath#21318: fix empty lines and punctuation
  Trac sagemath#21318: decorator minimize_result
  Trac sagemath#21203 review issue 10: use "raise ... from None" where approriate
…ar-warning

* t/21204/sequences/k-regular-guess: (2107 commits)
  Follow-up from Trac sagemath#21325 review comment 19: shift_left+right: test equality
  Trac sagemath#21325 review comment 19: shift_left, shift_right
  Trac sagemath#21325 review comment 18: deal with remaining block vectors
  Trac sagemath#21325 review comment 17: simpler (more readable) construction of block matrix
  Trac sagemath#21325 review comment 14+15: rewrite construction dict
  Trac sagemath#21325 review comment 13: use .linear representation in examples partial_sum
  Trac sagemath#21325 review comment 12: fixup docstring partial_sums
  Trac sagemath#21325 review comment 11: simplify construction and code for left vector
  Trac sagemath#21325 review comment 9: add comment in inner loop
  Trac sagemath#21325 review comment 8: more rewriting to use block structure
  Trac sagemath#21325 review comment 8: rewrite subsequences to use block matrices
  Trac sagemath#21325 review comment 7: rewrite dict-constrution
  Trac sagemath#21325 review comment 6: test matrices of output
  Trac sagemath#21325 review comment 4: explicitly state vector in example
  Trac sagemath#21325 review comment 5: use .linear_representation
  Trac sagemath#21325 review comment 4: simplify lineare representation of example-sequence (subsequence)
  Trac sagemath#21325 review comment 3: revise description of parameter b of subsequence
  Trac sagemath#21325 review comment 2: PEP8 in examples of pad_right
  Trac sagemath#21325 review comment 1: fix docstring formatting in pad_right
  Updated SageMath version to 9.4
  ...
…ular-warning

* u/dkrenn/sequences/k-regular-guess: (12501 commits)
  test RuntimeError no invertible matrix
  add comment and ref to sagemath#35748
  remove W293 blank line contains whitespace
  fix docstring (LaTeX)
  fix whitespaces
  better handling of n_max
  add another test
  add another test
  fixup n_max
  fix left/right issue when bootstraping guessing
  more consistent naming in DEBUG output
  consequently rename to linear_combination
  simplify code by removing variables
  make NoLinearCombination a RuntimeError
  remove unneeded import
  Apply suggestions from code review
  Apply suggestions from code review
  write error message
  rename, describe and test max_exponent
  fixup catching NoLinearCombination exception
  ...
@dkrenn dkrenn marked this pull request as ready for review July 4, 2023 18:17
Copy link
Contributor

@cheuberg cheuberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here are my remarks on this PR.

Co-authored-by: cheuberg <clemens.heuberger@aau.at>
Copy link
Contributor

@cheuberg cheuberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(basically just a marker that I reviewed the last changes)

dkrenn added 5 commits July 19, 2023 11:09
…ular-warning

* u/dkrenn/sequences/k-regular-guess:
  Update src/sage/combinat/k_regular_sequence.py
  fix left/right vector sequence issue in docstrings
  implement coefficient_of_n (for __getitem__)
  break long line in doctest
… u/dkrenn/k-regular-warning

* origin/u/dkrenn/k-regular-warning:
  Apply suggestions from code review
Copy link
Contributor

@cheuberg cheuberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes LGTM, open discussion(s)

@dkrenn
Copy link
Contributor Author

dkrenn commented Jul 20, 2023

Changes LGTM, open discussion(s)

I've dealt with all open discussions; please review.

Copy link
Contributor

@cheuberg cheuberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you, LGTM. The reference [HKL2021] did appear, I prepared a PR to be pulled into this branch here: dkrenn#2

Update reference [HKL2021]: Appeared in 2022
Copy link
Contributor

@cheuberg cheuberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From my point of view, this PR is ready to be merged. @dkrenn, can you please set appropriate labels?

@github-actions
Copy link

Documentation preview for this PR (built with commit 9567449; changes) is ready! 🎉

@dkrenn
Copy link
Contributor Author

dkrenn commented Jul 25, 2023

Failing checks seem to be unrelated to the changes of this PR: incremental build fails with some OSError at matlibplot, Lint/RST in schemes.projective, codecov only brings up false-positives.

@vbraun vbraun merged commit 66baa6a into sagemath:develop Jul 30, 2023
@mkoeppe mkoeppe added this to the sage-10.1 milestone Jul 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

deal with bad chosen representations of k-regular sequences
4 participants