Hyperbolic arc-(co)secant

Time bar (total: 6.0s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze3.0ms (0.1%)

Memory
4.4MiB live, 4.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
0%0%50%0%0%50%0%3
33.3%12.5%25%0%0%62.5%0%4
60%18.7%12.5%0%0%68.7%0%5
77.8%21.9%6.2%0%0%71.8%0%6
88.2%23.4%3.1%0%0%73.4%0%7
93.9%24.2%1.6%0%0%74.2%0%8
96.9%24.6%0.8%0%0%74.6%0%9
98.4%24.8%0.4%0%0%74.8%0%10
99.2%24.9%0.2%0%0%74.9%0%11
99.6%24.9%0.1%0%0%74.9%0%12
Compiler

Compiled 15 to 11 computations (26.7% saved)

sample1.0s (17.6%)

Memory
31.5MiB live, 1 253.2MiB allocated
Samples
762.0ms8 256×0valid
1.0ms19×0invalid
Precisions
Click to see histograms. Total time spent on operations: 512.0ms
ival-log: 145.0ms (28.3% of total)
ival-div: 128.0ms (25% of total)
ival-sqrt: 73.0ms (14.3% of total)
ival-mult: 55.0ms (10.7% of total)
ival-sub: 55.0ms (10.7% of total)
ival-add: 43.0ms (8.4% of total)
ival-true: 6.0ms (1.2% of total)
exact: 5.0ms (1% of total)
ival-assert: 3.0ms (0.6% of total)
Bogosity

explain193.0ms (3.2%)

Memory
-38.6MiB live, 115.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)))
00-0-#s(literal 1 binary64)
00-0-(/.f64 #s(literal 1 binary64) x)
00-0-(*.f64 x x)
00-0-(-.f64 #s(literal 1 binary64) (*.f64 x x))
00-0-(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
00-0-(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)
00-0-x
00-0-(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) 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
61.0ms512×0valid
Compiler

Compiled 173 to 40 computations (76.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 46.0ms
ival-add: 22.0ms (47.4% of total)
ival-div: 7.0ms (15.1% of total)
ival-log: 6.0ms (12.9% of total)
ival-sqrt: 4.0ms (8.6% of total)
ival-mult: 3.0ms (6.5% of total)
ival-sub: 3.0ms (6.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess402.0ms (6.8%)

Memory
-10.8MiB live, 145.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 14 (0.0ms)

IterNodesCost
01131
13427
27127
315327
426127
540927
663323
7100823
8142423
9199523
10439123
11587223
12690123
13731123
14767923
15783523
0913
01613
12413
23113
33913
45413
57413
611713
731513
859713
9116713
10209913
11383413
12482613
13518313
14551811
15577711
16585811
17606911
18698911
0804511
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
Outputs
(log.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) #s(literal -1 binary64)) x))
Compiler

Compiled 13 to 9 computations (30.8% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify343.0ms (5.8%)

Memory
7.3MiB live, 163.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)
cost-diff0
(/.f64 #s(literal 1 binary64) x)
cost-diff0
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
cost-diff704
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
Iterations

Useful iterations: 14 (0.0ms)

IterNodesCost
0952
01652
12452
23152
33952
45452
57452
611752
731552
859752
9116752
10209952
11383452
12482652
13518352
14551848
15577748
16585848
17606948
18698948
0804548
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
(/.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)
(sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)))
(-.f64 #s(literal 1 binary64) (*.f64 x x))
(*.f64 x x)
Outputs
(log.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) #s(literal -1 binary64)) x))
(/.f64 (-.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) #s(literal -1 binary64)) x)
(/.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)
(sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)))
(-.f64 #s(literal 1 binary64) (*.f64 x x))
(*.f64 x x)

localize36.0ms (0.6%)

Memory
2.9MiB live, 41.1MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x x)
accuracy0.00390625
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
accuracy0.00390625
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
accuracy0.015625
(sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)))
Samples
29.0ms256×0valid
Compiler

Compiled 106 to 20 computations (81.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 22.0ms
ival-sqrt: 11.0ms (49.9% of total)
ival-div: 4.0ms (18.1% of total)
ival-log: 3.0ms (13.6% of total)
ival-mult: 2.0ms (9.1% of total)
ival-add: 1.0ms (4.5% of total)
ival-sub: 1.0ms (4.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series9.0ms (0.1%)

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

3 calls:

TimeVariablePointExpression
2.0ms
x
@inf
((+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (/ 1 x) (/ (sqrt (- 1 (* x x))) x) (sqrt (- 1 (* x x))) (* x x))
2.0ms
x
@-inf
((+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (/ 1 x) (/ (sqrt (- 1 (* x x))) x) (sqrt (- 1 (* x x))) (* x x))
2.0ms
x
@0
((+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (/ 1 x) (/ (sqrt (- 1 (* x x))) x) (sqrt (- 1 (* x x))) (* x x))

simplify237.0ms (4%)

Memory
-7.0MiB live, 150.8MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0155803
1409778
21098758
33208745
47995745
08477716
Stop Event
iter limit
node limit
Counts
72 → 72
Calls
Call 1
Inputs
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
(+ (log 2) (* -1 (log x)))
(+ (log 2) (+ (* -1 (log x)) (* -1/4 (pow x 2))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* -3/32 (pow x 2)) 1/4))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* (pow x 2) (- (* -5/96 (pow x 2)) 3/32)) 1/4))))
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ (+ 1 (* -1/2 (pow x 2))) x)
(/ (+ 1 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2)))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(sqrt -1)
(+ (sqrt -1) (/ 1 x))
(+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x)))
(- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(log (sqrt -1))
(+ (log (sqrt -1)) (/ 1 (* x (sqrt -1))))
(- (+ (log (sqrt -1)) (/ 1 (* x (sqrt -1)))) (/ 1/6 (* (pow x 3) (pow (sqrt -1) 3))))
(- (+ (log (sqrt -1)) (+ (/ 1 (* x (sqrt -1))) (* 3/40 (/ 1 (* (pow x 5) (pow (sqrt -1) 5)))))) (* 1/6 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(sqrt -1)
(+ (sqrt -1) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))
(- (+ (sqrt -1) (/ 1/2 (* (pow x 2) (sqrt -1)))) (/ 1/8 (* (pow x 4) (pow (sqrt -1) 3))))
(- (+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (* 1/16 (/ 1 (* (pow x 6) (pow (sqrt -1) 5)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(* x (sqrt -1))
(* x (+ (sqrt -1) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1))))))
(* x (- (+ (sqrt -1) (/ 1/2 (* (pow x 2) (sqrt -1)))) (/ 1/8 (* (pow x 4) (pow (sqrt -1) 3)))))
(* x (- (+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (* 1/16 (/ 1 (* (pow x 6) (pow (sqrt -1) 5)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3))))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 (sqrt -1))
(+ (* -1 (sqrt -1)) (/ 1 x))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* 1/2 (/ 1 (* x (sqrt -1)))) 1) x)))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* -1 (/ (- (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (sqrt -1)))) x)) 1) x)))
(log (* -1 (sqrt -1)))
(- (log (* -1 (sqrt -1))) (/ 1 (* x (sqrt -1))))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (/ 1 (sqrt -1)) (* 1/6 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x)))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (+ (/ 3/40 (* (pow x 4) (pow (sqrt -1) 5))) (/ 1 (sqrt -1))) (/ 1/6 (* (pow x 2) (pow (sqrt -1) 3)))) x)))
(/ 1 x)
(/ 1 x)
(/ 1 x)
(/ 1 x)
(* -1 (sqrt -1))
(- (* -1 (sqrt -1)) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))
(- (+ (* -1 (sqrt -1)) (/ 1/8 (* (pow x 4) (pow (sqrt -1) 3)))) (/ 1/2 (* (pow x 2) (sqrt -1))))
(- (+ (* -1 (sqrt -1)) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3))))) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (* 1/16 (/ 1 (* (pow x 6) (pow (sqrt -1) 5))))))
(* -1 (* x (sqrt -1)))
(* -1 (* x (+ (sqrt -1) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))))
(* -1 (* x (- (+ (sqrt -1) (/ 1/2 (* (pow x 2) (sqrt -1)))) (/ 1/8 (* (pow x 4) (pow (sqrt -1) 3))))))
(* -1 (* x (- (+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (* 1/16 (/ 1 (* (pow x 6) (pow (sqrt -1) 5)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
Outputs
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -3/32 binary64) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (fma.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal -5/96 binary64) (*.f64 x x) #s(literal -3/32 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))))
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
#s(literal 1 binary64)
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(sqrt.f64 #s(literal -1 binary64))
(+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))
(+.f64 (+.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 #s(literal -1 binary64)))
(+.f64 (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (-.f64 (/.f64 (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) x) x) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64)))) (*.f64 x x))) (sqrt.f64 #s(literal -1 binary64)))
(log.f64 (sqrt.f64 #s(literal -1 binary64)))
(+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (+.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(sqrt.f64 #s(literal -1 binary64))
(+.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) (/.f64 (/.f64 #s(literal -1/2 binary64) x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/16 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 6 binary64)))) (/.f64 (/.f64 #s(literal -1/2 binary64) x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) x)
(fma.f64 (sqrt.f64 #s(literal -1 binary64)) x (/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x))
(fma.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) x (/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x))
(fma.f64 (-.f64 (+.f64 (/.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 6 binary64))) (sqrt.f64 #s(literal -1 binary64))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) x (/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x))
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x)) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (-.f64 (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x) #s(literal 1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))
(log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64)))) x)) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(/.f64 #s(literal 1 binary64) x)
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (-.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64))) (/.f64 (/.f64 #s(literal 1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))))
(-.f64 (/.f64 (/.f64 #s(literal -1/16 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 6 binary64))) (-.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) (/.f64 (/.f64 #s(literal -1/2 binary64) x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))))
(*.f64 (neg.f64 x) (sqrt.f64 #s(literal -1 binary64)))
(neg.f64 (fma.f64 (sqrt.f64 #s(literal -1 binary64)) x (/.f64 (/.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x)))
(fma.f64 (-.f64 (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))) (sqrt.f64 #s(literal -1 binary64))) x (/.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x))
(fma.f64 (-.f64 (/.f64 (/.f64 #s(literal -1/16 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 6 binary64))) (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))))) x (/.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x))
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)

rewrite227.0ms (3.8%)

Memory
-14.3MiB live, 223.5MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0945
01645
16945
262441
3759641
0835441
Stop Event
iter limit
node limit
iter limit
Counts
6 → 334
Calls
Call 1
Inputs
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
(/.f64 #s(literal 1 binary64) x)
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)
(sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)))
(*.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>

eval62.0ms (1%)

Memory
24.3MiB live, 104.9MiB allocated
Compiler

Compiled 10 106 to 1 419 computations (86% saved)

prune8.0ms (0.1%)

Memory
-9.7MiB live, 28.2MiB allocated
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New4024406
Fresh000
Picked101
Done000
Total4034407
Accuracy
100.0%
Counts
407 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
99.4%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
98.8%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
0.0%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
Compiler

Compiled 66 to 47 computations (28.8% saved)

simplify173.0ms (2.9%)

Memory
13.8MiB live, 135.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64)))
cost-diff0
(+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64))
cost-diff0
(/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)
cost-diff0
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
cost-diff0
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64))
cost-diff0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))
cost-diff0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
cost-diff320
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
cost-diff0
(/.f64 #s(literal 2 binary64) x)
cost-diff0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))
cost-diff0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
cost-diff0
(sqrt.f64 #s(literal -1 binary64))
cost-diff0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))
cost-diff0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
028179
044179
159179
267179
378179
491179
5111179
6171179
7376179
8652179
91256179
102343179
113474179
124592164
136135164
08197161
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))
(sqrt.f64 #s(literal -1 binary64))
#s(literal -1 binary64)
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
x
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64))
(*.f64 x x)
x
#s(literal -1/2 binary64)
#s(literal 2 binary64)
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
(/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)
(+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64))
(sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64)))
(fma.f64 (neg.f64 x) x #s(literal 1 binary64))
(neg.f64 x)
x
#s(literal 1 binary64)
Outputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))
(sqrt.f64 #s(literal -1 binary64))
#s(literal -1 binary64)
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
x
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(*.f64 x x)
x
#s(literal -1/2 binary64)
#s(literal 2 binary64)
(log.f64 (/.f64 (-.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal -1 binary64)) x))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal -1 binary64)) x)
(-.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal -1 binary64))
(sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64)))
(fma.f64 (neg.f64 x) x #s(literal 1 binary64))
(neg.f64 x)
x
#s(literal 1 binary64)

localize147.0ms (2.5%)

Memory
-28.4MiB live, 130.2MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64))
accuracy0
(sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64)))
accuracy0
(neg.f64 x)
accuracy0
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
accuracy0
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
accuracy0
(*.f64 x x)
accuracy0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
accuracy0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))
accuracy0
(/.f64 #s(literal 2 binary64) x)
accuracy0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
accuracy0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))
accuracy0
(sqrt.f64 #s(literal -1 binary64))
accuracy0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
accuracy0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))
Samples
97.0ms256×0invalid
Compiler

Compiled 335 to 55 computations (83.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 84.0ms
ival-neg: 24.0ms (28.4% of total)
ival-log: 22.0ms (26% of total)
ival-sqrt: 18.0ms (21.3% of total)
ival-div: 8.0ms (9.5% of total)
ival-add: 5.0ms (5.9% of total)
ival-mult: 5.0ms (5.9% of total)
ival-sub: 1.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series13.0ms (0.2%)

Memory
17.0MiB live, 17.0MiB allocated
Counts
16 → 180
Calls
Call 1
Inputs
#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (sqrt.f64 #s(literal -1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())
#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (neg.f64 x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
3.0ms
x
@-inf
((log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt -1) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/ 2 x) (/ (+ (* (* x x) -1/2) 2) x) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (+ (* (* x x) -1/2) 2) (log (/ (+ (sqrt (+ (* (neg x) x) 1)) 1) x)) (/ (+ (sqrt (+ (* (neg x) x) 1)) 1) x) (+ (sqrt (+ (* (neg x) x) 1)) 1) (sqrt (+ (* (neg x) x) 1)) (* x x) (neg x))
2.0ms
x
@inf
((log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt -1) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/ 2 x) (/ (+ (* (* x x) -1/2) 2) x) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (+ (* (* x x) -1/2) 2) (log (/ (+ (sqrt (+ (* (neg x) x) 1)) 1) x)) (/ (+ (sqrt (+ (* (neg x) x) 1)) 1) x) (+ (sqrt (+ (* (neg x) x) 1)) 1) (sqrt (+ (* (neg x) x) 1)) (* x x) (neg x))
1.0ms
x
@0
((log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt -1) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/ 2 x) (/ (+ (* (* x x) -1/2) 2) x) (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (+ (* (* x x) -1/2) 2) (log (/ (+ (sqrt (+ (* (neg x) x) 1)) 1) x)) (/ (+ (sqrt (+ (* (neg x) x) 1)) 1) x) (+ (sqrt (+ (* (neg x) x) 1)) 1) (sqrt (+ (* (neg x) x) 1)) (* x x) (neg x))

simplify203.0ms (3.4%)

Memory
-12.4MiB live, 268.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01782001
14931924
213551865
339781857
081601765
Stop Event
iter limit
node limit
Counts
180 → 180
Calls
Call 1
Inputs
(+ (log 2) (* -1 (log x)))
(+ (log 2) (+ (* -1 (log x)) (* -1/4 (pow x 2))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* -3/32 (pow x 2)) 1/4))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* (pow x 2) (- (* -5/96 (pow x 2)) 3/32)) 1/4))))
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
(+ (log 2) (* -1 (log x)))
(+ (log 2) (+ (* -1 (log x)) (* -1/4 (pow x 2))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* -3/32 (pow x 2)) 1/4))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* (pow x 2) (- (* -5/96 (pow x 2)) 3/32)) 1/4))))
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(+ (log 2) (* -1 (log x)))
(+ (log 2) (+ (* -1 (log x)) (* -1/4 (pow x 2))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* -3/32 (pow x 2)) 1/4))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* (pow x 2) (- (* -5/96 (pow x 2)) 3/32)) 1/4))))
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
2
(+ 2 (* -1/2 (pow x 2)))
(+ 2 (* -1/2 (pow x 2)))
(+ 2 (* -1/2 (pow x 2)))
(+ (log 2) (* -1 (log x)))
(+ (log 2) (+ (* -1 (log x)) (* -1/4 (pow x 2))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* -3/32 (pow x 2)) 1/4))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* (pow x 2) (- (* -5/96 (pow x 2)) 3/32)) 1/4))))
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
2
(+ 2 (* -1/2 (pow x 2)))
(+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2)))
(+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2)))
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2)))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(log (sqrt -1))
(+ (log (sqrt -1)) (/ 1 (* x (sqrt -1))))
(- (+ (log (sqrt -1)) (/ 1 (* x (sqrt -1)))) (/ 1/6 (* (pow x 3) (pow (sqrt -1) 3))))
(- (+ (log (sqrt -1)) (+ (/ 1 (* x (sqrt -1))) (* 3/40 (/ 1 (* (pow x 5) (pow (sqrt -1) 5)))))) (* 1/6 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))
(sqrt -1)
(+ (sqrt -1) (/ 1 x))
(+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x)))
(- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(log (sqrt -1))
(+ (log (sqrt -1)) (/ 1 (* x (sqrt -1))))
(- (+ (log (sqrt -1)) (/ 1 (* x (sqrt -1)))) (/ 1/6 (* (pow x 3) (pow (sqrt -1) 3))))
(- (+ (log (sqrt -1)) (+ (/ 1 (* x (sqrt -1))) (* 3/40 (/ 1 (* (pow x 5) (pow (sqrt -1) 5)))))) (* 1/6 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))
(sqrt -1)
(+ (sqrt -1) (/ 1 x))
(+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x)))
(- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
(* -1/2 x)
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(log (sqrt -1))
(+ (log (sqrt -1)) (/ 1 (* x (sqrt -1))))
(- (+ (log (sqrt -1)) (/ 1 (* x (sqrt -1)))) (/ 1/6 (* (pow x 3) (pow (sqrt -1) 3))))
(- (+ (log (sqrt -1)) (+ (/ 1 (* x (sqrt -1))) (* 3/40 (/ 1 (* (pow x 5) (pow (sqrt -1) 5)))))) (* 1/6 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))
(sqrt -1)
(+ (sqrt -1) (/ 1 x))
(+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x)))
(- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(* -1/2 (pow x 2))
(* (pow x 2) (- (* 2 (/ 1 (pow x 2))) 1/2))
(* (pow x 2) (- (* 2 (/ 1 (pow x 2))) 1/2))
(* (pow x 2) (- (* 2 (/ 1 (pow x 2))) 1/2))
(log (sqrt -1))
(+ (log (sqrt -1)) (/ 1 (* x (sqrt -1))))
(- (+ (log (sqrt -1)) (/ 1 (* x (sqrt -1)))) (/ 1/6 (* (pow x 3) (pow (sqrt -1) 3))))
(- (+ (log (sqrt -1)) (+ (/ 1 (* x (sqrt -1))) (* 3/40 (/ 1 (* (pow x 5) (pow (sqrt -1) 5)))))) (* 1/6 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))
(sqrt -1)
(+ (sqrt -1) (/ 1 x))
(+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x)))
(- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(* x (sqrt -1))
(* x (+ (sqrt -1) (/ 1 x)))
(* x (+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x))))
(* x (- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3))))))
(* x (sqrt -1))
(* x (+ (sqrt -1) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1))))))
(* x (- (+ (sqrt -1) (/ 1/2 (* (pow x 2) (sqrt -1)))) (/ 1/8 (* (pow x 4) (pow (sqrt -1) 3)))))
(* x (- (+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (* 1/16 (/ 1 (* (pow x 6) (pow (sqrt -1) 5)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3))))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
(log (* -1 (sqrt -1)))
(- (log (* -1 (sqrt -1))) (/ 1 (* x (sqrt -1))))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (/ 1 (sqrt -1)) (* 1/6 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x)))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (+ (/ 3/40 (* (pow x 4) (pow (sqrt -1) 5))) (/ 1 (sqrt -1))) (/ 1/6 (* (pow x 2) (pow (sqrt -1) 3)))) x)))
(* -1 (sqrt -1))
(+ (* -1 (sqrt -1)) (/ 1 x))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* 1/2 (/ 1 (* x (sqrt -1)))) 1) x)))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* -1 (/ (- (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (sqrt -1)))) x)) 1) x)))
(log (* -1 (sqrt -1)))
(- (log (* -1 (sqrt -1))) (/ 1 (* x (sqrt -1))))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (/ 1 (sqrt -1)) (* 1/6 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x)))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (+ (/ 3/40 (* (pow x 4) (pow (sqrt -1) 5))) (/ 1 (sqrt -1))) (/ 1/6 (* (pow x 2) (pow (sqrt -1) 3)))) x)))
(* -1 (sqrt -1))
(+ (* -1 (sqrt -1)) (/ 1 x))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* 1/2 (/ 1 (* x (sqrt -1)))) 1) x)))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* -1 (/ (- (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (sqrt -1)))) x)) 1) x)))
(/ 2 x)
(/ 2 x)
(/ 2 x)
(/ 2 x)
(* -1/2 x)
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(log (* -1 (sqrt -1)))
(- (log (* -1 (sqrt -1))) (/ 1 (* x (sqrt -1))))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (/ 1 (sqrt -1)) (* 1/6 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x)))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (+ (/ 3/40 (* (pow x 4) (pow (sqrt -1) 5))) (/ 1 (sqrt -1))) (/ 1/6 (* (pow x 2) (pow (sqrt -1) 3)))) x)))
(* -1 (sqrt -1))
(+ (* -1 (sqrt -1)) (/ 1 x))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* 1/2 (/ 1 (* x (sqrt -1)))) 1) x)))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* -1 (/ (- (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (sqrt -1)))) x)) 1) x)))
(* -1/2 (pow x 2))
(* (pow x 2) (- (* 2 (/ 1 (pow x 2))) 1/2))
(* (pow x 2) (- (* 2 (/ 1 (pow x 2))) 1/2))
(* (pow x 2) (- (* 2 (/ 1 (pow x 2))) 1/2))
(log (* -1 (sqrt -1)))
(- (log (* -1 (sqrt -1))) (/ 1 (* x (sqrt -1))))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (/ 1 (sqrt -1)) (* 1/6 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x)))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (+ (/ 3/40 (* (pow x 4) (pow (sqrt -1) 5))) (/ 1 (sqrt -1))) (/ 1/6 (* (pow x 2) (pow (sqrt -1) 3)))) x)))
(* -1 (sqrt -1))
(+ (* -1 (sqrt -1)) (/ 1 x))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* 1/2 (/ 1 (* x (sqrt -1)))) 1) x)))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* -1 (/ (- (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (sqrt -1)))) x)) 1) x)))
(* -1 (* x (sqrt -1)))
(* -1 (* x (- (sqrt -1) (/ 1 x))))
(* -1 (* x (+ (sqrt -1) (* -1 (/ (- 1 (* 1/2 (/ 1 (* x (sqrt -1))))) x)))))
(* -1 (* x (+ (sqrt -1) (* -1 (/ (+ 1 (* -1 (/ (- (* 1/2 (/ 1 (sqrt -1))) (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x))) x)))))
(* -1 (* x (sqrt -1)))
(* -1 (* x (+ (sqrt -1) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))))
(* -1 (* x (- (+ (sqrt -1) (/ 1/2 (* (pow x 2) (sqrt -1)))) (/ 1/8 (* (pow x 4) (pow (sqrt -1) 3))))))
(* -1 (* x (- (+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (* 1/16 (/ 1 (* (pow x 6) (pow (sqrt -1) 5)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 x)
(* -1 x)
(* -1 x)
(* -1 x)
Outputs
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 #s(literal -3/32 binary64) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (fma.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal -5/96 binary64) (*.f64 x x) #s(literal -3/32 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))))
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 #s(literal -3/32 binary64) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (fma.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal -5/96 binary64) (*.f64 x x) #s(literal -3/32 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))))
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) x)
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 #s(literal -3/32 binary64) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (fma.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal -5/96 binary64) (*.f64 x x) #s(literal -3/32 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))))
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
#s(literal 2 binary64)
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 #s(literal -3/32 binary64) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (fma.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal -5/96 binary64) (*.f64 x x) #s(literal -3/32 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))))
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
#s(literal 2 binary64)
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64))
#s(literal 1 binary64)
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(neg.f64 x)
(neg.f64 x)
(neg.f64 x)
(neg.f64 x)
(log.f64 (sqrt.f64 #s(literal -1 binary64)))
(+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (+.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(sqrt.f64 #s(literal -1 binary64))
(+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))
(+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x)))
(-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))))
(log.f64 (sqrt.f64 #s(literal -1 binary64)))
(+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (+.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(sqrt.f64 #s(literal -1 binary64))
(+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))
(+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x)))
(-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))))
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) x))
(log.f64 (sqrt.f64 #s(literal -1 binary64)))
(+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (+.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(sqrt.f64 #s(literal -1 binary64))
(+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))
(+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x)))
(-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))))
(*.f64 #s(literal -1/2 binary64) (*.f64 x x))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(log.f64 (sqrt.f64 #s(literal -1 binary64)))
(+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (+.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(sqrt.f64 #s(literal -1 binary64))
(+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))
(+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x)))
(-.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (+.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) x))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) x)
(fma.f64 (sqrt.f64 #s(literal -1 binary64)) x #s(literal 1 binary64))
(fma.f64 (sqrt.f64 #s(literal -1 binary64)) x (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) #s(literal 1 binary64)))
(fma.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) x (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) x)
(fma.f64 (sqrt.f64 #s(literal -1 binary64)) x (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(fma.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) x (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(fma.f64 (-.f64 (+.f64 (/.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 6 binary64))) (sqrt.f64 #s(literal -1 binary64))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) x (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(neg.f64 x)
(neg.f64 x)
(neg.f64 x)
(neg.f64 x)
(log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64)))) x))
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1/8 binary64) x)) #s(literal 1 binary64)) x) (sqrt.f64 #s(literal -1 binary64)))
(log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64)))) x))
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1/8 binary64) x)) #s(literal 1 binary64)) x) (sqrt.f64 #s(literal -1 binary64)))
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 #s(literal 2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 (/.f64 #s(literal 2 binary64) x) #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) x))
(log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64)))) x))
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1/8 binary64) x)) #s(literal 1 binary64)) x) (sqrt.f64 #s(literal -1 binary64)))
(*.f64 #s(literal -1/2 binary64) (*.f64 x x))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 2 binary64))
(log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal -1 binary64)))) x))
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (fma.f64 (/.f64 #s(literal -1 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) x) x)) (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1/8 binary64) x)) #s(literal 1 binary64)) x) (sqrt.f64 #s(literal -1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) x)
(fma.f64 (sqrt.f64 #s(literal -1 binary64)) (neg.f64 x) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (fma.f64 (sqrt.f64 #s(literal -1 binary64)) x (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))))
(neg.f64 (fma.f64 (sqrt.f64 #s(literal -1 binary64)) x (fma.f64 (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) x) (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1/8 binary64) x)) #s(literal -1 binary64))))
(*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) x)
(neg.f64 (fma.f64 (sqrt.f64 #s(literal -1 binary64)) x (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))))
(fma.f64 x (-.f64 (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64))) (sqrt.f64 #s(literal -1 binary64))) (/.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x))
(neg.f64 (fma.f64 (-.f64 (+.f64 (/.f64 (/.f64 #s(literal 1/16 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 6 binary64))) (sqrt.f64 #s(literal -1 binary64))) (/.f64 (/.f64 #s(literal -1/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 4 binary64)))) x (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))))
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(*.f64 x x)
(neg.f64 x)
(neg.f64 x)
(neg.f64 x)
(neg.f64 x)

rewrite171.0ms (2.9%)

Memory
15.3MiB live, 278.4MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
028166
044166
1161154
21215154
08665143
Stop Event
iter limit
node limit
iter limit
Counts
16 → 504
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64)))
(sqrt.f64 #s(literal -1 binary64))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64))
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
(/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x)
(+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64))
(sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64)))
(*.f64 x x)
(neg.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>

eval440.0ms (7.4%)

Memory
17.3MiB live, 138.8MiB allocated
Compiler

Compiled 16 316 to 2 249 computations (86.2% saved)

prune19.0ms (0.3%)

Memory
3.4MiB live, 39.2MiB allocated
Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New6831684
Fresh000
Picked134
Done000
Total6844688
Accuracy
100.0%
Counts
688 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
99.4%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
98.8%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
0.0%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
Compiler

Compiled 77 to 53 computations (31.2% saved)

simplify178.0ms (3%)

Memory
-29.8MiB live, 140.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal -1/2 binary64) x)
cost-diff0
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))
cost-diff0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))
cost-diff0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01771
01971
13271
24071
34871
46371
58371
612671
733171
861771
9123371
10229071
11337071
12446765
13603165
0811462
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))
(*.f64 #s(literal -1/2 binary64) x)
#s(literal -1/2 binary64)
x
Outputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))
(*.f64 #s(literal -1/2 binary64) x)
#s(literal -1/2 binary64)
x

localize71.0ms (1.2%)

Memory
-1.3MiB live, 44.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 #s(literal -1/2 binary64) x)
accuracy0.00390625
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
accuracy0.43233018253998057
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))
accuracy62.99851158579934
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))
Samples
26.0ms256×0valid
Compiler

Compiled 112 to 35 computations (68.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-div: 5.0ms (26.5% of total)
ival-mult: 5.0ms (26.5% of total)
ival-log: 3.0ms (15.9% of total)
ival-add: 2.0ms (10.6% of total)
ival-sqrt: 2.0ms (10.6% of total)
ival-sub: 1.0ms (5.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series5.0ms (0.1%)

Memory
5.2MiB live, 5.2MiB allocated
Counts
4 → 48
Calls
Call 1
Inputs
#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())
#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (*.f64 #s(literal -1/2 binary64) x) #<representation binary64>) () ())) ())
Calls

3 calls:

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

simplify121.0ms (2%)

Memory
16.5MiB live, 89.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0132473
1333458
2857450
32374449
45928437
08102416
Stop Event
iter limit
node limit
Counts
48 → 48
Calls
Call 1
Inputs
(+ (log 2) (* -1 (log x)))
(+ (log 2) (+ (* -1 (log x)) (* -1/4 (pow x 2))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* -3/32 (pow x 2)) 1/4))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* (pow x 2) (- (* -5/96 (pow x 2)) 3/32)) 1/4))))
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(* -1/2 x)
(* -1/2 x)
(* -1/2 x)
(* -1/2 x)
(log (sqrt -1))
(+ (log (sqrt -1)) (/ 1 (* x (sqrt -1))))
(- (+ (log (sqrt -1)) (/ 1 (* x (sqrt -1)))) (/ 1/6 (* (pow x 3) (pow (sqrt -1) 3))))
(- (+ (log (sqrt -1)) (+ (/ 1 (* x (sqrt -1))) (* 3/40 (/ 1 (* (pow x 5) (pow (sqrt -1) 5)))))) (* 1/6 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))
(sqrt -1)
(+ (sqrt -1) (/ 1 x))
(+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x)))
(- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(* -1/2 x)
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* -1/2 x)
(* -1/2 x)
(* -1/2 x)
(* -1/2 x)
(log (* -1 (sqrt -1)))
(- (log (* -1 (sqrt -1))) (/ 1 (* x (sqrt -1))))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (/ 1 (sqrt -1)) (* 1/6 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x)))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (+ (/ 3/40 (* (pow x 4) (pow (sqrt -1) 5))) (/ 1 (sqrt -1))) (/ 1/6 (* (pow x 2) (pow (sqrt -1) 3)))) x)))
(* -1 (sqrt -1))
(+ (* -1 (sqrt -1)) (/ 1 x))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* 1/2 (/ 1 (* x (sqrt -1)))) 1) x)))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* -1 (/ (- (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (sqrt -1)))) x)) 1) x)))
(* -1/2 x)
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1/2 x)
(* -1/2 x)
(* -1/2 x)
(* -1/2 x)
Outputs
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 #s(literal -3/32 binary64) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -5/96 binary64) (*.f64 x x) #s(literal -3/32 binary64)) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(log.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (log.f64 (sqrt.f64 #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (+.f64 (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 5 binary64))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(sqrt.f64 #s(literal -1 binary64))
(-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) x))
(-.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) x)) (/.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x) x))
(-.f64 (-.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64))) (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal -1 binary64) x)) (/.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x) x))
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (sqrt.f64 #s(literal -1 binary64)))) x))
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (-.f64 (/.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64))) (sqrt.f64 #s(literal -1 binary64))) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) #s(literal 1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 #s(literal -1/2 binary64) x)

rewrite150.0ms (2.5%)

Memory
10.7MiB live, 129.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01769
01969
19569
282665
0875562
Stop Event
iter limit
node limit
iter limit
Counts
4 → 11
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x)))
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))
(*.f64 #s(literal -1/2 binary64) x)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval19.0ms (0.3%)

Memory
-25.3MiB live, 10.9MiB allocated
Compiler

Compiled 1 687 to 192 computations (88.6% saved)

prune5.0ms (0.1%)

Memory
13.2MiB live, 13.2MiB allocated
Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New58159
Fresh000
Picked011
Done123
Total59463
Accuracy
100.0%
Counts
63 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
98.8%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
99.4%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
0.0%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
Compiler

Compiled 85 to 58 computations (31.8% saved)

simplify147.0ms (2.5%)

Memory
8.2MiB live, 132.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
cost-diff0
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))
cost-diff0
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))
cost-diff0
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
Iterations

Useful iterations: 12 (0.0ms)

IterNodesCost
01887
02287
13687
24487
35287
46787
58787
613087
733687
862487
9124987
10232187
11341787
12450878
13605378
0812778
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
#s(literal -1/2 binary64)
x
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
Outputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
#s(literal -1/2 binary64)
x
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)

localize41.0ms (0.7%)

Memory
-13.8MiB live, 63.8MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))
accuracy0.00390625
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
accuracy0.0078125
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
accuracy0.43233018253998057
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))
Samples
30.0ms256×0valid
Compiler

Compiled 136 to 39 computations (71.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-div: 7.0ms (30.5% of total)
ival-mult: 5.0ms (21.8% of total)
ival-log: 4.0ms (17.4% of total)
ival-add: 3.0ms (13.1% of total)
ival-sqrt: 2.0ms (8.7% of total)
ival-sub: 1.0ms (4.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series5.0ms (0.1%)

Memory
6.6MiB live, 6.6MiB allocated
Counts
4 → 48
Calls
Call 1
Inputs
#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())
#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())
#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())
Outputs
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor 0 x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
#s(alt #<batchref> (taylor -inf x) (#s(alt #<batchref> (patch (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)) #<representation binary64>) () ())) ())
Calls

3 calls:

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

simplify185.0ms (3.1%)

Memory
-5.7MiB live, 76.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0132527
1333512
2857504
32363503
45915479
08079449
Stop Event
iter limit
node limit
Counts
48 → 48
Calls
Call 1
Inputs
(+ (log 2) (* -1 (log x)))
(+ (log 2) (+ (* -1 (log x)) (* -1/4 (pow x 2))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* -3/32 (pow x 2)) 1/4))))
(+ (log 2) (+ (* -1 (log x)) (* (pow x 2) (- (* (pow x 2) (- (* -5/96 (pow x 2)) 3/32)) 1/4))))
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* (pow x 2) (- (* -1/8 (pow x 2)) 1/2))) x)
(/ (+ 2 (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (pow x 2)) 1/8)) 1/2))) x)
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ 2 x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(/ (+ 2 (* -1/2 (pow x 2))) x)
(log (sqrt -1))
(+ (log (sqrt -1)) (/ 1 (* x (sqrt -1))))
(- (+ (log (sqrt -1)) (/ 1 (* x (sqrt -1)))) (/ 1/6 (* (pow x 3) (pow (sqrt -1) 3))))
(- (+ (log (sqrt -1)) (+ (/ 1 (* x (sqrt -1))) (* 3/40 (/ 1 (* (pow x 5) (pow (sqrt -1) 5)))))) (* 1/6 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))
(sqrt -1)
(+ (sqrt -1) (/ 1 x))
(+ (sqrt -1) (+ (/ 1/2 (* (pow x 2) (sqrt -1))) (/ 1 x)))
(- (+ (sqrt -1) (+ (/ 1 x) (* 1/2 (/ 1 (* (pow x 2) (sqrt -1)))))) (* 1/8 (/ 1 (* (pow x 4) (pow (sqrt -1) 3)))))
(* -1/2 x)
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* -1/2 x)
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(* x (- (* 2 (/ 1 (pow x 2))) 1/2))
(log (* -1 (sqrt -1)))
(- (log (* -1 (sqrt -1))) (/ 1 (* x (sqrt -1))))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (/ 1 (sqrt -1)) (* 1/6 (/ 1 (* (pow x 2) (pow (sqrt -1) 3))))) x)))
(+ (log (* -1 (sqrt -1))) (* -1 (/ (- (+ (/ 3/40 (* (pow x 4) (pow (sqrt -1) 5))) (/ 1 (sqrt -1))) (/ 1/6 (* (pow x 2) (pow (sqrt -1) 3)))) x)))
(* -1 (sqrt -1))
(+ (* -1 (sqrt -1)) (/ 1 x))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* 1/2 (/ 1 (* x (sqrt -1)))) 1) x)))
(+ (* -1 (sqrt -1)) (* -1 (/ (- (* -1 (/ (- (* 1/8 (/ 1 (* (pow x 2) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (sqrt -1)))) x)) 1) x)))
(* -1/2 x)
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1/2 x)
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
(* -1 (* x (- 1/2 (* 2 (/ 1 (pow x 2))))))
Outputs
(-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 #s(literal -3/32 binary64) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -5/96 binary64) (*.f64 x x) #s(literal -3/32 binary64)) (*.f64 x x) #s(literal -1/4 binary64)) x) x (-.f64 (log.f64 #s(literal 2 binary64)) (log.f64 x)))
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/16 binary64) (*.f64 x x) #s(literal -1/8 binary64)) (*.f64 x x) #s(literal -1/2 binary64)) (*.f64 x x) #s(literal 2 binary64)) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 #s(literal 2 binary64) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)
(log.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (log.f64 (sqrt.f64 #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (+.f64 (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (+.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 5 binary64))) (log.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(sqrt.f64 #s(literal -1 binary64))
(-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) x))
(-.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) x)) (/.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x) x))
(-.f64 (-.f64 (-.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64))) (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal -1 binary64) x)) (/.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) x) x))
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))))
(-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))
(-.f64 (-.f64 (log.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64)))) (/.f64 (/.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64)))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 3/40 binary64) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (pow.f64 x #s(literal 4 binary64))) (/.f64 #s(literal -1 binary64) (sqrt.f64 #s(literal -1 binary64)))) x))
(neg.f64 (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) x) (sqrt.f64 #s(literal -1 binary64)))
(-.f64 (-.f64 (/.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64))) (sqrt.f64 #s(literal -1 binary64))) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) #s(literal 1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(*.f64 #s(literal -1/2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))

rewrite166.0ms (2.8%)

Memory
13.1MiB live, 88.4MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01881
02281
111781
2103377
0878174
Stop Event
iter limit
node limit
iter limit
Counts
4 → 52
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
#s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x))))
#s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) 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>

eval94.0ms (1.6%)

Memory
-11.2MiB live, 31.6MiB allocated
Compiler

Compiled 3 746 to 439 computations (88.3% saved)

prune5.0ms (0.1%)

Memory
10.9MiB live, 10.9MiB allocated
Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New1000100
Fresh000
Picked011
Done033
Total1004104
Accuracy
100.0%
Counts
104 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
98.8%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
99.4%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
0.0%
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
Compiler

Compiled 221 to 106 computations (52% saved)

regimes34.0ms (0.6%)

Memory
-24.9MiB live, 12.2MiB allocated
Counts
7 → 1
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
Outputs
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
Calls

3 calls:

27.0ms
x
3.0ms
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
3.0ms
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
100.0%1(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes8.0ms (0.1%)

Memory
10.0MiB live, 10.0MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 2 binary64)) x)))
Outputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
Calls

3 calls:

3.0ms
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
2.0ms
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
2.0ms
x
Results
AccuracySegmentsBranch
99.4%1x
99.4%1(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
99.4%1(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes6.0ms (0.1%)

Memory
9.1MiB live, 9.1MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
Outputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
Calls

3 calls:

2.0ms
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
2.0ms
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
2.0ms
x
Results
AccuracySegmentsBranch
98.8%1x
98.8%1(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
98.8%1(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes5.0ms (0.1%)

Memory
7.5MiB live, 7.5MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
2 → 1
Calls
Call 1
Inputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (sqrt.f64 #s(literal -1 binary64))))
Outputs
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
Calls

3 calls:

2.0ms
(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
2.0ms
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
1.0ms
x
Results
AccuracySegmentsBranch
0.0%1x
0.0%1(log.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x)))
0.0%1(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x))) x))
Compiler

Compiled 26 to 18 computations (30.8% saved)

simplify44.0ms (0.7%)

Memory
-7.7MiB live, 31.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03085
13885
24085
34185
Stop Event
saturated
Calls
Call 1
Inputs
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))
Outputs
(log.f64 (/.f64 (+.f64 (sqrt.f64 (fma.f64 (neg.f64 x) x #s(literal 1 binary64))) #s(literal 1 binary64)) x))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 2 binary64) x)))))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) (/.f64 #s(literal 2 binary64) x)))
(log.f64 #s(approx (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x)) #s(approx (/ (+ (* (* x x) -1/2) 2) x) (*.f64 #s(literal -1/2 binary64) x))))

soundness844.0ms (14.2%)

Memory
20.2MiB live, 370.2MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0132473
1333458
2857450
32374449
45928437
08102416
0945
01645
16945
262441
3759641
0835441
0155803
1409778
21098758
33208745
47995745
08477716
01782001
14931924
213551865
339781857
081601765
Stop Event
done
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 142 to 72 computations (49.3% saved)

preprocess88.0ms (1.5%)

Memory
-14.9MiB live, 109.7MiB allocated
Compiler

Compiled 196 to 84 computations (57.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...