\[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
Test:
Linear.Matrix:det33 from linear-1.19.1.3
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
Time: 29.4 s
Input Error: 11.1
Output Error: 9.7
Log:
Profile: 🕒
\(\begin{cases} \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + {\left(\sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)}\right)}^3 & \text{when } x \le -2.435617111960463 \cdot 10^{-232} \\ \left(\left(c \cdot t - i \cdot y\right) \cdot j + b \cdot \left(a \cdot i - z \cdot c\right)\right) - a \cdot \left(t \cdot x\right) & \text{when } x \le 1.151458876106398 \cdot 10^{-191} \\ \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + {\left(\sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)}\right)}^3 & \text{otherwise} \end{cases}\)

    if x < -2.435617111960463e-232 or 1.151458876106398e-191 < x

    1. Started with
      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
      9.8
    2. Using strategy rm
      9.8
    3. Applied add-cube-cbrt to get
      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \color{red}{j \cdot \left(c \cdot t - i \cdot y\right)} \leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \color{blue}{{\left(\sqrt[3]{j \cdot \left(c \cdot t - i \cdot y\right)}\right)}^3}\]
      10.1

    if -2.435617111960463e-232 < x < 1.151458876106398e-191

    1. Started with
      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
      16.5
    2. Applied taylor to get
      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right) \leadsto \left(b \cdot \left(a \cdot i\right) - \left(b \cdot \left(c \cdot z\right) + a \cdot \left(t \cdot x\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
      8.5
    3. Taylor expanded around inf to get
      \[\color{red}{\left(b \cdot \left(a \cdot i\right) - \left(b \cdot \left(c \cdot z\right) + a \cdot \left(t \cdot x\right)\right)\right)} + j \cdot \left(c \cdot t - i \cdot y\right) \leadsto \color{blue}{\left(b \cdot \left(a \cdot i\right) - \left(b \cdot \left(c \cdot z\right) + a \cdot \left(t \cdot x\right)\right)\right)} + j \cdot \left(c \cdot t - i \cdot y\right)\]
      8.5
    4. Applied simplify to get
      \[\color{red}{\left(b \cdot \left(a \cdot i\right) - \left(b \cdot \left(c \cdot z\right) + a \cdot \left(t \cdot x\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)} \leadsto \color{blue}{\left(\left(c \cdot t - i \cdot y\right) \cdot j + b \cdot \left(a \cdot i - z \cdot c\right)\right) - t \cdot \left(x \cdot a\right)}\]
      8.5
    5. Applied taylor to get
      \[\left(\left(c \cdot t - i \cdot y\right) \cdot j + b \cdot \left(a \cdot i - z \cdot c\right)\right) - t \cdot \left(x \cdot a\right) \leadsto \left(\left(c \cdot t - i \cdot y\right) \cdot j + b \cdot \left(a \cdot i - z \cdot c\right)\right) - a \cdot \left(t \cdot x\right)\]
      8.5
    6. Taylor expanded around inf to get
      \[\left(\left(c \cdot t - i \cdot y\right) \cdot j + b \cdot \left(a \cdot i - z \cdot c\right)\right) - \color{red}{a \cdot \left(t \cdot x\right)} \leadsto \left(\left(c \cdot t - i \cdot y\right) \cdot j + b \cdot \left(a \cdot i - z \cdot c\right)\right) - \color{blue}{a \cdot \left(t \cdot x\right)}\]
      8.5

  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))
  #:name "Linear.Matrix:det33 from linear-1.19.1.3"
  (+ (- (* x (- (* y z) (* t a))) (* b (- (* c z) (* i a)))) (* j (- (* c t) (* i y)))))