From 83e79b50f76f99e606e759798e5e5cd6e88627ce Mon Sep 17 00:00:00 2001 From: Dominic Symes Date: Mon, 8 Jan 2024 10:45:47 +0000 Subject: Main Conformance: Clarify REDUCE_PRODUCT conformance Update the REDUCE_PRODUCT conformance description to be consistent with EXP, POW, TANH, SIGMOID. Signed-off-by: Dominic Symes Change-Id: I083c41ce09e70b51d07cfea30a4bbc4dff4a8657 --- chapters/introduction.adoc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/chapters/introduction.adoc b/chapters/introduction.adoc index f0ad12c..3336aea 100644 --- a/chapters/introduction.adoc +++ b/chapters/introduction.adoc @@ -298,8 +298,9 @@ This dot product must meet the <> | <> | Result overflows must be set to an infinity of the correct sign. + Result underflows must be set to a zero of the correct sign. + -Othewise if the final product and all sub-products are within the normal range then the result `R` must have an absolute error of at most `E*abs\(R)` -where `E = pow(1 + pow(2, -M-1), N) - 1`. In this expression M is the number of mantissa bit of the floating point format and N is the number of elements in the product. +Let n be number of elements in the product, out_imp the implementation result, and out_ref the result of the fp64_t reference implementation. + +Let `err_bnd = abs(out_ref) * (pow(1 + pow(2, -normal_frac - 1), n) - 1)` + +Then `tosa_reference_check_fp_bnd(out_imp, out_ref, err_bnd)` must be true |=== -- cgit v1.2.1