summaryrefslogtreecommitdiff
path: root/doc/sum.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/sum.txt')
-rw-r--r--doc/sum.txt35
1 files changed, 33 insertions, 2 deletions
diff --git a/doc/sum.txt b/doc/sum.txt
index baca8d577..b51b95456 100644
--- a/doc/sum.txt
+++ b/doc/sum.txt
@@ -39,8 +39,39 @@ sum_raw (obtained from code refactoring for steps 3 to 6, and 8) should
be introduced and described. Pre-rounding in (7) and rounding in (8)
have been merged, and this [previously pre-rounding in (7)] is still
done at the same time as sign handling with a single mpn operation.
-The table concerning the correction term is also incorrect (the initial
-truncation also has an influence, but it isn't taken into account yet).
+The table concerning the correction term and the ternary value in case
+of TMD should be changed to:
+
+ rnd tmd R sst correction ternary
+ ───────────────────────────────────────────────
+ N 1 0 - 0 +
+ N 1 0 0 0 0
+ N 1 0 + 0 -
+ N 1 1 - +1 +
+ N 1 1 0 +1 0
+ N 1 1 + +1 -
+ ───────────────────────────────────────────────
+ N 2 0 - 0 -
+ N 2 0 0 ? ? (halfway case)
+ N 2 0 + +1 +
+ N 2 1 - 0 -
+ N 2 1 0 ? ? (halfway case)
+ N 2 1 + +1 +
+ ───────────────────────────────────────────────
+ D 1 0 - -1 -
+ D 1 0 0 0 0
+ D 1 0 + 0 -
+ D 1 1 - 0 -
+ D 1 1 0 +1 0
+ D 1 1 + +1 -
+ ───────────────────────────────────────────────
+ U 1 0 - 0 +
+ U 1 0 0 0 0
+ U 1 0 + +1 +
+ U 1 1 - +1 +
+ U 1 1 0 +1 0
+ U 1 1 + +2 +
+ ───────────────────────────────────────────────
The general ideas of the algorithm: