10 lines
411 B
TypeScript
10 lines
411 B
TypeScript
import {Complex} from './type.js'
|
|
import type {Dependencies, OpType} from '../interfaces/type.js'
|
|
|
|
export const isReal =
|
|
<T>(dep: Dependencies<'add' | 'equal' | 'isReal', T>):
|
|
OpType<'isReal', Complex<T>> =>
|
|
z => dep.isReal(z.re) && dep.equal(z.re, dep.add(z.re, z.im))
|
|
|
|
export const isSquare: OpType<'isSquare', Complex<any>> = z => true // FIXME: not correct for Complex<bigint> once we get there
|