cyclovandermonde
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: arxiv.org, zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.2%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: edoars
- License: apache-2.0
- Language: Rust
- Default Branch: main
- Size: 905 KB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 2
Metadata Files
README.md
Condition number of cyclotomic Vandermonde matrices
Rust library associated to the article DSS21.
Provides an efficient function to compute the condition number of V_n, the Vandermonde matrix associated with the nth cyclotomic polynomial.
The condition number is computed via the trace of the matrix H_n, as shown in DSS20.
Contributors are: - Antonio J. Di Scala - Carlo Sanna - Edoardo Signorini
Installation
This crate can link with three LAPACK implementation. Default is Intel MKL. For more information on the supported features see ndarray_linalg.
To install clone the repository and build with cargo (release mode is recommended):
sh
cargo build --release
Usage
The library has a command line interface, which can be called via cargo run. There are two main commands get andtable, visible via the --help option:
```sh $ cargo run --release -- --help cyclovander_cli 1.0.0
USAGE:
cyclovander_cli [FLAGS]
FLAGS: -h, --help Prints help information -t, --trace Compute trace instead of condition number -V, --version Prints version information
SUBCOMMANDS: get Output for integer n help Prints this message or the help of the given subcommand(s) table Generate table from file ```
Both commands have a global option --trace, which determines the computation of the trace of H_n rather than the condition number of V_n. The latter is calculated by default.
Get
The get command returns the conditioning number of V_n where n is a user-specified parameter:
sh
$ cargo run --release -- get 105
159.5422022090528
Or, with the --trace option, the trace of H_n:
sh
$ cargo run --release -- --trace get 105
1160
Table
The table command takes as input a text file where a decimal integer must be present in each line, such as data/sq_100.txt which contains the first 100 squarefree integers:
3
5
6
7
10
11
...
Returns the table that has as columns the input integer n and the condition number of V_n
sh
$ cargo run --release -- table data/sq_100.txt
n Cond(V_n)
3 2.309401076758503
5 5.059644256269407
6 2.309401076758503
7 7.855844048495725
10 5.059644256269407
11 13.48399724926484
...
Or, with the --trace option, the table that has as columns the input integer n and the trace of H_n:
sh
$ cargo run --release -- --trace table data/sq_100.txt
n Tr(H_n)
3 4
5 8
6 8
7 12
10 16
11 20
...
The table command can be used with the--threads option to use multiple threads and parallelize the computation.
Reproducibility of results
The graph in the article shows the conditioning number of the first 10000 squarefree integers. The graph is generated via the sage script graph.sage prendendo in input la tabella generata con il comando table.
In particular, the graph can be reproduced as follows:
- Generate a file with the first 10000 squarefree integers (e.g. using
table.sage) or usedata/sq_10000.txt. - Use the
tablecommand with the above file to get the table with conditioning numbers. The same table is available indata/res_10000.csv. - Use the sage script to generate the graph.
sh
$ graph.sage data.csv output.png

Owner
- Name: Edoardo Signorini
- Login: edoars
- Kind: user
- Location: Italy
- Company: Telsy
- Twitter: edoars
- Repositories: 16
- Profile: https://github.com/edoars
Cryptographer and PhD student at Telsy and PoliTO
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Signorini
given-names: Edoardo
orcid: https://orcid.org/0000-0002-1224-6732
title: "Condition number of cyclotomic Vandermonde matrices"
version: 1.0
doi: 10.5281/zenodo.5833812
date-released: 2022-01-10
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- 181 dependencies
- criterion 0.3.5 development
- pprof 0.5.0 development
- ndarray 0.15.2
- ndarray-linalg 0.14.1
- num 0.4.0
- red_primality 0.2.0