aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authoralexdikelsky <alexander.dikelsky@gmail.com>2021-09-24 07:54:23 -0500
committeralexdikelsky <alexander.dikelsky@gmail.com>2021-09-24 07:54:23 -0500
commit89ffbec6ac981a81b9e78e6555124f51fdd78df2 (patch)
tree3b00b817698fdfa196e0eaad75cee93991fa8d7e /doc
parent24a1c75dec5746acb75949b8f41d8044fe98040c (diff)
Add reference implementations for gcd and lcm to logic.md
Diffstat (limited to 'doc')
-rw-r--r--doc/logic.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/doc/logic.md b/doc/logic.md
index 8e7f935a..f9bdc896 100644
--- a/doc/logic.md
+++ b/doc/logic.md
@@ -36,7 +36,7 @@ As with logical And and Or, any value and 0 is 0, while any value or 1 is 1. The
## Why not GCD and LCM?
-The main reason for omitting these functions is that they are complicated and, when applied to real or complex numbers, require a significant number of design decisions where there is no obvious choice (for example, whether to use comparison tolerance). On the other hand, these functions are fairly easy to implement, which allows the programmer to control the details, and also add functionality such as the extended GCD.
+The main reason for omitting these functions is that they are complicated and, when applied to real or complex numbers, require a significant number of design decisions where there is no obvious choice (for example, whether to use comparison tolerance). On the other hand, these functions are fairly easy to implement (reference implementations for [gcd](https://mlochbaum.github.io/bqncrate/?q=gcd) and [lcm](https://mlochbaum.github.io/bqncrate/?q=lcm) on [bqncrate](https://mlochbaum.github.io/bqncrate)), which allows the programmer to control the details, and also add functionality such as the extended GCD.
A secondary reason is that the GCD falls short as an extension of Or, because its identity value 0 is not total. `0∨x`, for a real number `x`, is actually equal to `|x` and not `x`: for example, `0∨¯2` is `2` in APL. This means the identity `0∨x ←→ x` isn't reliable in APL.