\[\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.8 s
Input Error: 13.5
Output Error: 10.1
Log:
Profile: 🕒
\(\begin{cases} \left(t \cdot j\right) \cdot c + i \cdot \left(a \cdot b - y \cdot j\right) & \text{when } i \le -1.5023745173700844 \cdot 10^{+146} \\ \left(\left(x \cdot y\right) \cdot z + \left(x \cdot \left(-t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right) & \text{otherwise} \end{cases}\)

    if i < -1.5023745173700844e+146

    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)\]
      41.2
    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(j \cdot \left(c \cdot t\right) + b \cdot \left(a \cdot i\right)\right) - j \cdot \left(y \cdot i\right)\]
      26.1
    3. Taylor expanded around inf to get
      \[\color{red}{\left(j \cdot \left(c \cdot t\right) + b \cdot \left(a \cdot i\right)\right) - j \cdot \left(y \cdot i\right)} \leadsto \color{blue}{\left(j \cdot \left(c \cdot t\right) + b \cdot \left(a \cdot i\right)\right) - j \cdot \left(y \cdot i\right)}\]
      26.1
    4. Applied simplify to get
      \[\color{red}{\left(j \cdot \left(c \cdot t\right) + b \cdot \left(a \cdot i\right)\right) - j \cdot \left(y \cdot i\right)} \leadsto \color{blue}{\left(t \cdot j\right) \cdot c + i \cdot \left(a \cdot b - y \cdot j\right)}\]
      3.0

    if -1.5023745173700844e+146 < i

    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)\]
      10.4
    2. Using strategy rm
      10.4
    3. Applied sub-neg to get
      \[\left(x \cdot \color{red}{\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(x \cdot \color{blue}{\left(y \cdot z + \left(-t \cdot a\right)\right)} - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
      10.4
    4. Applied distribute-lft-in to get
      \[\left(\color{red}{x \cdot \left(y \cdot z + \left(-t \cdot a\right)\right)} - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right) \leadsto \left(\color{blue}{\left(x \cdot \left(y \cdot z\right) + x \cdot \left(-t \cdot a\right)\right)} - b \cdot \left(c \cdot z - i \cdot a\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
      10.4
    5. Applied associate--l+ to get
      \[\color{red}{\left(\left(x \cdot \left(y \cdot z\right) + x \cdot \left(-t \cdot a\right)\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right)} + j \cdot \left(c \cdot t - i \cdot y\right) \leadsto \color{blue}{\left(x \cdot \left(y \cdot z\right) + \left(x \cdot \left(-t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right)\right)} + j \cdot \left(c \cdot t - i \cdot y\right)\]
      10.4
    6. Using strategy rm
      10.4
    7. Applied associate-*r* to get
      \[\left(\color{red}{x \cdot \left(y \cdot z\right)} + \left(x \cdot \left(-t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right) \leadsto \left(\color{blue}{\left(x \cdot y\right) \cdot z} + \left(x \cdot \left(-t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right)\right) + j \cdot \left(c \cdot t - i \cdot y\right)\]
      10.9

  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)))))