/** * Adapted from https://github.com/purescript/purescript-prelude/blob/master/src/Data/Field.purs * * @since 2.0.0 */ import { Ring } from './Ring' import { Eq } from './Eq' /** * @category type classes * @since 2.0.0 */ export interface Field extends Ring { readonly degree: (a: A) => number readonly div: (x: A, y: A) => A readonly mod: (x: A, y: A) => A } /** * @category instances * @since 2.0.0 */ export declare const fieldNumber: Field /** * The *greatest common divisor* of two values * * @since 2.0.0 */ export declare function gcd(E: Eq, field: Field): (x: A, y: A) => A /** * The *least common multiple* of two values * * @since 2.0.0 */ export declare function lcm(E: Eq, F: Field): (x: A, y: A) => A