Jmat.Real.lambertw, estimator

Time bar (total: 2.9s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze1.0ms (0%)

Memory
3.2MiB live, 3.2MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%50%0%0%50%0%2
50%25%25%0%0%50%0%3
66.7%25%12.5%0%0%62.5%0%4
80%25%6.2%0%0%68.7%0%5
88.9%25%3.1%0%0%71.8%0%6
94.1%25%1.6%0%0%73.4%0%7
97%25%0.8%0%0%74.2%0%8
98.5%25%0.4%0%0%74.6%0%9
99.2%25%0.2%0%0%74.8%0%10
99.6%25%0.1%0%0%74.9%0%11
99.8%25%0%0%0%74.9%0%12
Compiler

Compiled 8 to 6 computations (25% saved)

sample616.0ms (21%)

Memory
25.9MiB live, 1 288.2MiB allocated
Samples
404.0ms8 256×0valid
1.0ms14×0invalid
Precisions
Click to see histograms. Total time spent on operations: 266.0ms
ival-log: 213.0ms (80.1% of total)
ival-sub: 44.0ms (16.5% of total)
ival-true: 6.0ms (2.3% of total)
ival-assert: 3.0ms (1.1% of total)
Bogosity

explain70.0ms (2.4%)

Memory
3.6MiB live, 164.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(log.f64 (log.f64 x))
00-0-(log.f64 x)
00-0-(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
31.0ms512×0valid
Compiler

Compiled 34 to 16 computations (52.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 21.0ms
ival-log: 15.0ms (71% of total)
ival-sub: 6.0ms (28.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess20.0ms (0.7%)

Memory
12.1MiB live, 50.9MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0617
11417
23316
36116
410616
515216
616916
717716
046
076
196
2146
3206
4286
5436
6766
71016
81436
91586
101666
01666
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Outputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Compiler

Compiled 6 to 4 computations (33.3% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune4.0ms (0.1%)

Memory
-35.8MiB live, 3.3MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Compiler

Compiled 6 to 4 computations (33.3% saved)

simplify6.0ms (0.2%)

Memory
15.5MiB live, 15.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(log.f64 (log.f64 x))
cost-diff0
(log.f64 x)
cost-diff0
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0412
0712
1912
21412
32012
42812
54312
67612
710112
814312
915812
1016612
016612
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(log.f64 x)
x
(log.f64 (log.f64 x))
Outputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(log.f64 x)
x
(log.f64 (log.f64 x))

localize21.0ms (0.7%)

Memory
3.1MiB live, 45.7MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(log.f64 x)
accuracy0.0546875
(log.f64 (log.f64 x))
accuracy0.28515625
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Samples
17.0ms256×0valid
Compiler

Compiled 14 to 6 computations (57.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-log: 6.0ms (54.4% of total)
ival-sub: 5.0ms (45.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series134.0ms (4.6%)

Memory
-15.7MiB live, 327.0MiB allocated
Counts
3 → 36
Calls
Call 1
Inputs
#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())
#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())
#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())
Outputs
#s(alt (- (log x) (log (log x))) (taylor 0 x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (log x) (log (log x))) (taylor 0 x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (log x) (log (log x))) (taylor 0 x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (log x) (log (log x))) (taylor 0 x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log (log x)) (taylor 0 x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (log x)) (taylor 0 x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (log x)) (taylor 0 x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (log x)) (taylor 0 x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (-.f64 (log.f64 x) (log.f64 (log.f64 x))) (patch (-.f64 (log.f64 x) (log.f64 (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (log.f64 (log.f64 x)) (patch (log.f64 (log.f64 x)) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
56.0ms
x
@-inf
((- (log x) (log (log x))) (log x) (log (log x)))
51.0ms
x
@0
((- (log x) (log (log x))) (log x) (log (log x)))
26.0ms
x
@inf
((- (log x) (log (log x))) (log x) (log (log x)))

simplify16.0ms (0.5%)

Memory
-17.4MiB live, 21.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
018228
134212
260212
3125212
4243212
5342212
6442212
7486212
8493212
0493212
Stop Event
iter limit
saturated
Counts
36 → 36
Calls
Call 1
Inputs
(- (log x) (log (log x)))
(- (log x) (log (log x)))
(- (log x) (log (log x)))
(- (log x) (log (log x)))
(log x)
(log x)
(log x)
(log x)
(log (log x))
(log (log x))
(log (log x))
(log (log x))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(log (* -1 (log (/ 1 x))))
(log (* -1 (log (/ 1 x))))
(log (* -1 (log (/ 1 x))))
(log (* -1 (log (/ 1 x))))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
Outputs
(- (log x) (log (log x)))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(- (log x) (log (log x)))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(- (log x) (log (log x)))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(- (log x) (log (log x)))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log (log x))
(log.f64 (log.f64 x))
(log (log x))
(log.f64 (log.f64 x))
(log (log x))
(log.f64 (log.f64 x))
(log (log x))
(log.f64 (log.f64 x))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(- (* -1 (log (/ 1 x))) (log (* -1 (log (/ 1 x)))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(log (* -1 (log (/ 1 x))))
(log.f64 (log.f64 x))
(log (* -1 (log (/ 1 x))))
(log.f64 (log.f64 x))
(log (* -1 (log (/ 1 x))))
(log.f64 (log.f64 x))
(log (* -1 (log (/ 1 x))))
(log.f64 (log.f64 x))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(-.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))) (log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(-.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))) (log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(-.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))) (log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))))
(- (+ (log -1) (* -1 (log (/ -1 x)))) (log (+ (log -1) (* -1 (log (/ -1 x))))))
(-.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))) (log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))))
(+ (log -1) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))
(+ (log -1) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))
(+ (log -1) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))
(+ (log -1) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x)))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
(log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
(log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
(log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))))
(log (+ (log -1) (* -1 (log (/ -1 x)))))
(log.f64 (-.f64 (log.f64 #s(literal -1 binary64)) (log.f64 (/.f64 #s(literal -1 binary64) x))))

rewrite209.0ms (7.1%)

Memory
4.1MiB live, 197.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0411
0710
12410
215010
3139910
0971510
Stop Event
iter limit
node limit
iter limit
Counts
3 → 249
Calls
Call 1
Inputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(log.f64 x)
(log.f64 (log.f64 x))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval39.0ms (1.3%)

Memory
18.8MiB live, 103.2MiB allocated
Compiler

Compiled 9 051 to 704 computations (92.2% saved)

prune8.0ms (0.3%)

Memory
-14.0MiB live, 24.5MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New3212323
Fresh000
Picked011
Done000
Total3213324
Accuracy
100.0%
Counts
324 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
100.0%
(neg.f64 (log.f64 (/.f64 (log.f64 x) x)))
24.7%
(log.f64 (*.f64 (log.f64 x) x))
Compiler

Compiled 17 to 13 computations (23.5% saved)

simplify4.0ms (0.1%)

Memory
6.3MiB live, 6.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(log.f64 x)
cost-diff0
(/.f64 (log.f64 x) x)
cost-diff0
(log.f64 (/.f64 (log.f64 x) x))
cost-diff0
(neg.f64 (log.f64 (/.f64 (log.f64 x) x)))
cost-diff0
(log.f64 x)
cost-diff0
(*.f64 (log.f64 x) x)
cost-diff0
(log.f64 (*.f64 (log.f64 x) x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0730
01330
11830
22030
32230
42430
52830
63330
03330
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(log.f64 (*.f64 (log.f64 x) x))
(*.f64 (log.f64 x) x)
(log.f64 x)
x
(neg.f64 (log.f64 (/.f64 (log.f64 x) x)))
(log.f64 (/.f64 (log.f64 x) x))
(/.f64 (log.f64 x) x)
(log.f64 x)
x
Outputs
(log.f64 (*.f64 (log.f64 x) x))
(*.f64 (log.f64 x) x)
(log.f64 x)
x
(neg.f64 (log.f64 (/.f64 (log.f64 x) x)))
(log.f64 (/.f64 (log.f64 x) x))
(/.f64 (log.f64 x) x)
(log.f64 x)
x

localize77.0ms (2.6%)

Memory
9.9MiB live, 49.6MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0
(neg.f64 (log.f64 (/.f64 (log.f64 x) x)))
accuracy0
(log.f64 x)
accuracy0.00390625
(log.f64 (/.f64 (log.f64 x) x))
accuracy0.296875
(/.f64 (log.f64 x) x)
accuracy0
(log.f64 x)
accuracy0.2734375
(*.f64 (log.f64 x) x)
accuracy0.9724485426137827
(log.f64 (*.f64 (log.f64 x) x))
Samples
71.0ms256×0valid
Compiler

Compiled 32 to 9 computations (71.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 64.0ms
ival-div: 51.0ms (79.7% of total)
ival-log: 9.0ms (14.1% of total)
ival-mult: 2.0ms (3.1% of total)
ival-neg: 1.0ms (1.6% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series124.0ms (4.2%)

Memory
-31.2MiB live, 247.9MiB allocated
Counts
6 → 72
Calls
Call 1
Inputs
#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())
#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())
#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())
#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())
#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())
#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())
Outputs
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (log x)) (* -1 (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (log x)) (* -1 (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (log x)) (* -1 (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (log x)) (* -1 (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (log x)) (* -1 (log x))) (taylor 0 x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (log x)) (* -1 (log x))) (taylor 0 x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (log x)) (* -1 (log x))) (taylor 0 x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (log x)) (* -1 (log x))) (taylor 0 x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (/ (log x) x) (taylor 0 x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (/ (log x) x) (taylor 0 x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (/ (log x) x) (taylor 0 x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (/ (log x) x) (taylor 0 x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (log (/ 1 x)) x)) (taylor inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (log (/ 1 x)) x)) (taylor inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (log (/ 1 x)) x)) (taylor inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ (log (/ 1 x)) x)) (taylor inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (/.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))) (taylor -inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))) (taylor -inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))) (taylor -inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))) (taylor -inf x) (#s(alt (log.f64 (/.f64 (log.f64 x) x)) (patch (log.f64 (/.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (log -1) (* -1 (log (/ -1 x)))) x) (taylor -inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (/ (+ (log -1) (* -1 (log (/ -1 x)))) x) (taylor -inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (/ (+ (log -1) (* -1 (log (/ -1 x)))) x) (taylor -inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (/ (+ (log -1) (* -1 (log (/ -1 x)))) x) (taylor -inf x) (#s(alt (/.f64 (log.f64 x) x) (patch (/.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
57.0ms
x
@-inf
((log (* (log x) x)) (* (log x) x) (log x) (neg (log (/ (log x) x))) (log (/ (log x) x)) (/ (log x) x))
38.0ms
x
@0
((log (* (log x) x)) (* (log x) x) (log x) (neg (log (/ (log x) x))) (log (/ (log x) x)) (/ (log x) x))
27.0ms
x
@inf
((log (* (log x) x)) (* (log x) x) (log x) (neg (log (/ (log x) x))) (log (/ (log x) x)) (/ (log x) x))

simplify49.0ms (1.7%)

Memory
20.9MiB live, 60.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
034548
196504
2172484
3311484
4602484
5937484
61428456
71600456
81611456
01611456
Stop Event
iter limit
saturated
Counts
72 → 72
Calls
Call 1
Inputs
(+ (log x) (log (log x)))
(+ (log x) (log (log x)))
(+ (log x) (log (log x)))
(+ (log x) (log (log x)))
(* x (log x))
(* x (log x))
(* x (log x))
(* x (log x))
(log x)
(log x)
(log x)
(log x)
(* -1 (+ (log (log x)) (* -1 (log x))))
(* -1 (+ (log (log x)) (* -1 (log x))))
(* -1 (+ (log (log x)) (* -1 (log x))))
(* -1 (+ (log (log x)) (* -1 (log x))))
(+ (log (log x)) (* -1 (log x)))
(+ (log (log x)) (* -1 (log x)))
(+ (log (log x)) (* -1 (log x)))
(+ (log (log x)) (* -1 (log x)))
(/ (log x) x)
(/ (log x) x)
(/ (log x) x)
(/ (log x) x)
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(* -1 (/ (log (/ 1 x)) x))
(* -1 (/ (log (/ 1 x)) x))
(* -1 (/ (log (/ 1 x)) x))
(* -1 (/ (log (/ 1 x)) x))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
Outputs
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(* x (log x))
(*.f64 (log.f64 x) x)
(* x (log x))
(*.f64 (log.f64 x) x)
(* x (log x))
(*.f64 (log.f64 x) x)
(* x (log x))
(*.f64 (log.f64 x) x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(* -1 (+ (log (log x)) (* -1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (+ (log (log x)) (* -1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (+ (log (log x)) (* -1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (+ (log (log x)) (* -1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log (log x)) (* -1 (log x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (log x)) (* -1 (log x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (log x)) (* -1 (log x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (log x)) (* -1 (log x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(/ (log x) x)
(/.f64 (log.f64 x) x)
(/ (log x) x)
(/.f64 (log.f64 x) x)
(/ (log x) x)
(/.f64 (log.f64 x) x)
(/ (log x) x)
(/.f64 (log.f64 x) x)
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (log (/ 1 x)))
(-.f64 (log.f64 (log.f64 x)) (log.f64 x))
(* -1 (/ (log (/ 1 x)) x))
(/.f64 (log.f64 x) x)
(* -1 (/ (log (/ 1 x)) x))
(/.f64 (log.f64 x) x)
(* -1 (/ (log (/ 1 x)) x))
(/.f64 (log.f64 x) x)
(* -1 (/ (log (/ 1 x)) x))
(/.f64 (log.f64 x) x)
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(-.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(-.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(-.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (log (/ -1 x)))
(-.f64 (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))) (log.f64 (neg.f64 x)))
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
(/.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
(/.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
(/.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(/ (+ (log -1) (* -1 (log (/ -1 x)))) x)
(/.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)

rewrite176.0ms (6%)

Memory
-9.8MiB live, 265.0MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0726
01326
13125
211825
377825
4787325
0889925
Stop Event
iter limit
node limit
iter limit
Counts
6 → 945
Calls
Call 1
Inputs
(log.f64 (*.f64 (log.f64 x) x))
(*.f64 (log.f64 x) x)
(log.f64 x)
(neg.f64 (log.f64 (/.f64 (log.f64 x) x)))
(log.f64 (/.f64 (log.f64 x) x))
(/.f64 (log.f64 x) x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval170.0ms (5.8%)

Memory
17.9MiB live, 295.4MiB allocated
Compiler

Compiled 22 977 to 2 346 computations (89.8% saved)

prune35.0ms (1.2%)

Memory
-10.9MiB live, 67.2MiB allocated
Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1 06511 066
Fresh000
Picked112
Done101
Total1 06721 069
Accuracy
100.0%
Counts
1 069 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (/.f64 x (log.f64 x)))
24.7%
(log.f64 (*.f64 (log.f64 x) x))
Compiler

Compiled 10 to 8 computations (20% saved)

simplify3.0ms (0.1%)

Memory
5.4MiB live, 5.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(log.f64 x)
cost-diff0
(/.f64 x (log.f64 x))
cost-diff0
(log.f64 (/.f64 x (log.f64 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0412
0712
0712
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(log.f64 (/.f64 x (log.f64 x)))
(/.f64 x (log.f64 x))
x
(log.f64 x)
Outputs
(log.f64 (/.f64 x (log.f64 x)))
(/.f64 x (log.f64 x))
x
(log.f64 x)

localize20.0ms (0.7%)

Memory
2.5MiB live, 40.5MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(log.f64 (/.f64 x (log.f64 x)))
accuracy0
(log.f64 x)
accuracy0.29296875
(/.f64 x (log.f64 x))
Samples
16.0ms256×0valid
Compiler

Compiled 14 to 6 computations (57.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-log: 6.0ms (68.2% of total)
ival-div: 2.0ms (22.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series165.0ms (5.6%)

Memory
17.9MiB live, 299.3MiB allocated
Counts
3 → 36
Calls
Call 1
Inputs
#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())
#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())
#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())
Outputs
#s(alt (+ (log x) (log (/ 1 (log x)))) (taylor 0 x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (/ 1 (log x)))) (taylor 0 x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (/ 1 (log x)))) (taylor 0 x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (/ 1 (log x)))) (taylor 0 x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (/ x (log x)) (taylor 0 x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ x (log x)) (taylor 0 x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ x (log x)) (taylor 0 x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ x (log x)) (taylor 0 x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ x (log (/ 1 x)))) (taylor inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ x (log (/ 1 x)))) (taylor inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ x (log (/ 1 x)))) (taylor inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (/ x (log (/ 1 x)))) (taylor inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (/.f64 x (log.f64 x))) (patch (log.f64 (/.f64 x (log.f64 x))) #<representation binary64>) () ())) ())
#s(alt (/ x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (/ x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (/.f64 x (log.f64 x)) (patch (/.f64 x (log.f64 x)) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
107.0ms
x
@-inf
((log (/ x (log x))) (/ x (log x)) (log x))
32.0ms
x
@inf
((log (/ x (log x))) (/ x (log x)) (log x))
26.0ms
x
@0
((log (/ x (log x))) (/ x (log x)) (log x))

simplify26.0ms (0.9%)

Memory
-17.2MiB live, 19.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
025244
142220
265220
3151220
4322220
5503220
6674204
7846200
8885200
9896200
10897200
0897200
Stop Event
iter limit
saturated
Counts
36 → 36
Calls
Call 1
Inputs
(+ (log x) (log (/ 1 (log x))))
(+ (log x) (log (/ 1 (log x))))
(+ (log x) (log (/ 1 (log x))))
(+ (log x) (log (/ 1 (log x))))
(/ x (log x))
(/ x (log x))
(/ x (log x))
(/ x (log x))
(log x)
(log x)
(log x)
(log x)
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(* -1 (/ x (log (/ 1 x))))
(* -1 (/ x (log (/ 1 x))))
(* -1 (/ x (log (/ 1 x))))
(* -1 (/ x (log (/ 1 x))))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
Outputs
(+ (log x) (log (/ 1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log x) (log (/ 1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log x) (log (/ 1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log x) (log (/ 1 (log x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(/ x (log x))
(/.f64 x (log.f64 x))
(/ x (log x))
(/.f64 x (log.f64 x))
(/ x (log x))
(/.f64 x (log.f64 x))
(/ x (log x))
(/.f64 x (log.f64 x))
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(+ (log (/ -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(* -1 (/ x (log (/ 1 x))))
(/.f64 x (log.f64 x))
(* -1 (/ x (log (/ 1 x))))
(/.f64 x (log.f64 x))
(* -1 (/ x (log (/ 1 x))))
(/.f64 x (log.f64 x))
(* -1 (/ x (log (/ 1 x))))
(/.f64 x (log.f64 x))
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(+ (log (/ -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(-.f64 (log.f64 (neg.f64 x)) (log.f64 (-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 #s(literal -1 binary64)))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(/.f64 x (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(/.f64 x (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(/.f64 x (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))
(/ x (+ (log -1) (* -1 (log (/ -1 x)))))
(/.f64 x (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))

rewrite149.0ms (5.1%)

Memory
12.2MiB live, 217.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0411
0711
11711
27711
340711
4320011
01074711
Stop Event
iter limit
node limit
iter limit
Counts
3 → 668
Calls
Call 1
Inputs
(log.f64 (/.f64 x (log.f64 x)))
(/.f64 x (log.f64 x))
(log.f64 x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval87.0ms (3%)

Memory
-3.5MiB live, 187.7MiB allocated
Compiler

Compiled 15 615 to 1 684 computations (89.2% saved)

prune14.0ms (0.5%)

Memory
4.5MiB live, 43.0MiB allocated
Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New7031704
Fresh000
Picked011
Done011
Total7033706
Accuracy
100.0%
Counts
706 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
1.6%
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
100.0%
(log.f64 (/.f64 x (log.f64 x)))
24.7%
(log.f64 (*.f64 (log.f64 x) x))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify4.0ms (0.1%)

Memory
4.9MiB live, 4.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(log.f64 x)
cost-diff0
(*.f64 (log.f64 x) x)
cost-diff0
(log.f64 (*.f64 (log.f64 x) x))
cost-diff0
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0518
0918
11418
21618
31818
42018
52418
62918
02918
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
(log.f64 (*.f64 (log.f64 x) x))
(*.f64 (log.f64 x) x)
(log.f64 x)
x
Outputs
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
(log.f64 (*.f64 (log.f64 x) x))
(*.f64 (log.f64 x) x)
(log.f64 x)
x

localize21.0ms (0.7%)

Memory
-1.3MiB live, 37.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
accuracy0
(log.f64 x)
accuracy0.2734375
(*.f64 (log.f64 x) x)
accuracy0.9724485426137827
(log.f64 (*.f64 (log.f64 x) x))
Samples
15.0ms256×0valid
Compiler

Compiled 20 to 7 computations (65% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-log: 6.0ms (62% of total)
ival-mult: 2.0ms (20.7% of total)
ival-neg: 1.0ms (10.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series61.0ms (2.1%)

Memory
0.5MiB live, 84.1MiB allocated
Counts
4 → 48
Calls
Call 1
Inputs
#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())
#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())
#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())
#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())
Outputs
#s(alt (* -1 (+ (log x) (log (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log x) (log (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log x) (log (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log x) (log (log x)))) (taylor 0 x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log x) (log (log x))) (taylor 0 x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (log x)) (taylor 0 x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (log x) (taylor 0 x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))) (taylor inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))) (taylor inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (log (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (log (/ 1 x))) (taylor inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) (patch (neg.f64 (log.f64 (*.f64 (log.f64 x) x))) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 (*.f64 (log.f64 x) x)) (patch (log.f64 (*.f64 (log.f64 x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ (log -1) (* -1 (log (/ -1 x))))) (taylor -inf x) (#s(alt (*.f64 (log.f64 x) x) (patch (*.f64 (log.f64 x) x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ (log -1) (* -1 (log (/ -1 x)))) (taylor -inf x) (#s(alt (log.f64 x) (patch (log.f64 x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
28.0ms
x
@inf
((neg (log (* (log x) x))) (log (* (log x) x)) (* (log x) x) (log x))
17.0ms
x
@0
((neg (log (* (log x) x))) (log (* (log x) x)) (* (log x) x) (log x))
14.0ms
x
@-inf
((neg (log (* (log x) x))) (log (* (log x) x)) (* (log x) x) (log x))

simplify33.0ms (1.1%)

Memory
-13.5MiB live, 25.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
026356
180332
2143320
3257320
4395320
5595320
6753308
7809308
8813308
9817308
0817308
Stop Event
iter limit
saturated
Counts
48 → 48
Calls
Call 1
Inputs
(* -1 (+ (log x) (log (log x))))
(* -1 (+ (log x) (log (log x))))
(* -1 (+ (log x) (log (log x))))
(* -1 (+ (log x) (log (log x))))
(+ (log x) (log (log x)))
(+ (log x) (log (log x)))
(+ (log x) (log (log x)))
(+ (log x) (log (log x)))
(* x (log x))
(* x (log x))
(* x (log x))
(* x (log x))
(log x)
(log x)
(log x)
(log x)
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (* x (log (/ 1 x))))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (log (/ 1 x)))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
(+ (log -1) (* -1 (log (/ -1 x))))
Outputs
(* -1 (+ (log x) (log (log x))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(* -1 (+ (log x) (log (log x))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(* -1 (+ (log x) (log (log x))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(* -1 (+ (log x) (log (log x))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log x) (log (log x)))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(* x (log x))
(*.f64 (log.f64 x) x)
(* x (log x))
(*.f64 (log.f64 x) x)
(* x (log x))
(*.f64 (log.f64 x) x)
(* x (log x))
(*.f64 (log.f64 x) x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(log x)
(log.f64 x)
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(* -1 (+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x)))))
(-.f64 (neg.f64 (log.f64 x)) (log.f64 (log.f64 x)))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(+ (log (* -1 (log (/ 1 x)))) (* -1 (log (/ 1 x))))
(+.f64 (log.f64 (log.f64 x)) (log.f64 x))
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (* x (log (/ 1 x))))
(*.f64 (log.f64 x) x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (log (/ 1 x)))
(log.f64 x)
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))))
(* -1 (+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x)))))
(-.f64 (log.f64 (/.f64 #s(literal -1 binary64) x)) (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))) (log.f64 (neg.f64 x)))
(+ (log (* -1 (+ (log -1) (* -1 (log (/ -1 x)))))) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))))) (log.f64 (neg.f64 x)))
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(* x (+ (log -1) (* -1 (log (/ -1 x)))))
(*.f64 (+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64))) x)
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))
(+ (log -1) (* -1 (log (/ -1 x))))
(+.f64 (log.f64 (neg.f64 x)) (log.f64 #s(literal -1 binary64)))

rewrite99.0ms (3.4%)

Memory
23.5MiB live, 141.9MiB allocated
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0517
0918
11918
27118
349818
4459916
0938916
Stop Event
iter limit
node limit
iter limit
Counts
4 → 550
Calls
Call 1
Inputs
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
(log.f64 (*.f64 (log.f64 x) x))
(*.f64 (log.f64 x) x)
(log.f64 x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval137.0ms (4.7%)

Memory
-16.2MiB live, 146.2MiB allocated
Compiler

Compiled 10 815 to 1 226 computations (88.7% saved)

prune11.0ms (0.4%)

Memory
1.9MiB live, 38.6MiB allocated
Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New5980598
Fresh000
Picked011
Done022
Total5983601
Accuracy
100.0%
Counts
601 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
1.6%
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
100.0%
(log.f64 (/.f64 x (log.f64 x)))
24.7%
(log.f64 (*.f64 (log.f64 x) x))
Compiler

Compiled 44 to 25 computations (43.2% saved)

regimes7.0ms (0.2%)

Memory
20.1MiB live, 20.1MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
(log.f64 (*.f64 (log.f64 x) x))
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
(log.f64 (/.f64 x (log.f64 x)))
(neg.f64 (log.f64 (/.f64 (log.f64 x) x)))
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Outputs
(log.f64 (/.f64 x (log.f64 x)))
Calls

3 calls:

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

Compiled 9 to 7 computations (22.2% saved)

regimes7.0ms (0.2%)

Memory
-24.0MiB live, 14.3MiB allocated
Accuracy

Total -14.8b remaining (-30.8%)

Threshold costs -14.8b (-30.8%)

Counts
2 → 1
Calls
Call 1
Inputs
(log.f64 (*.f64 (log.f64 x) x))
(neg.f64 (log.f64 (*.f64 (log.f64 x) x)))
Outputs
(log.f64 (*.f64 (log.f64 x) x))
Calls

3 calls:

2.0ms
(log.f64 x)
2.0ms
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
2.0ms
x
Results
AccuracySegmentsBranch
24.7%1x
24.7%1(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
24.7%1(log.f64 x)
Compiler

Compiled 9 to 7 computations (22.2% saved)

simplify24.0ms (0.8%)

Memory
8.3MiB live, 58.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
1710
Stop Event
saturated
Calls
Call 1
Inputs
(log.f64 (/.f64 x (log.f64 x)))
(log.f64 (*.f64 (log.f64 x) x))
Outputs
(log.f64 (/.f64 x (log.f64 x)))
(log.f64 (*.f64 (log.f64 x) x))

soundness258.0ms (8.8%)

Memory
-4.7MiB live, 261.9MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0411
0710
12410
215010
3139910
0971510
0726
01326
13125
211825
377825
4787325
0889925
Stop Event
done
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 39 to 24 computations (38.5% saved)

preprocess34.0ms (1.2%)

Memory
8.8MiB live, 94.2MiB allocated
Compiler

Compiled 32 to 20 computations (37.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...