exp2 (problem 3.3.7)

Time bar (total: 7.9s)

analyze0.0ms (0%)

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

Compiled 13 to 10 computations (23.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
Operation ival-add, time spent: 0.0ms, 0.0% of total-time
Operation ival-exp, time spent: 0.0ms, 0.0% of total-time
Operation ival-neg, time spent: 0.0ms, 0.0% of total-time
Operation ival-sub, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time
Operation ival-<=, time spent: 0.0ms, 0.0% of total-time
Operation ival-fabs, time spent: 0.0ms, 0.0% of total-time

sample6.0s (75.8%)

Results
4.2s4253×2048valid
1.3s2060×1024valid
276.0ms1011×512valid
205.0ms932×256valid
Precisions
Click to see histograms. Total time spent on operations: 3.9s
Operation ival-exp, time spent: 2.5s, 65.0% of total-time
Operation ival-<=, time spent: 397.0ms, 10.0% of total-time
Operation ival-neg, time spent: 251.0ms, 6.0% of total-time
Operation ival-sub, time spent: 248.0ms, 6.0% of total-time
Operation ival-fabs, time spent: 243.0ms, 6.0% of total-time
Operation ival-add, time spent: 187.0ms, 5.0% of total-time
Operation const, time spent: 41.0ms, 1.0% of total-time
Bogosity

preprocess450.0ms (5.7%)

Algorithm
egg-herbie
Rules
2262×fma-def
1170×distribute-lft-neg-in
932×associate-/r/
802×div-sub
632×associate-*l/
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1312(7.377665675760763e-162)0-(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
00-0-x
01(434.4142241070903)0-(exp.f64 (neg.f64 x))
00-0-(neg.f64 x)
00-0-(exp.f64 x)
00-0-2
00-0-(-.f64 (exp.f64 x) 2)
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
017128
145128
2104124
3252124
4547124
51117124
62905124
75714124
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
(+.f64 (-.f64 (exp.f64 (neg.f64 x)) 2) (exp.f64 (neg.f64 (neg.f64 x))))
(neg.f64 (+.f64 (-.f64 (exp.f64 (neg.f64 x)) 2) (exp.f64 (neg.f64 (neg.f64 x)))))
Outputs
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
(+.f64 (+.f64 (exp.f64 x) -2) (exp.f64 (neg.f64 x)))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
(+.f64 (+.f64 (exp.f64 x) -2) (exp.f64 (neg.f64 x)))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(+.f64 (-.f64 (exp.f64 (neg.f64 x)) 2) (exp.f64 (neg.f64 (neg.f64 x))))
(+.f64 (+.f64 (exp.f64 x) -2) (exp.f64 (neg.f64 x)))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(neg.f64 (+.f64 (-.f64 (exp.f64 (neg.f64 x)) 2) (exp.f64 (neg.f64 (neg.f64 x)))))
(neg.f64 (-.f64 (exp.f64 (neg.f64 x)) (-.f64 2 (exp.f64 x))))
(-.f64 (neg.f64 (exp.f64 x)) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (-.f64 2 (exp.f64 (neg.f64 x))) (exp.f64 x))
(-.f64 2 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
Symmetry

(abs x)

Compiler

Compiled 55 to 29 computations (47.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 192.0ms
Operation ival-exp, time spent: 145.0ms, 75.0% of total-time
Operation ival-sub, time spent: 21.0ms, 11.0% of total-time
Operation ival-add, time spent: 11.0ms, 6.0% of total-time
Operation ival-neg, time spent: 8.0ms, 4.0% of total-time
Operation const, time spent: 6.0ms, 3.0% of total-time

eval1.0ms (0%)

Compiler

Compiled 17 to 10 computations (41.2% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
53.8%
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Compiler

Compiled 9 to 7 computations (22.2% saved)

localize169.0ms (2.1%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(-.f64 (exp.f64 x) 2)
53.9%
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Compiler

Compiled 23 to 11 computations (52.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 95.0ms
Operation ival-exp, time spent: 73.0ms, 77.0% of total-time
Operation ival-sub, time spent: 11.0ms, 12.0% of total-time
Operation ival-add, time spent: 5.0ms, 5.0% of total-time
Operation ival-neg, time spent: 4.0ms, 4.0% of total-time
Operation const, time spent: 3.0ms, 3.0% of total-time

series2.0ms (0%)

Counts
2 → 16
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
0.0ms
x
@-inf
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
0.0ms
x
@inf
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
0.0ms
x
@0
(-.f64 (exp.f64 x) 2)
0.0ms
x
@inf
(-.f64 (exp.f64 x) 2)

rewrite189.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
1072×prod-diff
672×fma-def
645×log1p-expm1-u
645×expm1-log1p-u
504×log-prod
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01262
115262
2219962
Stop Event
node limit
Counts
2 → 64
Calls
Call 1
Inputs
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
(-.f64 (exp.f64 x) 2)
Outputs
-64
-16
-8
-4
-3
-2
-3/2
-1
-2/3
-1/2
-1/3
0
1/9
1/6
1/3
1/2
2/3
1
4/3
3/2
2
5/2
3
4
9/2
5
6
8
9
16
64
512
-64
-16
-8
-4
-3
-2
-3/2
-1
-2/3
-1/2
-1/3
0
1/9
1/6
1/3
1/2
2/3
1
4/3
3/2
2
5/2
3
4
9/2
5
6
8
9
16
64
512

simplify83.0ms (1%)

Algorithm
egg-herbie
Rules
1496×unswap-sqr
1488×distribute-lft-out
1216×distribute-rgt-out
1132×associate-*r*
1116×fma-def
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
069544
1132540
2257536
3746526
43466526
57703526
Stop Event
node limit
Counts
80 → 59
Calls
Call 1
Inputs
(pow.f64 x 2)
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/360 (pow.f64 x 6)) (+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(+.f64 (*.f64 1/20160 (pow.f64 x 8)) (+.f64 (*.f64 1/360 (pow.f64 x 6)) (+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
-1
(-.f64 x 1)
(-.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(-.f64 (+.f64 x (+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 x 2)))) 1)
-64
-16
-8
-4
-3
-2
-3/2
-1
-2/3
-1/2
-1/3
0
1/9
1/6
1/3
1/2
2/3
1
4/3
3/2
2
5/2
3
4
9/2
5
6
8
9
16
64
512
-64
-16
-8
-4
-3
-2
-3/2
-1
-2/3
-1/2
-1/3
0
1/9
1/6
1/3
1/2
2/3
1
4/3
3/2
2
5/2
3
4
9/2
5
6
8
9
16
64
512
Outputs
(pow.f64 x 2)
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/360 (pow.f64 x 6)) (+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(fma.f64 1/360 (pow.f64 x 6) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/360 (pow.f64 x 6) (pow.f64 x 2)))
(+.f64 (*.f64 1/20160 (pow.f64 x 8)) (+.f64 (*.f64 1/360 (pow.f64 x 6)) (+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(fma.f64 1/20160 (pow.f64 x 8) (fma.f64 1/360 (pow.f64 x 6) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/360 (pow.f64 x 6) (fma.f64 1/20160 (pow.f64 x 8) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (fma.f64 1/20160 (pow.f64 x 8) (fma.f64 1/360 (pow.f64 x 6) (pow.f64 x 2))))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
(-.f64 (+.f64 (exp.f64 x) (exp.f64 (*.f64 -1 x))) 2)
(+.f64 (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) -2)
(+.f64 (exp.f64 (neg.f64 x)) (+.f64 (exp.f64 x) -2))
(+.f64 (exp.f64 x) (+.f64 (exp.f64 (neg.f64 x)) -2))
-1
(-.f64 x 1)
(+.f64 x -1)
(-.f64 (+.f64 x (*.f64 1/2 (pow.f64 x 2))) 1)
(+.f64 x (-.f64 (*.f64 (pow.f64 x 2) 1/2) 1))
(+.f64 x (fma.f64 (pow.f64 x 2) 1/2 -1))
(fma.f64 (fma.f64 x 1/2 1) x -1)
(fma.f64 x (fma.f64 x 1/2 1) -1)
(-.f64 (+.f64 x (+.f64 (*.f64 1/6 (pow.f64 x 3)) (*.f64 1/2 (pow.f64 x 2)))) 1)
(+.f64 (+.f64 x (fma.f64 1/6 (pow.f64 x 3) (*.f64 (pow.f64 x 2) 1/2))) -1)
(+.f64 (fma.f64 1/6 (pow.f64 x 3) (*.f64 (pow.f64 x 2) 1/2)) (+.f64 x -1))
(+.f64 (fma.f64 (pow.f64 x 2) 1/2 x) (fma.f64 1/6 (pow.f64 x 3) -1))
(+.f64 x (fma.f64 (pow.f64 x 2) (fma.f64 x 1/6 1/2) -1))
-64
-16
-8
-4
-3
-2
-3/2
-1
-2/3
-1/2
-1/3
0
1/9
1/6
1/3
1/2
2/3
1
4/3
3/2
2
5/2
3
4
9/2
5
6
8
9
16
64
512
-64
-16
-8
-4
-3
-2
-3/2
-1
-2/3
-1/2
-1/3
0
1/9
1/6
1/3
1/2
2/3
1
4/3
3/2
2
5/2
3
4
9/2
5
6
8
9
16
64
512

eval10.0ms (0.1%)

Compiler

Compiled 375 to 258 computations (31.2% saved)

prune117.0ms (1.5%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New54559
Fresh000
Picked011
Done000
Total54660
Accuracy
100.0%
Counts
60 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.1%
(pow.f64 x 2)
53.8%
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
99.3%
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
4.1%
512
4.1%
1/9
52.9%
0
Compiler

Compiled 49 to 41 computations (16.3% saved)

localize80.0ms (1%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
99.9%
(*.f64 1/12 (pow.f64 x 4))
Compiler

Compiled 34 to 26 computations (23.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 26.0ms
Operation ival-pow, time spent: 17.0ms, 65.0% of total-time
Operation ival-mult, time spent: 5.0ms, 19.0% of total-time
Operation const, time spent: 3.0ms, 12.0% of total-time
Operation ival-add, time spent: 2.0ms, 8.0% of total-time

series2.0ms (0%)

Counts
2 → 3
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 1/12 (pow.f64 x 4))
0.0ms
x
@inf
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
0.0ms
x
@inf
(*.f64 1/12 (pow.f64 x 4))
0.0ms
x
@-inf
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
0.0ms
x
@0
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))

rewrite82.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
856×unpow-prod-down
634×fma-def
528×log-prod
522×log1p-expm1-u
522×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01243
112843
2159743
Stop Event
node limit
Counts
2 → 84
Calls
Call 1
Inputs
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
Outputs
(+.f64 0 (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))))
(-.f64 (+.f64 1 (*.f64 1/12 (pow.f64 x 4))) 1)
(pow.f64 (*.f64 1/12 (pow.f64 x 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) 3)
(pow.f64 (*.f64 (pow.f64 x 8) 1/144) 1/2)
(pow.f64 (*.f64 (pow.f64 x 12) 1/1728) 1/3)
(pow.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) 2)
(pow.f64 (E.f64) (log.f64 (*.f64 1/12 (pow.f64 x 4))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))) 2)) (cbrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4))))) (sqrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))))
(sqrt.f64 (*.f64 (pow.f64 x 8) 1/144))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))
(cbrt.f64 (*.f64 (pow.f64 x 12) 1/1728))
(expm1.f64 (log1p.f64 (*.f64 1/12 (pow.f64 x 4))))
(exp.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 x 12) 1/1728)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/12 (pow.f64 x 4))))
(-.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 1)
(-.f64 (/.f64 (*.f64 (pow.f64 x 8) 1/144) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))) (/.f64 (pow.f64 x 4) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (log.f64 (E.f64)))
(*.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(*.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6)))))
(*.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (/.f64 1 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(*.f64 (pow.f64 1 1/3) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 3) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2) 1/3) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(/.f64 1 (/.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))) (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))))
(/.f64 1 (/.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (*.f64 1/12 (pow.f64 x 6)))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))) (neg.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))) (neg.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (-.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))
(pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 3)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3) 1/3)
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(pow.f64 (E.f64) (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))) (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2))
(log.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 1/3))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 4) 1/12 (pow.f64 x 2))
(fma.f64 (*.f64 1/12 (pow.f64 x 4)) 1 (pow.f64 x 2))
(fma.f64 (pow.f64 x 2) 1 (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 1/12) (pow.f64 x 2))
(fma.f64 1 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 x) 4) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 (cbrt.f64 x) 4) (pow.f64 (cbrt.f64 x) 2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 (cbrt.f64 x) 8) (*.f64 (pow.f64 (cbrt.f64 x) 4) 1/12) (pow.f64 x 2))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 1/144)) (pow.f64 x 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 1/144)) (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) (pow.f64 x 2))
(fma.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) (pow.f64 x 2))
(fma.f64 (sqrt.f64 x) (pow.f64 x 3/2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 3/2) (sqrt.f64 x) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 8)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 4)) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (*.f64 1/12 (pow.f64 x 2)) (pow.f64 x 2) (pow.f64 x 2))
(fma.f64 (*.f64 1/12 (pow.f64 (cbrt.f64 x) 8)) (pow.f64 (cbrt.f64 x) 4) (pow.f64 x 2))
(fma.f64 (pow.f64 (cbrt.f64 x) 5) (cbrt.f64 x) (*.f64 1/12 (pow.f64 x 4)))

simplify98.0ms (1.2%)

Algorithm
egg-herbie
Rules
1340×fma-neg
1272×hypot-def
1256×fma-def
922×log-prod
656×unswap-sqr
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02133752
15123165
214423071
361863071
Stop Event
node limit
Counts
87 → 102
Calls
Call 1
Inputs
(pow.f64 x 2)
(*.f64 1/12 (pow.f64 x 4))
(*.f64 1/12 (pow.f64 x 4))
(+.f64 0 (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))))
(-.f64 (+.f64 1 (*.f64 1/12 (pow.f64 x 4))) 1)
(pow.f64 (*.f64 1/12 (pow.f64 x 4)) 1)
(pow.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) 3)
(pow.f64 (*.f64 (pow.f64 x 8) 1/144) 1/2)
(pow.f64 (*.f64 (pow.f64 x 12) 1/1728) 1/3)
(pow.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) 2)
(pow.f64 (E.f64) (log.f64 (*.f64 1/12 (pow.f64 x 4))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))) 2)) (cbrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4))))) (sqrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))))
(sqrt.f64 (*.f64 (pow.f64 x 8) 1/144))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))
(cbrt.f64 (*.f64 (pow.f64 x 12) 1/1728))
(expm1.f64 (log1p.f64 (*.f64 1/12 (pow.f64 x 4))))
(exp.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4)))) 3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 x 12) 1/1728)) 1/3))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2))
(log1p.f64 (expm1.f64 (*.f64 1/12 (pow.f64 x 4))))
(-.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 1)
(-.f64 (/.f64 (*.f64 (pow.f64 x 8) 1/144) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))) (/.f64 (pow.f64 x 4) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (log.f64 (E.f64)))
(*.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(*.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6)))))
(*.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (/.f64 1 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(*.f64 (pow.f64 1 1/3) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 3) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2) 1/3) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(/.f64 1 (/.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))) (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))))
(/.f64 1 (/.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (*.f64 1/12 (pow.f64 x 6)))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))) (neg.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))) (neg.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (-.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))
(pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 3)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3) 1/3)
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(pow.f64 (E.f64) (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(pow.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))) (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2))
(log.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 1/3))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 4) 1/12 (pow.f64 x 2))
(fma.f64 (*.f64 1/12 (pow.f64 x 4)) 1 (pow.f64 x 2))
(fma.f64 (pow.f64 x 2) 1 (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 1/12) (pow.f64 x 2))
(fma.f64 1 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 x) 4) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 (cbrt.f64 x) 4) (pow.f64 (cbrt.f64 x) 2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 (cbrt.f64 x) 8) (*.f64 (pow.f64 (cbrt.f64 x) 4) 1/12) (pow.f64 x 2))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 1/144)) (pow.f64 x 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 1/144)) (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) (pow.f64 x 2))
(fma.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) (pow.f64 x 2))
(fma.f64 (sqrt.f64 x) (pow.f64 x 3/2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (pow.f64 x 3/2) (sqrt.f64 x) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 8)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 4)) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (*.f64 1/12 (pow.f64 x 2)) (pow.f64 x 2) (pow.f64 x 2))
(fma.f64 (*.f64 1/12 (pow.f64 (cbrt.f64 x) 8)) (pow.f64 (cbrt.f64 x) 4) (pow.f64 x 2))
(fma.f64 (pow.f64 (cbrt.f64 x) 5) (cbrt.f64 x) (*.f64 1/12 (pow.f64 x 4)))
Outputs
(pow.f64 x 2)
(*.f64 1/12 (pow.f64 x 4))
(*.f64 1/12 (pow.f64 x 4))
(+.f64 0 (*.f64 1/12 (pow.f64 x 4)))
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))))
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))))
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))) 3)
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))))
(*.f64 1/12 (pow.f64 x 4))
(-.f64 (+.f64 1 (*.f64 1/12 (pow.f64 x 4))) 1)
(*.f64 1/12 (pow.f64 x 4))
(pow.f64 (*.f64 1/12 (pow.f64 x 4)) 1)
(*.f64 1/12 (pow.f64 x 4))
(pow.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) 3)
(*.f64 1/12 (pow.f64 x 4))
(pow.f64 (*.f64 (pow.f64 x 8) 1/144) 1/2)
(sqrt.f64 (*.f64 (pow.f64 x 8) 1/144))
(pow.f64 (*.f64 (pow.f64 x 12) 1/1728) 1/3)
(cbrt.f64 (*.f64 (pow.f64 x 12) 1/1728))
(pow.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) 2)
(*.f64 1/12 (pow.f64 x 4))
(pow.f64 (E.f64) (log.f64 (*.f64 1/12 (pow.f64 x 4))))
(*.f64 1/12 (pow.f64 x 4))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))) 2)) (cbrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (fma.f64 4 (log.f64 x) (log.f64 1/12))) 2)) (cbrt.f64 (fma.f64 4 (log.f64 x) (log.f64 1/12))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4))))) (sqrt.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4)))))
(pow.f64 (exp.f64 (sqrt.f64 (fma.f64 4 (log.f64 x) (log.f64 1/12)))) (sqrt.f64 (fma.f64 4 (log.f64 x) (log.f64 1/12))))
(sqrt.f64 (*.f64 (pow.f64 x 8) 1/144))
(log.f64 (pow.f64 (exp.f64 1/12) (pow.f64 x 4)))
(*.f64 1/12 (pow.f64 x 4))
(cbrt.f64 (*.f64 (pow.f64 x 12) 1/1728))
(expm1.f64 (log1p.f64 (*.f64 1/12 (pow.f64 x 4))))
(*.f64 1/12 (pow.f64 x 4))
(exp.f64 (log.f64 (*.f64 1/12 (pow.f64 x 4))))
(*.f64 1/12 (pow.f64 x 4))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4)))) 3))
(*.f64 1/12 (pow.f64 x 4))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 x 12) 1/1728)) 1/3))
(cbrt.f64 (*.f64 (pow.f64 x 12) 1/1728))
(exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2))
(*.f64 1/12 (pow.f64 x 4))
(log1p.f64 (expm1.f64 (*.f64 1/12 (pow.f64 x 4))))
(*.f64 1/12 (pow.f64 x 4))
(-.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 1)
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(-.f64 (/.f64 (*.f64 (pow.f64 x 8) 1/144) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))) (/.f64 (pow.f64 x 4) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (log.f64 (E.f64)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6)))))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 -1/12 (pow.f64 x 6)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 (pow.f64 x 6) -1/12)))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (fma.f64 (pow.f64 x 8) 1/144 (fma.f64 (pow.f64 x 6) -1/12 (pow.f64 x 4))))
(*.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (/.f64 1 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(*.f64 (pow.f64 1 1/3) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 3) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3/2)) (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3/2)))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 8)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2) 1/3) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2)) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(/.f64 1 (/.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))) (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 -1/12 (pow.f64 x 6)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 (pow.f64 x 6) -1/12)))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (fma.f64 (pow.f64 x 8) 1/144 (fma.f64 (pow.f64 x 6) -1/12 (pow.f64 x 4))))
(/.f64 1 (/.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 -1/12 (pow.f64 x 6)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 (pow.f64 x 6) -1/12)))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (fma.f64 (pow.f64 x 8) 1/144 (fma.f64 (pow.f64 x 6) -1/12 (pow.f64 x 4))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (*.f64 1/12 (pow.f64 x 6)))))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 -1/12 (pow.f64 x 6)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 (pow.f64 x 6) -1/12)))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (fma.f64 (pow.f64 x 8) 1/144 (fma.f64 (pow.f64 x 6) -1/12 (pow.f64 x 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))) (neg.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6)))))
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 -1/12 (pow.f64 x 6)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 (pow.f64 x 6) -1/12)))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (fma.f64 (pow.f64 x 8) 1/144 (fma.f64 (pow.f64 x 6) -1/12 (pow.f64 x 4))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))) (neg.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (-.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 3)
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2) 1/2)
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3) 1/3)
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (E.f64) (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 1/12 (pow.f64 x 6))) (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6))) -1)
(*.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (/.f64 1 (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 -1/12 (pow.f64 x 6)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (fma.f64 (pow.f64 x 8) 1/144 (pow.f64 x 4)) (*.f64 (pow.f64 x 6) -1/12)))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (fma.f64 (pow.f64 x 8) 1/144 (fma.f64 (pow.f64 x 6) -1/12 (pow.f64 x 4))))
(pow.f64 (/.f64 (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4))) -1)
(/.f64 (-.f64 (*.f64 (pow.f64 x 8) 1/144) (pow.f64 x 4)) (-.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(log.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(expm1.f64 (log1p.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 1/3))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))) 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(log1p.f64 (expm1.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (pow.f64 x 4) 1/12 (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (*.f64 1/12 (pow.f64 x 4)) 1 (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (pow.f64 x 2) 1 (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 1/12) (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 1 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 1 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 x) 4) (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (pow.f64 (cbrt.f64 x) 4) (pow.f64 (cbrt.f64 x) 2) (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (pow.f64 (cbrt.f64 x) 8) (*.f64 (pow.f64 (cbrt.f64 x) 4) 1/12) (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 1/144)) (pow.f64 x 2))
(fma.f64 (cbrt.f64 (*.f64 (pow.f64 x 8) 1/144)) (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) (pow.f64 x 2))
(fma.f64 (cbrt.f64 (*.f64 1/12 (pow.f64 x 4))) (cbrt.f64 (*.f64 (pow.f64 x 8) 1/144)) (pow.f64 x 2))
(fma.f64 (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)) (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (sqrt.f64 x) (pow.f64 x 3/2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 1/12 (pow.f64 x 4) (*.f64 (pow.f64 x 3/2) (sqrt.f64 x)))
(fma.f64 (pow.f64 x 3/2) (sqrt.f64 x) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 (sqrt.f64 x) (pow.f64 x 3/2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 1/12 (pow.f64 x 4) (*.f64 (pow.f64 x 3/2) (sqrt.f64 x)))
(fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 x) 8)) (sqrt.f64 (pow.f64 (cbrt.f64 x) 4)) (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (*.f64 1/12 (pow.f64 x 2)) (pow.f64 x 2) (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (*.f64 1/12 (pow.f64 (cbrt.f64 x) 8)) (pow.f64 (cbrt.f64 x) 4) (pow.f64 x 2))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(fma.f64 (pow.f64 (cbrt.f64 x) 5) (cbrt.f64 x) (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) -1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))

eval53.0ms (0.7%)

Compiler

Compiled 1620 to 1298 computations (19.9% saved)

prune14.0ms (0.2%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New1002102
Fresh000
Picked145
Done011
Total1017108
Accuracy
100.0%
Counts
108 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.3%
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
99.1%
(pow.f64 x 2)
53.8%
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
53.5%
(*.f64 1/12 (pow.f64 x 4))
4.1%
512
4.1%
1/9
52.9%
0
Compiler

Compiled 34 to 27 computations (20.6% saved)

localize74.0ms (0.9%)

Localize:

Found 3 expressions with local error:

NewAccuracyProgram
100.0%
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
99.9%
(*.f64 1/12 (pow.f64 x 4))
99.9%
(*.f64 1/12 (pow.f64 x 4))
Compiler

Compiled 32 to 23 computations (28.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 29.0ms
Operation ival-pow, time spent: 14.0ms, 48.0% of total-time
Operation ival-mult, time spent: 7.0ms, 24.0% of total-time
Operation ival-fma, time spent: 5.0ms, 17.0% of total-time
Operation const, time spent: 2.0ms, 7.0% of total-time

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
0.0ms
x
@inf
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
0.0ms
x
@-inf
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))

rewrite72.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
554×unpow-prod-down
406×prod-diff
394×log-prod
384×cbrt-prod
341×log1p-expm1-u
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01130
19330
2102127
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
Outputs
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4)))
(+.f64 0 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(-.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 1)
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (log.f64 (E.f64)))
(*.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(*.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2) 1/3) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2)) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (-.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))
(/.f64 (+.f64 (pow.f64 x 6) (*.f64 (pow.f64 x 12) 1/1728)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (*.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))))
(pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 3)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3) 1/3)
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(pow.f64 (E.f64) (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2))
(log.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))

simplify76.0ms (1%)

Algorithm
egg-herbie
Rules
1476×log-prod
1166×associate-*r*
984×times-frac
980×associate-*l*
650×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01211918
12611813
27891779
350631779
Stop Event
node limit
Counts
51 → 53
Calls
Call 1
Inputs
(pow.f64 x 2)
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(+.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4)))
(+.f64 0 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(-.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 1)
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (log.f64 (E.f64)))
(*.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(*.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(*.f64 (pow.f64 1 1/3) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2) 1/3) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2)) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (-.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))
(/.f64 (+.f64 (pow.f64 x 6) (*.f64 (pow.f64 x 12) 1/1728)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (*.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))))
(pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 3)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3) 1/3)
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(pow.f64 (E.f64) (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2))
(log.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))
(expm1.f64 (log1p.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
Outputs
(pow.f64 x 2)
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4)))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 0 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(*.f64 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) 3)
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(-.f64 (+.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (log.f64 (E.f64)))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 1 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 2) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))))
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 1 1/3) (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (pow.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 4) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 8)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2) 1/3) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2)) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 4) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 8)) (cbrt.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 5/2)) (cbrt.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))))
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (-.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (+.f64 (pow.f64 x 2) (*.f64 -1/12 (pow.f64 x 4))))
(/.f64 (+.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) -1/144)) (fma.f64 x x (*.f64 (pow.f64 x 4) -1/12)))
(/.f64 (fma.f64 (pow.f64 x 8) -1/144 (pow.f64 x 4)) (fma.f64 (pow.f64 x 4) -1/12 (pow.f64 x 2)))
(/.f64 (+.f64 (pow.f64 x 6) (*.f64 (pow.f64 x 12) 1/1728)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (pow.f64 x 8) 1/144) (*.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4))))))
(/.f64 (+.f64 (pow.f64 x 6) (*.f64 (pow.f64 x 12) 1/1728)) (-.f64 (+.f64 (pow.f64 x 4) (*.f64 (pow.f64 x 8) 1/144)) (*.f64 (pow.f64 x 2) (*.f64 1/12 (pow.f64 x 4)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (pow.f64 x 4) (fma.f64 (pow.f64 x 8) 1/144 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 4) -1/12)))))
(/.f64 (fma.f64 (pow.f64 x 12) 1/1728 (pow.f64 x 6)) (+.f64 (pow.f64 x 4) (fma.f64 (pow.f64 x 8) 1/144 (*.f64 (pow.f64 x 6) -1/12))))
(pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 1)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))) 3)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2) 1/2)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3) 1/3)
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(pow.f64 (E.f64) (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 2)) (cbrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))) (sqrt.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))))
(sqrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 2))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(log.f64 (exp.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(cbrt.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(expm1.f64 (log1p.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (log.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)))) 3))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2)) 3)) 1/3))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12)))) 2))
(pow.f64 (hypot.f64 x (*.f64 (pow.f64 x 2) (sqrt.f64 1/12))) 2)
(log1p.f64 (expm1.f64 (fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))))
(fma.f64 1/12 (pow.f64 x 4) (pow.f64 x 2))

eval54.0ms (0.7%)

Compiler

Compiled 2051 to 1641 computations (20% saved)

prune15.0ms (0.2%)

Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New1530153
Fresh000
Picked022
Done055
Total1537160
Accuracy
100.0%
Counts
160 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.3%
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
99.1%
(pow.f64 x 2)
53.8%
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
53.5%
(*.f64 1/12 (pow.f64 x 4))
4.1%
512
4.1%
1/9
52.9%
0
Compiler

Compiled 71 to 55 computations (22.5% saved)

regimes7.0ms (0.1%)

Counts
8 → 1
Calls
Call 1
Inputs
0
1/9
512
(pow.f64 x 2)
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
(+.f64 (*.f64 1/12 (pow.f64 x 4)) (pow.f64 x 2))
Outputs
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
Calls

2 calls:

5.0ms
x
2.0ms
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Results
AccuracySegmentsBranch
99.3%1x
99.3%1(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Compiler

Compiled 11 to 8 computations (27.3% saved)

regimes8.0ms (0.1%)

Counts
6 → 1
Calls
Call 1
Inputs
0
1/9
512
(pow.f64 x 2)
(*.f64 1/12 (pow.f64 x 4))
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Outputs
(pow.f64 x 2)
Calls

2 calls:

4.0ms
x
3.0ms
(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Results
AccuracySegmentsBranch
99.1%1x
99.1%1(+.f64 (-.f64 (exp.f64 x) 2) (exp.f64 (neg.f64 x)))
Compiler

Compiled 11 to 8 computations (27.3% saved)

regimes4.0ms (0%)

Accuracy

Total -31.6b remaining (-104.9%)

Threshold costs -31.6b (-104.9%)

Counts
3 → 1
Calls
Call 1
Inputs
0
1/9
512
Outputs
0
Calls

1 calls:

3.0ms
x
Results
AccuracySegmentsBranch
52.9%1x
Compiler

Compiled 2 to 1 computations (50% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01441
11541
Stop Event
done
saturated
Calls
Call 1
Inputs
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
(pow.f64 x 2)
0
Outputs
(fma.f64 x x (*.f64 1/12 (pow.f64 x 4)))
(pow.f64 x 2)
0
Compiler

Compiled 15 to 11 computations (26.7% saved)

soundness201.0ms (2.5%)

Rules
1072×prod-diff
856×unpow-prod-down
672×fma-def
645×log1p-expm1-u
645×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01243
112843
2159743
01262
115262
2219962
Stop Event
node limit
node limit
Compiler

Compiled 36 to 26 computations (27.8% saved)

end0.0ms (0%)

preprocess48.0ms (0.6%)

Remove

(abs x)

Compiler

Compiled 140 to 100 computations (28.6% saved)

Profiling

Loading profile data...