Copyright | (c) Eric Crockett 2011-2017 Chris Peikert 2011-2017 |
---|---|

License | GPL-2 |

Maintainer | ecrockett0@email.com |

Stability | experimental |

Portability | POSIX |

Safe Haskell | None |

Language | Haskell2010 |

Functions and types for working with ring-LWR samples.

- type Sample t m zq zp = (Cyc t m zq, Cyc t m zp)
- type RLWRCtx t m zq zp = (Fact m, Ring zq, RescaleCyc (Cyc t) zq zp, CElt t zq, CElt t zp)
- sample :: (RLWRCtx t m zq zp, Random zq, MonadRandom rnd) => Cyc t m zq -> rnd (Sample t m zq zp)
- roundedProd :: RLWRCtx t m zq zp => Cyc t m zq -> Cyc t m zq -> Cyc t m zp

# Documentation

type Sample t m zq zp = (Cyc t m zq, Cyc t m zp) Source #

An RLWR sample \( (a,b) \in R_q \times R_p\).

type RLWRCtx t m zq zp = (Fact m, Ring zq, RescaleCyc (Cyc t) zq zp, CElt t zq, CElt t zp) Source #

Common constraints for working with RLWR.