qlog (example 3.10)

Time bar (total: 8.3s)

analyze496.0ms (6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50%50%0%0%0%0
0%0%50%50%0%0%0%1
0%0%50%50%0%0%0%2
0%0%50%50%0%0%0%3
0%0%50%50%0%0%0%4
0%0%50%50%0%0%0%5
6.3%3.1%46.8%50%0%0%0%6
9.4%4.7%45.3%50%0%0%0%7
12.5%6.2%43.7%50%0%0%0%8
13.3%6.6%43.3%50%0%0%0%9
13.9%6.9%43%50%0%0%0%10
14.2%7.1%42.9%50%0%0%0%11
14.3%7.1%42.8%50%0%0%0%12
Compiler

Compiled 14 to 11 computations (21.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 340.0ms
Operation ival-log, time spent: 236.0ms, 69.0% of total-time
Operation ival-sub, time spent: 23.0ms, 7.0% of total-time
Operation ival-add, time spent: 21.0ms, 6.0% of total-time
Operation ival-div, time spent: 20.0ms, 6.0% of total-time
Operation ival-<=, time spent: 18.0ms, 5.0% of total-time
Operation ival-fabs, time spent: 14.0ms, 4.0% of total-time
Operation const, time spent: 7.0ms, 2.0% of total-time

sample6.2s (74.3%)

Results
4.4s4051×1024valid
926.0ms2092×512valid
351.0ms1875×256valid
262.0ms237×2048valid
1.0ms1024valid
Precisions
Click to see histograms. Total time spent on operations: 4.9s
Operation ival-log, time spent: 4.0s, 82.0% of total-time
Operation ival-sub, time spent: 286.0ms, 6.0% of total-time
Operation ival-div, time spent: 229.0ms, 5.0% of total-time
Operation ival-add, time spent: 132.0ms, 3.0% of total-time
Operation ival-<=, time spent: 114.0ms, 2.0% of total-time
Operation ival-fabs, time spent: 81.0ms, 2.0% of total-time
Operation const, time spent: 39.0ms, 1.0% of total-time
Bogosity

preprocess831.0ms (10%)

Algorithm
egg-herbie
Rules
1128×unsub-neg
992×times-frac
952×fma-def
760×associate-/l*
660×sub-neg
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
2550-0-(log.f64 (+.f64 1 x))
2550-0-(log.f64 (-.f64 1 x))
00-0-x
00-0-(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
00-0-(+.f64 1 x)
00-0-(-.f64 1 x)
00-0-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
019124
138104
257104
395104
4144104
5196104
6236104
7290104
8397104
9636104
101294104
113020104
125359104
137826104
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
(/.f64 (log.f64 (-.f64 1 (neg.f64 x))) (log.f64 (+.f64 1 (neg.f64 x))))
(neg.f64 (/.f64 (log.f64 (-.f64 1 (neg.f64 x))) (log.f64 (+.f64 1 (neg.f64 x)))))
Outputs
(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
(/.f64 (log.f64 (-.f64 1 (neg.f64 x))) (log.f64 (+.f64 1 (neg.f64 x))))
(/.f64 (log.f64 (-.f64 1 (neg.f64 x))) (log1p.f64 (neg.f64 x)))
(/.f64 (log1p.f64 x) (log1p.f64 (neg.f64 x)))
(neg.f64 (/.f64 (log.f64 (-.f64 1 (neg.f64 x))) (log.f64 (+.f64 1 (neg.f64 x)))))
(/.f64 (neg.f64 (log.f64 (-.f64 1 (neg.f64 x)))) (log1p.f64 (neg.f64 x)))
(/.f64 (neg.f64 (log1p.f64 x)) (log1p.f64 (neg.f64 x)))
Compiler

Compiled 64 to 48 computations (25% saved)

Precisions
Click to see histograms. Total time spent on operations: 563.0ms
Operation ival-log, time spent: 370.0ms, 66.0% of total-time
Operation ival-add, time spent: 154.0ms, 27.0% of total-time
Operation ival-sub, time spent: 23.0ms, 4.0% of total-time
Operation ival-div, time spent: 9.0ms, 2.0% of total-time
Operation const, time spent: 7.0ms, 1.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
Compiler

Compiled 7 to 5 computations (28.6% saved)

localize34.0ms (0.4%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
Compiler

Compiled 16 to 6 computations (62.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
Operation ival-log1p, time spent: 7.0ms, 63.0% of total-time
Operation ival-div, time spent: 2.0ms, 18.0% of total-time
Operation ival-neg, time spent: 1.0ms, 9.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

series7.0ms (0.1%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
4.0ms
x
@-inf
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
2.0ms
x
@inf
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
1.0ms
x
@0
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))

rewrite179.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
550×unpow-prod-down
346×log-prod
332×cbrt-prod
313×log1p-expm1-u
313×expm1-log1p-u
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01025
111221
214811
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
Outputs
1

simplify96.0ms (1.2%)

Algorithm
egg-herbie
Rules
1106×associate-/r*
1044×fma-def
768×unsub-neg
674×times-frac
554×associate-+l+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01272817
14342514
215332270
378792270
Stop Event
node limit
Counts
13 → 45
Calls
Call 1
Inputs
-1
(-.f64 (*.f64 -1 x) 1)
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -5/12 (pow.f64 x 3)))) 1)
(*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x)))) (/.f64 2 (*.f64 x (log.f64 (/.f64 1 x))))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (log.f64 (/.f64 1 x)) 2))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 x (log.f64 (/.f64 1 x))))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 (pow.f64 x 2) (pow.f64 (log.f64 (/.f64 1 x)) 2)))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (log.f64 (/.f64 1 x)) 2))))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/3 (/.f64 1 (*.f64 (pow.f64 x 3) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))) (*.f64 2 (/.f64 1 (*.f64 x (log.f64 (/.f64 1 x)))))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (log.f64 (/.f64 1 x)))) (*.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (pow.f64 (log.f64 (/.f64 1 x)) 2))))) (*.f64 (pow.f64 x 3) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 (pow.f64 x 2) (pow.f64 (log.f64 (/.f64 1 x)) 2)))) (+.f64 (*.f64 1/3 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (log.f64 (/.f64 1 x)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (*.f64 (pow.f64 x 3) (log.f64 (/.f64 1 x))))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (log.f64 (/.f64 1 x)) 2)))))))))
(*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) x)))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))))) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) x))))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))))) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/3 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 1/3 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 3)))))))) (pow.f64 x 3))) (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) x)))))
1
Outputs
-1
(-.f64 (*.f64 -1 x) 1)
(fma.f64 -1 x -1)
(-.f64 -1 x)
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
(+.f64 (fma.f64 -1 x (*.f64 -1/2 (pow.f64 x 2))) -1)
(fma.f64 -1 x (fma.f64 -1/2 (pow.f64 x 2) -1))
(-.f64 (fma.f64 -1/2 (pow.f64 x 2) -1) x)
(-.f64 (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -5/12 (pow.f64 x 3)))) 1)
(+.f64 (fma.f64 -1 x (fma.f64 -1/2 (pow.f64 x 2) (*.f64 -5/12 (pow.f64 x 3)))) -1)
(+.f64 -1 (-.f64 (fma.f64 -1/2 (pow.f64 x 2) (*.f64 -5/12 (pow.f64 x 3))) x))
(-.f64 (fma.f64 -1/2 (pow.f64 x 2) (fma.f64 -5/12 (pow.f64 x 3) -1)) x)
(*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x))))
(neg.f64 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (neg.f64 (log.f64 x))))
(/.f64 (neg.f64 (+.f64 (log.f64 -1) (log.f64 x))) (neg.f64 (log.f64 x)))
(*.f64 (/.f64 1 (log.f64 x)) (+.f64 (log.f64 -1) (log.f64 x)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x)))) (/.f64 2 (*.f64 x (log.f64 (/.f64 1 x))))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (log.f64 (/.f64 1 x)) 2))))
(-.f64 (fma.f64 -1 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (neg.f64 (log.f64 x))) (/.f64 2 (*.f64 x (neg.f64 (log.f64 x))))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (neg.f64 (log.f64 x)) 2))))
(-.f64 (-.f64 (/.f64 2 (*.f64 x (neg.f64 (log.f64 x)))) (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (neg.f64 (log.f64 x)))) (/.f64 (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2)) x))
(-.f64 (/.f64 (-.f64 (/.f64 -2 (log.f64 x)) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) x) (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (neg.f64 (log.f64 x))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 2 (/.f64 1 (*.f64 x (log.f64 (/.f64 1 x))))) (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 (pow.f64 x 2) (pow.f64 (log.f64 (/.f64 1 x)) 2)))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (log.f64 (/.f64 1 x)) 2))))))
(-.f64 (+.f64 (fma.f64 -1 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (neg.f64 (log.f64 x))) (/.f64 2 (*.f64 x (neg.f64 (log.f64 x))))) (/.f64 1/2 (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x))))) (fma.f64 -1 (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x)))) (fma.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (*.f64 (pow.f64 x 2) (pow.f64 (neg.f64 (log.f64 x)) 2))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (neg.f64 (log.f64 x)) 2))))))
(+.f64 (-.f64 (/.f64 2 (*.f64 x (neg.f64 (log.f64 x)))) (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (neg.f64 (log.f64 x)))) (-.f64 (/.f64 1/2 (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x)))) (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (*.f64 (pow.f64 x 2) (pow.f64 (neg.f64 (log.f64 x)) 2))) (/.f64 (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2)) x)) (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x)))))))
(+.f64 (-.f64 (/.f64 (/.f64 -1/2 (log.f64 x)) (pow.f64 x 2)) (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (neg.f64 (log.f64 x)))) (-.f64 (/.f64 (-.f64 (/.f64 -2 (log.f64 x)) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) x) (-.f64 (/.f64 (/.f64 (*.f64 -1/2 (+.f64 (log.f64 -1) (log.f64 x))) (pow.f64 (neg.f64 (log.f64 x)) 2)) (pow.f64 x 2)) (/.f64 (-.f64 (/.f64 2 (pow.f64 (neg.f64 (log.f64 x)) 2)) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 3))) (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/3 (/.f64 1 (*.f64 (pow.f64 x 3) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))) (*.f64 2 (/.f64 1 (*.f64 x (log.f64 (/.f64 1 x)))))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (log.f64 (/.f64 1 x)))) (*.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (pow.f64 (log.f64 (/.f64 1 x)) 2))))) (*.f64 (pow.f64 x 3) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (*.f64 (pow.f64 x 2) (log.f64 (/.f64 1 x))))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 (pow.f64 x 2) (pow.f64 (log.f64 (/.f64 1 x)) 2)))) (+.f64 (*.f64 1/3 (/.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (log.f64 (/.f64 1 x)) 2)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 2 (/.f64 1 (log.f64 (/.f64 1 x)))) (/.f64 (log.f64 -1) (pow.f64 (log.f64 (/.f64 1 x)) 2))) (*.f64 (pow.f64 x 3) (log.f64 (/.f64 1 x))))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (log.f64 (/.f64 1 x)) 2)))))))))
(-.f64 (fma.f64 -1 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (neg.f64 (log.f64 x))) (+.f64 (/.f64 1/3 (*.f64 (pow.f64 x 3) (neg.f64 (log.f64 x)))) (+.f64 (/.f64 2 (*.f64 x (neg.f64 (log.f64 x)))) (/.f64 1/2 (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x))))))) (fma.f64 -1 (/.f64 (-.f64 (/.f64 1/2 (neg.f64 (log.f64 x))) (fma.f64 -1 (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (neg.f64 (log.f64 x))) (*.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (pow.f64 (neg.f64 (log.f64 x)) 2))))) (*.f64 (pow.f64 x 3) (neg.f64 (log.f64 x)))) (fma.f64 -1 (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x)))) (fma.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (*.f64 (pow.f64 x 2) (pow.f64 (neg.f64 (log.f64 x)) 2))) (fma.f64 1/3 (/.f64 (+.f64 (log.f64 -1) (neg.f64 (neg.f64 (log.f64 x)))) (*.f64 (pow.f64 x 3) (pow.f64 (neg.f64 (log.f64 x)) 2))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (*.f64 (pow.f64 x 3) (neg.f64 (log.f64 x)))) (/.f64 (log.f64 -1) (*.f64 x (pow.f64 (neg.f64 (log.f64 x)) 2)))))))))
(-.f64 (+.f64 (-.f64 (+.f64 (/.f64 2 (*.f64 x (neg.f64 (log.f64 x)))) (/.f64 1/2 (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x))))) (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (neg.f64 (log.f64 x)))) (/.f64 1/3 (*.f64 (pow.f64 x 3) (neg.f64 (log.f64 x))))) (-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (*.f64 (pow.f64 x 2) (pow.f64 (neg.f64 (log.f64 x)) 2))) (fma.f64 1/3 (/.f64 (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (pow.f64 x 3)) (pow.f64 (neg.f64 (log.f64 x)) 2)) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (*.f64 (pow.f64 x 3) (neg.f64 (log.f64 x)))) (/.f64 (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2)) x)))) (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (*.f64 (pow.f64 x 2) (neg.f64 (log.f64 x))))) (/.f64 (-.f64 (/.f64 1/2 (neg.f64 (log.f64 x))) (-.f64 (/.f64 (*.f64 -1/2 (+.f64 (log.f64 -1) (log.f64 x))) (pow.f64 (neg.f64 (log.f64 x)) 2)) (/.f64 (-.f64 (/.f64 2 (neg.f64 (log.f64 x))) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (neg.f64 (log.f64 x))))) (*.f64 (pow.f64 x 3) (neg.f64 (log.f64 x))))))
(+.f64 (-.f64 (+.f64 (/.f64 (/.f64 -2 (log.f64 x)) x) (/.f64 (/.f64 -1/2 (log.f64 x)) (pow.f64 x 2))) (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (neg.f64 (log.f64 x)))) (-.f64 (-.f64 (/.f64 (/.f64 -1/3 (log.f64 x)) (pow.f64 x 3)) (+.f64 (fma.f64 1/2 (/.f64 (-.f64 (/.f64 2 (pow.f64 (neg.f64 (log.f64 x)) 2)) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 3))) (pow.f64 x 3)) (/.f64 (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2)) x)) (*.f64 (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (pow.f64 (neg.f64 (log.f64 x)) 2)) (+.f64 (/.f64 -1/2 (pow.f64 x 2)) (/.f64 1/3 (pow.f64 x 3)))))) (*.f64 (/.f64 1 (log.f64 x)) (+.f64 (/.f64 (-.f64 (/.f64 -2 (log.f64 x)) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 2))) (pow.f64 x 2)) (/.f64 (+.f64 (+.f64 (/.f64 -1/2 (log.f64 x)) (-.f64 (/.f64 2 (pow.f64 (neg.f64 (log.f64 x)) 2)) (/.f64 (log.f64 -1) (pow.f64 (neg.f64 (log.f64 x)) 3)))) (*.f64 1/2 (/.f64 (+.f64 (log.f64 -1) (log.f64 x)) (pow.f64 (neg.f64 (log.f64 x)) 2)))) (pow.f64 x 3))))))
(*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))))
(/.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))))
(/.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) x)))
(fma.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (neg.f64 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))) x)))
(-.f64 (/.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (-.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) x))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))))) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) x))))
(fma.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (+.f64 (/.f64 1/2 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))))) (pow.f64 x 2)) (neg.f64 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))) x))))
(-.f64 (-.f64 (/.f64 (neg.f64 (-.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)))) x) (/.f64 (-.f64 (fma.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (-.f64 (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3)))) (pow.f64 x 2))) (/.f64 (log.f64 (/.f64 -1 x)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))
(-.f64 (/.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (+.f64 (/.f64 (-.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) x) (/.f64 (+.f64 (-.f64 (fma.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3))) (pow.f64 x 2))))
(-.f64 (/.f64 (-.f64 (*.f64 -1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) (-.f64 (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (-.f64 (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3))))) (pow.f64 x 2)) (+.f64 (/.f64 (log.f64 (/.f64 -1 x)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (-.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) x)))
(+.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 1/2 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))))) (pow.f64 x 2))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (*.f64 1/3 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))))) (+.f64 (*.f64 1/3 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 3)))))))) (pow.f64 x 3))) (*.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 x)))) 2))) x)))))
(fma.f64 -1 (/.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (fma.f64 -1 (/.f64 (fma.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (+.f64 (/.f64 1/2 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))))) (pow.f64 x 2)) (*.f64 -1 (+.f64 (/.f64 (-.f64 (/.f64 1/3 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (fma.f64 -1 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))) (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (fma.f64 1/3 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2)) (+.f64 (/.f64 1/2 (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2)) (*.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 3)))))))) (pow.f64 x 3)) (/.f64 (-.f64 (/.f64 1 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x))))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (+.f64 (log.f64 -1) (neg.f64 (log.f64 (/.f64 -1 x)))) 2))) x)))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (-.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)))) x) (/.f64 (-.f64 (/.f64 1/3 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (-.f64 (fma.f64 -1/2 (-.f64 (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3))) (fma.f64 1/3 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (fma.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3)) (/.f64 1/2 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))))) (-.f64 (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3)) (/.f64 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))))) (pow.f64 x 3))) (/.f64 (-.f64 (fma.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (-.f64 (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3)))) (pow.f64 x 2))) (/.f64 (log.f64 (/.f64 -1 x)) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))))
(-.f64 (-.f64 (/.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (+.f64 (/.f64 (-.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) x) (/.f64 (+.f64 (-.f64 (fma.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3))) (pow.f64 x 2)))) (/.f64 (-.f64 (/.f64 1/3 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (+.f64 (/.f64 1/2 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (+.f64 (*.f64 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (+.f64 (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 1/3)) (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3))) (+.f64 (/.f64 -1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -1/2))))) (pow.f64 x 3)))
(-.f64 (/.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (+.f64 (/.f64 (+.f64 (-.f64 (fma.f64 1/2 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))))) (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3))) (pow.f64 x 2)) (+.f64 (/.f64 (-.f64 (/.f64 1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2))) x) (/.f64 (-.f64 (/.f64 1/3 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) (+.f64 (/.f64 1/2 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (+.f64 (*.f64 (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (+.f64 (/.f64 1/2 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) 1/3)) (*.f64 (-.f64 (/.f64 1 (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 2)) (/.f64 (log.f64 (/.f64 -1 x)) (pow.f64 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x))) 3))) (+.f64 (/.f64 -1 (-.f64 (log.f64 -1) (log.f64 (/.f64 -1 x)))) -1/2))))) (pow.f64 x 3)))))
1

eval58.0ms (0.7%)

Compiler

Compiled 3224 to 2560 computations (20.6% saved)

prune7.0ms (0.1%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New42345
Fresh000
Picked011
Done000
Total42446
Accuracy
100.0%
Counts
46 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
99.4%
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
98.9%
(-.f64 -1 x)
97.9%
-1
Compiler

Compiled 25 to 20 computations (20% saved)

localize72.0ms (0.9%)

Compiler

Compiled 44 to 34 computations (22.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 30.0ms
Operation ival-pow, time spent: 11.0ms, 36.0% of total-time
Operation ival-mult, time spent: 11.0ms, 36.0% of total-time
Operation const, time spent: 3.0ms, 10.0% of total-time
Operation ival-add, time spent: 3.0ms, 10.0% of total-time
Operation ival-sub, time spent: 3.0ms, 10.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune4.0ms (0%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New000
Fresh000
Picked033
Done011
Total044
Accuracy
100.0%
Counts
4 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
99.4%
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
98.9%
(-.f64 -1 x)
97.9%
-1
Compiler

Compiled 56 to 44 computations (21.4% saved)

regimes7.0ms (0.1%)

Counts
5 → 1
Calls
Call 1
Inputs
-1
(-.f64 -1 x)
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
Outputs
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
Calls

2 calls:

4.0ms
x
2.0ms
(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1(/.f64 (log.f64 (-.f64 1 x)) (log.f64 (+.f64 1 x)))
Compiler

Compiled 12 to 9 computations (25% saved)

regimes5.0ms (0.1%)

Counts
3 → 1
Calls
Call 1
Inputs
-1
(-.f64 -1 x)
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
Outputs
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
Calls

1 calls:

5.0ms
x
Results
AccuracySegmentsBranch
99.4%1x
Compiler

Compiled 2 to 1 computations (50% saved)

regimes3.0ms (0%)

Counts
2 → 1
Calls
Call 1
Inputs
-1
(-.f64 -1 x)
Outputs
(-.f64 -1 x)
Calls

1 calls:

3.0ms
x
Results
AccuracySegmentsBranch
98.9%1x
Compiler

Compiled 2 to 1 computations (50% saved)

regimes3.0ms (0%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
-1
Outputs
-1
Calls

1 calls:

3.0ms
x
Results
AccuracySegmentsBranch
97.9%1x
Compiler

Compiled 2 to 1 computations (50% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
10×+-commutative
sub-neg
*-commutative
neg-mul-1
neg-sub0
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02071
13367
23967
34567
Stop Event
done
saturated
Calls
Call 1
Inputs
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
(-.f64 -1 x)
-1
Outputs
(/.f64 (log1p.f64 (neg.f64 x)) (log1p.f64 x))
(-.f64 (+.f64 (*.f64 -1 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
(-.f64 (+.f64 (neg.f64 x) (*.f64 -1/2 (pow.f64 x 2))) 1)
(-.f64 (-.f64 (*.f64 -1/2 (pow.f64 x 2)) x) 1)
(+.f64 -1 (-.f64 (*.f64 -1/2 (pow.f64 x 2)) x))
(-.f64 -1 x)
-1
Compiler

Compiled 23 to 18 computations (21.7% saved)

soundness282.0ms (3.4%)

Rules
1128×unsub-neg
1106×associate-/r*
1044×fma-def
992×times-frac
952×fma-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
019124
138104
257104
395104
4144104
5196104
6236104
7290104
8397104
9636104
101294104
113020104
125359104
137826104
01272817
14342514
215332270
378792270
Stop Event
node limit
node limit
Compiler

Compiled 63 to 46 computations (27% saved)

end0.0ms (0%)

preprocess47.0ms (0.6%)

Compiler

Compiled 74 to 56 computations (24.3% saved)

Profiling

Loading profile data...