Opened 7 years ago
Closed 7 years ago
#18097 closed enhancement (fixed)
Parity check matrix-related methods
Reported by: | dlucas | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-6.6 |
Component: | coding theory | Keywords: | sd66 |
Cc: | jsrn | Merged in: | |
Authors: | David Lucas | Reviewers: | Vincent Delecroix |
Report Upstream: | N/A | Work issues: | |
Branch: | bcf4700 (Commits, GitHub, GitLab) | Commit: | bcf4700ee253600230d2bb268f39da99c5d5e4be |
Dependencies: | Stopgaps: |
Description (last modified by )
Computing the syndrome of a vector is useful for many things (eg: decoding) in coding theory, but linear code does not have any syndrome method.
Besides, actual parity-check matrix computation creates a new LinearCode
object. It can be enhanced in a way where this new object is not created anymore.
Furthermore, linear_code does not have a latex
method.
Change History (9)
comment:1 Changed 7 years ago by
- Branch set to u/dlucas/new_methods_in_linear_code
comment:2 Changed 7 years ago by
- Cc jsrn added
- Commit set to a323216099a43a1b697b67228966d479acf7e604
- Description modified (diff)
- Status changed from new to needs_review
comment:3 follow-up: ↓ 5 Changed 7 years ago by
- Status changed from needs_review to needs_info
comment:4 Changed 7 years ago by
- Commit changed from a323216099a43a1b697b67228966d479acf7e604 to 7ccc3697013b26972ade7007b2bbf5b154779fed
Branch pushed to git repo; I updated commit sha1. New commits:
7ccc369 | Fixed doctests and code for syndrome
|
comment:5 in reply to: ↑ 3 Changed 7 years ago by
Hello,
I fixed docstring and doctests for syndrome
method.
Regarding
I tried to see the path used by your syndrome method. It is quite complicated as it goes through the dual code. This is relatively fast on the small examples you have but might be a trouble if you rely intensively on this method later on. Isn't there something more efficient?
I removed this behaviour in my first commits, so I did not change anything in the new commit ;-)
comment:6 Changed 7 years ago by
- Status changed from needs_info to needs_review
comment:7 Changed 7 years ago by
- Commit changed from 7ccc3697013b26972ade7007b2bbf5b154779fed to bcf4700ee253600230d2bb268f39da99c5d5e4be
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
bcf4700 | Fixed doctests and code for syndrome
|
comment:8 Changed 7 years ago by
- Reviewers set to Vincent Delecroix
- Status changed from needs_review to positive_review
All test pass. Good to go.
sided note: we notice at sage days 66 that matrices cache ther kernel! It is very weird but makes the solution in this ticket very fast
sage: m = random_matrix(GF(11), 4, 2) sage: m.right_kernel() is m.right_kernel() True
comment:9 Changed 7 years ago by
- Branch changed from u/dlucas/new_methods_in_linear_code to bcf4700ee253600230d2bb268f39da99c5d5e4be
- Resolution set to fixed
- Status changed from positive_review to closed
Hello,
From what I understand from your examples, I guess that having no syndrome means that you belong to the code. If so, it would be cool to have it in the documentation.
I tried to see the path used by your syndrome method. It is quite complicated as it goes through the dual code. This is relatively fast on the small examples you have but might be a trouble if you rely intensively on this method later on. Isn't there something more efficient?
Does it make sense only for vectors in
GF(2)
? Otherwise, please add examples with more exotic finite fields.Vincent