2-ancestry mixing, positive discriminant

Time bar (total: 2.6s)

analyze255.0ms (9.7%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
15.4%12.5%68.6%0.1%0%18.7%0%6
23.1%18.7%62.4%0.1%0%18.7%0%7
24%18.7%59.3%0.1%0%21.8%0%8
41.9%28.1%39%0.1%0%32.8%0%9
48.8%32.8%34.3%0.1%0%32.8%0%10
50.6%32.8%32%0.1%0%35.1%0%11
64.9%38.2%20.7%0.1%0%41%0%12
Compiler

Compiled 41 to 20 computations (51.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 149.0ms
ival-mult: 69.0ms (46.3% of total)
ival-add: 18.0ms (12.1% of total)
ival-cbrt: 17.0ms (11.4% of total)
ival-sub: 14.0ms (9.4% of total)
ival-sqrt: 11.0ms (7.4% of total)
ival-div: 10.0ms (6.7% of total)
ival-neg: 8.0ms (5.4% of total)
const: 2.0ms (1.3% of total)

sample1.8s (66.6%)

Results
1.1s8256×256valid
194.0ms1466×256invalid
Precisions
Click to see histograms. Total time spent on operations: 948.0ms
ival-mult: 337.0ms (35.5% of total)
ival-cbrt: 125.0ms (13.2% of total)
ival-add: 110.0ms (11.6% of total)
ival-sub: 103.0ms (10.9% of total)
ival-div: 102.0ms (10.8% of total)
ival-sqrt: 89.0ms (9.4% of total)
ival-neg: 67.0ms (7.1% of total)
const: 15.0ms (1.6% of total)
Bogosity

preprocess100.0ms (3.8%)

Algorithm
egg-herbie
Rules
620×fma-define
497×associate-*l/
465×associate-/r*
389×div-sub
363×fma-neg
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0911509
12981481
29351481
332391453
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h))))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h)))))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) g)) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) g)) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) h)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) h)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 #s(literal -1/2 binary64) a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 #s(literal -1/2 binary64) a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 #s(literal -1/2 binary64) a))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 (neg.f64 g)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 h h))))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))
(-.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(-.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) (neg.f64 h)))))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))
(-.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(-.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 #s(literal -1/2 binary64) a))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 a))) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))
(neg.f64 (+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))
(-.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(-.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))) h))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) a) (-.f64 (sqrt.f64 (fma.f64 g (neg.f64 g) (*.f64 h h))) h))) (cbrt.f64 (*.f64 (/.f64 #s(literal -1/2 binary64) a) (+.f64 h (sqrt.f64 (fma.f64 g (neg.f64 g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) g)) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) g)) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) g) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) g) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) g) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) g) (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 h (neg.f64 h)))) a))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) g) (-.f64 (neg.f64 a) (sqrt.f64 (fma.f64 a a (*.f64 h (neg.f64 h))))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (*.f64 (+.f64 a (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))) (/.f64 #s(literal -1/2 binary64) g))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) h)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) h)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) h) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) h) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) h) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))) g))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) h) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) h) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))) g))) (cbrt.f64 (neg.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))) (*.f64 #s(literal 2 binary64) h)))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) h) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))) (/.f64 #s(literal -1/2 binary64) h))))
Symmetry

(abs h)

explain489.0ms (18.6%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1290-2(3.511108903677375e-157 1.908449622887594e-283 -4.877200018138996e+30)(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
1030-4(7.577719716538158e-86 1.9417671777859015e-134 3.0109659716075977e+224)(cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
970-3(4.2309525480325e+242 5.950967468105024e-129 4.9395612614368267e-185)(cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))
751(1.2121164947437278e-142 7.293915457456178e-233 4.0030252269491494e+131)0-(+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
550-0-(-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))
180-1(5.073546809264536e+300 1.597052278840903e-10 -1.0116322814809847e-187)(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
180-0-(-.f64 (*.f64 g g) (*.f64 h h))
140-2(-1.7011567349759433e-8 3.3127697650826944e-160 4.544917214113152e-42)(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))
00-0-h
00-0-g
00-0-#s(literal 2 binary64)
00-0-(neg.f64 g)
00-0-(*.f64 g g)
00-0-(*.f64 h h)
00-0-(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
00-0-(*.f64 #s(literal 2 binary64) a)
00-0-#s(literal 1 binary64)
00-0-a
00-0-(/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a))
Results
150.0ms140×4096valid
128.0ms174×2048valid
50.0ms88×1024valid
20.0ms54×512valid
10.0ms56×256valid
Compiler

Compiled 378 to 59 computations (84.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 209.0ms
ival-mult: 77.0ms (36.9% of total)
ival-cbrt: 38.0ms (18.2% of total)
ival-sub: 25.0ms (12% of total)
ival-add: 21.0ms (10.1% of total)
ival-div: 17.0ms (8.1% of total)
ival-sqrt: 17.0ms (8.1% of total)
ival-neg: 12.0ms (5.7% of total)
const: 3.0ms (1.4% of total)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
43.6%
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
Compiler

Compiled 80 to 38 computations (52.5% saved)

simplify8.0ms (0.3%)

Algorithm
egg-herbie
Rules
31×neg-mul-1
29×unsub-neg
18×*-commutative
16×+-commutative
14×distribute-rgt-neg-in
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
026151
146147
260147
376147
488147
597147
6110143
7121143
8165143
9235143
10238143
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
Outputs
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
(+.f64 (cbrt.f64 (*.f64 (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) a)) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) a)))))

soundness0.0ms (0%)

Stop Event
fuel
Compiler

Compiled 38 to 20 computations (47.4% saved)

preprocess25.0ms (1%)

Remove

(abs h)

Compiler

Compiled 308 to 158 computations (48.7% saved)

end0.0ms (0%)

Profiling

Loading profile data...