\[d1 \cdot d2 + d1 \cdot d3\]
Test:
FastMath dist
Bits:
128 bits
Bits error versus d1
Bits error versus d2
Bits error versus d3
Time: 3.9 s
Input Error: 0.0
Output Error: 0.0
Log:
Profile: 🕒
\(d1 \cdot d2 + d1 \cdot d3\)
  1. Started with
    \[d1 \cdot d2 + d1 \cdot d3\]
    0.0
  2. Applied simplify to get
    \[\color{red}{d1 \cdot d2 + d1 \cdot d3} \leadsto \color{blue}{d1 \cdot \left(d2 + d3\right)}\]
    0.0
  3. Using strategy rm
    0.0
  4. Applied distribute-lft-in to get
    \[\color{red}{d1 \cdot \left(d2 + d3\right)} \leadsto \color{blue}{d1 \cdot d2 + d1 \cdot d3}\]
    0.0

  5. Removed slow pow expressions

Original test:


(lambda ((d1 default) (d2 default) (d3 default))
  #:name "FastMath dist"
  (+ (* d1 d2) (* d1 d3))
  #:target
  (* d1 (+ d2 d3)))