sqrt B (should all be same)

Time bar (total: 3.9s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
100%100%0%0%0%0%0%2
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample583.0ms (14.8%)

Memory
43.2MiB live, 736.6MiB allocated
Samples
387.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 245.0ms
ival-mult: 174.0ms (70.9% of total)
ival-sqrt: 59.0ms (24% of total)
ival-true: 5.0ms (2% of total)
exact: 4.0ms (1.6% of total)
ival-assert: 3.0ms (1.2% of total)
Bogosity

explain65.0ms (1.6%)

Memory
-23.5MiB live, 100.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1200-2(4.864449213424914e-160)(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
00-0-#s(literal 2 binary64)
00-0-(*.f64 (*.f64 #s(literal 2 binary64) x) x)
00-0-(*.f64 #s(literal 2 binary64) x)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))oflow-rescue680
(*.f64 (*.f64 #s(literal 2 binary64) x) x)overflow68
sqrt.f64(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))uflow-rescue500
(*.f64 (*.f64 #s(literal 2 binary64) x) x)underflow50
Confusion
Predicted +Predicted -
+1182
-0136
Precision
1.0
Recall
0.9833333333333333
Confusion?
Predicted +Predicted MaybePredicted -
+11802
-00136
Precision?
1.0
Recall?
0.9833333333333333
Freqs
test
numberfreq
0138
1118
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
21.0ms512×0valid
Compiler

Compiled 42 to 19 computations (54.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 7.0ms (64.6% of total)
ival-sqrt: 3.0ms (27.7% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess21.0ms (0.5%)

Memory
10.5MiB live, 43.5MiB allocated
Algorithm
egg-herbie
Rules
30×associate-*r*
28×distribute-rgt-neg-in
28×associate-*l*
24×distribute-lft-neg-in
24×neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
12113
26213
314913
421413
523113
623313
056
086
1126
2136
0136
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Outputs
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
(sqrt.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) x))
Symmetry

(abs x)

Compiler

Compiled 6 to 5 computations (16.7% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 1 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
56.6%
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Compiler

Compiled 6 to 5 computations (16.7% saved)

simplify3.0ms (0.1%)

Memory
6.5MiB live, 6.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 2 binary64) x)
cost-diff0
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
cost-diff0
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Rules
14×lower-*.f32
10×lower-*.f64
*-commutative
lift-*.f64
lift-sqrt.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0516
0816
11216
21316
01316
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
(*.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
x
Outputs
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
(sqrt.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) x))
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
(*.f64 (*.f64 x #s(literal 2 binary64)) x)
(*.f64 #s(literal 2 binary64) x)
(*.f64 x #s(literal 2 binary64))
#s(literal 2 binary64)
x

localize21.0ms (0.5%)

Memory
-5.6MiB live, 41.6MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
accuracy0
(*.f64 #s(literal 2 binary64) x)
accuracy27.77118890026165
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Samples
17.0ms256×0valid
Compiler

Compiled 18 to 7 computations (61.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 9.0ms (77.8% of total)
ival-sqrt: 2.0ms (17.3% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.1%)

Memory
13.5MiB live, 13.5MiB allocated
Counts
3 → 36
Calls
Call 1
Inputs
#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())
Outputs
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) (patch (sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 #s(literal 2 binary64) x) x) (patch (*.f64 (*.f64 #s(literal 2 binary64) x) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 2 binary64) x) (patch (*.f64 #s(literal 2 binary64) x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@0
((sqrt (* (* 2 x) x)) (* (* 2 x) x) (* 2 x))
1.0ms
x
@inf
((sqrt (* (* 2 x) x)) (* (* 2 x) x) (* 2 x))
1.0ms
x
@-inf
((sqrt (* (* 2 x) x)) (* (* 2 x) x) (* 2 x))

simplify7.0ms (0.2%)

Memory
-21.7MiB live, 17.6MiB allocated
Algorithm
egg-herbie
Rules
38×lower-*.f64
38×lower-fma.f64
38×lower-fma.f32
38×lower-*.f32
36×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09148
117148
232148
336148
440148
552148
664148
775148
895148
9100148
0100148
Stop Event
iter limit
saturated
Counts
36 → 36
Calls
Call 1
Inputs
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(* -1 (* x (sqrt 2)))
(* -1 (* x (sqrt 2)))
(* -1 (* x (sqrt 2)))
(* -1 (* x (sqrt 2)))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
Outputs
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* -1 (* x (sqrt 2)))
(*.f64 (neg.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* x (sqrt 2)))
(*.f64 (neg.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* x (sqrt 2)))
(*.f64 (neg.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* -1 (* x (sqrt 2)))
(*.f64 (neg.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)

rewrite138.0ms (3.5%)

Memory
-6.3MiB live, 187.2MiB allocated
Rules
5 230×lower-*.f32
5 226×lower-*.f64
3 666×lower-/.f64
3 666×lower-/.f32
3 090×lower-fma.f64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0514
0814
11714
23813
39212
433812
5207412
0867212
Stop Event
iter limit
node limit
iter limit
Counts
3 → 118
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
(*.f64 (*.f64 #s(literal 2 binary64) x) 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval17.0ms (0.4%)

Memory
35.3MiB live, 35.3MiB allocated
Compiler

Compiled 1 927 to 352 computations (81.7% saved)

prune11.0ms (0.3%)

Memory
-10.5MiB live, 27.7MiB allocated
Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1468154
Fresh000
Picked011
Done000
Total1469155
Accuracy
100.0%
Counts
155 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
30.0%
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
99.4%
(*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
99.5%
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
73.5%
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 2 binary64)))))
99.2%
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) x))
99.5%
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
99.4%
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
56.5%
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
56.6%
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Compiler

Compiled 146 to 121 computations (17.1% saved)

simplify5.0ms (0.1%)

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

Found 17 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
cost-diff0
(*.f64 x #s(literal 2 binary64))
cost-diff0
(pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64))
cost-diff0
(*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
cost-diff0
(pow.f64 x #s(literal 4 binary64))
cost-diff0
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
cost-diff0
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
cost-diff0
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
cost-diff0
(sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))
cost-diff0
(pow.f64 x #s(literal 3/4 binary64))
cost-diff0
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
cost-diff0
(sqrt.f64 #s(literal 2 binary64))
cost-diff0
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
cost-diff0
(sqrt.f64 x)
cost-diff0
(*.f64 x #s(literal 2 binary64))
cost-diff0
(sqrt.f64 (*.f64 x #s(literal 2 binary64)))
cost-diff0
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
Rules
48×lower-*.f32
32×lower-*.f64
22×*-commutative
16×lift-*.f64
10×lift-pow.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023110
040110
150110
257110
359110
059110
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
(sqrt.f64 (*.f64 x #s(literal 2 binary64)))
(*.f64 x #s(literal 2 binary64))
x
#s(literal 2 binary64)
(sqrt.f64 x)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
x
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
(pow.f64 x #s(literal 3/4 binary64))
x
#s(literal 3/4 binary64)
(sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(sqrt.f64 x)
#s(literal 2 binary64)
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
x
#s(literal 4 binary64)
#s(literal 1/4 binary64)
(*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64))
(*.f64 x #s(literal 2 binary64))
x
#s(literal 2 binary64)
#s(literal 1/4 binary64)
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(pow.f64 x #s(literal 3/4 binary64))
#s(literal 3/4 binary64)
(pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))
#s(literal 4 binary64)
#s(literal 1/8 binary64)
Outputs
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
(*.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 #s(literal 2 binary64) x)))
(sqrt.f64 (*.f64 x #s(literal 2 binary64)))
(sqrt.f64 (*.f64 #s(literal 2 binary64) x))
(*.f64 x #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) x)
x
#s(literal 2 binary64)
(sqrt.f64 x)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
x
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
(*.f64 (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (pow.f64 x #s(literal 3/4 binary64)))
(pow.f64 x #s(literal 3/4 binary64))
x
#s(literal 3/4 binary64)
(sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(sqrt.f64 x)
#s(literal 2 binary64)
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
x
#s(literal 4 binary64)
#s(literal 1/4 binary64)
(*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(*.f64 (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (pow.f64 x #s(literal 3/4 binary64))) (pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64)))
(pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(*.f64 x #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) x)
x
#s(literal 2 binary64)
#s(literal 1/4 binary64)
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (pow.f64 x #s(literal 3/4 binary64)))
(pow.f64 x #s(literal 3/4 binary64))
#s(literal 3/4 binary64)
(pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))
#s(literal 4 binary64)
#s(literal 1/8 binary64)

localize153.0ms (3.9%)

Memory
-30.5MiB live, 89.8MiB allocated
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x #s(literal 2 binary64))
accuracy0.00390625
(pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64))
accuracy0.29525375976844204
(*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
accuracy0.3125
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
accuracy0
(pow.f64 x #s(literal 4 binary64))
accuracy0.00390625
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
accuracy44.79658170266059
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
accuracy0
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
accuracy0
(sqrt.f64 x)
accuracy0.109375
(sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))
accuracy0.296875
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
accuracy0
(sqrt.f64 #s(literal 2 binary64))
accuracy0.39453125
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
accuracy0
(*.f64 x #s(literal 2 binary64))
accuracy0
(sqrt.f64 (*.f64 x #s(literal 2 binary64)))
accuracy0
(sqrt.f64 x)
accuracy0.30859375
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
Samples
57.0ms256×0valid
Compiler

Compiled 112 to 25 computations (77.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 44.0ms
ival-pow: 20.0ms (46% of total)
ival-mult: 13.0ms (29.9% of total)
ival-sqrt: 9.0ms (20.7% of total)
exact: 1.0ms (2.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series360.0ms (9.1%)

Memory
13.4MiB live, 336.9MiB allocated
Counts
16 → 180
Calls
Call 1
Inputs
#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())
#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())
#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())
#s(alt (sqrt.f64 #s(literal 2 binary64)) (patch (sqrt.f64 #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())
#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())
#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())
#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())
#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())
Outputs
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor 0 x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (log x)))) (taylor 0 x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (log x)))) (taylor 0 x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (log x)))) (taylor 0 x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (log x)))) (taylor 0 x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor 0 x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow (* 1 (pow x 3)) 1/4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 x) 1/4) (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt x)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* (pow 2 1/4) (* (pow 4 1/8) x)) (taylor inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x)))))) (taylor inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x)))))) (taylor inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x)))))) (taylor inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x)))))) (taylor inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8)) (taylor inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) (patch (*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 x #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (patch (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 3/4 binary64)) (patch (pow.f64 x #s(literal 3/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) (patch (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) (patch (*.f64 (sqrt.f64 x) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) (patch (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 4) (taylor -inf x) (#s(alt (pow.f64 x #s(literal 4 binary64)) (patch (pow.f64 x #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 2 1/4) (* (pow 4 1/8) x))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 2 1/4) (* (pow 4 1/8) x))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 2 1/4) (* (pow 4 1/8) x))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 2 1/4) (* (pow 4 1/8) x))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) (patch (*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x)))))) (taylor -inf x) (#s(alt (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))) (taylor -inf x) (#s(alt (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) (patch (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
164.0ms
x
@0
((* (sqrt (* x 2)) (sqrt x)) (sqrt (* x 2)) (* x 2) (sqrt x) (* (sqrt 2) x) (sqrt 2) (* (pow x 3/4) (sqrt (* (sqrt x) 2))) (pow x 3/4) (sqrt (* (sqrt x) 2)) (* (sqrt x) 2) (pow (* (pow x 4) 4) 1/4) (* (pow x 4) 4) (pow x 4) (* (pow (* x 2) 1/4) (* (pow x 3/4) (pow 4 1/8))) (pow (* x 2) 1/4) (* (pow x 3/4) (pow 4 1/8)))
109.0ms
x
@-inf
((* (sqrt (* x 2)) (sqrt x)) (sqrt (* x 2)) (* x 2) (sqrt x) (* (sqrt 2) x) (sqrt 2) (* (pow x 3/4) (sqrt (* (sqrt x) 2))) (pow x 3/4) (sqrt (* (sqrt x) 2)) (* (sqrt x) 2) (pow (* (pow x 4) 4) 1/4) (* (pow x 4) 4) (pow x 4) (* (pow (* x 2) 1/4) (* (pow x 3/4) (pow 4 1/8))) (pow (* x 2) 1/4) (* (pow x 3/4) (pow 4 1/8)))
82.0ms
x
@inf
((* (sqrt (* x 2)) (sqrt x)) (sqrt (* x 2)) (* x 2) (sqrt x) (* (sqrt 2) x) (sqrt 2) (* (pow x 3/4) (sqrt (* (sqrt x) 2))) (pow x 3/4) (sqrt (* (sqrt x) 2)) (* (sqrt x) 2) (pow (* (pow x 4) 4) 1/4) (* (pow x 4) 4) (pow x 4) (* (pow (* x 2) 1/4) (* (pow x 3/4) (pow 4 1/8))) (pow (* x 2) 1/4) (* (pow x 3/4) (pow 4 1/8)))

simplify245.0ms (6.2%)

Memory
-0.2MiB live, 154.6MiB allocated
Algorithm
egg-herbie
Rules
8 956×lower-fma.f64
8 956×lower-fma.f32
2 786×lower-*.f64
2 786×lower-*.f32
1 530×lower-+.f64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0771008
11861008
2492992
31081968
41455968
51982968
62947968
73746968
84445968
95357968
106408968
117303968
08126968
Stop Event
iter limit
node limit
Counts
180 → 180
Calls
Call 1
Inputs
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* (sqrt x) (sqrt 2))
(* (sqrt x) (sqrt 2))
(* (sqrt x) (sqrt 2))
(* (sqrt x) (sqrt 2))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(sqrt x)
(sqrt x)
(sqrt x)
(sqrt x)
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(pow (* 1 (pow x 3)) 1/4)
(pow (* 1 (pow x 3)) 1/4)
(pow (* 1 (pow x 3)) 1/4)
(pow (* 1 (pow x 3)) 1/4)
(* (pow (* 1 x) 1/4) (sqrt 2))
(* (pow (* 1 x) 1/4) (sqrt 2))
(* (pow (* 1 x) 1/4) (sqrt 2))
(* (pow (* 1 x) 1/4) (sqrt 2))
(* 2 (sqrt x))
(* 2 (sqrt x))
(* 2 (sqrt x))
(* 2 (sqrt x))
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(pow x 4)
(pow x 4)
(pow x 4)
(pow x 4)
(* (pow 2 1/4) (* (pow 4 1/8) x))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(exp (* 1/4 (+ (log 2) (log x))))
(exp (* 1/4 (+ (log 2) (log x))))
(exp (* 1/4 (+ (log 2) (log x))))
(exp (* 1/4 (+ (log 2) (log x))))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* (sqrt x) (sqrt 2))
(* (sqrt x) (sqrt 2))
(* (sqrt x) (sqrt 2))
(* (sqrt x) (sqrt 2))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(sqrt x)
(sqrt x)
(sqrt x)
(sqrt x)
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(pow (* 1 (pow x 3)) 1/4)
(pow (* 1 (pow x 3)) 1/4)
(pow (* 1 (pow x 3)) 1/4)
(pow (* 1 (pow x 3)) 1/4)
(* (pow (* 1 x) 1/4) (sqrt 2))
(* (pow (* 1 x) 1/4) (sqrt 2))
(* (pow (* 1 x) 1/4) (sqrt 2))
(* (pow (* 1 x) 1/4) (sqrt 2))
(* 2 (sqrt x))
(* 2 (sqrt x))
(* 2 (sqrt x))
(* 2 (sqrt x))
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(pow x 4)
(pow x 4)
(pow x 4)
(pow x 4)
(* (pow 2 1/4) (* (pow 4 1/8) x))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* (pow 4 1/4) x))
(* -1 (* (pow 4 1/4) x))
(* -1 (* (pow 4 1/4) x))
(* -1 (* (pow 4 1/4) x))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(pow x 4)
(pow x 4)
(pow x 4)
(pow x 4)
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
Outputs
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(exp (* 1/4 (+ (log 2) (log x))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log 2) (log x))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log 2) (log x))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log 2) (log x))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* (sqrt x) (sqrt 2))
(*.f64 (sqrt.f64 x) (sqrt.f64 #s(literal 2 binary64)))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(pow (* 1 (pow x 3)) 1/4)
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* (pow (* 1 x) 1/4) (sqrt 2))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 #s(literal 2 binary64)))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* 2 (sqrt x))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 2 1/4) (* (pow 4 1/8) x))
(*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log 2) (* -1 (log (/ 1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow (* 1 (pow x 3)) 1/4) (pow 4 1/8))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))) (sqrt.f64 x)))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))) (sqrt.f64 x)))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))) (sqrt.f64 x)))
(* -1 (* (sqrt x) (* (sqrt -2) (sqrt -1))))
(neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 #s(literal -2 binary64))) (sqrt.f64 x)))
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* 2 x)
(*.f64 #s(literal 2 binary64) x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(*.f64 (pow.f64 #s(literal -1 binary64) #s(literal 11/4 binary64)) (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) x)))
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(*.f64 (pow.f64 #s(literal -1 binary64) #s(literal 11/4 binary64)) (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) x)))
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(*.f64 (pow.f64 #s(literal -1 binary64) #s(literal 11/4 binary64)) (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) x)))
(* -1 (* (pow -1 1/4) (* (* x (sqrt 2)) (sqrt (sqrt -1)))))
(*.f64 (pow.f64 #s(literal -1 binary64) #s(literal 11/4 binary64)) (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) x)))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x))))))
(pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (neg.f64 x) #s(literal 1/4 binary64)))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (neg.f64 x) #s(literal 1/4 binary64)))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (neg.f64 x) #s(literal 1/4 binary64)))
(* (pow (* -1 x) 1/4) (* (sqrt (sqrt -1)) (sqrt 2)))
(*.f64 (*.f64 (sqrt.f64 (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 #s(literal 2 binary64))) (pow.f64 (neg.f64 x) #s(literal 1/4 binary64)))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* -2 (* (sqrt x) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(* -1 (* (pow 4 1/4) x))
(*.f64 (neg.f64 x) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))
(* -1 (* (pow 4 1/4) x))
(*.f64 (neg.f64 x) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))
(* -1 (* (pow 4 1/4) x))
(*.f64 (neg.f64 x) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))
(* -1 (* (pow 4 1/4) x))
(*.f64 (neg.f64 x) (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(* 4 (pow x 4))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(pow x 4)
(pow.f64 x #s(literal 4 binary64))
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(neg.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(neg.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(neg.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(* -1 (* (pow 2 1/4) (* (pow 4 1/8) x)))
(neg.f64 (*.f64 (*.f64 (pow.f64 #s(literal 1/2 binary64) #s(literal -1/4 binary64)) x) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(exp (* 1/4 (+ (log -2) (* -1 (log (/ -1 x))))))
(pow.f64 (*.f64 #s(literal 2 binary64) x) #s(literal 1/4 binary64))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
(* (pow 4 1/8) (exp (* 1/4 (+ (log -1) (* -3 (log (/ -1 x)))))))
(*.f64 (pow.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))

rewrite231.0ms (5.9%)

Memory
21.9MiB live, 177.5MiB allocated
Rules
4 806×lower-fma.f64
4 806×lower-fma.f32
4 594×lower-*.f32
4 578×lower-*.f64
2 182×lower-pow.f32
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02383
04073
19673
227863
3125463
4480663
0810863
Stop Event
iter limit
node limit
iter limit
Counts
16 → 1 066
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
(sqrt.f64 (*.f64 x #s(literal 2 binary64)))
(*.f64 x #s(literal 2 binary64))
(sqrt.f64 x)
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(sqrt.f64 #s(literal 2 binary64))
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
(pow.f64 x #s(literal 3/4 binary64))
(sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(pow.f64 x #s(literal 4 binary64))
(*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
(pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval310.0ms (7.9%)

Memory
11.4MiB live, 323.3MiB allocated
Compiler

Compiled 20 488 to 1 941 computations (90.5% saved)

prune30.0ms (0.8%)

Memory
3.3MiB live, 85.6MiB allocated
Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New1 41931 422
Fresh213
Picked235
Done011
Total1 42381 431
Accuracy
100.0%
Counts
1 431 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
30.0%
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
99.1%
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
99.5%
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
99.2%
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
99.5%
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
99.4%
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
56.5%
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
56.6%
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Compiler

Compiled 63 to 51 computations (19% saved)

simplify9.0ms (0.2%)

Memory
-26.6MiB live, 12.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff0
(*.f64 (*.f64 x x) #s(literal 4 binary64))
cost-diff0
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
cost-diff320
(*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x)
cost-diff0
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
cost-diff0
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
cost-diff6464
(pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64))
cost-diff0
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
cost-diff0
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
cost-diff6784
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
cost-diff0
(*.f64 x #s(literal 2 binary64))
cost-diff0
(*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x))
cost-diff0
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
cost-diff1600
(*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))
Rules
276×lower-*.f32
256×lower-*.f64
200×associate-*r*
104×associate-*l*
58×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
021109
036107
15593
28787
314583
426283
527883
628083
028083
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
(*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))
(*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x))
(*.f64 x #s(literal 2 binary64))
x
#s(literal 2 binary64)
(sqrt.f64 x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
#s(literal 256 binary64)
#s(literal 1/32 binary64)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
x
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
(pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
#s(literal 256 binary64)
#s(literal 1/32 binary64)
#s(literal 2 binary64)
x
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
(*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x)
(*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x)
(*.f64 (*.f64 x x) #s(literal 4 binary64))
(*.f64 x x)
x
#s(literal 4 binary64)
#s(literal 1/4 binary64)
Outputs
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
(*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
(*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x))
(*.f64 (*.f64 (sqrt.f64 x) x) #s(literal 2 binary64))
(*.f64 x #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) x)
x
#s(literal 2 binary64)
(sqrt.f64 x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
#s(literal 256 binary64)
#s(literal 1/32 binary64)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
x
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64))
(pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64))
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
#s(literal 256 binary64)
#s(literal 1/32 binary64)
#s(literal 2 binary64)
x
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x)
(*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64))
(*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x)
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 4 binary64))
(*.f64 (*.f64 x x) #s(literal 4 binary64))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(*.f64 x x)
x
#s(literal 4 binary64)
#s(literal 1/4 binary64)

localize56.0ms (1.4%)

Memory
7.6MiB live, 84.8MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(*.f64 (*.f64 x x) #s(literal 4 binary64))
accuracy0.0625
(*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x)
accuracy0.09375
(*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x)
accuracy44.79658170266059
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
accuracy0
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
accuracy0.39453125
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
accuracy1.0
(pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64))
accuracy0
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
accuracy0.2109375
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
accuracy0.33203125
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
accuracy0
(sqrt.f64 x)
accuracy0.16015625
(*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x))
accuracy0.193691259768442
(*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))
accuracy27.77118890026165
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
Samples
43.0ms256×0valid
Compiler

Compiled 111 to 23 computations (79.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 29.0ms
ival-mult: 14.0ms (47.6% of total)
ival-pow: 8.0ms (27.2% of total)
ival-sqrt: 4.0ms (13.6% of total)
ival-pow2: 2.0ms (6.8% of total)
exact: 1.0ms (3.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series76.0ms (1.9%)

Memory
9.9MiB live, 162.7MiB allocated
Counts
15 → 156
Calls
Call 1
Inputs
#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())
#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())
#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())
#s(alt (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (patch (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())
#s(alt (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) (patch (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())
#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())
Outputs
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor 0 x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor 0 x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor 0 x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor 0 x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor 0 x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor 0 x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor 0 x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt 2)) (taylor inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (sqrt (pow x 3))) (taylor inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 4 1/4) x) (taylor inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (pow x 2) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (pow x 2) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (pow x 2) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (pow x 2) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) (patch (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (* (sqrt -2) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) (patch (sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (patch (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 x) (taylor -inf x) (#s(alt (*.f64 x #s(literal 2 binary64)) (patch (*.f64 x #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/32) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) (patch (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* (pow 256 1/16) x) (taylor -inf x) (#s(alt (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) (patch (*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 4)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) (patch (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow 4 1/4) x)) (taylor -inf x) (#s(alt (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) (patch (pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 4 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 4 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 x) (patch (sqrt.f64 x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
#s(alt (* 4 (pow x 3)) (taylor -inf x) (#s(alt (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) (patch (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
34.0ms
x
@0
((* (* (* x 2) (sqrt x)) (sqrt x)) (sqrt (* (* (* x 2) (sqrt x)) (sqrt x))) (* (* x 2) (sqrt x)) (* x 2) (* (pow 256 1/32) (* (pow 256 1/32) x)) (pow 256 1/32) (* (pow 256 1/32) x) (pow (pow 256 1/32) 2) (* (pow (pow 256 1/32) 2) x) (* (* (* (* x x) 4) x) x) (pow (* (* (* (* x x) 4) x) x) 1/4) (* (* x x) 4) (* x x) (sqrt x) (* (* (* x x) 4) x))
19.0ms
x
@-inf
((* (* (* x 2) (sqrt x)) (sqrt x)) (sqrt (* (* (* x 2) (sqrt x)) (sqrt x))) (* (* x 2) (sqrt x)) (* x 2) (* (pow 256 1/32) (* (pow 256 1/32) x)) (pow 256 1/32) (* (pow 256 1/32) x) (pow (pow 256 1/32) 2) (* (pow (pow 256 1/32) 2) x) (* (* (* (* x x) 4) x) x) (pow (* (* (* (* x x) 4) x) x) 1/4) (* (* x x) 4) (* x x) (sqrt x) (* (* (* x x) 4) x))
19.0ms
x
@inf
((* (* (* x 2) (sqrt x)) (sqrt x)) (sqrt (* (* (* x 2) (sqrt x)) (sqrt x))) (* (* x 2) (sqrt x)) (* x 2) (* (pow 256 1/32) (* (pow 256 1/32) x)) (pow 256 1/32) (* (pow 256 1/32) x) (pow (pow 256 1/32) 2) (* (pow (pow 256 1/32) 2) x) (* (* (* (* x x) 4) x) x) (pow (* (* (* (* x x) 4) x) x) 1/4) (* (* x x) 4) (* x x) (sqrt x) (* (* (* x x) 4) x))

simplify256.0ms (6.5%)

Memory
-13.2MiB live, 85.0MiB allocated
Algorithm
egg-herbie
Rules
3 824×lower-fma.f64
3 824×lower-fma.f32
3 360×associate-*r*
2 516×lower-*.f64
2 516×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042716
181716
2194716
3347716
4493716
5635716
61075716
72070716
83104716
93148716
103189716
113204716
123208716
133437716
143714716
153828716
163885716
173918716
183933716
193939716
203939716
213939716
224619716
235619716
246311716
256387716
266387716
276477716
286507716
296507716
306507716
316850716
08522716
Stop Event
iter limit
node limit
Counts
156 → 156
Calls
Call 1
Inputs
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* 2 (sqrt (pow x 3)))
(* 2 (sqrt (pow x 3)))
(* 2 (sqrt (pow x 3)))
(* 2 (sqrt (pow x 3)))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* 4 (pow x 2))
(* 4 (pow x 2))
(* 4 (pow x 2))
(* 4 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(sqrt x)
(sqrt x)
(sqrt x)
(sqrt x)
(* 4 (pow x 3))
(* 4 (pow x 3))
(* 4 (pow x 3))
(* 4 (pow x 3))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* 2 (pow x 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* x (sqrt 2))
(* 2 (sqrt (pow x 3)))
(* 2 (sqrt (pow x 3)))
(* 2 (sqrt (pow x 3)))
(* 2 (sqrt (pow x 3)))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* (pow 4 1/4) x)
(* 4 (pow x 2))
(* 4 (pow x 2))
(* 4 (pow x 2))
(* 4 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(sqrt x)
(sqrt x)
(sqrt x)
(sqrt x)
(* 4 (pow x 3))
(* 4 (pow x 3))
(* 4 (pow x 3))
(* 4 (pow x 3))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(* 2 x)
(* 2 x)
(* 2 x)
(* 2 x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/32) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* (pow 256 1/16) x)
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* 4 (pow x 4))
(* -1 (* (pow 4 1/4) x))
(* -1 (* (pow 4 1/4) x))
(* -1 (* (pow 4 1/4) x))
(* -1 (* (pow 4 1/4) x))
(* 4 (pow x 2))
(* 4 (pow x 2))
(* 4 (pow x 2))
(* 4 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* 4 (pow x 3))
(* 4 (pow x 3))
(* 4 (pow x 3))
(* 4 (pow x 3))
Outputs
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* 2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* x (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 (sqrt (pow x 3)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* (pow 4 1/4) x)
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) x)
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(sqrt x)
(sqrt.f64 x)
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* -2 (* (pow x 2) (pow (sqrt -1) 2)))
(*.f64 (*.f64 x x) #s(literal 2 binary64))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 #s(literal -1 binary64))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 #s(literal -1 binary64))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 #s(literal -1 binary64))))
(* -1 (* x (* (sqrt -2) (sqrt -1))))
(*.f64 (neg.f64 x) (*.f64 (sqrt.f64 #s(literal -2 binary64)) (sqrt.f64 #s(literal -1 binary64))))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* -2 (* (sqrt (pow x 3)) (pow (sqrt -1) 2)))
(*.f64 (sqrt.f64 (pow.f64 x #s(literal 3 binary64))) #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* 2 x)
(*.f64 x #s(literal 2 binary64))
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/32) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* (pow 256 1/16) x)
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/16 binary64)) x)
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* 4 (pow x 4))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 4 binary64)))
(* -1 (* (pow 4 1/4) x))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (neg.f64 x))
(* -1 (* (pow 4 1/4) x))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (neg.f64 x))
(* -1 (* (pow 4 1/4) x))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (neg.f64 x))
(* -1 (* (pow 4 1/4) x))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/4 binary64)) (neg.f64 x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(* 4 (pow x 2))
(*.f64 #s(literal 4 binary64) (*.f64 x x))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))
(* 4 (pow x 3))
(*.f64 #s(literal 4 binary64) (pow.f64 x #s(literal 3 binary64)))

rewrite126.0ms (3.2%)

Memory
-10.5MiB live, 185.9MiB allocated
Rules
3 690×lower-fma.f64
3 690×lower-fma.f32
3 052×lower-*.f32
3 034×lower-*.f64
1 488×lower-pow.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02194
03685
18973
225362
396352
4550352
0861752
Stop Event
iter limit
node limit
iter limit
Counts
15 → 459
Calls
Call 1
Inputs
(*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x))
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
(*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x))
(*.f64 x #s(literal 2 binary64))
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
(pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64))
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x)
(pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64))
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
(*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x)
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
(*.f64 (*.f64 x x) #s(literal 4 binary64))
(*.f64 x x)
(sqrt.f64 x)
(*.f64 (*.f64 (*.f64 x x) #s(literal 4 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>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval79.0ms (2%)

Memory
29.1MiB live, 145.7MiB allocated
Compiler

Compiled 8 116 to 1 163 computations (85.7% saved)

prune17.0ms (0.4%)

Memory
-30.4MiB live, 45.7MiB allocated
Pruning

9 alts after pruning (1 fresh and 8 done)

PrunedKeptTotal
New6791680
Fresh000
Picked044
Done044
Total6799688
Accuracy
100.0%
Counts
688 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
30.0%
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
99.1%
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
99.5%
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
99.2%
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
99.5%
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
99.4%
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
20.3%
(*.f64 x #s(literal 1 binary64))
56.5%
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
56.6%
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Compiler

Compiled 66 to 54 computations (18.2% saved)

simplify3.0ms (0.1%)

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

Found 1 expressions of interest:

NewMetricScoreProgram
cost-diff320
(*.f64 x #s(literal 1 binary64))
Rules
lower-*.f32
*-commutative
lower-*.f64
*-rgt-identity
1-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035
043
173
283
083
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 x #s(literal 1 binary64))
x
#s(literal 1 binary64)
Outputs
(*.f64 x #s(literal 1 binary64))
x
x
#s(literal 1 binary64)

localize9.0ms (0.2%)

Memory
13.9MiB live, 13.9MiB allocated
Localize:

Found 1 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x #s(literal 1 binary64))
Samples
6.0ms256×0valid
Compiler

Compiled 7 to 5 computations (28.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-mult: 2.0ms (97.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Counts
1 → 12
Calls
Call 1
Inputs
#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())
Outputs
#s(alt x (taylor 0 x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (*.f64 x #s(literal 1 binary64)) (patch (*.f64 x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
((* x 1))
0.0ms
x
@inf
((* x 1))
0.0ms
x
@0
((* x 1))

simplify2.0ms (0.1%)

Memory
3.1MiB live, 3.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0112
0112
Stop Event
saturated
saturated
Counts
12 → 0
Calls
Call 1
Inputs
x
x
x
x
x
x
x
x
x
x
x
x
Outputs
x
x
x
x
x
x
x
x
x
x
x
x

rewrite6.0ms (0.2%)

Memory
8.1MiB live, 8.1MiB allocated
Rules
lower-*.f32
lower-*.f64
*-rgt-identity
*-commutative
1-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033
041
171
281
081
Stop Event
iter limit
saturated
iter limit
Counts
1 → 3
Calls
Call 1
Inputs
(*.f64 x #s(literal 1 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>

eval0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Compiler

Compiled 7 to 4 computations (42.9% saved)

prune8.0ms (0.2%)

Memory
-32.6MiB live, 12.6MiB allocated
Pruning

9 alts after pruning (1 fresh and 8 done)

PrunedKeptTotal
New213
Fresh000
Picked101
Done088
Total3912
Accuracy
100.0%
Counts
12 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
30.0%
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
99.1%
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
99.5%
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
99.2%
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
99.5%
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
99.4%
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
56.5%
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
56.6%
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
20.3%
x
Compiler

Compiled 171 to 101 computations (40.9% saved)

regimes14.0ms (0.4%)

Memory
24.2MiB live, 24.2MiB allocated
Counts
14 → 1
Calls
Call 1
Inputs
x
(*.f64 x #s(literal 1 binary64))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
(sqrt.f64 (*.f64 (*.f64 (*.f64 x #s(literal 2 binary64)) (sqrt.f64 x)) (sqrt.f64 x)))
(pow.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) #s(literal 4 binary64)) x) x) #s(literal 1/4 binary64))
(*.f64 (pow.f64 x #s(literal 3/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) #s(literal 2 binary64))))
(*.f64 (pow.f64 x #s(literal 1/4 binary64)) (sqrt.f64 (*.f64 (sqrt.f64 x) (*.f64 x #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) #s(literal 2 binary64)) x)
(pow.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 4 binary64)) #s(literal 1/4 binary64))
(*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) (*.f64 (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64)) x))
(*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) (*.f64 (pow.f64 #s(literal 256 binary64) #s(literal 1/32 binary64)) x))
(*.f64 (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 x #s(literal 3/4 binary64)) (pow.f64 #s(literal 4 binary64) #s(literal 1/8 binary64))))
Outputs
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
Calls

3 calls:

5.0ms
x
4.0ms
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
4.0ms
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Results
AccuracySegmentsBranch
99.5%1x
99.5%1(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
99.5%1(*.f64 (*.f64 #s(literal 2 binary64) x) x)
Compiler

Compiled 12 to 10 computations (16.7% saved)

regimes7.0ms (0.2%)

Memory
-26.9MiB live, 12.3MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
x
(*.f64 x #s(literal 1 binary64))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
Outputs
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
Calls

3 calls:

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

Compiled 12 to 10 computations (16.7% saved)

regimes4.0ms (0.1%)

Memory
8.2MiB live, 8.2MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
2 → 1
Calls
Call 1
Inputs
x
(*.f64 x #s(literal 1 binary64))
Outputs
x
Calls

3 calls:

1.0ms
x
1.0ms
(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
1.0ms
(*.f64 (*.f64 #s(literal 2 binary64) x) x)
Results
AccuracySegmentsBranch
20.3%1x
20.3%1(sqrt.f64 (*.f64 (*.f64 #s(literal 2 binary64) x) x))
20.3%1(*.f64 (*.f64 #s(literal 2 binary64) x) x)
Compiler

Compiled 12 to 10 computations (16.7% saved)

simplify23.0ms (0.6%)

Memory
-1.8MiB live, 35.6MiB allocated
Algorithm
egg-herbie
Rules
*-commutative-binary64-*.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
11112
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
x
Outputs
(*.f64 (sqrt.f64 (*.f64 x #s(literal 2 binary64))) (sqrt.f64 x))
(*.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 #s(literal 2 binary64) x)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) x)
x

soundness1.0s (25.5%)

Memory
29.3MiB live, 301.7MiB allocated
Rules
5 230×lower-*.f32
5 226×lower-*.f64
4 806×lower-fma.f64
4 806×lower-fma.f32
4 594×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02194
03685
18973
225362
396352
4550352
0861752
02383
04073
19673
227863
3125463
4480663
0810863
0514
0814
11714
23813
39212
433812
5207412
0867212
033
041
171
281
081
Stop Event
fuel
iter limit
saturated
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 52 to 36 computations (30.8% saved)

preprocess26.0ms (0.7%)

Memory
10.6MiB live, 48.9MiB allocated
Compiler

Compiled 64 to 50 computations (21.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...