Details

Time bar (total: 5.1s)

analyze4.0ms (0.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
0%0%50%0%25%25%0%3
50%25%25%0%25%25%0%4
75%37.5%12.5%0%25%25%0%5
87.5%43.7%6.2%0%25%25%0%6
93.8%46.9%3.1%0%25%25%0%7
96.9%48.4%1.6%0%25%25%0%8
98.4%49.2%0.8%0%25%25%0%9
99.2%49.6%0.4%0%25%25%0%10
99.6%49.8%0.2%0%25%25%0%11
99.8%49.9%0.1%0%25%25%0%12
Compiler

Compiled 10 to 8 computations (20% saved)

sample3.8s (75%)

Results
2.6s4131×body1024valid
489.0ms2020×body512valid
411.0ms1698×body256valid
318.0ms407×body2048valid
0.0msbody256invalid
Bogosity

preprocess184.0ms (3.6%)

Algorithm
egg-herbie
Rules
1088×fma-neg_binary64
890×fma-def_binary64
719×distribute-rgt-in_binary64
491×distribute-lft-in_binary64
331×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
11810
22810
34110
47110
510310
615910
729210
860410
9103710
10144410
11200210
12274010
13383510
14467010
15476810
16480010
17480010
18639310
19674810
20682610
21683410
22684210
23684210
24704210
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Outputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
Compiler

Compiled 10 to 8 computations (20% saved)

simplify179.0ms (3.5%)

Algorithm
egg-herbie
Rules
1088×fma-neg_binary64
890×fma-def_binary64
719×distribute-rgt-in_binary64
491×distribute-lft-in_binary64
331×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0712
11810
22810
34110
47110
510310
615910
729210
860410
9103710
10144410
11200210
12274010
13383510
14467010
15476810
16480010
17480010
18639310
19674810
20682610
21683410
22684210
23684210
24704210
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Outputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))

eval1.0ms (0%)

Compiler

Compiled 15 to 11 computations (26.7% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
58.6b
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Compiler

Compiled 16 to 12 computations (25% saved)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
7.7b
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Compiler

Compiled 24 to 17 computations (29.2% saved)

series3.0ms (0.1%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
1.0ms
eps
@inf
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0.0ms
eps
@-inf
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0.0ms
eps
@inf
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
0.0ms
eps
@0
(/.f64 (-.f64 1 eps) (+.f64 1 eps))

rewrite50.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
884×pow1_binary64
826×log1p-expm1-u_binary64
826×expm1-log1p-u_binary64
825×add-log-exp_binary64
810×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0722
115320
2215620
Stop Event
node limit
Counts
2 → 64
Calls
Call 1
Inputs
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log1p.f64 (neg.f64 eps)) (neg.f64 (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))) (log.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2)) (log.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (log1p.f64 eps) (log1p.f64 (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (neg.f64 (-.f64 1 eps))) (log.f64 (+.f64 (neg.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2) (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (log1p.f64 (neg.f64 eps)) 3) (pow.f64 (log1p.f64 eps) 3)) (+.f64 (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 (neg.f64 eps))) (+.f64 (*.f64 (log1p.f64 eps) (log1p.f64 eps)) (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 (neg.f64 eps))) (*.f64 (log1p.f64 eps) (log1p.f64 eps))) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (log1p.f64 eps) (log1p.f64 (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (+.f64 1 eps)) (neg.f64 (/.f64 eps (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (+.f64 1 eps)) (/.f64 eps (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1 eps) (/.f64 1 (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (*.f64 (cbrt.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 1 eps)) (*.f64 (sqrt.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 (neg.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 eps)) (-.f64 1 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) 1) (/.f64 (cbrt.f64 (-.f64 1 eps)) (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 1 eps)) 1) (/.f64 (sqrt.f64 (-.f64 1 eps)) (+.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (/.f64 (-.f64 1 eps) (cbrt.f64 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 1 eps)) (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (/.f64 (sqrt.f64 (-.f64 1 eps)) (cbrt.f64 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 1 eps))) (/.f64 (-.f64 1 eps) (sqrt.f64 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (sqrt.f64 (+.f64 1 eps))) (/.f64 (cbrt.f64 (-.f64 1 eps)) (sqrt.f64 (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 eps) (-.f64 1 (*.f64 eps eps))) (-.f64 1 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 1 eps) (+.f64 1 (pow.f64 eps 3))) (+.f64 1 (-.f64 (*.f64 eps eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 eps) (-.f64 1 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2)) (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))) (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 1 eps) (+.f64 (neg.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 1 eps) 3) (pow.f64 (+.f64 1 eps) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))))

simplify58.0ms (1.1%)

Algorithm
egg-herbie
Rules
611×fma-def_binary64
457×fma-neg_binary64
380×distribute-rgt-in_binary64
363×distribute-lft-in_binary64
341×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02061187
15471131
218351126
378681126
Stop Event
node limit
Counts
88 → 137
Calls
Call 1
Inputs
(*.f64 -2 eps)
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (+.f64 (*.f64 -2/7 (pow.f64 eps 7)) (*.f64 -2/3 (pow.f64 eps 3)))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
1
(+.f64 (*.f64 -2 eps) 1)
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) 1))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -2 (pow.f64 eps 3)))))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(+.f64 0 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(+.f64 (log1p.f64 (neg.f64 eps)) (neg.f64 (log1p.f64 eps)))
(+.f64 (log.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))) (log.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2)) (log.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))
(-.f64 0 (-.f64 (log1p.f64 eps) (log1p.f64 (neg.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(-.f64 (+.f64 1 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 1)
(-.f64 (log.f64 (neg.f64 (-.f64 1 eps))) (log.f64 (+.f64 (neg.f64 eps) -1)))
(*.f64 1 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(*.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 1)
(*.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2) (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(*.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(/.f64 (-.f64 (pow.f64 (log1p.f64 (neg.f64 eps)) 3) (pow.f64 (log1p.f64 eps) 3)) (+.f64 (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 (neg.f64 eps))) (+.f64 (*.f64 (log1p.f64 eps) (log1p.f64 eps)) (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))
(/.f64 (-.f64 (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 (neg.f64 eps))) (*.f64 (log1p.f64 eps) (log1p.f64 eps))) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 1)
(pow.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 3) 1/3)
(pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 3)
(pow.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2)
(neg.f64 (-.f64 (log1p.f64 eps) (log1p.f64 (neg.f64 eps))))
(sqrt.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 2))
(cbrt.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 3))
(expm1.f64 (log1p.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(log1p.f64 (expm1.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(exp.f64 (log.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(+.f64 1 (expm1.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(+.f64 (/.f64 1 (+.f64 1 eps)) (neg.f64 (/.f64 eps (+.f64 1 eps))))
(-.f64 (/.f64 1 (+.f64 1 eps)) (/.f64 eps (+.f64 1 eps)))
(-.f64 (+.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)
(*.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(*.f64 (-.f64 1 eps) (/.f64 1 (+.f64 1 eps)))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)
(*.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (*.f64 (cbrt.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 1 eps))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(*.f64 (sqrt.f64 (-.f64 1 eps)) (*.f64 (sqrt.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 1 eps))))
(*.f64 (neg.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 (neg.f64 eps) -1)))
(*.f64 (/.f64 1 (+.f64 1 eps)) (-.f64 1 eps))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) 1) (/.f64 (cbrt.f64 (-.f64 1 eps)) (+.f64 1 eps)))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 eps)) 1) (/.f64 (sqrt.f64 (-.f64 1 eps)) (+.f64 1 eps)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (/.f64 (-.f64 1 eps) (cbrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 eps)) (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (/.f64 (sqrt.f64 (-.f64 1 eps)) (cbrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 1 eps))) (/.f64 (-.f64 1 eps) (sqrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (sqrt.f64 (+.f64 1 eps))) (/.f64 (cbrt.f64 (-.f64 1 eps)) (sqrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 (-.f64 1 eps) (-.f64 1 (*.f64 eps eps))) (-.f64 1 eps))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 (pow.f64 eps 3))) (+.f64 1 (-.f64 (*.f64 eps eps) eps)))
(pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)
(pow.f64 (E.f64) (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(pow.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 3) 1/3)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 3)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2)
(pow.f64 (/.f64 (+.f64 1 eps) (-.f64 1 eps)) -1)
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2)) (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(pow.f64 (exp.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))) (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(neg.f64 (/.f64 (-.f64 1 eps) (+.f64 (neg.f64 eps) -1)))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 2))
(log.f64 (exp.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 3))
(cbrt.f64 (/.f64 (pow.f64 (-.f64 1 eps) 3) (pow.f64 (+.f64 1 eps) 3)))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(exp.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
Outputs
(*.f64 -2 eps)
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(fma.f64 -2 eps (*.f64 -2/3 (pow.f64 eps 3)))
(fma.f64 -2/3 (pow.f64 eps 3) (*.f64 -2 eps))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (*.f64 -2/3 (pow.f64 eps 3))))
(fma.f64 -2 eps (fma.f64 -2/5 (pow.f64 eps 5) (*.f64 -2/3 (pow.f64 eps 3))))
(fma.f64 -2 eps (fma.f64 -2/3 (pow.f64 eps 3) (*.f64 -2/5 (pow.f64 eps 5))))
(fma.f64 -2/3 (pow.f64 eps 3) (fma.f64 -2/5 (pow.f64 eps 5) (*.f64 -2 eps)))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 -2/5 (pow.f64 eps 5)) (+.f64 (*.f64 -2/7 (pow.f64 eps 7)) (*.f64 -2/3 (pow.f64 eps 3)))))
(fma.f64 -2 eps (fma.f64 -2/5 (pow.f64 eps 5) (fma.f64 -2/7 (pow.f64 eps 7) (*.f64 -2/3 (pow.f64 eps 3)))))
(fma.f64 -2 eps (fma.f64 -2/5 (pow.f64 eps 5) (fma.f64 -2/3 (pow.f64 eps 3) (*.f64 -2/7 (pow.f64 eps 7)))))
(fma.f64 -2 eps (fma.f64 -2/3 (pow.f64 eps 3) (fma.f64 -2/5 (pow.f64 eps 5) (*.f64 -2/7 (pow.f64 eps 7)))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (/.f64 2 eps))
(+.f64 (log.f64 -1) (/.f64 -2 eps))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (/.f64 2 eps) (/.f64 2/3 (pow.f64 eps 3))))
(+.f64 (-.f64 (log.f64 -1) (/.f64 2/3 (pow.f64 eps 3))) (/.f64 -2 eps))
(+.f64 (+.f64 (log.f64 -1) (/.f64 -2 eps)) (/.f64 -2/3 (pow.f64 eps 3)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
(-.f64 (log.f64 -1) (+.f64 (/.f64 2/3 (pow.f64 eps 3)) (+.f64 (/.f64 2 eps) (/.f64 2/5 (pow.f64 eps 5)))))
(-.f64 (-.f64 (log.f64 -1) (/.f64 2/3 (pow.f64 eps 3))) (+.f64 (/.f64 2 eps) (/.f64 2/5 (pow.f64 eps 5))))
(+.f64 (log.f64 -1) (+.f64 (/.f64 -2/3 (pow.f64 eps 3)) (+.f64 (/.f64 -2 eps) (/.f64 -2/5 (pow.f64 eps 5)))))
(log.f64 -1)
(-.f64 (log.f64 -1) (*.f64 2 (/.f64 1 eps)))
(-.f64 (log.f64 -1) (/.f64 2 eps))
(+.f64 (log.f64 -1) (/.f64 -2 eps))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))))
(-.f64 (log.f64 -1) (+.f64 (/.f64 2 eps) (/.f64 2/3 (pow.f64 eps 3))))
(+.f64 (-.f64 (log.f64 -1) (/.f64 2/3 (pow.f64 eps 3))) (/.f64 -2 eps))
(+.f64 (+.f64 (log.f64 -1) (/.f64 -2 eps)) (/.f64 -2/3 (pow.f64 eps 3)))
(-.f64 (log.f64 -1) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 eps 3))) (+.f64 (*.f64 2 (/.f64 1 eps)) (*.f64 2/5 (/.f64 1 (pow.f64 eps 5))))))
(-.f64 (log.f64 -1) (+.f64 (/.f64 2/3 (pow.f64 eps 3)) (+.f64 (/.f64 2 eps) (/.f64 2/5 (pow.f64 eps 5)))))
(-.f64 (-.f64 (log.f64 -1) (/.f64 2/3 (pow.f64 eps 3))) (+.f64 (/.f64 2 eps) (/.f64 2/5 (pow.f64 eps 5))))
(+.f64 (log.f64 -1) (+.f64 (/.f64 -2/3 (pow.f64 eps 3)) (+.f64 (/.f64 -2 eps) (/.f64 -2/5 (pow.f64 eps 5)))))
1
(+.f64 (*.f64 -2 eps) 1)
(fma.f64 -2 eps 1)
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) 1))
(fma.f64 -2 eps (fma.f64 2 (*.f64 eps eps) 1))
(+.f64 (*.f64 -2 eps) (+.f64 (*.f64 2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -2 (pow.f64 eps 3)))))
(fma.f64 -2 eps (+.f64 (fma.f64 2 (*.f64 eps eps) 1) (*.f64 -2 (pow.f64 eps 3))))
(fma.f64 -2 eps (fma.f64 2 (*.f64 eps eps) (fma.f64 -2 (pow.f64 eps 3) 1)))
(fma.f64 -2 eps (fma.f64 -2 (pow.f64 eps 3) (fma.f64 2 (*.f64 eps eps) 1)))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(+.f64 (/.f64 2 eps) -1)
(+.f64 -1 (/.f64 2 eps))
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (/.f64 2 eps) (+.f64 1 (/.f64 2 (*.f64 eps eps))))
(+.f64 (/.f64 2 eps) (-.f64 -1 (/.f64 2 (*.f64 eps eps))))
(-.f64 (/.f64 2 eps) (-.f64 1 (/.f64 -2 (*.f64 eps eps))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (+.f64 (/.f64 2 eps) (/.f64 2 (pow.f64 eps 3))) (+.f64 1 (/.f64 2 (*.f64 eps eps))))
(+.f64 (/.f64 2 eps) (-.f64 (/.f64 2 (pow.f64 eps 3)) (+.f64 1 (/.f64 2 (*.f64 eps eps)))))
(+.f64 (/.f64 2 eps) (+.f64 (/.f64 2 (pow.f64 eps 3)) (+.f64 -1 (/.f64 -2 (*.f64 eps eps)))))
-1
(-.f64 (*.f64 2 (/.f64 1 eps)) 1)
(+.f64 (/.f64 2 eps) -1)
(+.f64 -1 (/.f64 2 eps))
(-.f64 (*.f64 2 (/.f64 1 eps)) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (/.f64 2 eps) (+.f64 1 (/.f64 2 (*.f64 eps eps))))
(+.f64 (/.f64 2 eps) (-.f64 -1 (/.f64 2 (*.f64 eps eps))))
(-.f64 (/.f64 2 eps) (-.f64 1 (/.f64 -2 (*.f64 eps eps))))
(-.f64 (+.f64 (*.f64 2 (/.f64 1 (pow.f64 eps 3))) (*.f64 2 (/.f64 1 eps))) (+.f64 1 (*.f64 2 (/.f64 1 (pow.f64 eps 2)))))
(-.f64 (+.f64 (/.f64 2 eps) (/.f64 2 (pow.f64 eps 3))) (+.f64 1 (/.f64 2 (*.f64 eps eps))))
(+.f64 (/.f64 2 eps) (-.f64 (/.f64 2 (pow.f64 eps 3)) (+.f64 1 (/.f64 2 (*.f64 eps eps)))))
(+.f64 (/.f64 2 eps) (+.f64 (/.f64 2 (pow.f64 eps 3)) (+.f64 -1 (/.f64 -2 (*.f64 eps eps)))))
(+.f64 0 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(+.f64 (log1p.f64 (neg.f64 eps)) (neg.f64 (log1p.f64 eps)))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(+.f64 (log.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))) (log.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))
(*.f64 2 (log.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2)) (log.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1))) 2)) (log.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))))
(*.f64 3 (log.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))))
(-.f64 0 (-.f64 (log1p.f64 eps) (log1p.f64 (neg.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(-.f64 (+.f64 1 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 1)
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(-.f64 (log.f64 (neg.f64 (-.f64 1 eps))) (log.f64 (+.f64 (neg.f64 eps) -1)))
(-.f64 (log.f64 (neg.f64 (-.f64 1 eps))) (log.f64 (+.f64 -1 (neg.f64 eps))))
(-.f64 (log.f64 (+.f64 -1 eps)) (log.f64 (-.f64 -1 eps)))
(-.f64 (log.f64 (+.f64 eps -1)) (log.f64 (-.f64 -1 eps)))
(*.f64 1 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(*.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 1)
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(*.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2) (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(*.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(/.f64 (-.f64 (pow.f64 (log1p.f64 (neg.f64 eps)) 3) (pow.f64 (log1p.f64 eps) 3)) (+.f64 (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 (neg.f64 eps))) (+.f64 (*.f64 (log1p.f64 eps) (log1p.f64 eps)) (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))
(/.f64 (-.f64 (pow.f64 (log1p.f64 (neg.f64 eps)) 3) (pow.f64 (log1p.f64 eps) 3)) (fma.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 (neg.f64 eps)) (*.f64 (log1p.f64 eps) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))
(/.f64 (-.f64 (pow.f64 (log1p.f64 (neg.f64 eps)) 3) (pow.f64 (log1p.f64 eps) 3)) (fma.f64 (log1p.f64 eps) (log1p.f64 eps) (*.f64 (log1p.f64 (neg.f64 eps)) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))))
(/.f64 (-.f64 (*.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 (neg.f64 eps))) (*.f64 (log1p.f64 eps) (log1p.f64 eps))) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(/.f64 (*.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(*.f64 (/.f64 (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) (+.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 1)
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(pow.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 3) 1/3)
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 3)
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(pow.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2)
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(neg.f64 (-.f64 (log1p.f64 eps) (log1p.f64 (neg.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(sqrt.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 2))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(cbrt.f64 (pow.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)) 3))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(expm1.f64 (log1p.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(log1p.f64 (expm1.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(exp.f64 (log.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(+.f64 1 (expm1.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(+.f64 (/.f64 1 (+.f64 1 eps)) (neg.f64 (/.f64 eps (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(-.f64 (/.f64 1 (+.f64 1 eps)) (/.f64 eps (+.f64 1 eps)))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(-.f64 (+.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 1)
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 1 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (-.f64 1 eps) (/.f64 1 (+.f64 1 eps)))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2) (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (*.f64 (cbrt.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (sqrt.f64 (-.f64 1 eps)) (*.f64 (sqrt.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (neg.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 (neg.f64 eps) -1)))
(*.f64 (neg.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 -1 (neg.f64 eps))))
(/.f64 (+.f64 -1 eps) (-.f64 -1 eps))
(/.f64 (+.f64 eps -1) (-.f64 -1 eps))
(*.f64 (/.f64 1 (+.f64 1 eps)) (-.f64 1 eps))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) 1) (/.f64 (cbrt.f64 (-.f64 1 eps)) (+.f64 1 eps)))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 eps)) 1) (/.f64 (sqrt.f64 (-.f64 1 eps)) (+.f64 1 eps)))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (/.f64 (-.f64 1 eps) (cbrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2)) (/.f64 (-.f64 1 eps) (cbrt.f64 (+.f64 eps 1))))
(/.f64 (/.f64 (-.f64 1 eps) (cbrt.f64 (+.f64 eps 1))) (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2))
(/.f64 (-.f64 1 eps) (*.f64 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2) (cbrt.f64 (+.f64 eps 1))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(*.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1))) (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2)))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (/.f64 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2) (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 eps 1)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 1 eps)) (pow.f64 (cbrt.f64 (+.f64 1 eps)) 2)) (/.f64 (sqrt.f64 (-.f64 1 eps)) (cbrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2)) (/.f64 (-.f64 1 eps) (cbrt.f64 (+.f64 eps 1))))
(/.f64 (/.f64 (-.f64 1 eps) (cbrt.f64 (+.f64 eps 1))) (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2))
(/.f64 (-.f64 1 eps) (*.f64 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2) (cbrt.f64 (+.f64 eps 1))))
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 1 eps))) (/.f64 (-.f64 1 eps) (sqrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 eps 1))) (/.f64 (-.f64 1 eps) (sqrt.f64 (+.f64 eps 1))))
(/.f64 (/.f64 (-.f64 1 eps) (sqrt.f64 (+.f64 eps 1))) (sqrt.f64 (+.f64 eps 1)))
(/.f64 (-.f64 1 eps) (*.f64 (sqrt.f64 (+.f64 eps 1)) (sqrt.f64 (+.f64 eps 1))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 2) (sqrt.f64 (+.f64 1 eps))) (/.f64 (cbrt.f64 (-.f64 1 eps)) (sqrt.f64 (+.f64 1 eps))))
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 eps 1))) (/.f64 (-.f64 1 eps) (sqrt.f64 (+.f64 eps 1))))
(/.f64 (/.f64 (-.f64 1 eps) (sqrt.f64 (+.f64 eps 1))) (sqrt.f64 (+.f64 eps 1)))
(/.f64 (-.f64 1 eps) (*.f64 (sqrt.f64 (+.f64 eps 1)) (sqrt.f64 (+.f64 eps 1))))
(*.f64 (/.f64 (-.f64 1 eps) (-.f64 1 (*.f64 eps eps))) (-.f64 1 eps))
(*.f64 (-.f64 1 eps) (/.f64 (-.f64 1 eps) (-.f64 1 (*.f64 eps eps))))
(/.f64 (*.f64 (-.f64 1 eps) (-.f64 1 eps)) (-.f64 1 (*.f64 eps eps)))
(/.f64 (pow.f64 (cbrt.f64 (-.f64 1 eps)) 6) (fma.f64 eps (neg.f64 eps) 1))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 1 (pow.f64 eps 3))) (+.f64 1 (-.f64 (*.f64 eps eps) eps)))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 (pow.f64 eps 3) 1)) (+.f64 1 (-.f64 (*.f64 eps eps) eps)))
(*.f64 (/.f64 (-.f64 1 eps) (+.f64 (pow.f64 eps 3) 1)) (+.f64 (*.f64 eps eps) (-.f64 1 eps)))
(/.f64 (-.f64 (fma.f64 eps eps 1) eps) (/.f64 (+.f64 (pow.f64 eps 3) 1) (-.f64 1 eps)))
(pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 1)
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(pow.f64 (E.f64) (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(exp.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(pow.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 3) 1/3)
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(pow.f64 (cbrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 3)
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(pow.f64 (sqrt.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))) 2)
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(pow.f64 (/.f64 (+.f64 1 eps) (-.f64 1 eps)) -1)
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))) 2)) (cbrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(pow.f64 (E.f64) (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(exp.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(pow.f64 (exp.f64 (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))) (sqrt.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))))
(pow.f64 (E.f64) (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(exp.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(neg.f64 (/.f64 (-.f64 1 eps) (+.f64 (neg.f64 eps) -1)))
(*.f64 (neg.f64 (-.f64 1 eps)) (/.f64 1 (+.f64 -1 (neg.f64 eps))))
(/.f64 (+.f64 -1 eps) (-.f64 -1 eps))
(/.f64 (+.f64 eps -1) (-.f64 -1 eps))
(sqrt.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 2))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(log.f64 (exp.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)) 3))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(cbrt.f64 (/.f64 (pow.f64 (-.f64 1 eps) 3) (pow.f64 (+.f64 1 eps) 3)))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps))))
(/.f64 (-.f64 1 eps) (+.f64 eps 1))
(exp.f64 (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))
(pow.f64 (E.f64) (-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps)))

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(log1p.f64 eps)
Compiler

Compiled 15 to 5 computations (66.7% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(log1p.f64 eps)
0.0ms
eps
@-inf
(log1p.f64 eps)
0.0ms
eps
@inf
(log1p.f64 eps)

rewrite69.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
383×expm1-udef_binary64
383×log1p-udef_binary64
255×associate-*r*_binary64
250×pow1_binary64
241×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033
1573
26413
369263
Stop Event
node limit
Counts
1 → 48
Calls
Call 1
Inputs
(log1p.f64 eps)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (log1p.f64 eps) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2)) (log.f64 (cbrt.f64 (+.f64 eps 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (+.f64 eps 1))) (log.f64 (sqrt.f64 (+.f64 eps 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log1p.f64 (pow.f64 eps 3)) (log1p.f64 (-.f64 (*.f64 eps eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (log1p.f64 eps) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 1 (*.f64 eps eps))) (log.f64 (-.f64 1 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log1p.f64 eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log1p.f64 eps)) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (cbrt.f64 (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log1p.f64 eps)) (sqrt.f64 (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log1p.f64 eps) 1/6) (*.f64 (pow.f64 (log1p.f64 eps) 1/6) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (cbrt.f64 (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log1p.f64 eps) 1/4) (sqrt.f64 (pow.f64 (log1p.f64 eps) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (log1p.f64 eps) 1/4) (*.f64 (pow.f64 (log1p.f64 eps) 1/4) (sqrt.f64 (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (log1p.f64 eps)) (pow.f64 (log1p.f64 eps) 1/4)) (pow.f64 (log1p.f64 eps) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (log1p.f64 eps) 5/2)) (pow.f64 (log1p.f64 eps) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2)) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 5)) (pow.f64 (log1p.f64 eps) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (log1p.f64 eps) 3/2)) (pow.f64 (log1p.f64 eps) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2) 1/3) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (log1p.f64 eps) 5/2) 1/3) (pow.f64 (log1p.f64 eps) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (log1p.f64 eps)) (cbrt.f64 (log1p.f64 eps))) (pow.f64 (log1p.f64 eps) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (log1p.f64 eps)) (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4))) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2)) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (pow.f64 (log1p.f64 eps) 1/6)) (pow.f64 (log1p.f64 eps) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 (log1p.f64 eps) 1) 3) 1) (+.f64 (*.f64 (+.f64 (log1p.f64 eps) 1) (+.f64 (log1p.f64 eps) 1)) (+.f64 1 (+.f64 (log1p.f64 eps) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (log1p.f64 eps) 1) (+.f64 (log1p.f64 eps) 1)) 1) (+.f64 (+.f64 (log1p.f64 eps) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log1p.f64 eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 eps) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 eps) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log1p.f64 eps)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log1p.f64 eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (log1p.f64 eps)))) (sqrt.f64 (log.f64 (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (log1p.f64 eps))) 2)) (cbrt.f64 (log.f64 (log1p.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log1p.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 eps 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log1p.f64 eps) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log1p.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (log1p.f64 eps))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (log1p.f64 eps))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (log1p.f64 eps))) 2))))))

simplify47.0ms (0.9%)

Algorithm
egg-herbie
Rules
624×fma-def_binary64
321×fma-neg_binary64
315×times-frac_binary64
255×log-prod_binary64
239×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0170602
1415552
21202543
34801527
Stop Event
node limit
Counts
60 → 99
Calls
Call 1
Inputs
eps
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) eps)
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 eps (*.f64 1/3 (pow.f64 eps 3))))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 eps (+.f64 (*.f64 1/3 (pow.f64 eps 3)) (*.f64 -1/4 (pow.f64 eps 4)))))
(*.f64 -1 (log.f64 (/.f64 1 eps)))
(+.f64 (/.f64 1 eps) (*.f64 -1 (log.f64 (/.f64 1 eps))))
(-.f64 (+.f64 (/.f64 1 eps) (*.f64 -1 (log.f64 (/.f64 1 eps)))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(-.f64 (+.f64 (/.f64 1 eps) (+.f64 (*.f64 -1 (log.f64 (/.f64 1 eps))) (*.f64 1/3 (/.f64 1 (pow.f64 eps 3))))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 eps))) (log.f64 -1))
(+.f64 (/.f64 1 eps) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 eps)))))
(-.f64 (+.f64 (/.f64 1 eps) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 eps))))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(-.f64 (+.f64 (/.f64 1 eps) (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 eps))) (*.f64 1/3 (/.f64 1 (pow.f64 eps 3)))))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(+.f64 (+.f64 (log1p.f64 eps) 1) -1)
(+.f64 0 (log1p.f64 eps))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2)) (log.f64 (cbrt.f64 (+.f64 eps 1))))
(+.f64 (log.f64 (sqrt.f64 (+.f64 eps 1))) (log.f64 (sqrt.f64 (+.f64 eps 1))))
(-.f64 (log1p.f64 (pow.f64 eps 3)) (log1p.f64 (-.f64 (*.f64 eps eps) eps)))
(-.f64 (+.f64 (log1p.f64 eps) 1) 1)
(-.f64 (log.f64 (-.f64 1 (*.f64 eps eps))) (log.f64 (-.f64 1 eps)))
(*.f64 (log1p.f64 eps) 1)
(*.f64 1 (log1p.f64 eps))
(*.f64 (cbrt.f64 (log1p.f64 eps)) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2))
(*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (cbrt.f64 (log1p.f64 eps)))
(*.f64 (sqrt.f64 (log1p.f64 eps)) (sqrt.f64 (log1p.f64 eps)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2)))
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (*.f64 (pow.f64 (log1p.f64 eps) 1/6) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (cbrt.f64 (log1p.f64 eps))))
(*.f64 (pow.f64 (log1p.f64 eps) 1/4) (sqrt.f64 (pow.f64 (log1p.f64 eps) 3/2)))
(*.f64 (pow.f64 (log1p.f64 eps) 1/4) (*.f64 (pow.f64 (log1p.f64 eps) 1/4) (sqrt.f64 (log1p.f64 eps))))
(*.f64 (*.f64 (sqrt.f64 (log1p.f64 eps)) (pow.f64 (log1p.f64 eps) 1/4)) (pow.f64 (log1p.f64 eps) 1/4))
(*.f64 (cbrt.f64 (pow.f64 (log1p.f64 eps) 5/2)) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2)) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 5)) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (sqrt.f64 (pow.f64 (log1p.f64 eps) 3/2)) (pow.f64 (log1p.f64 eps) 1/4))
(*.f64 (pow.f64 1 1/3) (log1p.f64 eps))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2) 1/3) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))
(*.f64 (pow.f64 (pow.f64 (log1p.f64 eps) 5/2) 1/3) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (*.f64 (sqrt.f64 (log1p.f64 eps)) (cbrt.f64 (log1p.f64 eps))) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (*.f64 (cbrt.f64 (log1p.f64 eps)) (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4))) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2)) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (pow.f64 (log1p.f64 eps) 1/6)) (pow.f64 (log1p.f64 eps) 1/6))
(/.f64 (-.f64 (pow.f64 (+.f64 (log1p.f64 eps) 1) 3) 1) (+.f64 (*.f64 (+.f64 (log1p.f64 eps) 1) (+.f64 (log1p.f64 eps) 1)) (+.f64 1 (+.f64 (log1p.f64 eps) 1))))
(/.f64 (-.f64 (*.f64 (+.f64 (log1p.f64 eps) 1) (+.f64 (log1p.f64 eps) 1)) 1) (+.f64 (+.f64 (log1p.f64 eps) 1) 1))
(pow.f64 (log1p.f64 eps) 1)
(pow.f64 (pow.f64 (log1p.f64 eps) 2) 1/2)
(pow.f64 (pow.f64 (log1p.f64 eps) 3) 1/3)
(pow.f64 (cbrt.f64 (log1p.f64 eps)) 3)
(pow.f64 (sqrt.f64 (log1p.f64 eps)) 2)
(pow.f64 (E.f64) (log.f64 (log1p.f64 eps)))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (log1p.f64 eps)))) (sqrt.f64 (log.f64 (log1p.f64 eps))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (log1p.f64 eps))) 2)) (cbrt.f64 (log.f64 (log1p.f64 eps))))
(sqrt.f64 (pow.f64 (log1p.f64 eps) 2))
(fabs.f64 (log1p.f64 eps))
(log.f64 (+.f64 eps 1))
(cbrt.f64 (pow.f64 (log1p.f64 eps) 3))
(expm1.f64 (log1p.f64 (log1p.f64 eps)))
(exp.f64 (log.f64 (log1p.f64 eps)))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (log1p.f64 eps))) 1/3))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log1p.f64 eps))) 3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log1p.f64 eps))) 2))
Outputs
eps
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) eps)
(fma.f64 -1/2 (*.f64 eps eps) eps)
(fma.f64 eps (*.f64 eps -1/2) eps)
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 eps (*.f64 1/3 (pow.f64 eps 3))))
(+.f64 (fma.f64 -1/2 (*.f64 eps eps) eps) (*.f64 1/3 (pow.f64 eps 3)))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/3 (pow.f64 eps 3) eps))
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 1/3 (pow.f64 eps 3) eps))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 eps (+.f64 (*.f64 1/3 (pow.f64 eps 3)) (*.f64 -1/4 (pow.f64 eps 4)))))
(+.f64 (fma.f64 -1/2 (*.f64 eps eps) eps) (fma.f64 1/3 (pow.f64 eps 3) (*.f64 -1/4 (pow.f64 eps 4))))
(fma.f64 -1/2 (*.f64 eps eps) (+.f64 eps (fma.f64 -1/4 (pow.f64 eps 4) (*.f64 1/3 (pow.f64 eps 3)))))
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 1/3 (pow.f64 eps 3) (fma.f64 -1/4 (pow.f64 eps 4) eps)))
(*.f64 -1 (log.f64 (/.f64 1 eps)))
(neg.f64 (neg.f64 (log.f64 eps)))
(log.f64 eps)
(+.f64 (/.f64 1 eps) (*.f64 -1 (log.f64 (/.f64 1 eps))))
(+.f64 (/.f64 1 eps) (neg.f64 (neg.f64 (log.f64 eps))))
(+.f64 (/.f64 1 eps) (log.f64 eps))
(-.f64 (+.f64 (/.f64 1 eps) (*.f64 -1 (log.f64 (/.f64 1 eps)))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(+.f64 (/.f64 1 eps) (-.f64 (neg.f64 (neg.f64 (log.f64 eps))) (/.f64 1/2 (*.f64 eps eps))))
(-.f64 (+.f64 (/.f64 1 eps) (log.f64 eps)) (/.f64 (/.f64 1/2 eps) eps))
(+.f64 (/.f64 1 eps) (-.f64 (log.f64 eps) (/.f64 (/.f64 1/2 eps) eps)))
(+.f64 (log.f64 eps) (+.f64 (/.f64 1 eps) (/.f64 (/.f64 -1/2 eps) eps)))
(-.f64 (+.f64 (/.f64 1 eps) (+.f64 (*.f64 -1 (log.f64 (/.f64 1 eps))) (*.f64 1/3 (/.f64 1 (pow.f64 eps 3))))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(+.f64 (/.f64 1 eps) (-.f64 (fma.f64 -1 (neg.f64 (log.f64 eps)) (/.f64 1/3 (pow.f64 eps 3))) (/.f64 1/2 (*.f64 eps eps))))
(+.f64 (+.f64 (/.f64 1 eps) (log.f64 eps)) (-.f64 (/.f64 1/3 (pow.f64 eps 3)) (/.f64 (/.f64 1/2 eps) eps)))
(+.f64 (/.f64 1 eps) (+.f64 (log.f64 eps) (-.f64 (/.f64 1/3 (pow.f64 eps 3)) (/.f64 (/.f64 1/2 eps) eps))))
(+.f64 (/.f64 1 eps) (+.f64 (log.f64 eps) (+.f64 (/.f64 1/3 (pow.f64 eps 3)) (/.f64 (/.f64 -1/2 eps) eps))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 eps))) (log.f64 -1))
(neg.f64 (neg.f64 (log.f64 eps)))
(log.f64 eps)
(+.f64 (/.f64 1 eps) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 eps)))))
(+.f64 (/.f64 1 eps) (neg.f64 (neg.f64 (log.f64 eps))))
(+.f64 (/.f64 1 eps) (log.f64 eps))
(-.f64 (+.f64 (/.f64 1 eps) (+.f64 (log.f64 -1) (*.f64 -1 (log.f64 (/.f64 -1 eps))))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(+.f64 (/.f64 1 eps) (-.f64 (neg.f64 (neg.f64 (log.f64 eps))) (/.f64 1/2 (*.f64 eps eps))))
(-.f64 (+.f64 (/.f64 1 eps) (log.f64 eps)) (/.f64 (/.f64 1/2 eps) eps))
(+.f64 (/.f64 1 eps) (-.f64 (log.f64 eps) (/.f64 (/.f64 1/2 eps) eps)))
(+.f64 (log.f64 eps) (+.f64 (/.f64 1 eps) (/.f64 (/.f64 -1/2 eps) eps)))
(-.f64 (+.f64 (/.f64 1 eps) (+.f64 (log.f64 -1) (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 eps))) (*.f64 1/3 (/.f64 1 (pow.f64 eps 3)))))) (*.f64 1/2 (/.f64 1 (pow.f64 eps 2))))
(+.f64 (/.f64 1 eps) (-.f64 (fma.f64 -1 (neg.f64 (log.f64 eps)) (/.f64 1/3 (pow.f64 eps 3))) (/.f64 1/2 (*.f64 eps eps))))
(+.f64 (+.f64 (/.f64 1 eps) (log.f64 eps)) (-.f64 (/.f64 1/3 (pow.f64 eps 3)) (/.f64 (/.f64 1/2 eps) eps)))
(+.f64 (/.f64 1 eps) (+.f64 (log.f64 eps) (-.f64 (/.f64 1/3 (pow.f64 eps 3)) (/.f64 (/.f64 1/2 eps) eps))))
(+.f64 (/.f64 1 eps) (+.f64 (log.f64 eps) (+.f64 (/.f64 1/3 (pow.f64 eps 3)) (/.f64 (/.f64 -1/2 eps) eps))))
(+.f64 (+.f64 (log1p.f64 eps) 1) -1)
(log1p.f64 eps)
(+.f64 0 (log1p.f64 eps))
(log1p.f64 eps)
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (+.f64 eps 1)) 2)) (log.f64 (cbrt.f64 (+.f64 eps 1))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (+.f64 eps 1)))) (log.f64 (cbrt.f64 (+.f64 eps 1))))
(*.f64 3 (log.f64 (cbrt.f64 (+.f64 eps 1))))
(+.f64 (log.f64 (sqrt.f64 (+.f64 eps 1))) (log.f64 (sqrt.f64 (+.f64 eps 1))))
(*.f64 2 (log.f64 (sqrt.f64 (+.f64 eps 1))))
(*.f64 2 (log.f64 (hypot.f64 1 (sqrt.f64 eps))))
(-.f64 (log1p.f64 (pow.f64 eps 3)) (log1p.f64 (-.f64 (*.f64 eps eps) eps)))
(-.f64 (+.f64 (log1p.f64 eps) 1) 1)
(log1p.f64 eps)
(-.f64 (log.f64 (-.f64 1 (*.f64 eps eps))) (log.f64 (-.f64 1 eps)))
(-.f64 (log1p.f64 (*.f64 eps (neg.f64 eps))) (log1p.f64 (neg.f64 eps)))
(*.f64 (log1p.f64 eps) 1)
(log1p.f64 eps)
(*.f64 1 (log1p.f64 eps))
(log1p.f64 eps)
(*.f64 (cbrt.f64 (log1p.f64 eps)) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2))
(log1p.f64 eps)
(*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (cbrt.f64 (log1p.f64 eps)))
(log1p.f64 eps)
(*.f64 (sqrt.f64 (log1p.f64 eps)) (sqrt.f64 (log1p.f64 eps)))
(log1p.f64 eps)
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2)))
(log1p.f64 eps)
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (*.f64 (pow.f64 (log1p.f64 eps) 1/6) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2)))
(log1p.f64 eps)
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4)) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (cbrt.f64 (log1p.f64 eps))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4)) (*.f64 (cbrt.f64 (log1p.f64 eps)) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (*.f64 (cbrt.f64 (log1p.f64 eps)) (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 5))
(*.f64 (pow.f64 (log1p.f64 eps) 1/4) (sqrt.f64 (pow.f64 (log1p.f64 eps) 3/2)))
(log1p.f64 eps)
(*.f64 (pow.f64 (log1p.f64 eps) 1/4) (*.f64 (pow.f64 (log1p.f64 eps) 1/4) (sqrt.f64 (log1p.f64 eps))))
(log1p.f64 eps)
(*.f64 (*.f64 (sqrt.f64 (log1p.f64 eps)) (pow.f64 (log1p.f64 eps) 1/4)) (pow.f64 (log1p.f64 eps) 1/4))
(log1p.f64 eps)
(*.f64 (cbrt.f64 (pow.f64 (log1p.f64 eps) 5/2)) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (cbrt.f64 (pow.f64 (log1p.f64 eps) 5/2)))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2)) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))
(*.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 8)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 5)) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (sqrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 5)))
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 5/2))
(*.f64 (sqrt.f64 (log1p.f64 eps)) (pow.f64 (pow.f64 (log1p.f64 eps) 1/6) 3))
(*.f64 (sqrt.f64 (pow.f64 (log1p.f64 eps) 3/2)) (pow.f64 (log1p.f64 eps) 1/4))
(log1p.f64 eps)
(*.f64 (pow.f64 1 1/3) (log1p.f64 eps))
(log1p.f64 eps)
(*.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2) 1/3) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))
(*.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4) 2)))
(*.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 8)))
(*.f64 (pow.f64 (pow.f64 (log1p.f64 eps) 5/2) 1/3) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (cbrt.f64 (pow.f64 (log1p.f64 eps) 5/2)))
(*.f64 (*.f64 (sqrt.f64 (log1p.f64 eps)) (cbrt.f64 (log1p.f64 eps))) (pow.f64 (log1p.f64 eps) 1/6))
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (sqrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 5)))
(*.f64 (pow.f64 (log1p.f64 eps) 1/6) (pow.f64 (cbrt.f64 (log1p.f64 eps)) 5/2))
(*.f64 (sqrt.f64 (log1p.f64 eps)) (pow.f64 (pow.f64 (log1p.f64 eps) 1/6) 3))
(*.f64 (*.f64 (cbrt.f64 (log1p.f64 eps)) (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4))) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4)) (*.f64 (cbrt.f64 (log1p.f64 eps)) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2)))
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2) (*.f64 (cbrt.f64 (log1p.f64 eps)) (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4))))
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 5))
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (log1p.f64 eps))) 2)) (cbrt.f64 (cbrt.f64 (log1p.f64 eps))))
(log1p.f64 eps)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (log1p.f64 eps)) 2) (pow.f64 (log1p.f64 eps) 1/6)) (pow.f64 (log1p.f64 eps) 1/6))
(log1p.f64 eps)
(/.f64 (-.f64 (pow.f64 (+.f64 (log1p.f64 eps) 1) 3) 1) (+.f64 (*.f64 (+.f64 (log1p.f64 eps) 1) (+.f64 (log1p.f64 eps) 1)) (+.f64 1 (+.f64 (log1p.f64 eps) 1))))
(/.f64 (+.f64 (pow.f64 (+.f64 1 (log1p.f64 eps)) 3) -1) (fma.f64 (+.f64 1 (log1p.f64 eps)) (+.f64 1 (log1p.f64 eps)) (+.f64 (log1p.f64 eps) 2)))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (log1p.f64 eps)) 3)) (fma.f64 (+.f64 1 (log1p.f64 eps)) (+.f64 1 (log1p.f64 eps)) (+.f64 2 (log1p.f64 eps))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (log1p.f64 eps)) 3)) (+.f64 1 (*.f64 (+.f64 1 (log1p.f64 eps)) (+.f64 2 (log1p.f64 eps)))))
(/.f64 (+.f64 -1 (pow.f64 (+.f64 1 (log1p.f64 eps)) 3)) (fma.f64 (+.f64 1 (log1p.f64 eps)) (+.f64 2 (log1p.f64 eps)) 1))
(/.f64 (-.f64 (*.f64 (+.f64 (log1p.f64 eps) 1) (+.f64 (log1p.f64 eps) 1)) 1) (+.f64 (+.f64 (log1p.f64 eps) 1) 1))
(log1p.f64 eps)
(pow.f64 (log1p.f64 eps) 1)
(log1p.f64 eps)
(pow.f64 (pow.f64 (log1p.f64 eps) 2) 1/2)
(log1p.f64 eps)
(pow.f64 (pow.f64 (log1p.f64 eps) 3) 1/3)
(log1p.f64 eps)
(pow.f64 (cbrt.f64 (log1p.f64 eps)) 3)
(log1p.f64 eps)
(pow.f64 (sqrt.f64 (log1p.f64 eps)) 2)
(log1p.f64 eps)
(pow.f64 (E.f64) (log.f64 (log1p.f64 eps)))
(log1p.f64 eps)
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (log1p.f64 eps)))) (sqrt.f64 (log.f64 (log1p.f64 eps))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (log1p.f64 eps))) 2)) (cbrt.f64 (log.f64 (log1p.f64 eps))))
(sqrt.f64 (pow.f64 (log1p.f64 eps) 2))
(log1p.f64 eps)
(fabs.f64 (log1p.f64 eps))
(log1p.f64 eps)
(log.f64 (+.f64 eps 1))
(log1p.f64 eps)
(cbrt.f64 (pow.f64 (log1p.f64 eps) 3))
(log1p.f64 eps)
(expm1.f64 (log1p.f64 (log1p.f64 eps)))
(log1p.f64 eps)
(exp.f64 (log.f64 (log1p.f64 eps)))
(log1p.f64 eps)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (log1p.f64 eps))) 1/3))
(log1p.f64 eps)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (log1p.f64 eps))) 3))
(log1p.f64 eps)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (log1p.f64 eps))) 2))
(log1p.f64 eps)

eval59.0ms (1.2%)

Compiler

Compiled 3334 to 1986 computations (40.4% saved)

prune31.0ms (0.6%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2342236
Fresh000
Picked011
Done011
Total2344238
Error
0b
Counts
238 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
0.3b
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
0.6b
(*.f64 -2 eps)
58.6b
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Compiler

Compiled 30 to 23 computations (23.3% saved)

localize2.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize10.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -2/3 (pow.f64 eps 3))
Compiler

Compiled 25 to 19 computations (24% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(*.f64 -2/3 (pow.f64 eps 3))
0.0ms
eps
@-inf
(*.f64 -2/3 (pow.f64 eps 3))
0.0ms
eps
@inf
(*.f64 -2/3 (pow.f64 eps 3))

rewrite36.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
505×pow1_binary64
498×add-sqr-sqrt_binary64
476×add-log-exp_binary64
476×log1p-expm1-u_binary64
476×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11297
213247
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 -2/3 (pow.f64 eps 3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (cbrt.f64 -2/3)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 -2/3) (pow.f64 eps 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 eps 6) 4/9))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -2/3) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -2/3 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -2/3 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -2/3 (pow.f64 eps 3))))))))

simplify39.0ms (0.8%)

Algorithm
egg-herbie
Rules
1136×log-prod_binary64
454×exp-sum_binary64
411×distribute-rgt-in_binary64
404×distribute-lft-in_binary64
324×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
037143
196110
231077
3186177
4597377
Stop Event
node limit
Counts
11 → 14
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) 1)
(pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 1)
(pow.f64 (pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 3) 1/3)
(pow.f64 (*.f64 eps (cbrt.f64 -2/3)) 3)
(pow.f64 (*.f64 (sqrt.f64 -2/3) (pow.f64 eps 3/2)) 2)
(sqrt.f64 (*.f64 (pow.f64 eps 6) 4/9))
(log.f64 (pow.f64 (exp.f64 -2/3) (pow.f64 eps 3)))
(cbrt.f64 (pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 3))
(expm1.f64 (log1p.f64 (*.f64 -2/3 (pow.f64 eps 3))))
(log1p.f64 (expm1.f64 (*.f64 -2/3 (pow.f64 eps 3))))
(exp.f64 (log.f64 (*.f64 -2/3 (pow.f64 eps 3))))
Outputs
(-.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) 1)
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 1)
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(pow.f64 (pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 3) 1/3)
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(pow.f64 (*.f64 eps (cbrt.f64 -2/3)) 3)
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(pow.f64 (*.f64 (sqrt.f64 -2/3) (pow.f64 eps 3/2)) 2)
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(sqrt.f64 (*.f64 (pow.f64 eps 6) 4/9))
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(log.f64 (pow.f64 (exp.f64 -2/3) (pow.f64 eps 3)))
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(cbrt.f64 (pow.f64 (*.f64 -2/3 (pow.f64 eps 3)) 3))
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(expm1.f64 (log1p.f64 (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(log1p.f64 (expm1.f64 (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))
(exp.f64 (log.f64 (*.f64 -2/3 (pow.f64 eps 3))))
(+.f64 (+.f64 1 (*.f64 -2/3 (pow.f64 eps 3))) -1)
(+.f64 (*.f64 -2/3 (pow.f64 eps 3)) 0)
(*.f64 -2/3 (pow.f64 eps 3))

eval4.0ms (0.1%)

Compiler

Compiled 159 to 131 computations (17.6% saved)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New14014
Fresh000
Picked011
Done033
Total14418
Error
0b
Counts
18 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0b
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
0.3b
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
0.6b
(*.f64 -2 eps)
58.6b
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Compiler

Compiled 30 to 23 computations (23.3% saved)

regimes9.0ms (0.2%)

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

3 calls:

4.0ms
eps
2.0ms
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
2.0ms
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Results
ErrorSegmentsBranch
0b1eps
0b1(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0b1(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Compiler

Compiled 46 to 34 computations (26.1% saved)

regimes9.0ms (0.2%)

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

3 calls:

4.0ms
eps
2.0ms
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
2.0ms
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Results
ErrorSegmentsBranch
0.3b1eps
0.3b1(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0.3b1(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Compiler

Compiled 40 to 30 computations (25% saved)

regimes7.0ms (0.1%)

Accuracy

Total -58.4b remaining (-9360%)

Threshold costs -58.4b (-9360%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 -2 eps)
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
Outputs
(*.f64 -2 eps)
Calls

3 calls:

3.0ms
eps
2.0ms
(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
2.0ms
(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Results
ErrorSegmentsBranch
0.6b1eps
0.6b1(log.f64 (/.f64 (-.f64 1 eps) (+.f64 1 eps)))
0.6b1(/.f64 (-.f64 1 eps) (+.f64 1 eps))
Compiler

Compiled 31 to 23 computations (25.8% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01327
12227
22727
33027
43127
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(*.f64 -2 eps)
Outputs
(-.f64 (log1p.f64 (neg.f64 eps)) (log1p.f64 eps))
(+.f64 (*.f64 -2 eps) (*.f64 -2/3 (pow.f64 eps 3)))
(+.f64 (*.f64 eps -2) (*.f64 -2/3 (pow.f64 eps 3)))
(*.f64 -2 eps)
(*.f64 eps -2)
Compiler

Compiled 21 to 16 computations (23.8% saved)

soundness423.0ms (8.3%)

Algorithm
egg-herbie
Rules
1088×fma-neg_binary64
890×fma-def_binary64
719×distribute-rgt-in_binary64
491×distribute-lft-in_binary64
331×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0712
11810
22810
34110
47110
510310
615910
729210
860410
9103710
10144410
11200210
12274010
13383510
14467010
15476810
16480010
17480010
18639310
19674810
20682610
21683410
22684210
23684210
24704210
Stop Event
node limit
Compiler

Compiled 43 to 33 computations (23.3% saved)

end22.0ms (0.4%)

Compiler

Compiled 19 to 14 computations (26.3% saved)

Profiling

Loading profile data...