Copyright | (c) Matti A. Eskelinen 2016-2017 |
---|---|

License | MIT |

Maintainer | matti.a.eskelinen@gmail.com |

Stability | experimental |

Portability | POSIX |

Safe Haskell | Safe |

Language | Haskell2010 |

This module provides (orphan) Arbitrary instances and various other generators for creating random `Clif`

s and `Basis`

elements using Test.QuickCheck.

# Generators

ascList :: (Ord a, Arbitrary a) => Gen [a] Source #

`orderedList`

with only unique elements.
Useful for generating blades with e.g.

`blade`

`<$>`

`ascList`

ascLists :: (Ord a, Arbitrary a) => Gen ([a], [a]) Source #

An ascending list split into two at a random point. Useful for generating a pair of blades without common vectors.

kBlade :: (Eq a, Basis b a, Arbitrary a, Arbitrary b) => Int -> Gen (Clif b a) Source #

Given k, returns a generator for k-blades (`Clif`

s containing only a single blade of grade k).