Average Error: 25.5 → 24.3
Time: 8.0m
Precision: 64
Internal Precision: 576
\[\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
\[\begin{array}{l} \mathbf{if}\;(\left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \sqrt[3]{y \cdot x - z \cdot t}\right) \cdot \left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \left(b \cdot a - i \cdot c\right)\right) + \left(\left(-\left(x \cdot j - k \cdot z\right)\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right))_* + \left((\left(x \cdot y2 - y3 \cdot z\right) \cdot \left(c \cdot y0 - y1 \cdot a\right) + \left(\left(k \cdot i\right) \cdot \left(y5 \cdot y\right) - (\left(k \cdot \left(b \cdot y\right)\right) \cdot y4 + \left(\left(j \cdot y5\right) \cdot \left(t \cdot i\right)\right))_*\right))_* - \left(\left(c \cdot y4 - a \cdot y5\right) \cdot \left(y2 \cdot t - y \cdot y3\right) - \left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\right)\right) = -\infty:\\ \;\;\;\;(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y5 \cdot y0\right) + \left((\left(y4 \cdot b - y5 \cdot i\right) \cdot \left(j \cdot t - k \cdot y\right) + \left(\left(b \cdot a - i \cdot c\right) \cdot \left(y \cdot x - z \cdot t\right)\right))_* - \left(\left(j \cdot x - z \cdot k\right) \cdot \left(b \cdot y0 - i \cdot y1\right) + \left(t \cdot y2 - y3 \cdot y\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right)\right))_*\\ \mathbf{if}\;(\left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \sqrt[3]{y \cdot x - z \cdot t}\right) \cdot \left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \left(b \cdot a - i \cdot c\right)\right) + \left(\left(-\left(x \cdot j - k \cdot z\right)\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right))_* + \left((\left(x \cdot y2 - y3 \cdot z\right) \cdot \left(c \cdot y0 - y1 \cdot a\right) + \left(\left(k \cdot i\right) \cdot \left(y5 \cdot y\right) - (\left(k \cdot \left(b \cdot y\right)\right) \cdot y4 + \left(\left(j \cdot y5\right) \cdot \left(t \cdot i\right)\right))_*\right))_* - \left(\left(c \cdot y4 - a \cdot y5\right) \cdot \left(y2 \cdot t - y \cdot y3\right) - \left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\right)\right) \le 1.6286964863249007 \cdot 10^{+296}:\\ \;\;\;\;(\left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \sqrt[3]{y \cdot x - z \cdot t}\right) \cdot \left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \left(b \cdot a - i \cdot c\right)\right) + \left(\left(-\left(x \cdot j - k \cdot z\right)\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right))_* + \left((\left(x \cdot y2 - y3 \cdot z\right) \cdot \left(c \cdot y0 - y1 \cdot a\right) + \left(\left(k \cdot i\right) \cdot \left(y5 \cdot y\right) - (\left(k \cdot \left(b \cdot y\right)\right) \cdot y4 + \left(\left(j \cdot y5\right) \cdot \left(t \cdot i\right)\right))_*\right))_* - \left(\left(c \cdot y4 - a \cdot y5\right) \cdot \left(y2 \cdot t - y \cdot y3\right) - \left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;(\left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \left(b \cdot a - i \cdot c\right)\right) \cdot \left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \sqrt[3]{y \cdot x - z \cdot t}\right) + \left((\left(-\left(y0 \cdot b - y1 \cdot i\right)\right) \cdot \left(x \cdot j - k \cdot z\right) + \left(\left(x \cdot y2 - y3 \cdot z\right) \cdot \left(c \cdot y0 - y1 \cdot a\right)\right))_*\right))_* + (\left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - y5 \cdot i\right) + \left(\left(y1 \cdot y4 - y0 \cdot y5\right) \cdot \left(y2 \cdot k - j \cdot y3\right)\right))_*\\ \end{array}\]

Error

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

Bits error versus y0

Bits error versus y1

Bits error versus y2

Bits error versus y3

Bits error versus y4

Bits error versus y5

Derivation

  1. Split input into 3 regimes
  2. if (+ (fma (* (cbrt (- (* y x) (* z t))) (cbrt (- (* y x) (* z t)))) (* (cbrt (- (* y x) (* z t))) (- (* b a) (* i c))) (* (- (- (* x j) (* k z))) (- (* y0 b) (* y1 i)))) (- (fma (- (* x y2) (* y3 z)) (- (* c y0) (* y1 a)) (- (* (* k i) (* y5 y)) (fma (* k (* b y)) y4 (* (* j y5) (* t i))))) (- (* (- (* c y4) (* a y5)) (- (* y2 t) (* y y3))) (* (- (* y2 k) (* j y3)) (- (* y4 y1) (* y5 y0)))))) < -inf.0

    1. Initial program 50.9

      \[\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    2. Taylor expanded around 0 47.9

      \[\leadsto \left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \color{blue}{0}\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    3. Applied simplify47.9

      \[\leadsto \color{blue}{(\left(k \cdot y2 - j \cdot y3\right) \cdot \left(y1 \cdot y4 - y5 \cdot y0\right) + \left((\left(y4 \cdot b - y5 \cdot i\right) \cdot \left(j \cdot t - k \cdot y\right) + \left(\left(b \cdot a - i \cdot c\right) \cdot \left(y \cdot x - z \cdot t\right)\right))_* - \left(\left(j \cdot x - z \cdot k\right) \cdot \left(b \cdot y0 - i \cdot y1\right) + \left(t \cdot y2 - y3 \cdot y\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right)\right))_*}\]

    if -inf.0 < (+ (fma (* (cbrt (- (* y x) (* z t))) (cbrt (- (* y x) (* z t)))) (* (cbrt (- (* y x) (* z t))) (- (* b a) (* i c))) (* (- (- (* x j) (* k z))) (- (* y0 b) (* y1 i)))) (- (fma (- (* x y2) (* y3 z)) (- (* c y0) (* y1 a)) (- (* (* k i) (* y5 y)) (fma (* k (* b y)) y4 (* (* j y5) (* t i))))) (- (* (- (* c y4) (* a y5)) (- (* y2 t) (* y y3))) (* (- (* y2 k) (* j y3)) (- (* y4 y1) (* y5 y0)))))) < 1.6286964863249007e+296

    1. Initial program 5.2

      \[\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    2. Using strategy rm
    3. Applied add-cube-cbrt5.4

      \[\leadsto \left(\left(\left(\left(\color{blue}{\left(\left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \sqrt[3]{x \cdot y - z \cdot t}\right) \cdot \sqrt[3]{x \cdot y - z \cdot t}\right)} \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    4. Applied associate-*l*5.4

      \[\leadsto \left(\left(\left(\left(\color{blue}{\left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \sqrt[3]{x \cdot y - z \cdot t}\right) \cdot \left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \left(a \cdot b - c \cdot i\right)\right)} - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    5. Taylor expanded around inf 6.2

      \[\leadsto \left(\left(\left(\left(\left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \sqrt[3]{x \cdot y - z \cdot t}\right) \cdot \left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \left(a \cdot b - c \cdot i\right)\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \color{blue}{\left(y \cdot \left(y5 \cdot \left(k \cdot i\right)\right) - \left(y4 \cdot \left(y \cdot \left(b \cdot k\right)\right) + j \cdot \left(y5 \cdot \left(t \cdot i\right)\right)\right)\right)}\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    6. Applied simplify4.2

      \[\leadsto \color{blue}{(\left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \sqrt[3]{y \cdot x - z \cdot t}\right) \cdot \left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \left(b \cdot a - i \cdot c\right)\right) + \left(\left(-\left(x \cdot j - k \cdot z\right)\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right))_* + \left((\left(x \cdot y2 - y3 \cdot z\right) \cdot \left(c \cdot y0 - y1 \cdot a\right) + \left(\left(k \cdot i\right) \cdot \left(y5 \cdot y\right) - (\left(k \cdot \left(b \cdot y\right)\right) \cdot y4 + \left(\left(j \cdot y5\right) \cdot \left(t \cdot i\right)\right))_*\right))_* - \left(\left(c \cdot y4 - a \cdot y5\right) \cdot \left(y2 \cdot t - y \cdot y3\right) - \left(y2 \cdot k - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\right)\right)}\]

    if 1.6286964863249007e+296 < (+ (fma (* (cbrt (- (* y x) (* z t))) (cbrt (- (* y x) (* z t)))) (* (cbrt (- (* y x) (* z t))) (- (* b a) (* i c))) (* (- (- (* x j) (* k z))) (- (* y0 b) (* y1 i)))) (- (fma (- (* x y2) (* y3 z)) (- (* c y0) (* y1 a)) (- (* (* k i) (* y5 y)) (fma (* k (* b y)) y4 (* (* j y5) (* t i))))) (- (* (- (* c y4) (* a y5)) (- (* y2 t) (* y y3))) (* (- (* y2 k) (* j y3)) (- (* y4 y1) (* y5 y0))))))

    1. Initial program 49.1

      \[\left(\left(\left(\left(\left(x \cdot y - z \cdot t\right) \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    2. Using strategy rm
    3. Applied add-cube-cbrt49.1

      \[\leadsto \left(\left(\left(\left(\color{blue}{\left(\left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \sqrt[3]{x \cdot y - z \cdot t}\right) \cdot \sqrt[3]{x \cdot y - z \cdot t}\right)} \cdot \left(a \cdot b - c \cdot i\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    4. Applied associate-*l*49.1

      \[\leadsto \left(\left(\left(\left(\color{blue}{\left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \sqrt[3]{x \cdot y - z \cdot t}\right) \cdot \left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \left(a \cdot b - c \cdot i\right)\right)} - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \left(t \cdot y2 - y \cdot y3\right) \cdot \left(y4 \cdot c - y5 \cdot a\right)\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    5. Taylor expanded around 0 48.2

      \[\leadsto \left(\left(\left(\left(\left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \sqrt[3]{x \cdot y - z \cdot t}\right) \cdot \left(\sqrt[3]{x \cdot y - z \cdot t} \cdot \left(a \cdot b - c \cdot i\right)\right) - \left(x \cdot j - z \cdot k\right) \cdot \left(y0 \cdot b - y1 \cdot i\right)\right) + \left(x \cdot y2 - z \cdot y3\right) \cdot \left(y0 \cdot c - y1 \cdot a\right)\right) + \left(t \cdot j - y \cdot k\right) \cdot \left(y4 \cdot b - y5 \cdot i\right)\right) - \color{blue}{0}\right) + \left(k \cdot y2 - j \cdot y3\right) \cdot \left(y4 \cdot y1 - y5 \cdot y0\right)\]
    6. Applied simplify48.2

      \[\leadsto \color{blue}{(\left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \left(b \cdot a - i \cdot c\right)\right) \cdot \left(\sqrt[3]{y \cdot x - z \cdot t} \cdot \sqrt[3]{y \cdot x - z \cdot t}\right) + \left((\left(-\left(y0 \cdot b - y1 \cdot i\right)\right) \cdot \left(x \cdot j - k \cdot z\right) + \left(\left(x \cdot y2 - y3 \cdot z\right) \cdot \left(c \cdot y0 - y1 \cdot a\right)\right))_*\right))_* + (\left(t \cdot j - y \cdot k\right) \cdot \left(b \cdot y4 - y5 \cdot i\right) + \left(\left(y1 \cdot y4 - y0 \cdot y5\right) \cdot \left(y2 \cdot k - j \cdot y3\right)\right))_*}\]
  3. Recombined 3 regimes into one program.

Runtime

Time bar (total: 8.0m)Debug logProfile

herbie shell --seed '#(1071979731 1496239409 439705970 2863295848 982327776 189749553)' +o rules:numerics
(FPCore (x y z t a b c i j k y0 y1 y2 y3 y4 y5)
  :name "Linear.Matrix:det44 from linear-1.19.1.3"
  (+ (- (+ (+ (- (* (- (* x y) (* z t)) (- (* a b) (* c i))) (* (- (* x j) (* z k)) (- (* y0 b) (* y1 i)))) (* (- (* x y2) (* z y3)) (- (* y0 c) (* y1 a)))) (* (- (* t j) (* y k)) (- (* y4 b) (* y5 i)))) (* (- (* t y2) (* y y3)) (- (* y4 c) (* y5 a)))) (* (- (* k y2) (* j y3)) (- (* y4 y1) (* y5 y0)))))