lol-tests-0.0.0.1: A library for testing <https://hackage.haskell.org/package/lol Λ ∘ λ>.

Copyright(c) Eric Crockett 2011-2017
Chris Peikert 2011-2017
LicenseGPL-2
Maintainerecrockett0@email.com
Stabilityexperimental
PortabilityPOSIX
Safe HaskellNone
LanguageHaskell2010

Crypto.Lol.Tests.TensorTests

Description

Tests for the Tensor interface.

Synopsis

Documentation

tensorTests1 :: forall t m r. _ => Proxy '(m, r) -> Proxy t -> Test Source #

Tests for single-index operations. There must be a CRT basis for \(O_m\) over r.

tensorTests2 :: forall t m m' r. _ => Proxy '(m, m', r) -> Proxy t -> Test Source #

Tests for inter-ring operations. There must be a CRT basis for \(O_{m'}\) over r.

prop_fmapT :: _ => t m r -> Test '(t, m, r) Source #

prop_fmap :: _ => t m r -> Test '(t, m, r) Source #

prop_ginv_pow :: _ => t m r -> Test '(t, m, r) Source #

prop_ginv_dec :: _ => t m r -> Test '(t, m, r) Source #

prop_ginv_crt :: _ => t m r -> Test '(t, m, r) Source #

prop_g_dec :: _ => t m r -> Test '(t, m, r) Source #

prop_g_crt :: _ => t m r -> Test '(t, m, r) Source #

prop_crt_inv :: _ => t m r -> Test '(t, m, r) Source #

prop_l_inv :: _ => t m r -> Test '(t, m, r) Source #

prop_scalar_crt :: forall t m r. (Tensor t, Fact m, _) => r -> Test '(t, m, r) Source #

prop_trem_pow :: forall t m m' r. (Fact m, Fact m', _) => t m r -> Test '(t, m, m', r) Source #

prop_trem_dec :: forall t m m' r. (Fact m, Fact m', _) => t m r -> Test '(t, m, m', r) Source #

prop_trem_crt :: forall t m m' r. (Fact m, Fact m', _) => t m r -> Test '(t, m, m', r) Source #

prop_embed_dec :: forall t m m' r. (Fact m, Fact m', _) => t m r -> Test '(t, m, m', r) Source #

prop_embed_crt :: forall t m m' r. (Fact m, Fact m', _) => t m r -> Test '(t, m, m', r) Source #

prop_twace_dec :: forall t m m' r. (Fact m, Fact m', _) => t m' r -> Test '(t, m, m', r) Source #

prop_twace_crt :: forall t m m' r. (Fact m, Fact m', _) => t m' r -> Test '(t, m, m', r) Source #

prop_twEmID :: forall t m r. _ => t m r -> Test '(t, m, r) Source #

prop_twace_invar1_pow :: forall t m m' r. _ => Test '(t, m, m', r) Source #

prop_twace_invar1_dec :: forall t m m' r. _ => Test '(t, m, m', r) Source #

prop_twace_invar1_crt :: forall t m m' r. _ => Test '(t, m, m', r) Source #

prop_twace_invar2_powdec :: forall t m m' r. (Tensor t, Fact m, Fact m', Ring r, _) => Test '(t, m, m', r) Source #

prop_twace_invar2_crt :: forall t m m' r. (Tensor t, Fact m, Fact m', Ring r, _) => Test '(t, m, m', r) Source #