Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
module type BASE = sig ... end
Base module signature for a finite field
module type PRIME = sig ... end
Module type for prime field of the form GF(p) where p is prime
module type PRIME_WITH_ROOT_OF_UNITY = sig ... end
Module type for prime field with additional functions to manipulate roots of unity
module MakeFp (S : sig ... end) : PRIME_WITH_ROOT_OF_UNITY