numberlab 0.1.9

A collection of numerical algorithms
Documentation
use numberlab::sequence::sylvester::{nth_sylvester, nth_sylvester_memoized, sylvester_sequence};

#[test]
fn should_generate_nth_sylvester() {
    assert_eq!(nth_sylvester(0), 2);
    assert_eq!(nth_sylvester(1), 3);
    assert_eq!(nth_sylvester(2), 7);
    assert_eq!(nth_sylvester(3), 43);
    assert_eq!(nth_sylvester(4), 1807);
    assert_eq!(nth_sylvester(5), 3263443);
    assert_eq!(nth_sylvester(6), 10650056950807);
    assert_eq!(nth_sylvester(7), 113423713055421844361000443);
}

#[test]
fn should_generate_nth_sylvester_memoized() {
    assert_eq!(nth_sylvester_memoized(0), 2);
    assert_eq!(nth_sylvester_memoized(1), 3);
    assert_eq!(nth_sylvester_memoized(2), 7);
    assert_eq!(nth_sylvester_memoized(3), 43);
    assert_eq!(nth_sylvester_memoized(4), 1807);
    assert_eq!(nth_sylvester_memoized(5), 3263443);
    assert_eq!(nth_sylvester_memoized(6), 10650056950807);
    assert_eq!(nth_sylvester_memoized(7), 113423713055421844361000443);
}

#[test]
fn should_generate_sequence_of_0_items() {
    assert_eq!(sylvester_sequence(0), vec![]);
}

#[test]
fn should_generate_sequence_of_1_items() {
    assert_eq!(sylvester_sequence(1), vec![2]);
}

#[test]
fn should_generate_series() {
    assert_eq!(
        sylvester_sequence(8),
        vec![2, 3, 7, 43, 1807, 3263443, 10650056950807, 113423713055421844361000443]
    );
}