FastMath test5

Time bar (total: 2.0s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
100%100%0%0%0%0%0%1
Compiler

Compiled 21 to 10 computations (52.4% saved)

sample1.1s (55.8%)

Results
629.0ms4596×body256valid
492.0ms3660×body256infinite
Bogosity

preprocess188.0ms (9.3%)

Algorithm
egg-herbie
Rules
1524×unswap-sqr
1114×fma-def
900×fma-neg
862×cancel-sign-sub-inv
612×distribute-lft-neg-out
Problems
256×No Errors
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
024264
186176
2329104
391944
4189744
5476444
6657444
7756044
8795444
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 (*.f64 (neg.f64 d1) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 d1) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1)) (neg.f64 d1)) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1))) (neg.f64 d1))
(neg.f64 (*.f64 (*.f64 (neg.f64 d1) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 d1) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1)) (neg.f64 d1)) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1))) (neg.f64 d1)))
Outputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 (pow.f64 d1 3)) (pow.f64 d1 3)))))
(*.f64 d1 (*.f64 d1 (*.f64 (pow.f64 d1 4) (pow.f64 d1 4))))
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5))
(pow.f64 d1 10)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 (pow.f64 d1 3)) (pow.f64 d1 3)))))
(*.f64 d1 (*.f64 d1 (*.f64 (pow.f64 d1 4) (pow.f64 d1 4))))
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5))
(pow.f64 d1 10)
(*.f64 (*.f64 (neg.f64 d1) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 d1) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1)) (neg.f64 d1)) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1))) (neg.f64 d1))
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 (pow.f64 d1 3)) (pow.f64 d1 3)))))
(*.f64 d1 (*.f64 d1 (*.f64 (pow.f64 d1 4) (pow.f64 d1 4))))
(*.f64 (pow.f64 d1 5) (pow.f64 d1 5))
(pow.f64 d1 10)
(neg.f64 (*.f64 (*.f64 (neg.f64 d1) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 d1) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1)) (neg.f64 d1)) (*.f64 (neg.f64 d1) (neg.f64 d1))) (neg.f64 d1))) (neg.f64 d1)))
(*.f64 (*.f64 (neg.f64 d1) (*.f64 (*.f64 (pow.f64 (neg.f64 d1) 3) (*.f64 d1 d1)) (pow.f64 (neg.f64 d1) 3))) (neg.f64 (neg.f64 d1)))
(*.f64 d1 (*.f64 (neg.f64 d1) (*.f64 (pow.f64 d1 4) (pow.f64 d1 4))))
(*.f64 (pow.f64 d1 4) (neg.f64 (pow.f64 d1 6)))
(neg.f64 (pow.f64 d1 10))
Symmetry

(abs d1)

Compiler

Compiled 111 to 19 computations (82.9% saved)

eval1.0ms (0%)

Compiler

Compiled 37 to 24 computations (35.1% saved)

prune2.0ms (0.1%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(pow.f64 d1 10)
99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
100.0%
(pow.f64 d1 10)
99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 48 to 24 computations (50% saved)

localize52.0ms (2.5%)

Localize:

Found 4 expressions with local error:

NewAccuracyProgram
99.9%
(*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1))
99.9%
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
99.9%
(*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1)
99.9%
(*.f64 d1 (*.f64 d1 d1))
Compiler

Compiled 96 to 13 computations (86.5% saved)

series4.0ms (0.2%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
d1
@0
(*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1))
0.0ms
d1
@0
(*.f64 d1 (*.f64 d1 d1))
0.0ms
d1
@-inf
(*.f64 d1 (*.f64 d1 d1))
0.0ms
d1
@inf
(*.f64 d1 (*.f64 d1 d1))
0.0ms
d1
@0
(*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1)

rewrite186.0ms (9.2%)

Algorithm
batch-egg-rewrite
Rules
918×unpow-prod-down
782×prod-exp
636×log-prod
456×pow-prod-down
440×log1p-expm1-u
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01088
113149
2145740
Stop Event
node limit
Counts
4 → 103
Calls
Call 1
Inputs
(*.f64 d1 (*.f64 d1 d1))
(*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1)
(*.f64 (*.f64 d1 (*.f64 d1 d1)) d1)
(*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1))
Outputs
(+.f64 0 (pow.f64 d1 3))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 3)))))
(-.f64 (+.f64 1 (pow.f64 d1 3)) 1)
(pow.f64 d1 3)
(pow.f64 (pow.f64 d1 2) 3/2)
(pow.f64 (pow.f64 d1 3) 1)
(pow.f64 (cbrt.f64 d1) 9)
(pow.f64 (pow.f64 d1 6) 1/2)
(pow.f64 (pow.f64 d1 9) 1/3)
(pow.f64 (pow.f64 d1 3/2) 2)
(pow.f64 (sqrt.f64 d1) 6)
(pow.f64 (E.f64) (*.f64 (log.f64 d1) 3))
(pow.f64 (exp.f64 3) (log.f64 d1))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 d1) 3)) 2)) (cbrt.f64 (*.f64 (log.f64 d1) 3)))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 (log.f64 d1) 3))) (sqrt.f64 (*.f64 (log.f64 d1) 3)))
(sqrt.f64 (pow.f64 d1 6))
(log.f64 (exp.f64 (pow.f64 d1 3)))
(cbrt.f64 (pow.f64 d1 9))
(expm1.f64 (log1p.f64 (pow.f64 d1 3)))
(exp.f64 (*.f64 (log.f64 d1) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 9)) 1/3))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 d1)) 2))
(log1p.f64 (expm1.f64 (pow.f64 d1 3)))
(+.f64 0 (pow.f64 d1 5))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 5))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 5)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 5)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 5)))))
(-.f64 (+.f64 1 (pow.f64 d1 5)) 1)
(pow.f64 d1 5)
(pow.f64 (pow.f64 d1 2) 5/2)
(pow.f64 (pow.f64 d1 3) 5/3)
(pow.f64 (pow.f64 d1 5) 1)
(pow.f64 (pow.f64 (cbrt.f64 d1) 5) 3)
(pow.f64 (cbrt.f64 d1) 15)
(pow.f64 (pow.f64 d1 10) 1/2)
(pow.f64 (pow.f64 d1 15) 1/3)
(pow.f64 (pow.f64 d1 5/2) 2)
(pow.f64 (sqrt.f64 d1) 10)
(pow.f64 (E.f64) (*.f64 5 (log.f64 d1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 5 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 5 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 5 (log.f64 d1)))) (sqrt.f64 (*.f64 5 (log.f64 d1))))
(sqrt.f64 (pow.f64 d1 10))
(log.f64 (exp.f64 (pow.f64 d1 5)))
(cbrt.f64 (pow.f64 d1 15))
(expm1.f64 (log1p.f64 (pow.f64 d1 5)))
(exp.f64 (*.f64 5 (log.f64 d1)))
(exp.f64 (*.f64 (log.f64 d1) 5))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 d1) 5)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 15)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 5/2)) 2))
(log1p.f64 (expm1.f64 (pow.f64 d1 5)))
(+.f64 0 (pow.f64 d1 4))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 4)))))
(-.f64 (+.f64 1 (pow.f64 d1 4)) 1)
(pow.f64 d1 4)
(pow.f64 (pow.f64 d1 2) 2)
(pow.f64 (pow.f64 d1 3) 4/3)
(pow.f64 (pow.f64 d1 4) 1)
(pow.f64 (pow.f64 (cbrt.f64 d1) 2) 6)
(pow.f64 (pow.f64 (cbrt.f64 d1) 4) 3)
(pow.f64 (cbrt.f64 d1) 12)
(pow.f64 (pow.f64 d1 6) 2/3)
(pow.f64 (pow.f64 d1 8) 1/2)
(pow.f64 (pow.f64 d1 12) 1/3)
(pow.f64 (sqrt.f64 d1) 8)
(pow.f64 (E.f64) (*.f64 4 (log.f64 d1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 4 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 4 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 4 (log.f64 d1)))) (sqrt.f64 (*.f64 4 (log.f64 d1))))
(sqrt.f64 (pow.f64 d1 8))
(log.f64 (exp.f64 (pow.f64 d1 4)))
(cbrt.f64 (pow.f64 d1 12))
(expm1.f64 (log1p.f64 (pow.f64 d1 4)))
(exp.f64 (*.f64 4 (log.f64 d1)))
(exp.f64 (*.f64 (log.f64 d1) 4))
(exp.f64 (*.f64 (*.f64 2 (log.f64 d1)) 2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 d1) 4)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 12)) 1/3))
(log1p.f64 (expm1.f64 (pow.f64 d1 4)))
(+.f64 0 (pow.f64 d1 7))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 7))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 7)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 7)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 7)))))
(-.f64 (+.f64 1 (pow.f64 d1 7)) 1)
(pow.f64 d1 7)
(pow.f64 (pow.f64 d1 2) 7/2)
(pow.f64 (pow.f64 d1 3) 7/3)
(pow.f64 (pow.f64 d1 7) 1)
(pow.f64 (cbrt.f64 (pow.f64 d1 7)) 3)
(pow.f64 (pow.f64 (pow.f64 d1 7) 2) 1/2)
(pow.f64 (pow.f64 (pow.f64 d1 7) 3) 1/3)
(pow.f64 (pow.f64 d1 7/2) 2)
(pow.f64 (E.f64) (log.f64 (pow.f64 d1 7)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (pow.f64 d1 7))) 2)) (cbrt.f64 (log.f64 (pow.f64 d1 7))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (pow.f64 d1 7)))) (sqrt.f64 (log.f64 (pow.f64 d1 7))))
(sqrt.f64 (pow.f64 (pow.f64 d1 7) 2))
(log.f64 (exp.f64 (pow.f64 d1 7)))
(cbrt.f64 (pow.f64 (pow.f64 d1 7) 3))
(expm1.f64 (log1p.f64 (pow.f64 d1 7)))
(exp.f64 (log.f64 (pow.f64 d1 7)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 d1 7))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (pow.f64 d1 7))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 7/2)) 2))
(log1p.f64 (expm1.f64 (pow.f64 d1 7)))

simplify88.0ms (4.4%)

Algorithm
egg-herbie
Rules
1314×associate-*r*
1210×associate-*l*
1110×unswap-sqr
872×prod-exp
832×fma-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02408589936740
15444294969370
213472146
368082146
Stop Event
node limit
Counts
151 → 122
Calls
Call 1
Inputs
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(+.f64 0 (pow.f64 d1 3))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 3)))))
(-.f64 (+.f64 1 (pow.f64 d1 3)) 1)
(pow.f64 d1 3)
(pow.f64 (pow.f64 d1 2) 3/2)
(pow.f64 (pow.f64 d1 3) 1)
(pow.f64 (cbrt.f64 d1) 9)
(pow.f64 (pow.f64 d1 6) 1/2)
(pow.f64 (pow.f64 d1 9) 1/3)
(pow.f64 (pow.f64 d1 3/2) 2)
(pow.f64 (sqrt.f64 d1) 6)
(pow.f64 (E.f64) (*.f64 (log.f64 d1) 3))
(pow.f64 (exp.f64 3) (log.f64 d1))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 d1) 3)) 2)) (cbrt.f64 (*.f64 (log.f64 d1) 3)))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 (log.f64 d1) 3))) (sqrt.f64 (*.f64 (log.f64 d1) 3)))
(sqrt.f64 (pow.f64 d1 6))
(log.f64 (exp.f64 (pow.f64 d1 3)))
(cbrt.f64 (pow.f64 d1 9))
(expm1.f64 (log1p.f64 (pow.f64 d1 3)))
(exp.f64 (*.f64 (log.f64 d1) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 9)) 1/3))
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 d1)) 2))
(log1p.f64 (expm1.f64 (pow.f64 d1 3)))
(+.f64 0 (pow.f64 d1 5))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 5))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 5)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 5)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 5)))))
(-.f64 (+.f64 1 (pow.f64 d1 5)) 1)
(pow.f64 d1 5)
(pow.f64 (pow.f64 d1 2) 5/2)
(pow.f64 (pow.f64 d1 3) 5/3)
(pow.f64 (pow.f64 d1 5) 1)
(pow.f64 (pow.f64 (cbrt.f64 d1) 5) 3)
(pow.f64 (cbrt.f64 d1) 15)
(pow.f64 (pow.f64 d1 10) 1/2)
(pow.f64 (pow.f64 d1 15) 1/3)
(pow.f64 (pow.f64 d1 5/2) 2)
(pow.f64 (sqrt.f64 d1) 10)
(pow.f64 (E.f64) (*.f64 5 (log.f64 d1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 5 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 5 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 5 (log.f64 d1)))) (sqrt.f64 (*.f64 5 (log.f64 d1))))
(sqrt.f64 (pow.f64 d1 10))
(log.f64 (exp.f64 (pow.f64 d1 5)))
(cbrt.f64 (pow.f64 d1 15))
(expm1.f64 (log1p.f64 (pow.f64 d1 5)))
(exp.f64 (*.f64 5 (log.f64 d1)))
(exp.f64 (*.f64 (log.f64 d1) 5))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 d1) 5)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 15)) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 5/2)) 2))
(log1p.f64 (expm1.f64 (pow.f64 d1 5)))
(+.f64 0 (pow.f64 d1 4))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 4)))))
(-.f64 (+.f64 1 (pow.f64 d1 4)) 1)
(pow.f64 d1 4)
(pow.f64 (pow.f64 d1 2) 2)
(pow.f64 (pow.f64 d1 3) 4/3)
(pow.f64 (pow.f64 d1 4) 1)
(pow.f64 (pow.f64 (cbrt.f64 d1) 2) 6)
(pow.f64 (pow.f64 (cbrt.f64 d1) 4) 3)
(pow.f64 (cbrt.f64 d1) 12)
(pow.f64 (pow.f64 d1 6) 2/3)
(pow.f64 (pow.f64 d1 8) 1/2)
(pow.f64 (pow.f64 d1 12) 1/3)
(pow.f64 (sqrt.f64 d1) 8)
(pow.f64 (E.f64) (*.f64 4 (log.f64 d1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 4 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 4 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 4 (log.f64 d1)))) (sqrt.f64 (*.f64 4 (log.f64 d1))))
(sqrt.f64 (pow.f64 d1 8))
(log.f64 (exp.f64 (pow.f64 d1 4)))
(cbrt.f64 (pow.f64 d1 12))
(expm1.f64 (log1p.f64 (pow.f64 d1 4)))
(exp.f64 (*.f64 4 (log.f64 d1)))
(exp.f64 (*.f64 (log.f64 d1) 4))
(exp.f64 (*.f64 (*.f64 2 (log.f64 d1)) 2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 d1) 4)) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 12)) 1/3))
(log1p.f64 (expm1.f64 (pow.f64 d1 4)))
(+.f64 0 (pow.f64 d1 7))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 7))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 7)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 7)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 7)))))
(-.f64 (+.f64 1 (pow.f64 d1 7)) 1)
(pow.f64 d1 7)
(pow.f64 (pow.f64 d1 2) 7/2)
(pow.f64 (pow.f64 d1 3) 7/3)
(pow.f64 (pow.f64 d1 7) 1)
(pow.f64 (cbrt.f64 (pow.f64 d1 7)) 3)
(pow.f64 (pow.f64 (pow.f64 d1 7) 2) 1/2)
(pow.f64 (pow.f64 (pow.f64 d1 7) 3) 1/3)
(pow.f64 (pow.f64 d1 7/2) 2)
(pow.f64 (E.f64) (log.f64 (pow.f64 d1 7)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (pow.f64 d1 7))) 2)) (cbrt.f64 (log.f64 (pow.f64 d1 7))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (pow.f64 d1 7)))) (sqrt.f64 (log.f64 (pow.f64 d1 7))))
(sqrt.f64 (pow.f64 (pow.f64 d1 7) 2))
(log.f64 (exp.f64 (pow.f64 d1 7)))
(cbrt.f64 (pow.f64 (pow.f64 d1 7) 3))
(expm1.f64 (log1p.f64 (pow.f64 d1 7)))
(exp.f64 (log.f64 (pow.f64 d1 7)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 d1 7))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (pow.f64 d1 7))) 1/3))
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 7/2)) 2))
(log1p.f64 (expm1.f64 (pow.f64 d1 7)))
Outputs
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 d1 7)
(+.f64 0 (pow.f64 d1 3))
(pow.f64 d1 3)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3)))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 3)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 3)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 3)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 3)))))
(-.f64 (+.f64 1 (pow.f64 d1 3)) 1)
(pow.f64 d1 3)
(pow.f64 d1 3)
(pow.f64 (pow.f64 d1 2) 3/2)
(pow.f64 d1 3)
(pow.f64 (pow.f64 d1 3) 1)
(pow.f64 d1 3)
(pow.f64 (cbrt.f64 d1) 9)
(pow.f64 (pow.f64 d1 6) 1/2)
(pow.f64 d1 3)
(pow.f64 (pow.f64 d1 9) 1/3)
(pow.f64 d1 3)
(pow.f64 (pow.f64 d1 3/2) 2)
(pow.f64 d1 3)
(pow.f64 (sqrt.f64 d1) 6)
(pow.f64 d1 3)
(pow.f64 (E.f64) (*.f64 (log.f64 d1) 3))
(pow.f64 (E.f64) (*.f64 3 (log.f64 d1)))
(pow.f64 (exp.f64 3) (log.f64 d1))
(pow.f64 d1 3)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 (log.f64 d1) 3)) 2)) (cbrt.f64 (*.f64 (log.f64 d1) 3)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 3 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 3 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 (log.f64 d1) 3))) (sqrt.f64 (*.f64 (log.f64 d1) 3)))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 3 (log.f64 d1)))) (sqrt.f64 (*.f64 3 (log.f64 d1))))
(sqrt.f64 (pow.f64 d1 6))
(pow.f64 d1 3)
(log.f64 (exp.f64 (pow.f64 d1 3)))
(pow.f64 d1 3)
(cbrt.f64 (pow.f64 d1 9))
(pow.f64 d1 3)
(expm1.f64 (log1p.f64 (pow.f64 d1 3)))
(pow.f64 d1 3)
(exp.f64 (*.f64 (log.f64 d1) 3))
(pow.f64 d1 3)
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 9)) 1/3))
(pow.f64 d1 3)
(exp.f64 (*.f64 (*.f64 3/2 (log.f64 d1)) 2))
(pow.f64 d1 3)
(log1p.f64 (expm1.f64 (pow.f64 d1 3)))
(pow.f64 d1 3)
(+.f64 0 (pow.f64 d1 5))
(pow.f64 d1 5)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 5))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 5)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 5)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 5)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 5)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 5)))))
(-.f64 (+.f64 1 (pow.f64 d1 5)) 1)
(pow.f64 d1 5)
(pow.f64 d1 5)
(pow.f64 (pow.f64 d1 2) 5/2)
(pow.f64 d1 5)
(pow.f64 (pow.f64 d1 3) 5/3)
(*.f64 (pow.f64 (pow.f64 d1 3) 5/6) (pow.f64 (pow.f64 d1 3) 5/6))
(pow.f64 (pow.f64 d1 5) 1)
(pow.f64 d1 5)
(pow.f64 (pow.f64 (cbrt.f64 d1) 5) 3)
(pow.f64 d1 5)
(pow.f64 (cbrt.f64 d1) 15)
(pow.f64 d1 5)
(pow.f64 (pow.f64 d1 10) 1/2)
(pow.f64 d1 5)
(pow.f64 (pow.f64 d1 15) 1/3)
(pow.f64 d1 5)
(pow.f64 (pow.f64 d1 5/2) 2)
(pow.f64 d1 5)
(pow.f64 (sqrt.f64 d1) 10)
(pow.f64 (E.f64) (*.f64 5 (log.f64 d1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 5 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 5 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 5 (log.f64 d1)))) (sqrt.f64 (*.f64 5 (log.f64 d1))))
(sqrt.f64 (pow.f64 d1 10))
(pow.f64 d1 5)
(log.f64 (exp.f64 (pow.f64 d1 5)))
(pow.f64 d1 5)
(cbrt.f64 (pow.f64 d1 15))
(pow.f64 d1 5)
(expm1.f64 (log1p.f64 (pow.f64 d1 5)))
(pow.f64 d1 5)
(exp.f64 (*.f64 5 (log.f64 d1)))
(pow.f64 d1 5)
(exp.f64 (*.f64 (log.f64 d1) 5))
(pow.f64 d1 5)
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 d1) 5)) 3))
(pow.f64 d1 5)
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 15)) 1/3))
(pow.f64 d1 5)
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 5/2)) 2))
(pow.f64 d1 5)
(log1p.f64 (expm1.f64 (pow.f64 d1 5)))
(pow.f64 d1 5)
(+.f64 0 (pow.f64 d1 4))
(pow.f64 d1 4)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 4))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 4)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 4)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 4)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 4)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 4)))))
(-.f64 (+.f64 1 (pow.f64 d1 4)) 1)
(pow.f64 d1 4)
(pow.f64 d1 4)
(pow.f64 (pow.f64 d1 2) 2)
(pow.f64 d1 4)
(pow.f64 (pow.f64 d1 3) 4/3)
(*.f64 (pow.f64 (pow.f64 d1 3) 2/3) (pow.f64 (pow.f64 d1 3) 2/3))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 d1 3)) (cbrt.f64 (pow.f64 d1 3))) (*.f64 (cbrt.f64 (pow.f64 d1 3)) (cbrt.f64 (pow.f64 d1 3))))
(pow.f64 (pow.f64 d1 4) 1)
(pow.f64 d1 4)
(pow.f64 (pow.f64 (cbrt.f64 d1) 2) 6)
(pow.f64 d1 4)
(pow.f64 (pow.f64 (cbrt.f64 d1) 4) 3)
(pow.f64 d1 4)
(pow.f64 (cbrt.f64 d1) 12)
(pow.f64 d1 4)
(pow.f64 (pow.f64 d1 6) 2/3)
(*.f64 (cbrt.f64 (pow.f64 d1 6)) (cbrt.f64 (pow.f64 d1 6)))
(pow.f64 (pow.f64 d1 8) 1/2)
(pow.f64 d1 4)
(pow.f64 (pow.f64 d1 12) 1/3)
(pow.f64 d1 4)
(pow.f64 (sqrt.f64 d1) 8)
(pow.f64 d1 4)
(pow.f64 (E.f64) (*.f64 4 (log.f64 d1)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 4 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 4 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 4 (log.f64 d1)))) (sqrt.f64 (*.f64 4 (log.f64 d1))))
(sqrt.f64 (pow.f64 d1 8))
(pow.f64 d1 4)
(log.f64 (exp.f64 (pow.f64 d1 4)))
(pow.f64 d1 4)
(cbrt.f64 (pow.f64 d1 12))
(pow.f64 d1 4)
(expm1.f64 (log1p.f64 (pow.f64 d1 4)))
(pow.f64 d1 4)
(exp.f64 (*.f64 4 (log.f64 d1)))
(pow.f64 d1 4)
(exp.f64 (*.f64 (log.f64 d1) 4))
(pow.f64 d1 4)
(exp.f64 (*.f64 (*.f64 2 (log.f64 d1)) 2))
(pow.f64 d1 4)
(exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 d1) 4)) 3))
(pow.f64 d1 4)
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 12)) 1/3))
(pow.f64 d1 4)
(log1p.f64 (expm1.f64 (pow.f64 d1 4)))
(pow.f64 d1 4)
(+.f64 0 (pow.f64 d1 7))
(pow.f64 d1 7)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 7))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 7)))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (pow.f64 d1 7)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 7)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 7)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 d1 7)))))
(-.f64 (+.f64 1 (pow.f64 d1 7)) 1)
(pow.f64 d1 7)
(pow.f64 d1 7)
(pow.f64 (pow.f64 d1 2) 7/2)
(pow.f64 (pow.f64 d1 3) 7/3)
(*.f64 (pow.f64 (pow.f64 d1 3) 7/6) (pow.f64 (pow.f64 d1 3) 7/6))
(pow.f64 (pow.f64 d1 7) 1)
(pow.f64 d1 7)
(pow.f64 (cbrt.f64 (pow.f64 d1 7)) 3)
(pow.f64 d1 7)
(pow.f64 (pow.f64 (pow.f64 d1 7) 2) 1/2)
(pow.f64 d1 7)
(pow.f64 (pow.f64 (pow.f64 d1 7) 3) 1/3)
(pow.f64 d1 7)
(pow.f64 (pow.f64 d1 7/2) 2)
(pow.f64 d1 7)
(pow.f64 (E.f64) (log.f64 (pow.f64 d1 7)))
(pow.f64 d1 7)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (pow.f64 d1 7))) 2)) (cbrt.f64 (log.f64 (pow.f64 d1 7))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 7 (log.f64 d1))) 2)) (cbrt.f64 (*.f64 7 (log.f64 d1))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (pow.f64 d1 7)))) (sqrt.f64 (log.f64 (pow.f64 d1 7))))
(pow.f64 (exp.f64 (sqrt.f64 (*.f64 7 (log.f64 d1)))) (sqrt.f64 (*.f64 7 (log.f64 d1))))
(sqrt.f64 (pow.f64 (pow.f64 d1 7) 2))
(pow.f64 d1 7)
(log.f64 (exp.f64 (pow.f64 d1 7)))
(pow.f64 d1 7)
(cbrt.f64 (pow.f64 (pow.f64 d1 7) 3))
(pow.f64 d1 7)
(expm1.f64 (log1p.f64 (pow.f64 d1 7)))
(pow.f64 d1 7)
(exp.f64 (log.f64 (pow.f64 d1 7)))
(pow.f64 d1 7)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (pow.f64 d1 7))) 3))
(pow.f64 d1 7)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (pow.f64 d1 7))) 1/3))
(pow.f64 d1 7)
(exp.f64 (*.f64 (log.f64 (pow.f64 d1 7/2)) 2))
(pow.f64 d1 7)
(log1p.f64 (expm1.f64 (pow.f64 d1 7)))
(pow.f64 d1 7)

eval45.0ms (2.2%)

Compiler

Compiled 2169 to 1238 computations (42.9% saved)

prune18.0ms (0.9%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New1220122
Fresh000
Picked022
Done000
Total1222124
Accuracy
100.0%
Counts
124 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(pow.f64 d1 10)
99.9%
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 47 to 23 computations (51.1% saved)

regimes6.0ms (0.3%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(pow.f64 d1 10)
Outputs
(pow.f64 d1 10)
Calls

2 calls:

3.0ms
d1
2.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
100.0%1d1
100.0%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 45 to 21 computations (53.3% saved)

regimes5.0ms (0.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Outputs
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Calls

2 calls:

2.0ms
d1
2.0ms
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Results
AccuracySegmentsBranch
99.9%1d1
99.9%1(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Compiler

Compiled 42 to 19 computations (54.8% saved)

simplify3.0ms (0.2%)

Algorithm
egg-herbie
Rules
14×*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01595
12295
Stop Event
done
saturated
Calls
Call 1
Inputs
(pow.f64 d1 10)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
Outputs
(pow.f64 d1 10)
(*.f64 (*.f64 d1 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 d1 (*.f64 d1 d1)) d1) d1) (*.f64 d1 d1)) d1)) d1)
(*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 (*.f64 d1 d1) (*.f64 d1 (*.f64 d1 (*.f64 d1 (*.f64 d1 d1))))))))
Compiler

Compiled 24 to 12 computations (50% saved)

soundness260.0ms (12.8%)

Rules
1524×unswap-sqr
1114×fma-def
900×fma-neg
862×cancel-sign-sub-inv
612×distribute-lft-neg-out
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
024264
186176
2329104
391944
4189744
5476444
6657444
7756044
8795444
Stop Event
node limit
Compiler

Compiled 218 to 31 computations (85.8% saved)

end0.0ms (0%)

preprocess38.0ms (1.9%)

Remove

(abs d1)

Compiler

Compiled 118 to 64 computations (45.8% saved)

Profiling

Loading profile data...