Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 03-May-2022 | - | ||||
examples/ | H | 03-May-2022 | - | 393 | 343 | |
src/ | H | 03-May-2022 | - | 4,417 | 2,619 | |
tests/ | H | 03-May-2022 | - | 236 | 188 | |
.cargo-checksum.json | H A D | 03-May-2022 | 89 | 1 | 1 | |
.cargo_vcs_info.json | H A D | 02-Mar-2020 | 74 | 6 | 5 | |
Cargo.lock | H A D | 02-Mar-2020 | 9.6 KiB | 381 | 338 | |
Cargo.toml | H A D | 02-Mar-2020 | 1.3 KiB | 54 | 46 | |
Cargo.toml.orig-cargo | H A D | 02-Mar-2020 | 856 | 30 | 25 | |
LICENSE | H A D | 02-Mar-2020 | 11.1 KiB | 203 | 169 | |
README.md | H A D | 02-Mar-2020 | 2.2 KiB | 53 | 42 |
README.md
1<p align="center"> 2 <a href="https://crates.io/crates/alga"> 3 <img src="http://meritbadge.herokuapp.com/alga?style=flat-square" alt="crates.io"> 4 </a> 5 <a href="https://travis-ci.org/rustsim/alga"> 6 <img src="https://travis-ci.org/rustsim/alga.svg?branch=master" alt="Build status"> 7 </a> 8</p> 9<p align = "center"> 10 <strong> 11 <a href="https://docs.rs/alga">Documentation</a> 12 </strong> 13</p> 14 15alga − abstract algebra for Rust 16======== 17 18**alga** aims to provide solid mathematical abstractions to algebra-focused 19applications. It defines and organizes through trait inheritance the basic 20building blocks of general algebraic structures. Specific implementations of 21algebraic structure traits are left to other crates. Higher-level traits for 22specialized domains of algebra (like linear algebra) are also provided and will 23prove useful for applications that include code that is generic wrt. the 24algebraic entity types. 25 26Examples of types that could derive from traits defined in **alga**: 27 28- Integers, reals and rationals numbers 29- Complex numbers 30- Polynomials 31- Matrices and vectors 32- Quaternions and octonians 33- Strings under concatenation 34 35**alga** started as a fork of [algebra](https://crates.io/crates/algebra). 36 37## References 38 39### Interesting papers 40 41- [The Scratchpad II Type System: Domains and Subdomains](http://www.csd.uwo.ca/~watt/pub/reprints/1990-miola-spadtypes.pdf) 42- [Fundamental Algebraic Concepts in Concept-Enabled C++](ftp://cgi.cs.indiana.edu/pub/techreports/TR638.pdf) 43 44### Inspiring Libraries 45 46- [Numeric Prelude](http://www.haskell.org/haskellwiki/Numeric_Prelude) (Haskell) 47- Edward A. Kmett's [algebra package](http://hackage.haskell.org/package/algebra-3.1) (Haskell) 48- [YAP: Yet Another Prelude](http://hackage.haskell.org/package/yap) (Haskell) 49- Agda's [algebra module](http://www.cse.chalmers.se/~nad/listings/lib-0.7/Algebra.html) (Agda) 50- Idris' [algebra module](https://github.com/idris-lang/Idris-dev/blob/master/libs/prelude/Prelude/Algebra.idr) (Idris) 51- Felix's [algebra module](http://felix-lang.org/$/usr/local/lib/felix/felix-latest/share/lib/std/algebraic.flx) (Felix) 52- [non/spire](https://github.com/non/spire) (Scala) 53