Details

Time bar (total: 2.0s)

analyze243.0ms (11.9%)

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
0%0%99.9%0.1%0%0%0%6
12.5%12.5%87.4%0.1%0%0%0%7
18.8%18.7%81.1%0.1%0%0%0%8
28.1%28.1%71.8%0.1%0%0%0%9
39.7%37.4%56.9%0.1%5.5%0%0%10
46.5%43.7%50.3%0.1%5.9%0%0%11
55.2%51.9%42.1%0.1%5.9%0%0%12
Compiler

Compiled 9 to 6 computations (33.3% saved)

sample885.0ms (43.4%)

Results
811.0ms8256×body256valid
63.0ms640×body256infinite
Bogosity

preprocess155.0ms (7.6%)

Algorithm
egglog
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(-.f64 x (*.f64 y z))
(-.f64 y (*.f64 x z))
(-.f64 z (*.f64 y x))
(-.f64 x (*.f64 z y))
Outputs
(-.f64 x (*.f64 y z))
(fma.f64 z (neg.f64 y) x)
(-.f64 y (*.f64 x z))
(fma.f64 z (neg.f64 x) y)
(-.f64 z (*.f64 y x))
(fma.f64 x (neg.f64 y) z)
(-.f64 x (*.f64 z y))
(fma.f64 z (neg.f64 y) x)
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify71.0ms (3.5%)

Algorithm
egglog
Counts
1 → 2
Calls
Call 1
Inputs
(-.f64 x (*.f64 y z))
Outputs
(-.f64 x (*.f64 y z))
(fma.f64 y (neg.f64 z) x)

eval1.0ms (0%)

Compiler

Compiled 13 to 7 computations (46.2% saved)

prune2.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(fma.f64 y (neg.f64 z) x)
0.0b
(-.f64 x (*.f64 y z))
Compiler

Compiled 16 to 10 computations (37.5% saved)

localize13.0ms (0.6%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 y z))
Compiler

Compiled 14 to 5 computations (64.3% saved)

series30.0ms (1.5%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
z
@-inf
(-.f64 x (*.f64 y z))
1.0ms
y
@inf
(-.f64 x (*.f64 y z))
1.0ms
x
@0
(-.f64 x (*.f64 y z))
1.0ms
x
@inf
(-.f64 x (*.f64 y z))
1.0ms
y
@-inf
(-.f64 x (*.f64 y z))
Compiler

Compiled 1110 to 480 computations (56.8% saved)

rewrite85.0ms (4.2%)

Algorithm
batch-egg-rewrite
Rules
57×egg-rr
Counts
1 → 57
Calls
Call 1
Inputs
(-.f64 x (*.f64 y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y z)) (neg.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 2))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (neg.f64 z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 z) y x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 y z) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 0 0 (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (neg.f64 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 y) z x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (neg.f64 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (neg.f64 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (*.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 0 (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (neg.f64 (*.f64 y z))) (cbrt.f64 (pow.f64 (*.f64 y z) 2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 y z) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 (*.f64 y z)) x) 0) (/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 x x)) (-.f64 (neg.f64 (*.f64 y z)) x)) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (fma.f64 z y (neg.f64 x))) 0) (/.f64 (-.f64 0 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (+.f64 0 (fma.f64 z y (neg.f64 x)))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z))))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 z y (neg.f64 x)) 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x))))) 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (fma.f64 z y x) 0) (/.f64 (fma.f64 x x (neg.f64 (pow.f64 (*.f64 y z) 2))) (fma.f64 z y x)) (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (neg.f64 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y z)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y z)) (*.f64 -1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y z)) (*.f64 (neg.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y z)) (neg.f64 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x 0) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (fma.f64 z y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (*.f64 y z)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)))) (cbrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x))) (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cbrt.f64 (fma.f64 z y (neg.f64 x)))) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cbrt.f64 (*.f64 x x)) (+.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 2)) (cbrt.f64 (*.f64 x (*.f64 y z))))) (-.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (cbrt.f64 (fma.f64 y (neg.f64 z) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z y (neg.f64 x))) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (fma.f64 z y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z y (neg.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y (neg.f64 z) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (neg.f64 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y (neg.f64 z) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (fma.f64 z y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (fma.f64 z y (neg.f64 x)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3))))))

simplify195.0ms (9.6%)

Algorithm
egglog
Counts
93 → 70
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (*.f64 (neg.f64 y) (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) x)
(fma.f64 (cbrt.f64 (*.f64 y z)) (neg.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 2))) x)
(fma.f64 y (neg.f64 z) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 -1 (*.f64 y z) x)
(fma.f64 0 0 (fma.f64 y (neg.f64 z) x))
(fma.f64 z (neg.f64 y) x)
(fma.f64 (neg.f64 y) z x)
(fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 y z)))
(fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 y z)))
(fma.f64 1 x (neg.f64 (*.f64 y z)))
(fma.f64 x 1 (neg.f64 (*.f64 y z)))
(fma.f64 1 (neg.f64 (*.f64 y z)) x)
(fma.f64 1 0 (fma.f64 y (neg.f64 z) x))
(fma.f64 (cbrt.f64 (neg.f64 (*.f64 y z))) (cbrt.f64 (pow.f64 (*.f64 y z) 2)) x)
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (*.f64 y z) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (-.f64 (neg.f64 (*.f64 y z)) x) 0) (/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 x x)) (-.f64 (neg.f64 (*.f64 y z)) x)) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (+.f64 0 (fma.f64 z y (neg.f64 x))) 0) (/.f64 (-.f64 0 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (+.f64 0 (fma.f64 z y (neg.f64 x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z))))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 0 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 z y (neg.f64 x)) 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x))))) 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 z y x) 0) (/.f64 (fma.f64 x x (neg.f64 (pow.f64 (*.f64 y z) 2))) (fma.f64 z y x)) (fma.f64 y (neg.f64 z) x))
(+.f64 0 (fma.f64 y (neg.f64 z) x))
(+.f64 x (neg.f64 (*.f64 y z)))
(+.f64 (neg.f64 (*.f64 y z)) x)
(+.f64 (neg.f64 (*.f64 y z)) (*.f64 -1 (neg.f64 x)))
(+.f64 (neg.f64 (*.f64 y z)) (*.f64 (neg.f64 x) -1))
(+.f64 (neg.f64 (*.f64 y z)) (neg.f64 (neg.f64 x)))
(-.f64 x (*.f64 y z))
(-.f64 (+.f64 x 0) (*.f64 y z))
(-.f64 0 (fma.f64 z y (neg.f64 x)))
(-.f64 (neg.f64 (*.f64 y z)) (neg.f64 x))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)))) (cbrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x))) (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))
(*.f64 (neg.f64 (cbrt.f64 (fma.f64 z y (neg.f64 x)))) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)))
(*.f64 (+.f64 (cbrt.f64 (*.f64 x x)) (+.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 2)) (cbrt.f64 (*.f64 x (*.f64 y z))))) (-.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 y z))))
(*.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (cbrt.f64 (fma.f64 y (neg.f64 z) x)))
(*.f64 (cbrt.f64 (fma.f64 z y (neg.f64 x))) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))
(*.f64 -1 (fma.f64 z y (neg.f64 x)))
(*.f64 (fma.f64 z y (neg.f64 x)) -1)
(*.f64 1 (fma.f64 y (neg.f64 z) x))
(*.f64 (fma.f64 y (neg.f64 z) x) 1)
(pow.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) 1/3)
(pow.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)) 3)
(pow.f64 (fma.f64 y (neg.f64 z) x) 1)
(neg.f64 (fma.f64 z y (neg.f64 x)))
(neg.f64 (-.f64 (fma.f64 z y (neg.f64 x)) 0))
(cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3))
Outputs
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
x
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(*.f64 -1 (*.f64 y z))
(neg.f64 (*.f64 y z))
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (*.f64 -1 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 (*.f64 (neg.f64 y) (cbrt.f64 z)) (cbrt.f64 (*.f64 z z)) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 (cbrt.f64 (*.f64 y z)) (neg.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 2))) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 y (neg.f64 z) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 -1 (*.f64 y z) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 0 0 (fma.f64 y (neg.f64 z) x))
(fma.f64 (neg.f64 z) y x)
(fma.f64 z (neg.f64 y) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 (neg.f64 y) z x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 y z)))
(fma.f64 (neg.f64 z) y x)
(fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 y z)))
(fma.f64 (neg.f64 z) y x)
(fma.f64 1 x (neg.f64 (*.f64 y z)))
(fma.f64 (neg.f64 z) y x)
(fma.f64 x 1 (neg.f64 (*.f64 y z)))
(fma.f64 (neg.f64 z) y x)
(fma.f64 1 (neg.f64 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(fma.f64 1 0 (fma.f64 y (neg.f64 z) x))
(fma.f64 (neg.f64 z) y x)
(fma.f64 (cbrt.f64 (neg.f64 (*.f64 y z))) (cbrt.f64 (pow.f64 (*.f64 y z) 2)) x)
(fma.f64 (neg.f64 z) y x)
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (*.f64 y z) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (*.f64 y z) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (-.f64 (neg.f64 (*.f64 y z)) x) 0) (/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 x x)) (-.f64 (neg.f64 (*.f64 y z)) x)) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (neg.f64 (fma.f64 z y x)) 0) (/.f64 (fma.f64 x x (neg.f64 (pow.f64 (*.f64 y z) 2))) (fma.f64 z y x)) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (+.f64 0 (fma.f64 z y (neg.f64 x))) 0) (/.f64 (-.f64 0 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (+.f64 0 (fma.f64 z y (neg.f64 x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 z y (neg.f64 x)) 0) (/.f64 (pow.f64 (fma.f64 z y (neg.f64 x)) 2) (fma.f64 (neg.f64 z) y x)) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z))))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 x 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 0 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 0 0) (/.f64 (pow.f64 (fma.f64 z y (neg.f64 x)) 2) (fma.f64 (neg.f64 z) y x)) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (fma.f64 z y (neg.f64 x)) 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 z y (neg.f64 x)) 0) (/.f64 (pow.f64 (fma.f64 z y (neg.f64 x)) 2) (fma.f64 (neg.f64 z) y x)) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x))))) 0) (/.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) (+.f64 0 (+.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2) (*.f64 0 (fma.f64 z y (neg.f64 x)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (pow.f64 (fma.f64 z y (neg.f64 x)) 2) 0) (/.f64 (pow.f64 (fma.f64 z y (neg.f64 x)) 2) (fma.f64 (neg.f64 z) y x)) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x))) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (neg.f64 (*.f64 y z)) (-.f64 (neg.f64 (*.f64 y z)) x)))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 x x) (neg.f64 (*.f64 x (*.f64 y z)))))) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (neg.f64 (*.f64 y z)) 0) (/.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 x x (*.f64 (*.f64 y z) (fma.f64 z y x)))) (fma.f64 (neg.f64 z) y x))
(if (!=.f64 (fma.f64 z y x) 0) (/.f64 (fma.f64 x x (neg.f64 (pow.f64 (*.f64 y z) 2))) (fma.f64 z y x)) (fma.f64 y (neg.f64 z) x))
(if (!=.f64 (fma.f64 z y x) 0) (/.f64 (fma.f64 x x (neg.f64 (pow.f64 (*.f64 y z) 2))) (fma.f64 z y x)) (fma.f64 (neg.f64 z) y x))
(+.f64 0 (fma.f64 y (neg.f64 z) x))
(fma.f64 (neg.f64 z) y x)
(+.f64 x (neg.f64 (*.f64 y z)))
(fma.f64 (neg.f64 z) y x)
(+.f64 (neg.f64 (*.f64 y z)) x)
(fma.f64 (neg.f64 z) y x)
(+.f64 (neg.f64 (*.f64 y z)) (*.f64 -1 (neg.f64 x)))
(fma.f64 (neg.f64 z) y x)
(+.f64 (neg.f64 (*.f64 y z)) (*.f64 (neg.f64 x) -1))
(fma.f64 (neg.f64 z) y x)
(+.f64 (neg.f64 (*.f64 y z)) (neg.f64 (neg.f64 x)))
(fma.f64 (neg.f64 z) y x)
(-.f64 x (*.f64 y z))
(fma.f64 (neg.f64 z) y x)
(-.f64 (+.f64 x 0) (*.f64 y z))
(fma.f64 (neg.f64 z) y x)
(-.f64 0 (fma.f64 z y (neg.f64 x)))
(fma.f64 (neg.f64 z) y x)
(-.f64 (neg.f64 (*.f64 y z)) (neg.f64 x))
(fma.f64 (neg.f64 z) y x)
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)))) (cbrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))
(fma.f64 (neg.f64 z) y x)
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x))) (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))
(fma.f64 (neg.f64 z) y x)
(*.f64 (neg.f64 (cbrt.f64 (fma.f64 z y (neg.f64 x)))) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)))
(fma.f64 (neg.f64 z) y x)
(*.f64 (+.f64 (cbrt.f64 (*.f64 x x)) (+.f64 (cbrt.f64 (pow.f64 (*.f64 y z) 2)) (cbrt.f64 (*.f64 x (*.f64 y z))))) (-.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 y z))))
(fma.f64 (neg.f64 z) y x)
(*.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)) (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)))
(fma.f64 (neg.f64 z) y x)
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2)) (cbrt.f64 (fma.f64 y (neg.f64 z) x)))
(fma.f64 (neg.f64 z) y x)
(*.f64 (cbrt.f64 (fma.f64 z y (neg.f64 x))) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 2))))
(fma.f64 (neg.f64 z) y x)
(*.f64 -1 (fma.f64 z y (neg.f64 x)))
(fma.f64 (neg.f64 z) y x)
(*.f64 (fma.f64 z y (neg.f64 x)) -1)
(fma.f64 (neg.f64 z) y x)
(*.f64 1 (fma.f64 y (neg.f64 z) x))
(fma.f64 (neg.f64 z) y x)
(*.f64 (fma.f64 y (neg.f64 z) x) 1)
(fma.f64 (neg.f64 z) y x)
(pow.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3) 1/3)
(fma.f64 (neg.f64 z) y x)
(pow.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) x)) 3)
(fma.f64 (neg.f64 z) y x)
(pow.f64 (fma.f64 y (neg.f64 z) x) 1)
(fma.f64 (neg.f64 z) y x)
(neg.f64 (fma.f64 z y (neg.f64 x)))
(fma.f64 (neg.f64 z) y x)
(neg.f64 (-.f64 (fma.f64 z y (neg.f64 x)) 0))
(fma.f64 (neg.f64 z) y x)
(cbrt.f64 (pow.f64 (fma.f64 y (neg.f64 z) x) 3))
(fma.f64 (neg.f64 z) y x)

localize11.0ms (0.6%)

Compiler

Compiled 13 to 5 computations (61.5% saved)

eval28.0ms (1.4%)

Compiler

Compiled 1241 to 392 computations (68.4% saved)

prune21.0ms (1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New68270
Fresh000
Picked011
Done011
Total68472
Error
0b
Counts
72 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(fma.f64 y (neg.f64 z) x)
0.0b
(-.f64 x (*.f64 y z))
35.0b
(neg.f64 (*.f64 y z))
27.7b
x
Compiler

Compiled 27 to 18 computations (33.3% saved)

localize9.0ms (0.5%)

Compiler

Compiled 12 to 5 computations (58.3% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New000
Fresh011
Picked011
Done022
Total044
Error
0b
Counts
4 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(fma.f64 y (neg.f64 z) x)
0.0b
(-.f64 x (*.f64 y z))
35.0b
(neg.f64 (*.f64 y z))
27.7b
x
Compiler

Compiled 27 to 18 computations (33.3% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done033
Total044
Error
0b
Counts
4 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(fma.f64 y (neg.f64 z) x)
0.0b
(-.f64 x (*.f64 y z))
35.0b
(neg.f64 (*.f64 y z))
27.7b
x
Compiler

Compiled 27 to 18 computations (33.3% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done033
Total044
Error
0b
Counts
4 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(fma.f64 y (neg.f64 z) x)
0.0b
(-.f64 x (*.f64 y z))
35.0b
(neg.f64 (*.f64 y z))
27.7b
x
Compiler

Compiled 27 to 18 computations (33.3% saved)

regimes42.0ms (2.1%)

Counts
4 → 1
Calls
Call 1
Inputs
x
(neg.f64 (*.f64 y z))
(-.f64 x (*.f64 y z))
(fma.f64 y (neg.f64 z) x)
Outputs
(fma.f64 y (neg.f64 z) x)
Calls

5 calls:

9.0ms
x
9.0ms
z
8.0ms
(*.f64 y z)
7.0ms
(-.f64 x (*.f64 y z))
7.0ms
y
Results
ErrorSegmentsBranch
0b1x
0b1y
0b1z
0b1(-.f64 x (*.f64 y z))
0b1(*.f64 y z)
Compiler

Compiled 44 to 26 computations (40.9% saved)

regimes36.0ms (1.8%)

Counts
3 → 1
Calls
Call 1
Inputs
x
(neg.f64 (*.f64 y z))
(-.f64 x (*.f64 y z))
Outputs
(-.f64 x (*.f64 y z))
Calls

5 calls:

8.0ms
z
7.0ms
(-.f64 x (*.f64 y z))
7.0ms
y
7.0ms
(*.f64 y z)
5.0ms
x
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1(-.f64 x (*.f64 y z))
0.0b1(*.f64 y z)
Compiler

Compiled 39 to 24 computations (38.5% saved)

regimes106.0ms (5.2%)

Accuracy

Total -51.0b remaining (-467.9%)

Threshold costs -51.0b (-467.9%)

Counts
2 → 7
Calls
Call 1
Inputs
x
(neg.f64 (*.f64 y z))
Outputs
(neg.f64 (*.f64 y z))
x
(neg.f64 (*.f64 y z))
x
(neg.f64 (*.f64 y z))
x
(neg.f64 (*.f64 y z))
Calls

4 calls:

33.0ms
y
26.0ms
(*.f64 y z)
25.0ms
z
22.0ms
x
Results
ErrorSegmentsBranch
11.5b5x
15.2b7y
17.3b7z
10.9b7(*.f64 y z)
Compiler

Compiled 26 to 18 computations (30.8% saved)

bsearch66.0ms (3.2%)

Algorithm
binary-search
Steps
TimeLeftRight
10.0ms
2.8868308276775833e+98
7.644675775237039e+99
13.0ms
8.086969486441972e-29
1.0149869748641661e-16
9.0ms
5.88402884267538e-78
4.396965921816029e-77
9.0ms
5.5088196828156016e-98
5.85467098950172e-96
10.0ms
2.659209561619925e-119
8.515248439957023e-118
15.0ms
-1.9056974622703181e+37
-2.0320309674339445e+24
Results
57.0ms752×body256valid
Compiler

Compiled 531 to 433 computations (18.5% saved)

simplify2.0ms (0.1%)

Stop Event
fuel
Compiler

Compiled 78 to 36 computations (53.8% saved)

soundness0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

end28.0ms (1.4%)

Compiler

Compiled 69 to 26 computations (62.3% saved)

Profiling

Loading profile data...