\[\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: 33.2 s
Input Error: 5.3
Output Error: 4.9
Log:
Profile: 🕒
\(\begin{cases} \left(\left(-y\right) \cdot \left(i \cdot j\right) + c \cdot \left(j \cdot t\right)\right) + \left(\left(y \cdot z - t \cdot a\right) \cdot x - b \cdot \left(c \cdot z - i \cdot a\right)\right) & \text{when } t \le 1.1343857f-05 \\ \left(\left(-j\right) \cdot \left(i \cdot y\right) + \left(z \cdot y\right) \cdot x\right) - \left(\left(a \cdot x - c \cdot j\right) \cdot t + b \cdot \left(c \cdot z - a \cdot i\right)\right) & \text{otherwise} \end{cases}\)

    if t < 1.1343857f-05

    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)\]
      4.9
    2. Using strategy rm
      4.9
    3. Applied sub-neg 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 \color{red}{\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) + j \cdot \color{blue}{\left(c \cdot t + \left(-i \cdot y\right)\right)}\]
      4.9
    4. Applied distribute-lft-in 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 + \left(-i \cdot y\right)\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(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right)}\]
      4.9
    5. 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) + \left(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right) \leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + -1 \cdot \left(y \cdot \left(j \cdot i\right)\right)\right)\]
      5.3
    6. Taylor expanded around inf to get
      \[\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + \color{red}{-1 \cdot \left(y \cdot \left(j \cdot i\right)\right)}\right) \leadsto \left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + \color{blue}{-1 \cdot \left(y \cdot \left(j \cdot i\right)\right)}\right)\]
      5.3
    7. Applied simplify to get
      \[\color{red}{\left(x \cdot \left(y \cdot z - t \cdot a\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + -1 \cdot \left(y \cdot \left(j \cdot i\right)\right)\right)} \leadsto \color{blue}{\left(\left(-y\right) \cdot \left(i \cdot j\right) + c \cdot \left(j \cdot t\right)\right) + \left(\left(y \cdot z - t \cdot a\right) \cdot x - b \cdot \left(c \cdot z - i \cdot a\right)\right)}\]
      5.3

    if 1.1343857f-05 < t

    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)\]
      6.8
    2. Using strategy rm
      6.8
    3. Applied sub-neg 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 \color{red}{\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) + j \cdot \color{blue}{\left(c \cdot t + \left(-i \cdot y\right)\right)}\]
      6.8
    4. Applied distribute-lft-in 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 + \left(-i \cdot y\right)\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(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right)}\]
      6.8
    5. 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) + \left(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right) \leadsto \left(\left(y \cdot \left(x \cdot z\right) - a \cdot \left(t \cdot x\right)\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right)\]
      6.7
    6. Taylor expanded around inf to get
      \[\left(\color{red}{\left(y \cdot \left(x \cdot z\right) - a \cdot \left(t \cdot x\right)\right)} - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right) \leadsto \left(\color{blue}{\left(y \cdot \left(x \cdot z\right) - a \cdot \left(t \cdot x\right)\right)} - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right)\]
      6.7
    7. Applied simplify to get
      \[\color{red}{\left(\left(y \cdot \left(x \cdot z\right) - a \cdot \left(t \cdot x\right)\right) - b \cdot \left(c \cdot z - i \cdot a\right)\right) + \left(j \cdot \left(c \cdot t\right) + j \cdot \left(-i \cdot y\right)\right)} \leadsto \color{blue}{\left(\left(-j\right) \cdot \left(i \cdot y\right) + \left(z \cdot y\right) \cdot x\right) - \left(\left(a \cdot x - c \cdot j\right) \cdot t + b \cdot \left(c \cdot z - a \cdot i\right)\right)}\]
      3.8

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