public void MultiplicationInverseFunctionWithFunc_CalculateAtPointFuncIsZero_ThrowsException <T> ( T point, IField <T> field) { Func <T, T> func = (x) => field.Pow(field.Addition(x, field.One), 2); Func <T, T> result = field.MultiplicationInverseFunction(func); Assert.IsNotNull(result); Assert.Throws <DivideByZeroException>(() => result(point)); }
public void MultiplicationInverseFunctionWithFunc_CalculateAtPoint_EqualsExpectedPoint <T> ( T point, IField <T> field, T expected) { Func <T, T> func = (x) => field.Pow(field.Addition(x, field.One), 2); Func <T, T> result = field.MultiplicationInverseFunction(func); Assert.IsNotNull(result); var calculated = result(point); Assert.AreEqual(expected, calculated); }