Details

Time bar (total: 4.6s)

analyze0.0ms (0%)

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

Compiled 6 to 4 computations (33.3% saved)

sample921.0ms (20.1%)

Results
908.0ms8256×body256valid
Bogosity

preprocess6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045
011
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(acosh.f64 x)
Outputs
(acosh.f64 x)
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify25.0ms (0.5%)

Algorithm
egg-herbie
Rules
rational.json-simplify-54
rational.json-simplify-1
rational.json-simplify-55
rational.json-simplify-16
rational.json-simplify-73
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
11427
21727
31927
42327
52327
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
Outputs
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))

eval1.0ms (0%)

Compiler

Compiled 19 to 12 computations (36.8% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
26.3b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
26.3b
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
Compiler

Compiled 10 to 7 computations (30% saved)

localize16.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1)))
0.0b
(-.f64 (*.f64 x x) 1)
0.3b
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
24.3b
(sqrt.f64 (-.f64 (*.f64 x x) 1))
Compiler

Compiled 34 to 17 computations (50% saved)

series4.0ms (0.1%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@0
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
1.0ms
x
@-inf
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
1.0ms
x
@0
(sqrt.f64 (-.f64 (*.f64 x x) 1))
0.0ms
x
@inf
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
0.0ms
x
@inf
(sqrt.f64 (-.f64 (*.f64 x x) 1))

rewrite113.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
2006×rational.json-1
2006×rational.json-5
2006×rational.json-2
2006×rational.json-3
2004×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01080
18580
227080
398480
4395780
Stop Event
node limit
Counts
4 → 51
Calls
Call 1
Inputs
(sqrt.f64 (-.f64 (*.f64 x x) 1))
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
(-.f64 (*.f64 x x) 1)
(+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (+.f64 (*.f64 x x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (sqrt.f64 (+.f64 (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (*.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))) (/.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (sqrt.f64 (+.f64 (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x x) -1) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (*.f64 x x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 x x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 x x) -1) (/.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (/.f64 1 (+.f64 (*.f64 x x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (/.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 x x) -1) (/.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 x x) -1) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (/.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)))))

simplify202.0ms (4.4%)

Algorithm
egg-herbie
Rules
1404×rational.json-simplify-54
1076×rational.json-simplify-50
722×exponential.json-simplify-29
614×rational.json-simplify-1
598×rational.json-simplify-41
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01942725
13652709
29082709
328512709
473372709
Stop Event
node limit
Counts
99 → 148
Calls
Call 1
Inputs
(sqrt.f64 -1)
(+.f64 (sqrt.f64 -1) (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (sqrt.f64 -1) (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 (sqrt.f64 -1) 5))))))
x
(-.f64 x (*.f64 1/2 (/.f64 1 x)))
(-.f64 x (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))))
(-.f64 x (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
(*.f64 -1 x)
(+.f64 (*.f64 -1 x) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 -1 x)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 -1 x))))
(log.f64 (sqrt.f64 -1))
(+.f64 (/.f64 x (sqrt.f64 -1)) (log.f64 (sqrt.f64 -1)))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (/.f64 x (sqrt.f64 -1)) (log.f64 (sqrt.f64 -1))))
(+.f64 (*.f64 3/40 (/.f64 (pow.f64 x 5) (pow.f64 (sqrt.f64 -1) 5))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (/.f64 x (sqrt.f64 -1)) (log.f64 (sqrt.f64 -1)))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 5/96 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1/2) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(+.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1/2) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1/2) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 5/96 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))))
-1
(-.f64 (pow.f64 x 2) 1)
(-.f64 (pow.f64 x 2) 1)
(-.f64 (pow.f64 x 2) 1)
(pow.f64 x 2)
(-.f64 (pow.f64 x 2) 1)
(-.f64 (pow.f64 x 2) 1)
(-.f64 (pow.f64 x 2) 1)
(pow.f64 x 2)
(-.f64 (pow.f64 x 2) 1)
(-.f64 (pow.f64 x 2) 1)
(-.f64 (pow.f64 x 2) 1)
(sqrt.f64 -1)
(+.f64 (sqrt.f64 -1) x)
(+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) x))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) x)))
(*.f64 2 x)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (*.f64 2 x) (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
(/.f64 1/2 x)
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 5/128 (/.f64 1 (pow.f64 x 7))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 0)
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 x x) -1)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 0)
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)
(*.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (*.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1))
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))) (/.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))))
(/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)
(/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(pow.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)
(+.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 0)
(+.f64 0 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(-.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 0)
(*.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)
(*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(*.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(*.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) 1))
(*.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(*.f64 (*.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))
(/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)
(/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(pow.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)
(+.f64 (*.f64 x x) -1)
(+.f64 (+.f64 (*.f64 x x) -1) 0)
(+.f64 0 (+.f64 (*.f64 x x) -1))
(+.f64 -1 (*.f64 x x))
(*.f64 1 (+.f64 (*.f64 x x) -1))
(*.f64 (+.f64 (*.f64 x x) -1) 1)
(*.f64 (+.f64 (*.f64 x x) -1) (/.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))
(*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (/.f64 1 (+.f64 (*.f64 x x) -1)))
(*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) 1))
(*.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (/.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))))
(/.f64 (+.f64 (*.f64 x x) -1) 1)
(/.f64 (+.f64 (*.f64 x x) -1) (/.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))
(pow.f64 (+.f64 (*.f64 x x) -1) 1)
(-.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 0)
(*.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)
(*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(*.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(*.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1))
(*.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(*.f64 (*.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (/.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)
(/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(pow.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)
Outputs
(sqrt.f64 -1)
(+.f64 (sqrt.f64 -1) (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (sqrt.f64 -1) (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1)))))
(+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (*.f64 -1/8 (/.f64 (pow.f64 x 4) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 (sqrt.f64 -1) 5))))))
(+.f64 (sqrt.f64 -1) (+.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (sqrt.f64 -1)))) (*.f64 -1/8 (/.f64 (pow.f64 x 4) (sqrt.f64 -1)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (sqrt.f64 -1))) (+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (sqrt.f64 -1))))))
(+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (sqrt.f64 -1))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (sqrt.f64 -1))))))
x
(-.f64 x (*.f64 1/2 (/.f64 1 x)))
(-.f64 x (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 x (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
(-.f64 x (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/16 (/.f64 1 (pow.f64 x 5))))))
(-.f64 x (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/16 (/.f64 1 (pow.f64 x 5))))))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -1 x) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 -1 x))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (neg.f64 x))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 -1 x)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (neg.f64 x)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 -1 x))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (neg.f64 x))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (neg.f64 x))))
(log.f64 (sqrt.f64 -1))
(+.f64 (/.f64 x (sqrt.f64 -1)) (log.f64 (sqrt.f64 -1)))
(+.f64 (log.f64 (sqrt.f64 -1)) (/.f64 x (sqrt.f64 -1)))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (/.f64 x (sqrt.f64 -1)) (log.f64 (sqrt.f64 -1))))
(+.f64 (/.f64 x (sqrt.f64 -1)) (+.f64 (log.f64 (sqrt.f64 -1)) (*.f64 -1/6 (/.f64 (pow.f64 x 3) (sqrt.f64 -1)))))
(+.f64 (log.f64 (sqrt.f64 -1)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 x 3) (sqrt.f64 -1))) (/.f64 x (sqrt.f64 -1))))
(+.f64 (log.f64 (sqrt.f64 -1)) (+.f64 (/.f64 x (sqrt.f64 -1)) (*.f64 -1/6 (/.f64 (pow.f64 x 3) (sqrt.f64 -1)))))
(+.f64 (*.f64 3/40 (/.f64 (pow.f64 x 5) (pow.f64 (sqrt.f64 -1) 5))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 x 3) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (/.f64 x (sqrt.f64 -1)) (log.f64 (sqrt.f64 -1)))))
(+.f64 (+.f64 (/.f64 x (sqrt.f64 -1)) (+.f64 (log.f64 (sqrt.f64 -1)) (*.f64 -1/6 (/.f64 (pow.f64 x 3) (sqrt.f64 -1))))) (*.f64 3/40 (/.f64 (pow.f64 x 5) (sqrt.f64 -1))))
(+.f64 (/.f64 x (sqrt.f64 -1)) (+.f64 (+.f64 (log.f64 (sqrt.f64 -1)) (*.f64 -1/6 (/.f64 (pow.f64 x 3) (sqrt.f64 -1)))) (*.f64 3/40 (/.f64 (pow.f64 x 5) (sqrt.f64 -1)))))
(+.f64 (/.f64 x (sqrt.f64 -1)) (+.f64 (*.f64 3/40 (/.f64 (pow.f64 x 5) (sqrt.f64 -1))) (+.f64 (log.f64 (sqrt.f64 -1)) (*.f64 -1/6 (/.f64 (pow.f64 x 3) (sqrt.f64 -1))))))
(+.f64 (log.f64 (sqrt.f64 -1)) (+.f64 (+.f64 (/.f64 x (sqrt.f64 -1)) (*.f64 3/40 (/.f64 (pow.f64 x 5) (sqrt.f64 -1)))) (*.f64 -1/6 (/.f64 (pow.f64 x 3) (sqrt.f64 -1)))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 5/96 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 5/96 (/.f64 1 (pow.f64 x 6)))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 5/96 (/.f64 1 (pow.f64 x 6))))))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1/2) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (log.f64 (/.f64 -1 x))))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x))))
(+.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1/2) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (log.f64 -1/2) (+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))) (log.f64 (/.f64 -1 x))))
(+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (log.f64 -1/2)) (log.f64 (/.f64 -1 x))))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))))
(+.f64 (log.f64 (/.f64 -1 x)) (+.f64 (log.f64 -1/2) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 5/96 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))))
(+.f64 (log.f64 -1/2) (+.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 5/96 (/.f64 1 (pow.f64 x 6))))) (log.f64 (/.f64 -1 x))))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 5/96 (/.f64 1 (pow.f64 x 6))))) (+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x))))
(+.f64 (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 5/96 (/.f64 1 (pow.f64 x 6)))) (+.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (log.f64 -1/2)) (log.f64 (/.f64 -1 x))))
(+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 5/96 (/.f64 1 (pow.f64 x 6)))) (+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))))
-1
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(pow.f64 x 2)
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(pow.f64 x 2)
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(-.f64 (pow.f64 x 2) 1)
(+.f64 (pow.f64 x 2) -1)
(+.f64 -1 (pow.f64 x 2))
(sqrt.f64 -1)
(+.f64 (sqrt.f64 -1) x)
(+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) x))
(+.f64 (sqrt.f64 -1) (+.f64 x (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (+.f64 (sqrt.f64 -1) x))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 (sqrt.f64 -1) 3))) (+.f64 (sqrt.f64 -1) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) x)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (sqrt.f64 -1))) (+.f64 (sqrt.f64 -1) (+.f64 x (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))))))
(+.f64 (sqrt.f64 -1) (+.f64 x (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (sqrt.f64 -1))) (*.f64 -1/8 (/.f64 (pow.f64 x 4) (sqrt.f64 -1))))))
(*.f64 2 x)
(*.f64 x 2)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))))
(-.f64 (*.f64 2 x) (+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
(-.f64 (*.f64 x 2) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/16 (/.f64 1 (pow.f64 x 5))))))
(-.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/16 (/.f64 1 (pow.f64 x 5)))))
(/.f64 1/2 x)
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/16 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/16 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 5/128 (/.f64 1 (pow.f64 x 7))))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (+.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 5/128 (/.f64 1 (pow.f64 x 7)))) (*.f64 1/16 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 5/128 (/.f64 1 (pow.f64 x 7)))) (*.f64 1/16 (/.f64 1 (pow.f64 x 5)))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 5))) (+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 5/128 (/.f64 1 (pow.f64 x 7))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 0)
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(+.f64 0 (sqrt.f64 (+.f64 (*.f64 x x) -1)))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 0)
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(*.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1)))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(*.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(*.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (*.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(*.f64 (sqrt.f64 (*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))) (/.f64 (/.f64 1 (sqrt.f64 (+.f64 (*.f64 x x) -1))) (sqrt.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (/.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(pow.f64 (sqrt.f64 (+.f64 (*.f64 x x) -1)) 1)
(sqrt.f64 (+.f64 -1 (*.f64 x x)))
(+.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 0)
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(+.f64 0 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(-.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 0)
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(*.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(*.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(*.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) 1))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(*.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(*.f64 (*.f64 (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (*.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(pow.f64 (log.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1)
(log.f64 (+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x)))))
(+.f64 (*.f64 x x) -1)
(+.f64 -1 (*.f64 x x))
(+.f64 (+.f64 (*.f64 x x) -1) 0)
(+.f64 -1 (*.f64 x x))
(+.f64 0 (+.f64 (*.f64 x x) -1))
(+.f64 -1 (*.f64 x x))
(+.f64 -1 (*.f64 x x))
(*.f64 1 (+.f64 (*.f64 x x) -1))
(+.f64 -1 (*.f64 x x))
(*.f64 (+.f64 (*.f64 x x) -1) 1)
(+.f64 -1 (*.f64 x x))
(*.f64 (+.f64 (*.f64 x x) -1) (/.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))
(+.f64 -1 (*.f64 x x))
(*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (/.f64 1 (+.f64 (*.f64 x x) -1)))
(+.f64 -1 (*.f64 x x))
(*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) 1))
(+.f64 -1 (*.f64 x x))
(*.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))
(+.f64 -1 (*.f64 x x))
(*.f64 (*.f64 (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))) (/.f64 (/.f64 1 (+.f64 (*.f64 x x) -1)) (*.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1))))
(+.f64 -1 (*.f64 x x))
(/.f64 (+.f64 (*.f64 x x) -1) 1)
(+.f64 -1 (*.f64 x x))
(/.f64 (+.f64 (*.f64 x x) -1) (/.f64 (+.f64 (*.f64 x x) -1) (+.f64 (*.f64 x x) -1)))
(+.f64 -1 (*.f64 x x))
(pow.f64 (+.f64 (*.f64 x x) -1) 1)
(+.f64 -1 (*.f64 x x))
(-.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 0)
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(*.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(*.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(*.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) 1))
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(*.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(*.f64 (*.f64 (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))) (/.f64 (/.f64 1 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))) (*.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))))))
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (/.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1)))))
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))
(pow.f64 (+.f64 x (sqrt.f64 (+.f64 (*.f64 x x) -1))) 1)
(+.f64 x (sqrt.f64 (+.f64 -1 (*.f64 x x))))

eval66.0ms (1.4%)

Compiler

Compiled 2895 to 2185 computations (24.5% saved)

prune29.0ms (0.6%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1426148
Fresh000
Picked011
Done000
Total1427149
Error
0b
Counts
149 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
1.3b
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
63.0b
(log.f64 (/.f64 1/2 x))
0.8b
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
1.0b
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))
1.0b
(log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
26.3b
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
1.4b
(log.f64 (+.f64 x x))
Compiler

Compiled 130 to 103 computations (20.8% saved)

localize39.0ms (0.8%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
0.2b
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
0.5b
(/.f64 1 (pow.f64 x 3))
Compiler

Compiled 81 to 66 computations (18.5% saved)

series4.0ms (0.1%)

Counts
3 → 21
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
1.0ms
x
@0
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
1.0ms
x
@0
(/.f64 1 (pow.f64 x 3))
1.0ms
x
@-inf
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
0.0ms
x
@inf
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))

rewrite156.0ms (3.4%)

Algorithm
batch-egg-rewrite
Rules
1208×rational.json-simplify-49
950×rational.json-simplify-47
660×rational.json-1
660×rational.json-5
660×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018103
1147103
2419103
31527103
45760103
Stop Event
node limit
Counts
3 → 50
Calls
Call 1
Inputs
(/.f64 1 (pow.f64 x 3))
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
(+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (pow.f64 x 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (pow.f64 x 3)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 1 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (pow.f64 x 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 x 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))) (/.f64 1 (/.f64 1 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))) (/.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (pow.f64 x 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 1 (pow.f64 x 3))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))) (/.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 1/2 (/.f64 1 x)) (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8) (neg.f64 (*.f64 1/2 (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 1/2 (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 -1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (-.f64 1 (*.f64 1/2 (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (*.f64 1/2 (/.f64 1 x)))) (-.f64 1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8) (-.f64 -1 (*.f64 1/2 (/.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))) (/.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 1/2 (/.f64 1 x))))))))

simplify195.0ms (4.2%)

Algorithm
egg-herbie
Rules
978×rational.json-simplify-49
852×rational.json-simplify-2
822×rational.json-simplify-44
770×rational.json-simplify-54
678×rational.json-simplify-50
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01652715
13242699
27332699
323842699
466682699
Stop Event
node limit
Counts
71 → 93
Calls
Call 1
Inputs
(+.f64 (*.f64 -3 (log.f64 x)) (log.f64 -1/8))
(+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (*.f64 -3 (log.f64 x)) (log.f64 -1/8)))
(+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (*.f64 -24 (pow.f64 x 4)) (log.f64 -1/8))))
(+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (*.f64 256/3 (pow.f64 x 6)) (+.f64 (*.f64 -24 (pow.f64 x 4)) (log.f64 -1/8)))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/48 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/48 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(/.f64 1/8 (pow.f64 x 3))
(/.f64 1/2 x)
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(/.f64 1/2 x)
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (/.f64 1 (pow.f64 x 3)) 0)
(+.f64 0 (/.f64 1 (pow.f64 x 3)))
(-.f64 (/.f64 1 (pow.f64 x 3)) 0)
(-.f64 0 (neg.f64 (/.f64 1 (pow.f64 x 3))))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (pow.f64 x 3)))) 1)
(*.f64 1 (/.f64 1 (pow.f64 x 3)))
(*.f64 (/.f64 1 (pow.f64 x 3)) 1)
(*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))
(*.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))) (/.f64 1 (/.f64 1 (pow.f64 x 3))))
(*.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) 1))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))
(*.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))) (/.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3)))))
(pow.f64 (/.f64 1 (pow.f64 x 3)) 1)
(neg.f64 (neg.f64 (/.f64 1 (pow.f64 x 3))))
(+.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 0)
(+.f64 0 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))
(-.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 0)
(-.f64 0 (neg.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))) 1)
(*.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))
(*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)
(*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(*.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(*.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) 1))
(*.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(*.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))) (/.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))))
(/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)
(/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(pow.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)
(neg.f64 (neg.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(-.f64 (*.f64 1/2 (/.f64 1 x)) (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))
(-.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8) (neg.f64 (*.f64 1/2 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 0)
(-.f64 0 (-.f64 (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 1/2 (/.f64 1 x))))
(-.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 -1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (-.f64 1 (*.f64 1/2 (/.f64 1 x))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 1/2 (/.f64 1 x)))) (-.f64 1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))
(-.f64 (-.f64 0 (-.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))) 1)
(-.f64 (-.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8) (-.f64 -1 (*.f64 1/2 (/.f64 1 x)))) 1)
(*.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))
(*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)
(*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) 1))
(*.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))) (/.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))))
(/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)
(/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(pow.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)
(neg.f64 (-.f64 (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 1/2 (/.f64 1 x))))
Outputs
(+.f64 (*.f64 -3 (log.f64 x)) (log.f64 -1/8))
(+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (*.f64 -3 (log.f64 x)) (log.f64 -1/8)))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (log.f64 -1/8) (*.f64 4 (pow.f64 x 2))))
(+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (*.f64 -24 (pow.f64 x 4)) (log.f64 -1/8))))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (+.f64 (log.f64 -1/8) (*.f64 -24 (pow.f64 x 4))) (*.f64 4 (pow.f64 x 2))))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (log.f64 -1/8) (*.f64 -24 (pow.f64 x 4)))))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (log.f64 -1/8) (+.f64 (*.f64 -24 (pow.f64 x 4)) (*.f64 4 (pow.f64 x 2)))))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (log.f64 -1/8) (+.f64 (*.f64 4 (pow.f64 x 2)) (*.f64 -24 (pow.f64 x 4)))))
(+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (*.f64 256/3 (pow.f64 x 6)) (+.f64 (*.f64 -24 (pow.f64 x 4)) (log.f64 -1/8)))))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (+.f64 (*.f64 -24 (pow.f64 x 4)) (+.f64 (log.f64 -1/8) (*.f64 256/3 (pow.f64 x 6)))) (*.f64 4 (pow.f64 x 2))))
(+.f64 (*.f64 4 (pow.f64 x 2)) (+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (log.f64 -1/8) (+.f64 (*.f64 256/3 (pow.f64 x 6)) (*.f64 -24 (pow.f64 x 4))))))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (+.f64 (log.f64 -1/8) (*.f64 256/3 (pow.f64 x 6))) (+.f64 (*.f64 -24 (pow.f64 x 4)) (*.f64 4 (pow.f64 x 2)))))
(+.f64 (*.f64 -3 (log.f64 x)) (+.f64 (+.f64 (log.f64 -1/8) (*.f64 256/3 (pow.f64 x 6))) (+.f64 (*.f64 4 (pow.f64 x 2)) (*.f64 -24 (pow.f64 x 4)))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/48 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/48 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/48 (/.f64 1 (pow.f64 x 6))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4))))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/48 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/48 (/.f64 1 (pow.f64 x 6)))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/48 (/.f64 1 (pow.f64 x 6))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/48 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/48 (/.f64 1 (pow.f64 x 6))) (*.f64 3/32 (/.f64 1 (pow.f64 x 4))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 3/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/48 (/.f64 1 (pow.f64 x 6))))))
(/.f64 1/8 (pow.f64 x 3))
(/.f64 1/2 x)
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(/.f64 1/2 x)
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(+.f64 (*.f64 1/8 (/.f64 1 (pow.f64 x 3))) (*.f64 1/2 (/.f64 1 x)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(+.f64 (/.f64 1 (pow.f64 x 3)) 0)
(/.f64 1 (pow.f64 x 3))
(+.f64 0 (/.f64 1 (pow.f64 x 3)))
(/.f64 1 (pow.f64 x 3))
(-.f64 (/.f64 1 (pow.f64 x 3)) 0)
(/.f64 1 (pow.f64 x 3))
(-.f64 0 (neg.f64 (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 3))
(-.f64 (-.f64 0 (-.f64 -1 (/.f64 1 (pow.f64 x 3)))) 1)
(/.f64 1 (pow.f64 x 3))
(*.f64 1 (/.f64 1 (pow.f64 x 3)))
(/.f64 1 (pow.f64 x 3))
(*.f64 (/.f64 1 (pow.f64 x 3)) 1)
(/.f64 1 (pow.f64 x 3))
(*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 3))
(*.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))) (/.f64 1 (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 3))
(*.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) 1))
(/.f64 1 (pow.f64 x 3))
(*.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 3))
(*.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 (/.f64 1 (pow.f64 x 3)) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3))))) (/.f64 (/.f64 1 (/.f64 1 (pow.f64 x 3))) (*.f64 (/.f64 1 (pow.f64 x 3)) (/.f64 1 (pow.f64 x 3)))))
(/.f64 1 (pow.f64 x 3))
(pow.f64 (/.f64 1 (pow.f64 x 3)) 1)
(/.f64 1 (pow.f64 x 3))
(neg.f64 (neg.f64 (/.f64 1 (pow.f64 x 3))))
(/.f64 1 (pow.f64 x 3))
(+.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 0)
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(+.f64 0 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(-.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 0)
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(-.f64 0 (neg.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))) 1)
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(*.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(*.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(*.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) 1))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(*.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(*.f64 (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))) (/.f64 (/.f64 1 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))) (*.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (/.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(pow.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x))) 1)
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(neg.f64 (neg.f64 (log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) x)))))
(log.f64 (-.f64 x (-.f64 (+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3)))) x)))
(-.f64 (*.f64 1/2 (/.f64 1 x)) (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8) (neg.f64 (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 0)
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 0 (-.f64 (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) (-.f64 -1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) 1)
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (-.f64 1 (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (-.f64 0 (-.f64 -1 (*.f64 1/2 (/.f64 1 x)))) (-.f64 1 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (-.f64 0 (-.f64 -1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))) 1)
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(-.f64 (-.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8) (-.f64 -1 (*.f64 1/2 (/.f64 1 x)))) 1)
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(*.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) 1))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(*.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(*.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))) (/.f64 (/.f64 1 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(pow.f64 (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) 1)
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))
(neg.f64 (-.f64 (neg.f64 (*.f64 (/.f64 1 (pow.f64 x 3)) 1/8)) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (*.f64 (/.f64 1 x) 1/2) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(log.f64 (+.f64 x x))
Compiler

Compiled 9 to 3 computations (66.7% saved)

series59.0ms (1.3%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
29.0ms
x
@0
(log.f64 (+.f64 x x))
21.0ms
x
@-inf
(log.f64 (+.f64 x x))
9.0ms
x
@inf
(log.f64 (+.f64 x x))

rewrite86.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
1222×rational.json-1
1222×rational.json-5
1222×rational.json-2
1222×rational.json-3
1220×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0611
15011
217711
362211
4237411
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(log.f64 (+.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (log.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (log.f64 (+.f64 x x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (+.f64 x x)) (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (log.f64 (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (/.f64 1 (log.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (/.f64 (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (log.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))) (/.f64 (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (+.f64 x x)) (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (log.f64 (+.f64 x x))))))))

simplify286.0ms (6.2%)

Algorithm
egg-herbie
Rules
1524×rational.json-simplify-49
1384×rational.json-simplify-2
970×rational.json-simplify-43
946×rational.json-simplify-54
724×rational.json-simplify-58
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
054485
194469
2283469
31660469
45289469
57526469
Stop Event
node limit
Counts
31 → 25
Calls
Call 1
Inputs
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (log.f64 (+.f64 x x)) 0)
(+.f64 0 (log.f64 (+.f64 x x)))
(-.f64 (log.f64 (+.f64 x x)) 0)
(-.f64 0 (neg.f64 (log.f64 (+.f64 x x))))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 (+.f64 x x)))) 1)
(*.f64 (log.f64 (+.f64 x x)) 1)
(*.f64 (log.f64 (+.f64 x x)) (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))
(*.f64 1 (log.f64 (+.f64 x x)))
(*.f64 (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (log.f64 (+.f64 x x)))
(*.f64 (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (/.f64 1 (log.f64 (+.f64 x x))))
(*.f64 (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (/.f64 (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (log.f64 (+.f64 x x))))
(*.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))
(*.f64 (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))
(*.f64 (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))))
(*.f64 (*.f64 (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))) (/.f64 (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))))
(/.f64 (log.f64 (+.f64 x x)) 1)
(/.f64 (log.f64 (+.f64 x x)) (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))
(pow.f64 (log.f64 (+.f64 x x)) 1)
(neg.f64 (neg.f64 (log.f64 (+.f64 x x))))
Outputs
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (log.f64 (+.f64 x x)) 0)
(log.f64 (+.f64 x x))
(+.f64 0 (log.f64 (+.f64 x x)))
(log.f64 (+.f64 x x))
(-.f64 (log.f64 (+.f64 x x)) 0)
(log.f64 (+.f64 x x))
(-.f64 0 (neg.f64 (log.f64 (+.f64 x x))))
(log.f64 (+.f64 x x))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 (+.f64 x x)))) 1)
(log.f64 (+.f64 x x))
(*.f64 (log.f64 (+.f64 x x)) 1)
(log.f64 (+.f64 x x))
(*.f64 (log.f64 (+.f64 x x)) (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))
(log.f64 (+.f64 x x))
(*.f64 1 (log.f64 (+.f64 x x)))
(log.f64 (+.f64 x x))
(*.f64 (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (log.f64 (+.f64 x x)))
(log.f64 (+.f64 x x))
(*.f64 (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (/.f64 1 (log.f64 (+.f64 x x))))
(log.f64 (+.f64 x x))
(*.f64 (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (/.f64 (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))) (log.f64 (+.f64 x x))))
(log.f64 (+.f64 x x))
(*.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))
(log.f64 (+.f64 x x))
(*.f64 (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))
(log.f64 (+.f64 x x))
(*.f64 (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))))
(log.f64 (+.f64 x x))
(*.f64 (*.f64 (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))) (/.f64 (/.f64 (/.f64 1 (log.f64 (+.f64 x x))) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (*.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x)))))))
(log.f64 (+.f64 x x))
(/.f64 (log.f64 (+.f64 x x)) 1)
(log.f64 (+.f64 x x))
(/.f64 (log.f64 (+.f64 x x)) (/.f64 (log.f64 (+.f64 x x)) (log.f64 (+.f64 x x))))
(log.f64 (+.f64 x x))
(pow.f64 (log.f64 (+.f64 x x)) 1)
(log.f64 (+.f64 x x))
(neg.f64 (neg.f64 (log.f64 (+.f64 x x))))
(log.f64 (+.f64 x x))

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(log.f64 (/.f64 1/2 x))
Compiler

Compiled 10 to 7 computations (30% saved)

series63.0ms (1.4%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
44.0ms
x
@-inf
(log.f64 (/.f64 1/2 x))
13.0ms
x
@0
(log.f64 (/.f64 1/2 x))
7.0ms
x
@inf
(log.f64 (/.f64 1/2 x))

rewrite85.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
1288×rational.json-1
1288×rational.json-5
1288×rational.json-2
1288×rational.json-3
1286×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
15711
218411
365511
4250711
Stop Event
node limit
Counts
1 → 19
Calls
Call 1
Inputs
(log.f64 (/.f64 1/2 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (/.f64 1/2 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (/.f64 1/2 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (log.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (log.f64 (/.f64 1/2 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (/.f64 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (/.f64 1/2 x)) (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (log.f64 (/.f64 1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (/.f64 1 (log.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (/.f64 (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (log.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))) (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))) (/.f64 (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (/.f64 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (/.f64 1/2 x)) (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (/.f64 1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (log.f64 (/.f64 1/2 x))))))))

simplify284.0ms (6.2%)

Algorithm
egg-herbie
Rules
1524×rational.json-simplify-49
1372×rational.json-simplify-2
962×rational.json-simplify-43
938×rational.json-simplify-54
724×rational.json-simplify-58
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
053461
192453
2282453
31653453
45261453
57515453
Stop Event
node limit
Counts
31 → 25
Calls
Call 1
Inputs
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 (/.f64 1/2 x)) 0)
(+.f64 0 (log.f64 (/.f64 1/2 x)))
(-.f64 (log.f64 (/.f64 1/2 x)) 0)
(-.f64 0 (neg.f64 (log.f64 (/.f64 1/2 x))))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 (/.f64 1/2 x)))) 1)
(*.f64 (log.f64 (/.f64 1/2 x)) 1)
(*.f64 (log.f64 (/.f64 1/2 x)) (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))
(*.f64 1 (log.f64 (/.f64 1/2 x)))
(*.f64 (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (log.f64 (/.f64 1/2 x)))
(*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (/.f64 1 (log.f64 (/.f64 1/2 x))))
(*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (/.f64 (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (log.f64 (/.f64 1/2 x))))
(*.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))
(*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))) (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))
(*.f64 (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))))
(*.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))) (/.f64 (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))))
(/.f64 (log.f64 (/.f64 1/2 x)) 1)
(/.f64 (log.f64 (/.f64 1/2 x)) (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))
(pow.f64 (log.f64 (/.f64 1/2 x)) 1)
(neg.f64 (neg.f64 (log.f64 (/.f64 1/2 x))))
Outputs
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 1/2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 1/2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 1/2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 1/2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (log.f64 (/.f64 1 x)))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (log.f64 (/.f64 1 x)))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (log.f64 (/.f64 1 x)))
(+.f64 (log.f64 (/.f64 1 x)) (log.f64 1/2))
(+.f64 (log.f64 1/2) (log.f64 (/.f64 1 x)))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 -1/2) (log.f64 (/.f64 -1 x)))
(+.f64 (log.f64 (/.f64 1/2 x)) 0)
(log.f64 (/.f64 1/2 x))
(+.f64 0 (log.f64 (/.f64 1/2 x)))
(log.f64 (/.f64 1/2 x))
(-.f64 (log.f64 (/.f64 1/2 x)) 0)
(log.f64 (/.f64 1/2 x))
(-.f64 0 (neg.f64 (log.f64 (/.f64 1/2 x))))
(log.f64 (/.f64 1/2 x))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 (/.f64 1/2 x)))) 1)
(log.f64 (/.f64 1/2 x))
(*.f64 (log.f64 (/.f64 1/2 x)) 1)
(log.f64 (/.f64 1/2 x))
(*.f64 (log.f64 (/.f64 1/2 x)) (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))
(log.f64 (/.f64 1/2 x))
(*.f64 1 (log.f64 (/.f64 1/2 x)))
(log.f64 (/.f64 1/2 x))
(*.f64 (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (log.f64 (/.f64 1/2 x)))
(log.f64 (/.f64 1/2 x))
(*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (/.f64 1 (log.f64 (/.f64 1/2 x))))
(log.f64 (/.f64 1/2 x))
(*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (/.f64 (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))) (log.f64 (/.f64 1/2 x))))
(log.f64 (/.f64 1/2 x))
(*.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))
(log.f64 (/.f64 1/2 x))
(*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))) (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))
(log.f64 (/.f64 1/2 x))
(*.f64 (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))))
(log.f64 (/.f64 1/2 x))
(*.f64 (*.f64 (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))) (/.f64 (/.f64 (/.f64 1 (log.f64 (/.f64 1/2 x))) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (*.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x)))))))
(log.f64 (/.f64 1/2 x))
(/.f64 (log.f64 (/.f64 1/2 x)) 1)
(log.f64 (/.f64 1/2 x))
(/.f64 (log.f64 (/.f64 1/2 x)) (/.f64 (log.f64 (/.f64 1/2 x)) (log.f64 (/.f64 1/2 x))))
(log.f64 (/.f64 1/2 x))
(pow.f64 (log.f64 (/.f64 1/2 x)) 1)
(log.f64 (/.f64 1/2 x))
(neg.f64 (neg.f64 (log.f64 (/.f64 1/2 x))))
(log.f64 (/.f64 1/2 x))

localize20.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 x (*.f64 1/2 (/.f64 1 x)))
0.0b
(+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))
0.2b
(log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
Compiler

Compiled 38 to 27 computations (28.9% saved)

series2.0ms (0%)

Counts
3 → 27
Calls

9 calls:

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

rewrite107.0ms (2.3%)

Algorithm
batch-egg-rewrite
Rules
1924×rational.json-1
1924×rational.json-5
1924×rational.json-2
1924×rational.json-3
1922×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01173
19073
226973
399373
4378073
Stop Event
node limit
Counts
3 → 40
Calls
Call 1
Inputs
(log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))
(-.f64 x (*.f64 1/2 (/.f64 1 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))) (/.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (*.f64 1/2 (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) (*.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)))) (/.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x))))))

simplify221.0ms (4.8%)

Algorithm
egg-herbie
Rules
1580×rational.json-simplify-49
1388×rational.json-simplify-2
1044×rational.json-simplify-50
894×rational.json-simplify-54
876×exponential.json-simplify-29
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01341907
12331883
25761883
323591883
475431883
Stop Event
node limit
Counts
67 → 89
Calls
Call 1
Inputs
(+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (log.f64 x))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -1 (log.f64 x)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (*.f64 -1 (log.f64 x))))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(/.f64 -1/2 x)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(*.f64 2 x)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(*.f64 2 x)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(/.f64 -1/2 x)
x
x
(+.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 0)
(+.f64 0 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(-.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 0)
(*.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)
(*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(*.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(*.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) 1))
(*.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(*.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))
(/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)
(/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(pow.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)
(-.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 0)
(*.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)
(*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(*.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(*.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1))
(*.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(*.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))) (/.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)
(/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(pow.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)
(+.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 0)
(+.f64 0 (-.f64 x (*.f64 1/2 (/.f64 1 x))))
(+.f64 (-.f64 -1 (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) 1)
(*.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x))))
(*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)
(*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) -1)
(*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) (*.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1))
(*.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)))
(*.f64 (*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)))) (/.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x))))
(/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)
(/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(/.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) -1)
(pow.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)
(neg.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x))
Outputs
(+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 -1/2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (log.f64 x))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (neg.f64 (log.f64 x)) (+.f64 (log.f64 -1/2) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -1 (log.f64 x)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -4 (pow.f64 x 2)))))
(+.f64 (log.f64 -1/2) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (*.f64 -8 (pow.f64 x 4))))
(+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (+.f64 (*.f64 -8 (pow.f64 x 4)) (log.f64 -1/2)))
(+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (*.f64 -1 (log.f64 x))))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -64/3 (pow.f64 x 6))))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (*.f64 -64/3 (pow.f64 x 6)) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (+.f64 (*.f64 -8 (pow.f64 x 4)) (log.f64 -1/2))))
(+.f64 (log.f64 -1/2) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -8 (pow.f64 x 4)))) (*.f64 -64/3 (pow.f64 x 6))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))))
(/.f64 -1/2 x)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(*.f64 2 x)
(*.f64 x 2)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(*.f64 2 x)
(*.f64 x 2)
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(-.f64 (*.f64 2 x) (*.f64 1/2 (/.f64 1 x)))
(-.f64 (*.f64 x 2) (*.f64 (/.f64 1 x) 1/2))
(/.f64 -1/2 x)
x
x
(+.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 0)
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(+.f64 0 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(-.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 0)
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(*.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(*.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(*.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) 1))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(*.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(*.f64 (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))) (/.f64 (/.f64 1 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))) (*.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(pow.f64 (log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1)
(log.f64 (+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2))))
(-.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 0)
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(*.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) 1))
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))) (/.f64 (/.f64 1 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))) (*.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))))
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (/.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x))))))
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(pow.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1)
(+.f64 x (-.f64 x (*.f64 (/.f64 1 x) 1/2)))
(+.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 0)
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(+.f64 0 (-.f64 x (*.f64 1/2 (/.f64 1 x))))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(+.f64 (-.f64 -1 (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) 1)
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x))))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) -1)
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)) (*.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) 1))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(*.f64 (*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (*.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x)))) (/.f64 (/.f64 1 (-.f64 x (*.f64 1/2 (/.f64 1 x)))) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) (-.f64 (*.f64 1/2 (/.f64 1 x)) x))))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (/.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(/.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x) -1)
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(pow.f64 (-.f64 x (*.f64 1/2 (/.f64 1 x))) 1)
(-.f64 x (*.f64 (/.f64 1 x) 1/2))
(neg.f64 (-.f64 (*.f64 1/2 (/.f64 1 x)) x))
(-.f64 x (*.f64 (/.f64 1 x) 1/2))

localize18.0ms (0.4%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))
Compiler

Compiled 35 to 27 computations (22.9% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))
0.0ms
x
@inf
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))
0.0ms
x
@-inf
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))

rewrite93.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
1908×rational.json-1
1908×rational.json-5
1908×rational.json-2
1908×rational.json-3
1906×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01229
19729
228029
3102429
4378329
Stop Event
node limit
Counts
1 → 13
Calls
Call 1
Inputs
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))) (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)))))

simplify287.0ms (6.2%)

Algorithm
egg-herbie
Rules
1328×rational.json-simplify-47
1074×rational.json-simplify-49
896×exponential.json-simplify-26
890×rational.json-simplify-2
836×rational.json-simplify-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0871073
11461049
23241049
313561049
451471049
579041049
Stop Event
node limit
Counts
25 → 59
Calls
Call 1
Inputs
(+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (log.f64 x))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -1 (log.f64 x)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (*.f64 -1 (log.f64 x))))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 0)
(+.f64 0 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))
(-.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 0)
(*.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))
(*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)
(*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) 1))
(*.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(*.f64 (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))) (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))))
(/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)
(/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(pow.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)
Outputs
(+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 -1/2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (log.f64 x))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (neg.f64 (log.f64 x)) (+.f64 (*.f64 -4 (pow.f64 x 2)) (log.f64 -1/2)))
(+.f64 (neg.f64 (log.f64 x)) (+.f64 (log.f64 -1/2) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -1 (log.f64 x)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (log.f64 -1/2) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (*.f64 -8 (pow.f64 x 4))))
(+.f64 (neg.f64 (log.f64 x)) (+.f64 (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -8 (pow.f64 x 4))) (log.f64 -1/2)))
(+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (*.f64 -1 (log.f64 x))))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -64/3 (pow.f64 x 6))))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -64/3 (pow.f64 x 6))))))
(+.f64 (neg.f64 (log.f64 x)) (+.f64 (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -64/3 (pow.f64 x 6)))) (log.f64 -1/2)))
(+.f64 (neg.f64 (log.f64 x)) (+.f64 (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -64/3 (pow.f64 x 6))) (+.f64 (log.f64 -1/2) (*.f64 -4 (pow.f64 x 2)))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4))))
(-.f64 (-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))))
(+.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 0)
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(+.f64 0 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(-.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 0)
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(*.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) 1))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(*.f64 (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))) (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))))))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x))))))
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))
(pow.f64 (log.f64 (-.f64 (+.f64 x x) (*.f64 1/2 (/.f64 1 x)))) 1)
(log.f64 (-.f64 (+.f64 x x) (*.f64 (/.f64 1 x) 1/2)))

eval157.0ms (3.4%)

Compiler

Compiled 6366 to 4936 computations (22.5% saved)

prune37.0ms (0.8%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New2892291
Fresh101
Picked101
Done055
Total2917298
Error
0b
Counts
298 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
1.3b
(+.f64 (log.f64 2) (log.f64 x))
63.0b
(log.f64 (/.f64 1/2 x))
1.0b
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
0.8b
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
1.0b
(log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
26.3b
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
1.4b
(log.f64 (+.f64 x x))
Compiler

Compiled 65 to 50 computations (23.1% saved)

localize14.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
Compiler

Compiled 25 to 18 computations (28% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
0.0ms
x
@-inf
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
0.0ms
x
@inf
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))

rewrite86.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
1694×rational.json-1
1694×rational.json-5
1694×rational.json-2
1694×rational.json-3
1692×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
18123
224923
389323
4333123
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))) (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))) (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)))))

simplify174.0ms (3.8%)

Algorithm
egg-herbie
Rules
1448×rational.json-simplify-47
1198×rational.json-simplify-49
1014×rational.json-simplify-2
928×rational.json-simplify-1
870×rational.json-simplify-50
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0871018
1141994
2337994
31493994
45661994
Stop Event
node limit
Counts
26 → 55
Calls
Call 1
Inputs
(+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (log.f64 x))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -1 (log.f64 x)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (*.f64 -1 (log.f64 x))))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(+.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 0)
(+.f64 0 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))
(-.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 0)
(*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)
(*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(*.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))
(*.f64 (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))
(*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(*.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(*.f64 (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))) (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))
(*.f64 (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))) (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))
(/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)
(/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(pow.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)
Outputs
(+.f64 (log.f64 -1/2) (*.f64 -1 (log.f64 x)))
(+.f64 (log.f64 -1/2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -1 (log.f64 x))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -1 (log.f64 x)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (log.f64 -1/2) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (*.f64 -8 (pow.f64 x 4))))
(+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (neg.f64 (log.f64 x)) (+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (*.f64 -1 (log.f64 x))))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (*.f64 -1 (log.f64 x)) (*.f64 -64/3 (pow.f64 x 6))))))
(+.f64 (log.f64 -1/2) (+.f64 (*.f64 -64/3 (pow.f64 x 6)) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -4 (pow.f64 x 2))) (*.f64 -8 (pow.f64 x 4)))))
(+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (+.f64 (neg.f64 (log.f64 x)) (*.f64 -64/3 (pow.f64 x 6))) (log.f64 -1/2))))
(+.f64 (log.f64 -1/2) (+.f64 (neg.f64 (log.f64 x)) (+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (*.f64 -64/3 (pow.f64 x 6))))))
(+.f64 (*.f64 -4 (pow.f64 x 2)) (+.f64 (*.f64 -8 (pow.f64 x 4)) (+.f64 (neg.f64 (log.f64 x)) (+.f64 (log.f64 -1/2) (*.f64 -64/3 (pow.f64 x 6))))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 x))) (log.f64 2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (-.f64 (+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))))
(-.f64 (-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4)))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/4 (/.f64 1 (pow.f64 x 2))))))
(-.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/192 (/.f64 1 (pow.f64 x 6))) (*.f64 1/32 (/.f64 1 (pow.f64 x 4))))))
(-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (+.f64 (*.f64 1/4 (/.f64 1 (pow.f64 x 2))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6))))))
(-.f64 (-.f64 (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -2)) (*.f64 1/4 (/.f64 1 (pow.f64 x 2)))) (+.f64 (*.f64 1/32 (/.f64 1 (pow.f64 x 4))) (*.f64 1/192 (/.f64 1 (pow.f64 x 6)))))
(+.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 0)
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(+.f64 0 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(-.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 0)
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))) (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(*.f64 (/.f64 (/.f64 1 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))) (*.f64 (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))) (*.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (/.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))))
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))
(pow.f64 (log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x))) 1)
(log.f64 (-.f64 (+.f64 x x) (/.f64 1/2 x)))

localize11.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(+.f64 (log.f64 2) (log.f64 x))
Compiler

Compiled 12 to 8 computations (33.3% saved)

series49.0ms (1.1%)

Counts
1 → 8
Calls

3 calls:

TimeVariablePointExpression
25.0ms
x
@0
(+.f64 (log.f64 2) (log.f64 x))
13.0ms
x
@-inf
(+.f64 (log.f64 2) (log.f64 x))
11.0ms
x
@inf
(+.f64 (log.f64 2) (log.f64 x))

rewrite87.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
1476×rational.json-1
1476×rational.json-5
1476×rational.json-2
1476×rational.json-3
1474×exponential.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
16615
220915
374815
4288815
Stop Event
node limit
Counts
1 → 23
Calls
Call 1
Inputs
(+.f64 (log.f64 2) (log.f64 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 2) (neg.f64 (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 x) (neg.f64 (log.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (log.f64 2) (log.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (neg.f64 (log.f64 x)) (log.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (log.f64 2))) (-.f64 1 (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (log.f64 2) (-.f64 -1 (log.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 (-.f64 -1 (log.f64 2)) (log.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 -1 (log.f64 x))) (-.f64 1 (log.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (log.f64 x) (-.f64 -1 (log.f64 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (log.f64 2) (log.f64 x)) (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (log.f64 2) (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (+.f64 (log.f64 2) (log.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (/.f64 (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (+.f64 (log.f64 2) (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))) (/.f64 (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (log.f64 2) (log.f64 x)) (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (neg.f64 (log.f64 x)) (log.f64 2)))))))

simplify183.0ms (4%)

Algorithm
egg-herbie
Rules
1566×rational.json-simplify-50
1224×rational.json-simplify-54
1216×rational.json-simplify-43
1170×rational.json-simplify-58
680×exponential.json-simplify-26
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
065693
1147585
2401585
32351585
46356585
Stop Event
node limit
Counts
31 → 28
Calls
Call 1
Inputs
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(-.f64 (log.f64 x) (neg.f64 (log.f64 2)))
(-.f64 (+.f64 (log.f64 2) (log.f64 x)) 0)
(-.f64 0 (-.f64 (neg.f64 (log.f64 x)) (log.f64 2)))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 2))) (-.f64 1 (log.f64 x)))
(-.f64 (-.f64 (log.f64 2) (-.f64 -1 (log.f64 x))) 1)
(-.f64 (-.f64 0 (-.f64 (-.f64 -1 (log.f64 2)) (log.f64 x))) 1)
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 x))) (-.f64 1 (log.f64 2)))
(-.f64 (-.f64 (log.f64 x) (-.f64 -1 (log.f64 2))) 1)
(*.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)
(*.f64 (+.f64 (log.f64 2) (log.f64 x)) (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))
(*.f64 1 (+.f64 (log.f64 2) (log.f64 x)))
(*.f64 (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (+.f64 (log.f64 2) (log.f64 x)))
(*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))))
(*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (/.f64 (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (+.f64 (log.f64 2) (log.f64 x))))
(*.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))
(*.f64 (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))))
(*.f64 (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))))
(*.f64 (*.f64 (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))) (/.f64 (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))))
(/.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)
(/.f64 (+.f64 (log.f64 2) (log.f64 x)) (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))
(pow.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)
(neg.f64 (-.f64 (neg.f64 (log.f64 x)) (log.f64 2)))
Outputs
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (*.f64 -1 (log.f64 (/.f64 1 x))))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(+.f64 (log.f64 2) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -1)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(+.f64 (log.f64 2) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -1)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(+.f64 (log.f64 2) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -1)))
(+.f64 (*.f64 -1 (log.f64 (/.f64 -1 x))) (+.f64 (log.f64 2) (log.f64 -1)))
(+.f64 (log.f64 2) (+.f64 (neg.f64 (log.f64 (/.f64 -1 x))) (log.f64 -1)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 (log.f64 x) (neg.f64 (log.f64 2)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 (+.f64 (log.f64 2) (log.f64 x)) 0)
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 0 (-.f64 (neg.f64 (log.f64 x)) (log.f64 2)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 2))) (-.f64 1 (log.f64 x)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 (-.f64 (log.f64 2) (-.f64 -1 (log.f64 x))) 1)
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 (-.f64 0 (-.f64 (-.f64 -1 (log.f64 2)) (log.f64 x))) 1)
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 (-.f64 0 (-.f64 -1 (log.f64 x))) (-.f64 1 (log.f64 2)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(-.f64 (-.f64 (log.f64 x) (-.f64 -1 (log.f64 2))) 1)
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (+.f64 (log.f64 2) (log.f64 x)) (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 1 (+.f64 (log.f64 2) (log.f64 x)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (+.f64 (log.f64 2) (log.f64 x)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (/.f64 (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (+.f64 (log.f64 2) (log.f64 x))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(*.f64 (*.f64 (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))) (/.f64 (/.f64 (/.f64 1 (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x)))) (*.f64 (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))) (*.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(/.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(/.f64 (+.f64 (log.f64 2) (log.f64 x)) (/.f64 (+.f64 (log.f64 2) (log.f64 x)) (+.f64 (log.f64 2) (log.f64 x))))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(pow.f64 (+.f64 (log.f64 2) (log.f64 x)) 1)
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))
(neg.f64 (-.f64 (neg.f64 (log.f64 x)) (log.f64 2)))
(-.f64 (log.f64 2) (neg.f64 (log.f64 x)))
(+.f64 (log.f64 2) (log.f64 x))

eval33.0ms (0.7%)

Compiler

Compiled 1640 to 1220 computations (25.6% saved)

prune13.0ms (0.3%)

Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New83083
Fresh000
Picked011
Done066
Total83790
Error
0b
Counts
90 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
1.3b
(+.f64 (log.f64 2) (log.f64 x))
63.0b
(log.f64 (/.f64 1/2 x))
1.0b
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
0.8b
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
1.0b
(log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
26.3b
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
1.4b
(log.f64 (+.f64 x x))
Compiler

Compiled 65 to 50 computations (23.1% saved)

regimes21.0ms (0.5%)

Counts
9 → 1
Calls
Call 1
Inputs
(log.f64 (+.f64 x x))
(log.f64 (/.f64 1/2 x))
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
(log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
Outputs
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
Calls

3 calls:

7.0ms
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
6.0ms
x
6.0ms
(+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1)))
Results
ErrorSegmentsBranch
0.8b1x
0.8b1(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
0.8b1(+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1)))
Compiler

Compiled 98 to 73 computations (25.5% saved)

regimes20.0ms (0.4%)

Counts
8 → 1
Calls
Call 1
Inputs
(log.f64 (+.f64 x x))
(log.f64 (/.f64 1/2 x))
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
(log.f64 (+.f64 x (-.f64 x (*.f64 1/2 (/.f64 1 x)))))
(log.f64 (-.f64 (*.f64 x 2) (*.f64 1/2 (/.f64 1 x))))
(+.f64 (log.f64 2) (log.f64 x))
(+.f64 (log.f64 2) (neg.f64 (log.f64 (/.f64 1 x))))
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
Outputs
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
Calls

3 calls:

8.0ms
x
5.0ms
(+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1)))
5.0ms
(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
Results
ErrorSegmentsBranch
1.0b1x
1.0b1(log.f64 (+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1))))
1.0b1(+.f64 x (sqrt.f64 (-.f64 (*.f64 x x) 1)))
Compiler

Compiled 80 to 58 computations (27.5% saved)

regimes4.0ms (0.1%)

Accuracy

Total -61.6b remaining (-4332%)

Threshold costs -61.6b (-4332%)

Counts
2 → 1
Calls
Call 1
Inputs
(log.f64 (+.f64 x x))
(log.f64 (/.f64 1/2 x))
Outputs
(log.f64 (+.f64 x x))
Calls

1 calls:

3.0ms
x
Results
ErrorSegmentsBranch
1.4b1x
Compiler

Compiled 11 to 7 computations (36.4% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02387
Stop Event
done
saturated
Calls
Call 1
Inputs
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
(log.f64 (+.f64 x x))
Outputs
(log.f64 (-.f64 (*.f64 x 2) (+.f64 (*.f64 1/2 (/.f64 1 x)) (*.f64 1/8 (/.f64 1 (pow.f64 x 3))))))
(log.f64 (-.f64 (*.f64 x 2) (/.f64 1/2 x)))
(log.f64 (+.f64 x x))
Compiler

Compiled 33 to 26 computations (21.2% saved)

soundness199.0ms (4.3%)

Algorithm
egg-herbie
Rules
1404×rational.json-simplify-54
1076×rational.json-simplify-50
722×exponential.json-simplify-29
614×rational.json-simplify-1
598×rational.json-simplify-41
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01942725
13652709
29082709
328512709
473372709
Stop Event
node limit
Compiler

Compiled 37 to 31 computations (16.2% saved)

end99.0ms (2.1%)

Compiler

Compiled 31 to 24 computations (22.6% saved)

Profiling

Loading profile data...