\[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
Test:
Diagrams.Solve.Polynomial:cubForm from diagrams-solve-0.1
Bits:
128 bits
Bits error versus x
Bits error versus y
Bits error versus z
Bits error versus t
Bits error versus a
Bits error versus b
Bits error versus c
Bits error versus i
Bits error versus j
Bits error versus k
Time: 39.3 s
Input Error: 5.5
Output Error: 1.4
Log:
Profile: 🕒
\(\begin{cases} \left(t \cdot \left(\left(x \cdot 18.0\right) \cdot \left(y \cdot z\right) - 4.0 \cdot a\right) - 4.0 \cdot \left(i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) & \text{when } t \le -1.0163817719524119 \cdot 10^{-22} \\ \left(\left(\left(x \cdot \left(z \cdot t\right)\right) \cdot y\right) \cdot 18.0 - 4.0 \cdot \left(x \cdot i + t \cdot a\right)\right) + \left(b \cdot c - \left(j \cdot 27.0\right) \cdot k\right) & \text{when } t \le 4.8668593896148565 \cdot 10^{-23} \\ \left(t \cdot \left(z \cdot \left(18.0 \cdot \left(x \cdot y\right)\right)\right) - 4.0 \cdot \left(t \cdot a + i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) & \text{otherwise} \end{cases}\)

    if t < -1.0163817719524119e-22

    1. Started with
      \[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
      2.3
    2. Applied simplify to get
      \[\color{red}{\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k} \leadsto \color{blue}{\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - 4.0 \cdot \left(t \cdot a + i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)}\]
      9.0
    3. Using strategy rm
      9.0
    4. Applied distribute-lft-in to get
      \[\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - \color{red}{4.0 \cdot \left(t \cdot a + i \cdot x\right)}\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) \leadsto \left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - \color{blue}{\left(4.0 \cdot \left(t \cdot a\right) + 4.0 \cdot \left(i \cdot x\right)\right)}\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)\]
      9.0
    5. Applied associate--r+ to get
      \[\color{red}{\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - \left(4.0 \cdot \left(t \cdot a\right) + 4.0 \cdot \left(i \cdot x\right)\right)\right)} + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) \leadsto \color{blue}{\left(\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - 4.0 \cdot \left(t \cdot a\right)\right) - 4.0 \cdot \left(i \cdot x\right)\right)} + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)\]
      9.0
    6. Applied simplify to get
      \[\left(\color{red}{\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - 4.0 \cdot \left(t \cdot a\right)\right)} - 4.0 \cdot \left(i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) \leadsto \left(\color{blue}{t \cdot \left(\left(x \cdot 18.0\right) \cdot \left(y \cdot z\right) - 4.0 \cdot a\right)} - 4.0 \cdot \left(i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)\]
      2.0

    if -1.0163817719524119e-22 < t < 4.8668593896148565e-23

    1. Started with
      \[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
      8.0
    2. Applied simplify to get
      \[\color{red}{\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k} \leadsto \color{blue}{\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - 4.0 \cdot \left(t \cdot a + i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)}\]
      4.1
    3. Applied taylor to get
      \[\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - 4.0 \cdot \left(t \cdot a + i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) \leadsto \left(18.0 \cdot \left(y \cdot \left(t \cdot \left(x \cdot z\right)\right)\right) - \left(4.0 \cdot \left(i \cdot x\right) + 4.0 \cdot \left(a \cdot t\right)\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)\]
      3.8
    4. Taylor expanded around inf to get
      \[\color{red}{\left(18.0 \cdot \left(y \cdot \left(t \cdot \left(x \cdot z\right)\right)\right) - \left(4.0 \cdot \left(i \cdot x\right) + 4.0 \cdot \left(a \cdot t\right)\right)\right)} + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) \leadsto \color{blue}{\left(18.0 \cdot \left(y \cdot \left(t \cdot \left(x \cdot z\right)\right)\right) - \left(4.0 \cdot \left(i \cdot x\right) + 4.0 \cdot \left(a \cdot t\right)\right)\right)} + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)\]
      3.8
    5. Applied simplify to get
      \[\color{red}{\left(18.0 \cdot \left(y \cdot \left(t \cdot \left(x \cdot z\right)\right)\right) - \left(4.0 \cdot \left(i \cdot x\right) + 4.0 \cdot \left(a \cdot t\right)\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)} \leadsto \color{blue}{\left(\left(x \cdot \left(z \cdot t\right)\right) \cdot \left(y \cdot 18.0\right) - 4.0 \cdot \left(x \cdot i + t \cdot a\right)\right) + \left(b \cdot c - \left(j \cdot 27.0\right) \cdot k\right)}\]
      1.2
    6. Using strategy rm
      1.2
    7. Applied associate-*r* to get
      \[\left(\color{red}{\left(x \cdot \left(z \cdot t\right)\right) \cdot \left(y \cdot 18.0\right)} - 4.0 \cdot \left(x \cdot i + t \cdot a\right)\right) + \left(b \cdot c - \left(j \cdot 27.0\right) \cdot k\right) \leadsto \left(\color{blue}{\left(\left(x \cdot \left(z \cdot t\right)\right) \cdot y\right) \cdot 18.0} - 4.0 \cdot \left(x \cdot i + t \cdot a\right)\right) + \left(b \cdot c - \left(j \cdot 27.0\right) \cdot k\right)\]
      1.1

    if 4.8668593896148565e-23 < t

    1. Started with
      \[\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k\]
      1.5
    2. Applied simplify to get
      \[\color{red}{\left(\left(\left(\left(\left(\left(x \cdot 18.0\right) \cdot y\right) \cdot z\right) \cdot t - \left(a \cdot 4.0\right) \cdot t\right) + b \cdot c\right) - \left(x \cdot 4.0\right) \cdot i\right) - \left(j \cdot 27.0\right) \cdot k} \leadsto \color{blue}{\left(\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right) - 4.0 \cdot \left(t \cdot a + i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)}\]
      8.4
    3. Using strategy rm
      8.4
    4. Applied associate-*l* to get
      \[\left(\color{red}{\left(t \cdot z\right) \cdot \left(18.0 \cdot \left(x \cdot y\right)\right)} - 4.0 \cdot \left(t \cdot a + i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right) \leadsto \left(\color{blue}{t \cdot \left(z \cdot \left(18.0 \cdot \left(x \cdot y\right)\right)\right)} - 4.0 \cdot \left(t \cdot a + i \cdot x\right)\right) + \left(c \cdot b - j \cdot \left(27.0 \cdot k\right)\right)\]
      1.4

  1. Removed slow pow expressions

Original test:


(lambda ((x default) (y default) (z default) (t default) (a default) (b default) (c default) (i default) (j default) (k default))
  #:name "Diagrams.Solve.Polynomial:cubForm  from diagrams-solve-0.1"
  (- (- (+ (- (* (* (* (* x 18.0) y) z) t) (* (* a 4.0) t)) (* b c)) (* (* x 4.0) i)) (* (* j 27.0) k)))