Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge #180: checksum: introduce
PrintImpl
object that can compute v…
…arious code properties caefc44 checksum: add unit test to print parameters of the descriptor checksum (Andrew Poelstra) b44431f checksum: introduce `PrintImpl` object to print `impl Checksum` blocks (Andrew Poelstra) 65aefd2 gf_ext: add cubic extension field of GF32, GF32768 (Andrew Poelstra) 4c06f72 PackedFe32: introduce ability to re-pack elements (Andrew Poelstra) a24825d primitives: introduce `Polynomial` type, generator polynomial analysis (Andrew Poelstra) cf545e4 primitives: add extension field module, define GF1024 (Andrew Poelstra) 8b08535 primitives: introduce Field trait (Andrew Poelstra) bd6f2f6 bump MSRV to 1.56.1. (Andrew Poelstra) Pull request description: This PR does a couple things: * Bumps the MSRV to 1.56.1 to match rust-bitcoin (and get us const generics which are useful for defining extension fields) as well as cleaning up a couple warnings. * Introduces the GF1024 field, a simple polynomial type, the Chein root-finding algorithm, and a couple other misc algorithms that will be useful for error correction. (All this is internal and not reflected in the public API.) * Introduces the GF32768 field which will be needed for error correction of the descriptor checksum. * To demonstrate this new functionality, adds an object to the API which can produce the `impl Checksum` block for codes which can be corrected using a quadratic or cubic field extension. This will hopefully provide some context for people not super familiar with BCH code about where these magic numbers come from. We also add unit tests that produce the parameters for codex32 and the descriptor checksum. A later PR will introduce more parameters which will be needed for error correction. ACKs for top commit: clarkmoody: ACK caefc44 Tree-SHA512: a2408123e61b029f61e51cc9678e8c285c989316eb3e629b522f5d0724f29b727dd76054d3e1545504619711f8b0d086c0bafb4da287b55223f40e8798b04b23
- Loading branch information